• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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