diff options
Diffstat (limited to 'wpd/WpdServiceSampleDriver/FakeDevice.h')
| -rw-r--r-- | wpd/WpdServiceSampleDriver/FakeDevice.h | 182 |
1 files changed, 0 insertions, 182 deletions
diff --git a/wpd/WpdServiceSampleDriver/FakeDevice.h b/wpd/WpdServiceSampleDriver/FakeDevice.h deleted file mode 100644 index 22b23082..00000000 --- a/wpd/WpdServiceSampleDriver/FakeDevice.h +++ /dev/null @@ -1,182 +0,0 @@ -#pragma once - -/** - * This class represents an abstraction of a real device. - * Driver implementors should replace this with their own - * device I/O classes/libraries. - */ - -class FakeDevice -{ -public: - FakeDevice() : m_dwLastObjectID(0) - { - } - - ~FakeDevice() - { - } - - HRESULT InitializeContent(); - - FakeContactsService* GetContactsService(); - - ACCESS_SCOPE GetAccessScope( - _In_ IPortableDeviceValues* pParams); - - // Device Capabilities - // These are legacy commands that apply to the whole device, no access scope is required - HRESULT GetSupportedCommands( - _In_ IPortableDeviceKeyCollection* pCommands); - - HRESULT GetCommandOptions( - _In_ REFPROPERTYKEY Command, - _In_ IPortableDeviceValues* pOptions); - - HRESULT GetSupportedFunctionalCategories( - _In_ IPortableDevicePropVariantCollection* pFunctionalCategories); - - HRESULT GetFunctionalObjects( - _In_ REFGUID guidFunctionalCategory, - _In_ IPortableDevicePropVariantCollection* pFunctionalObjects); - - HRESULT GetSupportedContentTypes( - _In_ REFGUID guidFunctionalCategory, - _In_ IPortableDevicePropVariantCollection* pContentTypes); - - HRESULT GetSupportedFormats( - _In_ REFGUID guidContentType, - _In_ IPortableDevicePropVariantCollection* pFormats); - - HRESULT GetSupportedFormatProperties( - _In_ REFGUID guidObjectFormat, - _In_ IPortableDeviceKeyCollection* pKeys); - - HRESULT GetFixedPropertyAttributes( - _In_ REFGUID guidObjectFormat, - _In_ REFPROPERTYKEY Key, - _In_ IPortableDeviceValues* pAttributes); - - HRESULT GetSupportedEvents( - _In_ IPortableDevicePropVariantCollection* pEvents); - - HRESULT GetEventOptions( - _In_ IPortableDeviceValues* pOptions); - - // Enumeration - // Depending on the access scope, the driver can display only objects within the current - // scoped hierarchy tree - void InitializeEnumerationContext( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszParentID, - _In_ WpdObjectEnumeratorContext* pEnumContext); - - HRESULT FindNext( - const DWORD dwNumObjectsRequested, - _In_ WpdObjectEnumeratorContext* pEnumContext, - _In_ IPortableDevicePropVariantCollection* pObjectIDCollection, - _Out_opt_ DWORD* pdwNumObjectsEnumerated); - - HRESULT GetObjectIDsByFormat( - ACCESS_SCOPE Scope, - _In_ REFGUID guidObjectFormat, - _In_ LPCWSTR wszParentObjectID, - const DWORD dwDepth, - _In_ IPortableDevicePropVariantCollection* pObjectIDs); - - HRESULT GetObjectIDsFromPersistentUniqueIDs( - ACCESS_SCOPE Scope, - _In_ IPortableDevicePropVariantCollection* pPersistentIDs, - _In_ IPortableDevicePropVariantCollection* pObjectIDs); - - // Property Management - // Depending on the access scope, the driver can allow access to properties of objects within the current - // scoped hierarchy tree - HRESULT GetSupportedProperties( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ IPortableDeviceKeyCollection* pKeys); - - HRESULT GetAllPropertyValues( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ IPortableDeviceValues* pValues); - - HRESULT GetPropertyValues( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ IPortableDeviceKeyCollection* pKeys, - _In_ IPortableDeviceValues* pValues); - - HRESULT SetPropertyValues( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ IPortableDeviceValues* pValues, - _In_ IPortableDeviceValues* pResults, - _In_ IPortableDeviceValues* pEventParams, - _Out_ bool* pbObjectChanged); - - HRESULT GetPropertyAtributes( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ REFPROPERTYKEY Key, - _In_ IPortableDeviceValues* pAttributes); - - // Object Management - // Depending on the access scope, the driver can limit access only to objects within the current - // scoped hierarchy tree - HRESULT CreatePropertiesOnlyObject( - ACCESS_SCOPE Scope, - _In_ IPortableDeviceValues* pObjectProperties, - _In_ IPortableDeviceValues* pEventParams, - _Outptr_result_nullonfailure_ LPWSTR* ppszNewObjectID); - - HRESULT DeleteObject( - ACCESS_SCOPE Scope, - const DWORD dwDeleteOptions, - _In_ LPCWSTR wszObjectID, - _In_ IPortableDeviceValues* pEventParams); - - // Resources - HRESULT GetSupportedResources( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ IPortableDeviceKeyCollection* pResources); - - HRESULT GetResourceAttributes( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ REFPROPERTYKEY Resource, - _In_ IPortableDeviceValues* pAttributes); - - HRESULT OpenResource( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _In_ REFPROPERTYKEY Resource, - const DWORD dwMode, - _In_ WpdObjectResourceContext* pResourceContext); - - HRESULT ReadResourceData( - _In_ WpdObjectResourceContext* pResourceContext, - _Out_writes_to_(dwNumBytesToRead, *pdwNumBytesRead) BYTE* pBuffer, - const DWORD dwNumBytesToRead, - _Out_ DWORD* pdwNumBytesRead); - -private: - HRESULT GetContent( - ACCESS_SCOPE Scope, - _In_ LPCWSTR wszObjectID, - _Outptr_result_nullonfailure_ FakeContent** ppContent); - - HRESULT RemoveObjectsMarkedForDeletion(); - -private: - - // Simulates content on the device - FakeDeviceContent m_DeviceContent; - - // Simulates contacts service functionality - FakeContactsService m_ContactsService; - - DWORD m_dwLastObjectID; -}; |
