JD2022-TU1/main/extern/Camcam/PlatformSDK/Include/wsdclient.idl

286 lines
8.3 KiB
Text

//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// Component: WSDAPI - Microsoft Web Services for Devices API
//
// File: wsdclient.idl
//
// Abstract: Client interface definitions and typedefs for WSDAPI
//
// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT MODIFY IT BY HAND.
//
//--------------------------------------------------------------------------
import "oaidl.idl";
import "ocidl.idl";
import "wsdxmldom.h";
import "wsdtypes.h";
//
// Forward definitions
//
interface IWSDAddress;
interface IWSDXMLContext;
interface IWSDiscoveredService;
interface IWSDDeviceProxy;
interface IWSDServiceProxy;
interface IWSDEndpointProxy;
interface IWSDAsyncResult;
interface IWSDAsyncCallback;
interface IWSDMetadataExchange;
interface IWSDEventingStatus;
cpp_quote("HRESULT WINAPI")
cpp_quote("WSDCreateDeviceProxy(")
cpp_quote(" __in LPCWSTR pszDeviceId,")
cpp_quote(" __in LPCWSTR pszLocalId,")
cpp_quote(" IWSDXMLContext* pContext,")
cpp_quote(" IWSDDeviceProxy** ppDeviceProxy);")
cpp_quote("HRESULT WINAPI")
cpp_quote("WSDCreateDeviceProxyAdvanced(")
cpp_quote(" __in LPCWSTR pszDeviceId,")
cpp_quote(" IWSDAddress* pDeviceAddress,")
cpp_quote(" __in LPCWSTR pszLocalId,")
cpp_quote(" IWSDXMLContext* pContext,")
cpp_quote(" IWSDDeviceProxy** ppDeviceProxy);")
//+-------------------------------------------------------------------------
// IWSDEndpointProxy Interface
// Description: Messaging proxy to device services
//--------------------------------------------------------------------------
[
object,
uuid(1860d430-b24c-4975-9f90-dbb39baa24ec),
helpstring("IWSDEndpointProxy Interface"),
pointer_default(unique),
restricted,
local
]
interface IWSDEndpointProxy : IUnknown
{
HRESULT SendOneWayRequest(
[in] const void* pBody,
[in] const WSD_OPERATION* pOperation);
HRESULT SendTwoWayRequest(
[in] const void* pBody,
[in] const WSD_OPERATION* pOperation,
[in, optional] const WSD_SYNCHRONOUS_RESPONSE_CONTEXT* pResponseContext);
HRESULT SendTwoWayRequestAsync(
[in] const void* pBody,
[in] const WSD_OPERATION* pOperation,
[in] IUnknown* pAsyncState,
[in] IWSDAsyncCallback* pCallback,
[out] IWSDAsyncResult** pResult);
HRESULT AbortAsyncOperation(
[in] IWSDAsyncResult* pAsyncResult);
HRESULT ProcessFault(
[in] const WSD_SOAP_FAULT* pFault);
HRESULT GetErrorInfo(
[out] LPCWSTR* ppszErrorInfo); // Note: Deallocate with WSDFreeLinkedMemory
// Obtain information on the last error.
HRESULT GetFaultInfo(
[out] WSD_SOAP_FAULT** ppFault); // Note: Deallocate with WSDFreeLinkedMemory
};
//+-------------------------------------------------------------------------
// IWSDService Interface
// Description: Client-side representation of device services
//--------------------------------------------------------------------------
[
object,
uuid(d4c7fb9c-03ab-4175-9d67-094fafebf487),
helpstring("IWSDServiceProxy Interface"),
pointer_default(unique),
restricted,
local
]
interface IWSDServiceProxy : IWSDMetadataExchange
{
HRESULT BeginGetMetadata(
[out] IWSDAsyncResult** ppResult);
HRESULT EndGetMetadata(
[in] IWSDAsyncResult* pResult,
[out] WSD_METADATA_SECTION_LIST** ppMetadata); // Note: Do not deallocate ppMetadata
HRESULT GetServiceMetadata(
[out] WSD_SERVICE_METADATA** ppServiceMetadata); // Note: Do not deallocate ppServiceMetadata
HRESULT SubscribeToOperation(
[in] const WSD_OPERATION* pOperation,
[in] IUnknown* pUnknown,
[in] const WSDXML_ELEMENT* pAny,
[out] WSDXML_ELEMENT** ppAny); // Note: Do not deallocate ppAny
HRESULT UnsubscribeToOperation(
[in] const WSD_OPERATION* pOperation);
HRESULT SetEventingStatusCallback(
[in, optional] IWSDEventingStatus* pStatus);
HRESULT GetEndpointProxy(
[out] IWSDEndpointProxy** ppProxy);
};
//+-------------------------------------------------------------------------
// IWSDDevice Interface
// Description: Client-side representation of devices
//--------------------------------------------------------------------------
[
object,
uuid(eee0c031-c578-4c0e-9a3b-973c35f409db),
helpstring("IWSDDeviceProxy Interface"),
pointer_default(unique),
restricted,
local
]
interface IWSDDeviceProxy : IUnknown
{
HRESULT Init(
[in, annotation("__in")] LPCWSTR pszDeviceId,
[in] IWSDAddress* pDeviceAddress,
[in, annotation("__in")] LPCWSTR pszLocalId,
[in, optional] IWSDXMLContext* pContext,
[in, optional] IWSDDeviceProxy* pSponsor);
HRESULT BeginGetMetadata(
[out] IWSDAsyncResult** ppResult);
HRESULT EndGetMetadata(
[in] IWSDAsyncResult* pResult);
HRESULT GetHostMetadata(
[out] WSD_HOST_METADATA** ppHostMetadata); // Note: Do not deallocate ppHostMetadata
HRESULT GetThisModelMetadata(
[out] WSD_THIS_MODEL_METADATA** ppManufacturerMetadata); // Note: Do not deallocate ppManufacturerMetadata
HRESULT GetThisDeviceMetadata(
[out] WSD_THIS_DEVICE_METADATA** ppThisDeviceMetadata); // Note: Do not deallocate ppThisDeviceMetadata
HRESULT GetAllMetadata(
[out] WSD_METADATA_SECTION_LIST **ppMetadata); // Note: Do not deallocate ppMetadata
HRESULT GetServiceProxyById(
[in, annotation("__in")] LPCWSTR pszServiceId,
[out] IWSDServiceProxy** ppServiceProxy);
HRESULT GetServiceProxyByType(
[in] const WSDXML_NAME* pType,
[out] IWSDServiceProxy** ppServiceProxy);
HRESULT GetEndpointProxy([out] IWSDEndpointProxy** ppProxy);
};
//+-------------------------------------------------------------------------
// IWSDAsyncResult Interface
// Description: Represent asynchronous operations
//--------------------------------------------------------------------------
[
object,
uuid(11a9852a-8dd8-423e-b537-9356db4fbfb8),
helpstring("IWSDAsyncResult Interface"),
pointer_default(unique),
restricted,
local
]
interface IWSDAsyncResult : IUnknown
{
HRESULT SetCallback(
[in] IWSDAsyncCallback* pCallback,
[in] IUnknown* pAsyncState);
HRESULT SetWaitHandle(
[in] HANDLE hWaitHandle);
HRESULT HasCompleted();
HRESULT GetAsyncState(
[out] IUnknown** ppAsyncState);
HRESULT Abort();
HRESULT GetEvent(
[out] WSD_EVENT* pEvent);
HRESULT GetEndpointProxy(
[out] IWSDEndpointProxy** ppEndpoint);
};
//+-------------------------------------------------------------------------
// IWSDAsyncCallback Interface
// Description: Callbacks for async operation completion.
//--------------------------------------------------------------------------
[
object,
uuid(a63e109d-ce72-49e2-ba98-e845f5ee1666),
helpstring("IWSDAsyncCallback Interface"),
pointer_default(unique),
restricted,
local
]
interface IWSDAsyncCallback : IUnknown
{
HRESULT AsyncOperationComplete(
[in] IWSDAsyncResult* pAsyncResult,
[in] IUnknown* pAsyncState);
};
//+-------------------------------------------------------------------------
// IWSDMetadataExchange Interface
// Description: MetadataExchange
//--------------------------------------------------------------------------
[
object,
uuid(06996d57-1d67-4928-9307-3d7833fdb846),
helpstring("IWSDMetadataExchange Interface"),
pointer_default(unique),
restricted,
local
]
interface IWSDMetadataExchange : IUnknown
{
HRESULT
GetMetadata
( [out] WSD_METADATA_SECTION_LIST** MetadataOut
);
};
//+-------------------------------------------------------------------------
// IWSDEventingStatus Interface
// Description: Eventing
//--------------------------------------------------------------------------
[
object,
uuid(49b17f52-637a-407a-ae99-fbe82a4d38c0),
helpstring("IWSDEventingStatus Interface"),
pointer_default(unique),
restricted,
local
]
interface IWSDEventingStatus : IUnknown
{
void SubscriptionRenewed(
[in] LPCWSTR pszSubscriptionAction);
void SubscriptionRenewalFailed(
[in] LPCWSTR pszSubscriptionAction,
[in] HRESULT hr);
void SubscriptionEnded(
[in] LPCWSTR pszSubscriptionAction);
};