summaryrefslogtreecommitdiff
path: root/wpd/WpdServiceSampleDriver/Device.h
diff options
context:
space:
mode:
authorAdonais Romero González <[email protected]>2024-05-06 16:21:31 -0700
committerGitHub <[email protected]>2024-05-06 16:21:31 -0700
commita74a241c664c4e1d7c0838287b34076c19d9858a (patch)
tree6ff7562612967b122acf8acf8a69c4dcfd5905db /wpd/WpdServiceSampleDriver/Device.h
parentdef8e8e34ed2b7b1deb2fc9112ac4255f1a0f2ba (diff)
parent15477ce52bbb6b42ca591ecdfb484cac089f89ab (diff)
Merge develop changes prior to upcoming WDK release (May 2024)
Diffstat (limited to 'wpd/WpdServiceSampleDriver/Device.h')
-rw-r--r--wpd/WpdServiceSampleDriver/Device.h91
1 files changed, 0 insertions, 91 deletions
diff --git a/wpd/WpdServiceSampleDriver/Device.h b/wpd/WpdServiceSampleDriver/Device.h
deleted file mode 100644
index cf7fdc03..00000000
--- a/wpd/WpdServiceSampleDriver/Device.h
+++ /dev/null
@@ -1,91 +0,0 @@
-#pragma once
-
-#include "resource.h"
-#include "WpdServiceSampleDriver.h"
-
-class ATL_NO_VTABLE CDevice :
- public CComObjectRootEx<CComMultiThreadModel>,
- public IPnpCallback,
- public IPnpCallbackSelfManagedIo,
- public IPnpCallbackHardware
-{
-public:
- CDevice() :
- m_pWpdBaseDriver(NULL)
- {
- }
-
- DECLARE_NOT_AGGREGATABLE(CDevice)
-
- BEGIN_COM_MAP(CDevice)
- COM_INTERFACE_ENTRY(IPnpCallback)
- COM_INTERFACE_ENTRY(IPnpCallbackSelfManagedIo)
- COM_INTERFACE_ENTRY(IPnpCallbackHardware)
- END_COM_MAP()
-
-public:
- static HRESULT
- CreateInstance(
- _In_ IWDFDeviceInitialize* pDeviceInit,
- _In_ WpdBaseDriver* pWpdBaseDriver,
- _COM_Outptr_ IUnknown** ppUnkwn)
- {
- *ppUnkwn = NULL;
-
- //
- // Set device properties.
- //
- pDeviceInit->SetLockingConstraint(None);
-
- CComObject< CDevice> *pMyDevice = NULL;
- HRESULT hr = CComObject<CDevice>::CreateInstance( &pMyDevice );
- if( SUCCEEDED (hr) )
- {
- pMyDevice->AddRef();
- hr = pMyDevice->QueryInterface( __uuidof(IUnknown),(void **) ppUnkwn);
- if (hr == S_OK)
- {
- pMyDevice->m_pWpdBaseDriver = pWpdBaseDriver;
- }
- pMyDevice->Release();
- pMyDevice = NULL;
- }
-
- return hr;
- }
-
- // IPnpCallback
- //
- STDMETHOD_(HRESULT, OnD0Entry) (_In_ IWDFDevice* pDevice, WDF_POWER_DEVICE_STATE previousState);
- STDMETHOD_(HRESULT, OnD0Exit) (_In_ IWDFDevice* pDevice, WDF_POWER_DEVICE_STATE newState);
- STDMETHOD_(VOID, OnSurpriseRemoval)(_In_ IWDFDevice* pDevice);
- STDMETHOD_(HRESULT, OnQueryRemove) (_In_ IWDFDevice* pDevice);
- STDMETHOD_(HRESULT, OnQueryStop) (_In_ IWDFDevice* pDevice);
-
- // IPnpCallbackSelfManagedIo
- //
- STDMETHOD_(VOID, OnSelfManagedIoCleanup)(_In_ IWDFDevice* pDevice);
- STDMETHOD_(VOID, OnSelfManagedIoFlush) (_In_ IWDFDevice* pDevice);
- STDMETHOD_(HRESULT, OnSelfManagedIoInit) (_In_ IWDFDevice* pDevice);
- STDMETHOD_(HRESULT, OnSelfManagedIoSuspend) (_In_ IWDFDevice* pDevice);
- STDMETHOD_(HRESULT, OnSelfManagedIoRestart) (_In_ IWDFDevice* pDevice);
- STDMETHOD_(HRESULT, OnSelfManagedIoStop) (_In_ IWDFDevice* pDevice);
-
- // IPnpCallbackHardware
- //
- STDMETHOD_(HRESULT, OnPrepareHardware)(_In_ IWDFDevice* pDevice);
- STDMETHOD_(HRESULT, OnReleaseHardware)(_In_ IWDFDevice* pDevice);
-
-private:
- HRESULT GetSupportedContentTypes(
- _Outptr_ IPortableDevicePropVariantCollection** ppContentTypes);
-
- HRESULT GetDeviceFriendlyName(
- _Outptr_ LPWSTR* pwszDeviceFriendlyName);
-
-private:
-
- WpdBaseDriver* m_pWpdBaseDriver;
- CComPtr<IPortableDeviceClassExtension> m_pPortableDeviceClassExtension;
-};
-