diff options
Diffstat (limited to 'wpd/WpdServiceSampleDriver/WpdObjectEnum.h')
| -rw-r--r-- | wpd/WpdServiceSampleDriver/WpdObjectEnum.h | 105 |
1 files changed, 0 insertions, 105 deletions
diff --git a/wpd/WpdServiceSampleDriver/WpdObjectEnum.h b/wpd/WpdServiceSampleDriver/WpdObjectEnum.h deleted file mode 100644 index 2b140242..00000000 --- a/wpd/WpdServiceSampleDriver/WpdObjectEnum.h +++ /dev/null @@ -1,105 +0,0 @@ -#pragma once - -// This class is used to store the context for a specific enumeration. -class WpdObjectEnumeratorContext : public IUnknown -{ -public: - WpdObjectEnumeratorContext() : - m_cRef(1), - m_TotalChildren(0), - m_ChildrenEnumerated(0), - m_Scope(FULL_DEVICE_ACCESS) - { - - } - - ~WpdObjectEnumeratorContext() - { - - } - -public: // IUnknown - ULONG __stdcall AddRef() - { - InterlockedIncrement((long*) &m_cRef); - return m_cRef; - } - - _At_(this, __drv_freesMem(Mem)) - ULONG __stdcall Release() - { - ULONG ulRefCount = m_cRef - 1; - - if (InterlockedDecrement((long*) &m_cRef) == 0) - { - delete this; - return 0; - } - return ulRefCount; - } - - HRESULT __stdcall QueryInterface( - REFIID riid, - void** ppv) - { - HRESULT hr = S_OK; - - if(riid == IID_IUnknown) - { - *ppv = static_cast<IUnknown*>(this); - AddRef(); - } - else - { - *ppv = NULL; - hr = E_NOINTERFACE; - } - - return hr; - } - -private: - DWORD m_cRef; - -public: - bool HasMoreChildrenToEnumerate() - { - return ((m_TotalChildren - m_ChildrenEnumerated) > 0); - } - -// WpdObjectEnumeratorContext specific data -public: - ACCESS_SCOPE m_Scope; - CAtlStringW m_strParentObjectID; // object identifier of the object whose children are being enumerated - DWORD m_TotalChildren; // number of bytes transferred from the resource to the caller - DWORD m_ChildrenEnumerated; // number of children returned during the enumeration operation -}; - -class WpdObjectEnumerator -{ -public: - WpdObjectEnumerator(); - virtual ~WpdObjectEnumerator(); - - HRESULT Initialize(_In_ FakeDevice* pDevice); - - HRESULT DispatchWpdMessage( - _In_ REFPROPERTYKEY Command, - _In_ IPortableDeviceValues* pParams, - _In_ IPortableDeviceValues* pResults); - - HRESULT OnStartFind( - _In_ IPortableDeviceValues* pParams, - _In_ IPortableDeviceValues* pResults); - - HRESULT OnFindNext( - _In_ IPortableDeviceValues* pParams, - _In_ IPortableDeviceValues* pResults); - - HRESULT OnEndFind( - _In_ IPortableDeviceValues* pParams, - _In_ IPortableDeviceValues* pResults); - -private: - FakeDevice* m_pDevice; -}; |
