diff options
| author | a1xd <[email protected]> | 2021-09-24 02:04:43 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-09-24 02:04:43 -0400 |
| commit | 2896b8a09ce42e965705c58593b8738adc454f7f (patch) | |
| tree | 71e4d0cff60b5a1ad11427d78e1f8c7b775e5690 /driver/driver.h | |
| parent | Merge pull request #107 from a1xd/1.5.0-fix (diff) | |
| parent | make note clearer (diff) | |
| download | rawaccel-dark-mode.tar.xz rawaccel-dark-mode.zip | |
v1.6
Diffstat (limited to 'driver/driver.h')
| -rw-r--r-- | driver/driver.h | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/driver/driver.h b/driver/driver.h index 6184a69..c55afac 100644 --- a/driver/driver.h +++ b/driver/driver.h @@ -1,6 +1,6 @@ #pragma once -#include "rawaccel-base.hpp" +#include "rawaccel.hpp" #include "rawaccel-io-def.h" #include <kbdmou.h> @@ -19,9 +19,16 @@ using counter_t = long long; namespace ra = rawaccel; typedef struct _DEVICE_EXTENSION { + bool enable; + bool keep_time; + bool set_extra_info; + double dpi_factor; counter_t counter; + ra::time_clamp clamp; + ra::modifier mod; vec2d carry; CONNECT_DATA UpperConnectData; + ra::modifier_settings mod_settings; WCHAR dev_id[ra::MAX_DEV_ID_LEN]; } DEVICE_EXTENSION, *PDEVICE_EXTENSION; @@ -30,9 +37,18 @@ 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; +EVT_WDF_OBJECT_CONTEXT_CLEANUP DeviceCleanup; + +VOID DeviceSetup(WDFOBJECT); +VOID WriteDelay(VOID); +VOID RawaccelInit(WDFDRIVER); +NTSTATUS CreateControlDevice(WDFDRIVER); + +EXTERN_C_END VOID RawaccelCallback( IN PDEVICE_OBJECT DeviceObject, @@ -41,10 +57,6 @@ VOID RawaccelCallback( IN OUT PULONG InputDataConsumed ); -EXTERN_C_END - -VOID CreateControlDevice(WDFDRIVER Driver); - VOID DispatchPassThrough( _In_ WDFREQUEST Request, _In_ WDFIOTARGET Target |