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 12 extern "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 21 typedef 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 37 typedef 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 45 typedef 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 52 typedef struct _WDS_TRANSPORTPROVIDER_SETTINGS { 53 ULONG ulLength; 54 ULONG ulLength; 55 } WDS_TRANSPORTPROVIDER_SETTINGS, *PWDS_TRANSPORTPROVIDER_SETTINGS; 56 57 PVOID WDSMCSAPI WdsTransportServerAllocateBuffer( 58 HANDLE hProvider, 59 ULONG ulBufferSize 60 ); 61 62 HRESULT WDSMCSAPI WdsTransportServerCompleteRead( 63 HANDLE hProvider, 64 ULONG ulBytesRead, 65 PVOID pvUserData, 66 HRESULT hReadResult 67 ); 68 69 HRESULT WDSMCSAPI WdsTransportServerFreeBuffer( 70 HANDLE hProvider, 71 PVOID pvBuffer 72 ); 73 74 HRESULT WDSMCSAPI WdsTransportServerRegisterCallback( 75 HANDLE hProvider, 76 TRANSPORTPROVIDER_CALLBACK_ID CallbackId, 77 PVOID pfnCallback 78 ); 79 80 HRESULT WDSMCSAPI WdsTransportServerTraceV( 81 HANDLE hProvider, 82 WDS_MC_SEVERITY Severity, 83 LPCWSTR pwszFormat, 84 va_list Params 85 ); 86 87 HRESULT WDSMCSAPI WdsTransportServerTrace( 88 HANDLE hProvider, 89 WDS_MC_SEVERITY Severity, 90 LPCWSTR pwszFormat 91 ); 92 93 #ifdef __cplusplus 94 } 95 #endi 96 #endif /*(_WIN32_WINNT >= 0x0600)*/ 97 #endif /*_INC_WDSTPDI*/ 98