/*++ Module Name: device.h Abstract: This file contains the device definitions. Environment: User-mode Driver Framework 2 --*/ EXTERN_C_START // // The device context performs the same job as // a WDM device extension in the driver frameworks // typedef struct _DEVICE_CONTEXT { WDFUSBDEVICE UsbDevice; ULONG PrivateDeviceData; // just a placeholder } DEVICE_CONTEXT, *PDEVICE_CONTEXT; // // This macro will generate an inline function called DeviceGetContext // which will be used to get a pointer to the device context memory // in a type safe manner. // WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(DEVICE_CONTEXT, DeviceGetContext) // // Function to initialize the device's queues and callbacks // NTSTATUS $formatteddrivername$CreateDevice( _Inout_ PWDFDEVICE_INIT DeviceInit ); // // Function to select the device's USB configuration and get a WDFUSBDEVICE // handle // EVT_WDF_DEVICE_PREPARE_HARDWARE $formatteddrivername$EvtDevicePrepareHardware; EXTERN_C_END