diff options
| author | a1xd <[email protected]> | 2020-07-22 19:34:13 -0400 |
|---|---|---|
| committer | a1xd <[email protected]> | 2020-07-22 19:34:13 -0400 |
| commit | 78156f34166c110fcad47aef166684b8e25ac4fa (patch) | |
| tree | b6121a5e1725639800c266c865f9067b3cd31a17 /driver/driver.h | |
| parent | Add .gitignore and .gitattributes. (diff) | |
| download | rawaccel-0.1-test.tar.xz rawaccel-0.1-test.zip | |
Add project files.v0.1-test
Diffstat (limited to 'driver/driver.h')
| -rw-r--r-- | driver/driver.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/driver/driver.h b/driver/driver.h new file mode 100644 index 0000000..2a400de --- /dev/null +++ b/driver/driver.h @@ -0,0 +1,47 @@ +#pragma once + +#include <ntddk.h> +#include <kbdmou.h> +#include <wdf.h> + +#include "vec2.h" + +#if DBG +#define DebugPrint(_x_) DbgPrint _x_ +#else +#define DebugPrint(_x_) +#endif + +#define NTDEVICE_NAME L"\\Device\\rawaccel" +#define SYMBOLIC_NAME_STRING L"\\DosDevices\\rawaccel" + +typedef struct _DEVICE_EXTENSION { + LARGE_INTEGER counter; + vec2d carry; + CONNECT_DATA UpperConnectData; +} DEVICE_EXTENSION, *PDEVICE_EXTENSION; + +WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(DEVICE_EXTENSION, FilterGetData) + +EXTERN_C_START + +DRIVER_INITIALIZE DriverEntry; +EVT_WDF_DRIVER_DEVICE_ADD EvtDeviceAdd; +EVT_WDF_IO_QUEUE_IO_INTERNAL_DEVICE_CONTROL EvtIoInternalDeviceControl; +EVT_WDF_IO_QUEUE_IO_DEVICE_CONTROL RawaccelControl; + +VOID RawaccelCallback( + IN PDEVICE_OBJECT DeviceObject, + IN PMOUSE_INPUT_DATA InputDataStart, + IN PMOUSE_INPUT_DATA InputDataEnd, + IN OUT PULONG InputDataConsumed +); + +EXTERN_C_END + +VOID CreateControlDevice(WDFDRIVER Driver); + +VOID DispatchPassThrough( + _In_ WDFREQUEST Request, + _In_ WDFIOTARGET Target +); |