Atlas - hidapi_cfgmgr32.h
Home / ext / SDL / src / hidapi / windows Lines: 1 | Size: 4073 bytes [Download] [Show on GitHub] [Search similar files] [Raw] [Raw (proxy)][FILE BEGIN]1/******************************************************* 2 HIDAPI - Multi-Platform library for 3 communication with HID devices. 4 5 libusb/hidapi Team 6 7 Copyright 2022, All Rights Reserved. 8 9 At the discretion of the user of this library, 10 this software may be licensed under the terms of the 11 GNU General Public License v3, a BSD-Style license, or the 12 original HIDAPI license as outlined in the LICENSE.txt, 13 LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt 14 files located at the root of the source distribution. 15 These files may also be found in the public source 16 code repository located at: 17 https://github.com/libusb/hidapi . 18********************************************************/ 19 20#ifndef HIDAPI_CFGMGR32_H 21#define HIDAPI_CFGMGR32_H 22 23#ifdef HIDAPI_USE_DDK 24 25#include <cfgmgr32.h> 26#include <initguid.h> 27#include <devpkey.h> 28#include <propkey.h> 29 30#else 31 32/* This part of the header mimics cfgmgr32.h, 33 but only what is used by HIDAPI */ 34 35//#include <initguid.h> 36#include <devpropdef.h> 37//#include <propkeydef.h> 38 39#ifndef PROPERTYKEY_DEFINED 40#define PROPERTYKEY_DEFINED 41 42typedef struct 43{ 44 GUID fmtid; 45 DWORD pid; 46} PROPERTYKEY; 47 48#endif /* PROPERTYKEY_DEFINED */ 49 50typedef DWORD RETURN_TYPE; 51typedef RETURN_TYPE CONFIGRET; 52typedef DWORD DEVNODE, DEVINST; 53typedef DEVNODE* PDEVNODE, * PDEVINST; 54typedef WCHAR* DEVNODEID_W, * DEVINSTID_W; 55 56#define CR_SUCCESS (0x00000000) 57#define CR_BUFFER_SMALL (0x0000001A) 58#define CR_FAILURE (0x00000013) 59 60#define CM_LOCATE_DEVNODE_NORMAL 0x00000000 61 62#define CM_GET_DEVICE_INTERFACE_LIST_PRESENT (0x00000000) 63 64typedef CONFIGRET(__stdcall* CM_Locate_DevNodeW_)(PDEVINST pdnDevInst, DEVINSTID_W pDeviceID, ULONG ulFlags); 65typedef CONFIGRET(__stdcall* CM_Get_Parent_)(PDEVINST pdnDevInst, DEVINST dnDevInst, ULONG ulFlags); 66typedef CONFIGRET(__stdcall* CM_Get_DevNode_PropertyW_)(DEVINST dnDevInst, CONST DEVPROPKEY* PropertyKey, DEVPROPTYPE* PropertyType, PBYTE PropertyBuffer, PULONG PropertyBufferSize, ULONG ulFlags); 67typedef CONFIGRET(__stdcall* CM_Get_Device_Interface_PropertyW_)(LPCWSTR pszDeviceInterface, CONST DEVPROPKEY* PropertyKey, DEVPROPTYPE* PropertyType, PBYTE PropertyBuffer, PULONG PropertyBufferSize, ULONG ulFlags); 68typedef CONFIGRET(__stdcall* CM_Get_Device_Interface_List_SizeW_)(PULONG pulLen, LPGUID InterfaceClassGuid, DEVINSTID_W pDeviceID, ULONG ulFlags); 69typedef CONFIGRET(__stdcall* CM_Get_Device_Interface_ListW_)(LPGUID InterfaceClassGuid, DEVINSTID_W pDeviceID, WCHAR* /*PZZWSTR*/ Buffer, ULONG BufferLen, ULONG ulFlags); 70 71// from devpkey.h 72static DEVPROPKEY DEVPKEY_NAME = { { 0xb725f130, 0x47ef, 0x101a, {0xa5, 0xf1, 0x02, 0x60, 0x8c, 0x9e, 0xeb, 0xac} }, 10 }; // DEVPROP_TYPE_STRING 73static DEVPROPKEY DEVPKEY_Device_Manufacturer = { { 0xa45c254e, 0xdf1c, 0x4efd, {0x80, 0x20, 0x67, 0xd1, 0x46, 0xa8, 0x50, 0xe0} }, 13 }; // DEVPROP_TYPE_STRING 74static DEVPROPKEY DEVPKEY_Device_InstanceId = { { 0x78c34fc8, 0x104a, 0x4aca, {0x9e, 0xa4, 0x52, 0x4d, 0x52, 0x99, 0x6e, 0x57} }, 256 }; // DEVPROP_TYPE_STRING 75static DEVPROPKEY DEVPKEY_Device_HardwareIds = { { 0xa45c254e, 0xdf1c, 0x4efd, {0x80, 0x20, 0x67, 0xd1, 0x46, 0xa8, 0x50, 0xe0} }, 3 }; // DEVPROP_TYPE_STRING_LIST 76static DEVPROPKEY DEVPKEY_Device_CompatibleIds = { { 0xa45c254e, 0xdf1c, 0x4efd, {0x80, 0x20, 0x67, 0xd1, 0x46, 0xa8, 0x50, 0xe0} }, 4 }; // DEVPROP_TYPE_STRING_LIST 77static DEVPROPKEY DEVPKEY_Device_ContainerId = { { 0x8c7ed206, 0x3f8a, 0x4827, {0xb3, 0xab, 0xae, 0x9e, 0x1f, 0xae, 0xfc, 0x6c} }, 2 }; // DEVPROP_TYPE_GUID 78 79// from propkey.h 80static PROPERTYKEY PKEY_DeviceInterface_Bluetooth_DeviceAddress = { { 0x2bd67d8b, 0x8beb, 0x48d5, {0x87, 0xe0, 0x6c, 0xda, 0x34, 0x28, 0x04, 0x0a} }, 1 }; // DEVPROP_TYPE_STRING 81static PROPERTYKEY PKEY_DeviceInterface_Bluetooth_Manufacturer = { { 0x2bd67d8b, 0x8beb, 0x48d5, {0x87, 0xe0, 0x6c, 0xda, 0x34, 0x28, 0x04, 0x0a} }, 4 }; // DEVPROP_TYPE_STRING 82static PROPERTYKEY PKEY_DeviceInterface_Bluetooth_ModelNumber = { { 0x2BD67D8B, 0x8BEB, 0x48D5, {0x87, 0xE0, 0x6C, 0xDA, 0x34, 0x28, 0x04, 0x0A} }, 5 }; // DEVPROP_TYPE_STRING 83 84#endif 85 86#endif /* HIDAPI_CFGMGR32_H */ 87[FILE END](C) 2025 0x4248 (C) 2025 4248 Media and 4248 Systems, All part of 0x4248 See LICENCE files for more information. Not all files are by 0x4248 always check Licencing.