#pragma once #include "MID/Mid_Def.h" #include #include #include // Windows RAWINPUT reader for the NKRO path. struct Dri_NkroRaw_Struct_Port { bool IsOpened = false; void* WindowHandle = nullptr; Mid_Struct_DeviceConfig DeviceConfig; quint8 Modifier = 0; QByteArray UsageBitmap = QByteArray(MID_CONST_USAGE_BITMAP_SIZE, 0); QList PacketQueue; QString DevicePath; }; void Dri_NkroRaw_Close(Dri_NkroRaw_Struct_Port* p_Port); bool Dri_NkroRaw_Init(Dri_NkroRaw_Struct_Port* p_Port, const Mid_Struct_DeviceConfig& DeviceConfig, void* WindowHandle, QString* p_TextStatus); bool Dri_NkroRaw_HandleMessage(Dri_NkroRaw_Struct_Port* p_Port, void* p_Message, QString* p_TextStatus); bool Dri_NkroRaw_Read(Dri_NkroRaw_Struct_Port* p_Port, Mid_Struct_RawPacket* p_Packet, QString* p_TextStatus);