1/** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 7#ifndef _INC_WDSTPDI 8#define _INC_WDSTPDI 9#if (_WIN32_WINNT >= 0x0600) 10 11#ifdef __cplusplus 12extern "C" { 13#endif 14 15/* Wdsmc.dll is missing an implib because Vista clients don't have the dll to generate it from */ 16 17#ifndef WDSMCSAPI 18#define WDSMCSAPI WINAPI 19#endif 20 21typedef enum _TRANSPORTPROVIDER_CALLBACK_ID { 22 WDS_TRANSPORTPROVIDER_CREATE_INSTANCE = 0, 23 WDS_TRANSPORTPROVIDER_COMPARE_CONTENT = 1, 24 WDS_TRANSPORTPROVIDER_OPEN_CONTENT = 2, 25 WDS_TRANSPORTPROVIDER_USER_ACCESS_CHECK = 3, 26 WDS_TRANSPORTPROVIDER_GET_CONTENT_SIZE = 4, 27 WDS_TRANSPORTPROVIDER_READ_CONTENT = 5, 28 WDS_TRANSPORTPROVIDER_CLOSE_CONTENT = 6, 29 WDS_TRANSPORTPROVIDER_CLOSE_INSTANCE = 7, 30 WDS_TRANSPORTPROVIDER_SHUTDOWN = 8, 31 WDS_TRANSPORTPROVIDER_DUMP_STATE = 9, 32 WDS_TRANSPORTPROVIDER_REFRESH_SETTINGS = 10, 33 WDS_TRANSPORTPROVIDER_GET_CONTENT_METADATA = 11, 34 WDS_TRANSPORTPROVIDER_MAX_CALLBACKS = 12 35} TRANSPORTPROVIDER_CALLBACK_ID, *PTRANSPORTPROVIDER_CALLBACK_ID; 36 37typedef enum _WDS_MC_SEVERITY { 38 WDS_MC_TRACE_VERBOSE = 0x00010000, 39 WDS_MC_TRACE_INFO = 0x00020000, 40 WDS_MC_TRACE_WARNING = 0x00040000, 41 WDS_MC_TRACE_ERROR = 0x00080000, 42 WDS_MC_TRACE_FATAL = 0x00010000 43} WDS_MC_SEVERITY; 44 45typedef struct _WDS_TRANSPORTPROVIDER_INIT_PARAMS { 46 ULONG ulLength; 47 ULONG ulMcServerVersion; 48 HKEY hRegistryKey; 49 HANDLE hProvider; 50} WDS_TRANSPORTPROVIDER_INIT_PARAMS, *PWDS_TRANSPORTPROVIDER_INIT_PARAMS; 51 52typedef struct _WDS_TRANSPORTPROVIDER_SETTINGS { 53 ULONG ulLength; 54 ULONG ulLength; 55} WDS_TRANSPORTPROVIDER_SETTINGS, *PWDS_TRANSPORTPROVIDER_SETTINGS; 56 57PVOID WDSMCSAPI WdsTransportServerAllocateBuffer( 58 HANDLE hProvider, 59 ULONG ulBufferSize 60); 61 62HRESULT WDSMCSAPI WdsTransportServerCompleteRead( 63 HANDLE hProvider, 64 ULONG ulBytesRead, 65 PVOID pvUserData, 66 HRESULT hReadResult 67); 68 69HRESULT WDSMCSAPI WdsTransportServerFreeBuffer( 70 HANDLE hProvider, 71 PVOID pvBuffer 72); 73 74HRESULT WDSMCSAPI WdsTransportServerRegisterCallback( 75 HANDLE hProvider, 76 TRANSPORTPROVIDER_CALLBACK_ID CallbackId, 77 PVOID pfnCallback 78); 79 80HRESULT WDSMCSAPI WdsTransportServerTraceV( 81 HANDLE hProvider, 82 WDS_MC_SEVERITY Severity, 83 LPCWSTR pwszFormat, 84 va_list Params 85); 86 87HRESULT WDSMCSAPI WdsTransportServerTrace( 88 HANDLE hProvider, 89 WDS_MC_SEVERITY Severity, 90 LPCWSTR pwszFormat 91); 92 93#ifdef __cplusplus 94} 95#endif 96#endif /*(_WIN32_WINNT >= 0x0600)*/ 97#endif /*_INC_WDSTPDI*/ 98