diff --git a/sys/EmulationTargetPDO.cpp b/sys/EmulationTargetPDO.cpp index f1eccc7..b5c6178 100644 --- a/sys/EmulationTargetPDO.cpp +++ b/sys/EmulationTargetPDO.cpp @@ -298,6 +298,16 @@ NTSTATUS ViGEm::Bus::Core::EmulationTargetPDO::CreateDevice(WDFDEVICE Device, PW return status; } +VOID ViGEm::Bus::Core::EmulationTargetPDO::SetSerial(ULONG Serial) +{ + this->SerialNo = Serial; +} + +ULONG ViGEm::Bus::Core::EmulationTargetPDO::GetSerial() const +{ + return this->SerialNo; +} + #pragma region USB Interface Functions BOOLEAN USB_BUSIFFN ViGEm::Bus::Core::EmulationTargetPDO::UsbIsDeviceHighSpeed(IN PVOID BusContext) diff --git a/sys/EmulationTargetPDO.hpp b/sys/EmulationTargetPDO.hpp index 8c4d2c7..86b2c75 100644 --- a/sys/EmulationTargetPDO.hpp +++ b/sys/EmulationTargetPDO.hpp @@ -47,6 +47,16 @@ namespace ViGEm::Bus::Core NTSTATUS CreateDevice(_In_ WDFDEVICE Device, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PPDO_IDENTIFICATION_DESCRIPTION Description); + + VOID SetSerial(ULONG Serial); + + ULONG GetSerial() const; + + bool operator==(EmulationTargetPDO& other) const + { + return (other.SerialNo == this->SerialNo); + } + protected: static const ULONG _maxHardwareIdLength = 0xFF;