summaryrefslogtreecommitdiff
path: root/wpd/WpdBasicHardwareDriver/Driver.h
diff options
context:
space:
mode:
authorDave Wilson <[email protected]>2015-03-17 19:50:07 -0700
committerDave Wilson <[email protected]>2015-03-17 19:50:07 -0700
commit97cf5197cf5b882b2c689d8dc2b555f2edf8f418 (patch)
tree46f3701832d70b420eb0fc0eb93261f9da45db3f /wpd/WpdBasicHardwareDriver/Driver.h
parentef1905bf1e8825bb31120dfb27e0daf3154d859a (diff)
Initial publish
Diffstat (limited to 'wpd/WpdBasicHardwareDriver/Driver.h')
-rw-r--r--wpd/WpdBasicHardwareDriver/Driver.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/wpd/WpdBasicHardwareDriver/Driver.h b/wpd/WpdBasicHardwareDriver/Driver.h
new file mode 100644
index 00000000..9b8cadec
--- /dev/null
+++ b/wpd/WpdBasicHardwareDriver/Driver.h
@@ -0,0 +1,44 @@
+#pragma once
+
+class ATL_NO_VTABLE CDriver :
+ public CComObjectRootEx<CComMultiThreadModel>,
+ public CComCoClass<CDriver, &CLSID_WpdBasicHardwareDriver>,
+ public IDriverEntry,
+ public IObjectCleanup
+{
+public:
+ CDriver();
+
+ DECLARE_REGISTRY_RESOURCEID(IDR_WpdBasicHardwareDriver)
+
+ DECLARE_NOT_AGGREGATABLE(CDriver)
+
+ BEGIN_COM_MAP(CDriver)
+ COM_INTERFACE_ENTRY(IDriverEntry)
+ END_COM_MAP()
+
+public:
+ //
+ // IDriverEntry
+ //
+ STDMETHOD (OnInitialize)(
+ _In_ IWDFDriver* pDriver
+ );
+ STDMETHOD (OnDeviceAdd)(
+ _In_ IWDFDriver* pDriver,
+ _In_ IWDFDeviceInitialize* pDeviceInit
+ );
+ STDMETHOD_ (void, OnDeinitialize)(
+ _In_ IWDFDriver* pDriver
+ );
+
+ //
+ // IObjectCleanup
+ //
+ STDMETHOD_ (void, OnCleanup)(
+ _In_ IWDFObject* pWdfObject
+ );
+};
+
+OBJECT_ENTRY_AUTO(__uuidof(WpdBasicHardwareDriver), CDriver)
+