summaryrefslogtreecommitdiff
path: root/wpd/WpdServiceSampleDriver/WpdObjectEnum.h
diff options
context:
space:
mode:
authorzlockard <[email protected]>2024-01-31 13:45:54 -0800
committerGitHub <[email protected]>2024-01-31 13:45:54 -0800
commit24f280dc4a700f00f5fbb8f13815b941620adb8e (patch)
tree63243812757e456aadf9fb4cbf07277b1d22eccf /wpd/WpdServiceSampleDriver/WpdObjectEnum.h
parentc657bc76ca6cf64660e12efe2d07a100055d98c0 (diff)
Fixes for sample build errors and updates to the execution script to use new build flags (#1078)
* Fixes for sample build errors * Fix additional sample * Add additional sample * Updated comments in Build-Sample.ps1 * Adjusting exclusions.csv to be accurate for GE. Still issues for NI that we need to understand better * Merge from develop branch * Merge from develop branch * Merge from develop branch * Delete WPD samples * Separate infverif additional options for old vs new WDK * Delete WPD samples entry in our CODEOWNERS file * Fix spelling error * For 22621 WDK Remove the /samples flag --------- Co-authored-by: Zac Lockard <[email protected]> Co-authored-by: Jakob Lichtenberg (170957) <[email protected]>
Diffstat (limited to 'wpd/WpdServiceSampleDriver/WpdObjectEnum.h')
-rw-r--r--wpd/WpdServiceSampleDriver/WpdObjectEnum.h105
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;
-};