1/** 2 * This file is part of the mingw-w64 runtime package. 3 * No warranty is given; refer to the file DISCLAIMER within this package. 4 */ 5cpp_quote("#include <winapifamily.h>") 6cpp_quote("") 7cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 8 9import "oaidl.idl"; 10import "ocidl.idl"; 11import "wsdxmldom.h"; 12import "wsdtypes.h"; 13 14cpp_quote("") 15interface IWSDAddress; 16interface IWSDXMLContext; 17interface IWSDiscoveredService; 18interface IWSDDeviceProxy; 19interface IWSDServiceProxy; 20interface IWSDEndpointProxy; 21interface IWSDAsyncResult; 22interface IWSDAsyncCallback; 23interface IWSDMetadataExchange; 24interface IWSDEventingStatus; 25 26[object, local, restricted, uuid (11a9852a-8dd8-423e-b537-9356db4fbfb8), pointer_default (unique)] 27interface IWSDAsyncResult : IUnknown { 28 HRESULT SetCallback ([in] IWSDAsyncCallback *pCallback,[in] IUnknown *pAsyncState); 29 HRESULT SetWaitHandle ([in] HANDLE hWaitHandle); 30 HRESULT HasCompleted (); 31 HRESULT GetAsyncState ([out] IUnknown **ppAsyncState); 32 HRESULT Abort (); 33 HRESULT GetEvent ([out] WSD_EVENT *pEvent); 34 HRESULT GetEndpointProxy ([out] IWSDEndpointProxy **ppEndpoint); 35}; 36 37[object, local, restricted, uuid (a63e109d-ce72-49e2-ba98-e845f5ee1666), pointer_default (unique)] 38interface IWSDAsyncCallback : IUnknown { 39 HRESULT AsyncOperationComplete ([in] IWSDAsyncResult *pAsyncResult,[in] IUnknown *pAsyncState); 40}; 41 42[object, local, restricted, uuid (06996d57-1d67-4928-9307-3d7833fdb846), pointer_default (unique)] 43interface IWSDMetadataExchange : IUnknown { 44 HRESULT GetMetadata ([out] WSD_METADATA_SECTION_LIST **MetadataOut); 45}; 46 47[object, local, restricted, uuid (49b17f52-637a-407a-ae99-fbe82a4d38c0), pointer_default (unique)] 48interface IWSDEventingStatus : IUnknown { 49 void SubscriptionRenewed ([in] LPCWSTR pszSubscriptionAction); 50 void SubscriptionRenewalFailed ([in] LPCWSTR pszSubscriptionAction,[in] HRESULT hr); 51 void SubscriptionEnded ([in] LPCWSTR pszSubscriptionAction); 52}; 53 54[object, local, restricted, uuid (1860d430-b24c-4975-9f90-dbb39baa24ec), pointer_default (unique)] 55interface IWSDEndpointProxy : IUnknown { 56 HRESULT SendOneWayRequest ([in] const void *pBody,[in] const WSD_OPERATION *pOperation); 57 HRESULT SendTwoWayRequest ([in] const void *pBody,[in] const WSD_OPERATION *pOperation,[in, optional] const WSD_SYNCHRONOUS_RESPONSE_CONTEXT *pResponseContext); 58 HRESULT SendTwoWayRequestAsync ([in] const void *pBody,[in] const WSD_OPERATION *pOperation,[in] IUnknown *pAsyncState,[in] IWSDAsyncCallback *pCallback,[out] IWSDAsyncResult **pResult); 59 HRESULT AbortAsyncOperation ([in] IWSDAsyncResult *pAsyncResult); 60 HRESULT ProcessFault ([in] const WSD_SOAP_FAULT *pFault); 61 HRESULT GetErrorInfo ([out] LPCWSTR *ppszErrorInfo); 62 HRESULT GetFaultInfo ([out] WSD_SOAP_FAULT **ppFault); 63}; 64 65[object, local, restricted, uuid (eee0c031-c578-4c0e-9a3b-973c35f409db), pointer_default (unique)] 66interface IWSDDeviceProxy : IUnknown { 67 HRESULT Init ([in] LPCWSTR pszDeviceId,[in] IWSDAddress *pDeviceAddress,[in] LPCWSTR pszLocalId,[in, optional] IWSDXMLContext *pContext,[in, optional] IWSDDeviceProxy *pSponsor); 68 HRESULT BeginGetMetadata ([out] IWSDAsyncResult **ppResult); 69 HRESULT EndGetMetadata ([in] IWSDAsyncResult *pResult); 70 HRESULT GetHostMetadata ([out] WSD_HOST_METADATA **ppHostMetadata); 71 HRESULT GetThisModelMetadata ([out] WSD_THIS_MODEL_METADATA **ppManufacturerMetadata); 72 HRESULT GetThisDeviceMetadata ([out] WSD_THIS_DEVICE_METADATA **ppThisDeviceMetadata); 73 HRESULT GetAllMetadata ([out] WSD_METADATA_SECTION_LIST **ppMetadata); 74 HRESULT GetServiceProxyById ([in] LPCWSTR pszServiceId,[out] IWSDServiceProxy **ppServiceProxy); 75 HRESULT GetServiceProxyByType ([in] const WSDXML_NAME *pType,[out] IWSDServiceProxy **ppServiceProxy); 76 HRESULT GetEndpointProxy ([out] IWSDEndpointProxy **ppProxy); 77}; 78 79[object, local, restricted, uuid (d4c7fb9c-03ab-4175-9d67-094fafebf487), pointer_default (unique)] 80interface IWSDServiceProxy : IWSDMetadataExchange { 81 HRESULT BeginGetMetadata ([out] IWSDAsyncResult **ppResult); 82 HRESULT EndGetMetadata ([in] IWSDAsyncResult *pResult,[out] WSD_METADATA_SECTION_LIST **ppMetadata); 83 HRESULT GetServiceMetadata ([out] WSD_SERVICE_METADATA **ppServiceMetadata); 84 HRESULT SubscribeToOperation ([in] const WSD_OPERATION *pOperation,[in] IUnknown *pUnknown,[in] const WSDXML_ELEMENT *pAny,[out] WSDXML_ELEMENT **ppAny); 85 HRESULT UnsubscribeToOperation ([in] const WSD_OPERATION *pOperation); 86 HRESULT SetEventingStatusCallback ([in, optional] IWSDEventingStatus *pStatus); 87 HRESULT GetEndpointProxy ([out] IWSDEndpointProxy **ppProxy); 88}; 89 90cpp_quote("#if WINVER >= 0x601") 91[object, local, restricted, uuid (f9279d6d-1012-4a94-b8cc-fd35d2202bfe), pointer_default (unique)] 92interface IWSDServiceProxyEventing : IWSDServiceProxy { 93 HRESULT SubscribeToMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] IUnknown *pUnknown,[in] const WSD_EVENTING_EXPIRES *pExpires,[in] const WSDXML_ELEMENT *pAny,[out] WSD_EVENTING_EXPIRES **ppExpires,[out] WSDXML_ELEMENT **ppAny); 94 HRESULT BeginSubscribeToMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] IUnknown *pUnknown,[in] const WSD_EVENTING_EXPIRES *pExpires,[in] const WSDXML_ELEMENT *pAny,[in] IUnknown *pAsyncState,[in] IWSDAsyncCallback *pAsyncCallback,[out] IWSDAsyncResult **ppResult); 95 HRESULT EndSubscribeToMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] IWSDAsyncResult *pResult,[out] WSD_EVENTING_EXPIRES **ppExpires,[out] WSDXML_ELEMENT **ppAny); 96 HRESULT UnsubscribeToMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] const WSDXML_ELEMENT *pAny); 97 HRESULT BeginUnsubscribeToMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] const WSDXML_ELEMENT *pAny,[in] IUnknown *pAsyncState,[in] IWSDAsyncCallback *pAsyncCallback,[out] IWSDAsyncResult **ppResult); 98 HRESULT EndUnsubscribeToMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] IWSDAsyncResult *pResult); 99 HRESULT RenewMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] const WSD_EVENTING_EXPIRES *pExpires,[in] const WSDXML_ELEMENT *pAny,[out] WSD_EVENTING_EXPIRES **ppExpires,[out] WSDXML_ELEMENT **ppAny); 100 HRESULT BeginRenewMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] const WSD_EVENTING_EXPIRES *pExpires,[in] const WSDXML_ELEMENT *pAny,[in] IUnknown *pAsyncState,[in] IWSDAsyncCallback *pAsyncCallback,[out] IWSDAsyncResult **ppResult); 101 HRESULT EndRenewMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] IWSDAsyncResult *pResult,[out] WSD_EVENTING_EXPIRES **ppExpires,[out] WSDXML_ELEMENT **ppAny); 102 HRESULT GetStatusForMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] const WSDXML_ELEMENT *pAny,[out] WSD_EVENTING_EXPIRES **ppExpires,[out] WSDXML_ELEMENT **ppAny); 103 HRESULT BeginGetStatusForMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] const WSDXML_ELEMENT *pAny,[in] IUnknown *pAsyncState,[in] IWSDAsyncCallback *pAsyncCallback,[out] IWSDAsyncResult **ppResult); 104 HRESULT EndGetStatusForMultipleOperations ([in] const WSD_OPERATION *pOperations,[in] DWORD dwOperationCount,[in] IWSDAsyncResult *pResult,[out] WSD_EVENTING_EXPIRES **ppExpires,[out] WSDXML_ELEMENT **ppAny); 105}; 106cpp_quote("#endif") 107 108cpp_quote("HRESULT WINAPI WSDCreateDeviceProxy(LPCWSTR pszDeviceId, LPCWSTR pszLocalId, IWSDXMLContext *pContext, IWSDDeviceProxy **ppDeviceProxy);") 109cpp_quote("HRESULT WINAPI WSDCreateDeviceProxyAdvanced(LPCWSTR pszDeviceId, IWSDAddress* pDeviceAddress, LPCWSTR pszLocalId, IWSDXMLContext *pContext, IWSDDeviceProxy **ppDeviceProxy);") 110cpp_quote("#if WINVER >= 0x601") 111cpp_quote("HRESULT WINAPI WSDCreateDeviceProxy2(LPCWSTR pszDeviceId, LPCWSTR pszLocalId, IWSDXMLContext *pContext, WSD_CONFIG_PARAM *pConfigParams, DWORD dwConfigParamCount, IWSDDeviceProxy **ppDeviceProxy);") 112cpp_quote("#endif") 113 114cpp_quote("#endif") 115