wdstptmgmt.idl 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489
  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. */
  5. cpp_quote("#include <winapifamily.h>")
  6. cpp_quote("")
  7. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  8. cpp_quote("")
  9. import "oaidl.idl";
  10. import "ocidl.idl";
  11. cpp_quote("")
  12. interface IWdsTransportCacheable;
  13. interface IWdsTransportClient;
  14. interface IWdsTransportCollection;
  15. interface IWdsTransportConfigurationManager;
  16. interface IWdsTransportConfigurationManager2;
  17. interface IWdsTransportContent;
  18. interface IWdsTransportContentProvider;
  19. interface IWdsTransportDiagnosticsPolicy;
  20. interface IWdsTransportManager;
  21. interface IWdsTransportNamespace;
  22. interface IWdsTransportNamespaceAutoCast;
  23. interface IWdsTransportNamespaceManager;
  24. interface IWdsTransportNamespaceScheduledCast;
  25. interface IWdsTransportNamespaceScheduledCastAutoStart;
  26. interface IWdsTransportNamespaceScheduledCastManualStart;
  27. interface IWdsTransportServer;
  28. interface IWdsTransportServer2;
  29. interface IWdsTransportServicePolicy;
  30. interface IWdsTransportServicePolicy2;
  31. interface IWdsTransportSetupManager;
  32. interface IWdsTransportSetupManager2;
  33. interface IWdsTransportTftpManager;
  34. interface IWdsTransportMulticastSessionPolicy;
  35. interface IWdsTransportSession;
  36. interface IWdsTransportTftpClient;
  37. cpp_quote("")
  38. typedef [v1_enum] enum {
  39. WdsTptProtocolUnicast = 0x1,
  40. WdsTptProtocolMulticast = 0x2
  41. } WDSTRANSPORT_PROTOCOL_FLAGS;
  42. cpp_quote("")
  43. typedef [v1_enum] enum {
  44. WdsTptNamespaceTypeUnknown = 0,
  45. WdsTptNamespaceTypeAutoCast = 1,
  46. WdsTptNamespaceTypeScheduledCastManualStart = 2,
  47. WdsTptNamespaceTypeScheduledCastAutoStart = 3
  48. } WDSTRANSPORT_NAMESPACE_TYPE;
  49. cpp_quote("")
  50. typedef [v1_enum] enum {
  51. WdsTptDisconnectUnknown = 0,
  52. WdsTptDisconnectFallback = 1,
  53. WdsTptDisconnectAbort = 2
  54. } WDSTRANSPORT_DISCONNECT_TYPE;
  55. cpp_quote("")
  56. typedef [v1_enum] enum {
  57. WdsTptSlowClientHandlingUnknown = 0,
  58. WdsTptSlowClientHandlingNone = 1,
  59. WdsTptSlowClientHandlingAutoDisconnect = 2,
  60. WdsTptSlowClientHandlingMultistream = 3
  61. } WDSTRANSPORT_SLOW_CLIENT_HANDLING_TYPE;
  62. cpp_quote("")
  63. typedef [v1_enum] enum {
  64. WdsTptUdpPortPolicyDynamic = 0,
  65. WdsTptUdpPortPolicyFixed = 1
  66. } WDSTRANSPORT_UDP_PORT_POLICY;
  67. cpp_quote("")
  68. typedef enum {
  69. WdsTptTftpCapMaximumBlockSize = 0x1,
  70. WdsTptTftpCapVariableWindow = 0x2
  71. } WDSTRANSPORT_TFTP_CAPABILITY;
  72. cpp_quote("")
  73. typedef [v1_enum] enum {
  74. WdsTptServiceNotifyUnknown = 0,
  75. WdsTptServiceNotifyReadSettings = 1
  76. } WDSTRANSPORT_SERVICE_NOTIFICATION;
  77. cpp_quote("")
  78. typedef [v1_enum] enum {
  79. WdsTptIpAddressUnknown = 0,
  80. WdsTptIpAddressIpv4 = 1,
  81. WdsTptIpAddressIpv6 = 2
  82. } WDSTRANSPORT_IP_ADDRESS_TYPE;
  83. cpp_quote("")
  84. typedef [v1_enum] enum {
  85. WdsTptIpAddressSourceUnknown = 0,
  86. WdsTptIpAddressSourceDhcp = 1,
  87. WdsTptIpAddressSourceRange = 2
  88. } WDSTRANSPORT_IP_ADDRESS_SOURCE_TYPE;
  89. cpp_quote("")
  90. typedef [v1_enum] enum {
  91. WdsTptNetworkProfileUnknown = 0,
  92. WdsTptNetworkProfileCustom = 1,
  93. WdsTptNetworkProfile10Mbps = 2,
  94. WdsTptNetworkProfile100Mbps = 3,
  95. WdsTptNetworkProfile1Gbps = 4
  96. } WDSTRANSPORT_NETWORK_PROFILE_TYPE;
  97. cpp_quote("")
  98. typedef [v1_enum] enum {
  99. WdsTptFeatureAdminPack = 0x1,
  100. WdsTptFeatureTransportServer = 0x2,
  101. WdsTptFeatureDeploymentServer = 0x4
  102. } WDSTRANSPORT_FEATURE_FLAGS;
  103. cpp_quote("")
  104. cpp_quote("#define WDSTRANSPORT_FEATURE_FLAGS_ALL (WdsTptFeatureAdminPack | WdsTptFeatureTransportServer | WdsTptFeatureDeploymentServer)")
  105. cpp_quote("")
  106. typedef [v1_enum] enum {
  107. WdsTptDiagnosticsComponentPxe = 0x1,
  108. WdsTptDiagnosticsComponentTftp = 0x2,
  109. WdsTptDiagnosticsComponentImageServer = 0x4,
  110. WdsTptDiagnosticsComponentMulticast = 0x8
  111. } WDSTRANSPORT_DIAGNOSTICS_COMPONENT_FLAGS;
  112. cpp_quote("")
  113. cpp_quote("#define WDSTRANSPORT_DIAGNOSTICS_COMPONENT_FLAGS_ALL (WdsTptDiagnosticsComponentPxe | WdsTptDiagnosticsComponentTftp | WdsTptDiagnosticsComponentImageServer | WdsTptDiagnosticsComponentMulticast)")
  114. cpp_quote("#define WDSTRANSPORT_RESOURCE_UTILIZATION_UNKNOWN 0xff")
  115. cpp_quote("")
  116. typedef WDSTRANSPORT_PROTOCOL_FLAGS *PWDSTRANSPORT_PROTOCOL_FLAGS;
  117. typedef WDSTRANSPORT_NAMESPACE_TYPE *PWDSTRANSPORT_NAMESPACE_TYPE;
  118. typedef WDSTRANSPORT_DISCONNECT_TYPE *PWDSTRANSPORT_DISCONNECT_TYPE;
  119. typedef WDSTRANSPORT_SLOW_CLIENT_HANDLING_TYPE *PWDSTRANSPORT_SLOW_CLIENT_HANDLING_TYPE;
  120. typedef WDSTRANSPORT_UDP_PORT_POLICY *PWDSTRANSPORT_UDP_PORT_POLICY;
  121. typedef WDSTRANSPORT_TFTP_CAPABILITY *PWDSTRANSPORT_TFTP_CAPABILITY;
  122. typedef WDSTRANSPORT_SERVICE_NOTIFICATION *PWDSTRANSPORT_SERVICE_NOTIFICATION;
  123. typedef WDSTRANSPORT_IP_ADDRESS_TYPE *PWDSTRANSPORT_IP_ADDRESS_TYPE;
  124. typedef WDSTRANSPORT_IP_ADDRESS_SOURCE_TYPE *PWDSTRANSPORT_IP_ADDRESS_SOURCE_TYPE;
  125. typedef WDSTRANSPORT_NETWORK_PROFILE_TYPE *PWDSTRANSPORT_NETWORK_PROFILE_TYPE;
  126. typedef WDSTRANSPORT_FEATURE_FLAGS *PWDSTRANSPORT_FEATURE_FLAGS;
  127. typedef WDSTRANSPORT_DIAGNOSTICS_COMPONENT_FLAGS *PWDSTRANSPORT_DIAGNOSTICS_COMPONENT_FLAGS;
  128. cpp_quote("")
  129. [object, uuid (46ad894b-0bab-47dc-84b2-7b553f1d8f80), dual, nonextensible, pointer_default (unique)]
  130. interface IWdsTransportCacheable : IDispatch {
  131. [propget, id (101)] HRESULT Dirty ([out, retval] VARIANT_BOOL *pbDirty);
  132. [id (102)] HRESULT Discard (void);
  133. [id (103)] HRESULT Refresh (void);
  134. [id (104)] HRESULT Commit (void);
  135. };
  136. cpp_quote("")
  137. [object, uuid (B8BA4B1A-2ff4-43ab-996c-B2B10A91A6EB), dual, nonextensible, pointer_default (unique)]
  138. interface IWdsTransportCollection : IDispatch {
  139. [propget, id (1)] HRESULT Count ([out, retval] ULONG *pulCount);
  140. [propget, id (2)] HRESULT Item ([in] ULONG ulIndex,[out, retval] IDispatch **ppVal);
  141. [propget, id (DISPID_NEWENUM)] HRESULT _NewEnum ([out, retval] IUnknown **ppVal);
  142. };
  143. cpp_quote("")
  144. [object, uuid (84cc4779-42dd-4792-891e-1321d6d74b44), dual, nonextensible, pointer_default (unique)]
  145. interface IWdsTransportConfigurationManager : IDispatch {
  146. [propget, id (1)] HRESULT ServicePolicy ([out, retval] IWdsTransportServicePolicy **ppWdsTransportServicePolicy);
  147. [propget, id (2)] HRESULT DiagnosticsPolicy ([out, retval] IWdsTransportDiagnosticsPolicy **ppWdsTransportDiagnosticsPolicy);
  148. [propget, id (3)] HRESULT WdsTransportServicesRunning ([in] VARIANT_BOOL bRealtimeStatus,[out, retval] VARIANT_BOOL *pbServicesRunning);
  149. [id (4)] HRESULT EnableWdsTransportServices (void);
  150. [id (5)] HRESULT DisableWdsTransportServices (void);
  151. [id (6)] HRESULT StartWdsTransportServices (void);
  152. [id (7)] HRESULT StopWdsTransportServices (void);
  153. [id (8)] HRESULT RestartWdsTransportServices (void);
  154. [id (9)] HRESULT NotifyWdsTransportServices ([in] WDSTRANSPORT_SERVICE_NOTIFICATION ServiceNotification);
  155. };
  156. cpp_quote("")
  157. [object, uuid (13b33efc-7856-4f61-9a59-8de67b6b87b6), dual, nonextensible, pointer_default (unique)]
  158. interface IWdsTransportDiagnosticsPolicy : IWdsTransportCacheable {
  159. [propget, id (1)] HRESULT Enabled ([out, retval] VARIANT_BOOL *pbEnabled);
  160. [propput, id (1)] HRESULT Enabled ([in] VARIANT_BOOL bEnabled);
  161. [propget, id (2)] HRESULT Components ([out, retval] ULONG *pulComponents);
  162. [propput, id (2)] HRESULT Components ([in] ULONG ulComponents);
  163. };
  164. cpp_quote("")
  165. [object, uuid (D0D85CAF-A153-4f1d-A9DD-96f431c50717), dual, nonextensible, pointer_default (unique)]
  166. interface IWdsTransportConfigurationManager2 : IWdsTransportConfigurationManager {
  167. [propget, id (10)] HRESULT MulticastSessionPolicy ([out, retval] IWdsTransportMulticastSessionPolicy **ppWdsTransportMulticastSessionPolicy);
  168. };
  169. cpp_quote("")
  170. [object, uuid (5b0d35f5-1b13-4afd-B878-6526dc340b5d), dual, nonextensible, pointer_default (unique)]
  171. interface IWdsTransportManager : IDispatch {
  172. [id (1)] HRESULT GetWdsTransportServer ([in] BSTR bszServerName,[out, retval] IWdsTransportServer **ppWdsTransportServer);
  173. };
  174. cpp_quote("")
  175. [object, uuid (FA561F57-FBEF-4ed3-B056-127cb1b33b84), dual, nonextensible, pointer_default (unique)]
  176. interface IWdsTransportNamespace : IDispatch {
  177. [propget, id (1)] HRESULT Type ([out, retval] WDSTRANSPORT_NAMESPACE_TYPE *pType);
  178. [propget, id (2)] HRESULT Id ([out, retval] ULONG *pulId);
  179. [propget, id (3)] HRESULT Name ([out, retval] BSTR *pbszName);
  180. [propput, id (3)] HRESULT Name ([in] BSTR bszName);
  181. [propget, id (4)] HRESULT FriendlyName ([out, retval] BSTR *pbszFriendlyName);
  182. [propput, id (4)] HRESULT FriendlyName ([in] BSTR bszFriendlyName);
  183. [propget, id (5)] HRESULT Description ([out, retval] BSTR *pbszDescription);
  184. [propput, id (5)] HRESULT Description ([in] BSTR bszDescription);
  185. [propget, id (6)] HRESULT ContentProvider ([out, retval] BSTR *pbszContentProvider);
  186. [propput, id (6)] HRESULT ContentProvider ([in] BSTR bszContentProvider);
  187. [propget, id (7)] HRESULT Configuration ([out, retval] BSTR *pbszConfiguration);
  188. [propput, id (7)] HRESULT Configuration ([in] BSTR bszConfiguration);
  189. [propget, id (8)] HRESULT Registered ([out, retval] VARIANT_BOOL *pbRegistered);
  190. [propget, id (9)] HRESULT Tombstoned ([out, retval] VARIANT_BOOL *pbTombstoned);
  191. [propget, id (10)] HRESULT TombstoneTime ([out, retval] DATE *pTombstoneTime);
  192. [propget, id (11)] HRESULT TransmissionStarted ([out, retval] VARIANT_BOOL *pbTransmissionStarted);
  193. [id (12)] HRESULT Register (void);
  194. [id (13)] HRESULT Deregister ([in] VARIANT_BOOL bTerminateSessions);
  195. [id (14)] HRESULT Clone ([out, retval] IWdsTransportNamespace **ppWdsTransportNamespaceClone);
  196. [id (15)] HRESULT Refresh (void);
  197. [id (16)] HRESULT RetrieveContents ([out, retval] IWdsTransportCollection **ppWdsTransportContents);
  198. };
  199. cpp_quote("")
  200. [object, uuid (AD931A72-C4BD-4c41-8fbc-59c9c748df9e), dual, nonextensible, pointer_default (unique)]
  201. interface IWdsTransportNamespaceAutoCast : IWdsTransportNamespace {
  202. };
  203. cpp_quote("")
  204. [object, uuid (3840cecf-D76C-416e-A4CC-31c741d2874b), dual, nonextensible, pointer_default (unique)]
  205. interface IWdsTransportNamespaceScheduledCast : IWdsTransportNamespace {
  206. [id (101)] HRESULT StartTransmission (void);
  207. };
  208. cpp_quote("")
  209. [object, uuid (013e6e4c-E6A7-4fb5-B7FF-D9F5DA805C31), dual, nonextensible, pointer_default (unique)]
  210. interface IWdsTransportNamespaceScheduledCastManualStart : IWdsTransportNamespaceScheduledCast {
  211. };
  212. cpp_quote("")
  213. [object, uuid (D606AF3D-EA9C-4219-961e-7491d618d9b9), dual, nonextensible, pointer_default (unique)]
  214. interface IWdsTransportNamespaceScheduledCastAutoStart : IWdsTransportNamespaceScheduledCast {
  215. [propget, id (201)] HRESULT MinimumClients ([out, retval] ULONG *pulMinimumClients);
  216. [propput, id (201)] HRESULT MinimumClients ([in] ULONG ulMinimumClients);
  217. [propget, id (202)] HRESULT StartTime ([out, retval] DATE *pStartTime);
  218. [propput, id (202)] HRESULT StartTime ([in] DATE StartTime);
  219. };
  220. cpp_quote("")
  221. [object, uuid (3e22d9f6-3777-4d98-83e1-F98696717BA3), dual, nonextensible, pointer_default (unique)]
  222. interface IWdsTransportNamespaceManager : IDispatch {
  223. [id (1)] HRESULT CreateNamespace ([in] WDSTRANSPORT_NAMESPACE_TYPE NamespaceType,[in] BSTR bszNamespaceName,[in] BSTR bszContentProvider,[in] BSTR bszConfiguration,[out, retval] IWdsTransportNamespace **ppWdsTransportNamespace);
  224. [id (2)] HRESULT RetrieveNamespace ([in] BSTR bszNamespaceName,[out, retval] IWdsTransportNamespace **ppWdsTransportNamespace);
  225. [id (3)] HRESULT RetrieveNamespaces ([in] BSTR bszContentProvider,[in] BSTR bszNamespaceName,[in] VARIANT_BOOL bIncludeTombstones,[out, retval] IWdsTransportCollection **ppWdsTransportNamespaces);
  226. };
  227. cpp_quote("")
  228. [object, uuid (09ccd093-830d-4344-A30A-73ae8e8fca90), dual, nonextensible, pointer_default (unique)]
  229. interface IWdsTransportServer : IDispatch {
  230. [propget, id (1)] HRESULT Name ([out, retval] BSTR *pbszName);
  231. [propget, id (2)] HRESULT SetupManager ([out, retval] IWdsTransportSetupManager **ppWdsTransportSetupManager);
  232. [propget, id (3)] HRESULT ConfigurationManager ([out, retval] IWdsTransportConfigurationManager **ppWdsTransportConfigurationManager);
  233. [propget, id (4)] HRESULT NamespaceManager ([out, retval] IWdsTransportNamespaceManager **ppWdsTransportNamespaceManager);
  234. [id (5)] HRESULT DisconnectClient ([in] ULONG ulClientId, WDSTRANSPORT_DISCONNECT_TYPE DisconnectionType);
  235. };
  236. cpp_quote("")
  237. [object, uuid (256e999f-6df4-4538-81b9-857b9ab8fb47), dual, nonextensible, pointer_default (unique)]
  238. interface IWdsTransportServer2 : IWdsTransportServer {
  239. [propget, id (6)] HRESULT TftpManager ([out, retval] IWdsTransportTftpManager **ppWdsTransportTftpManager);
  240. };
  241. cpp_quote("")
  242. [object, uuid (B9468578-9f2b-48cc-B27A-A60799C2750C), dual, nonextensible, pointer_default (unique)]
  243. interface IWdsTransportServicePolicy : IWdsTransportCacheable {
  244. [propget, id (1)] HRESULT IpAddressSource ([in] WDSTRANSPORT_IP_ADDRESS_TYPE AddressType,[out, retval] WDSTRANSPORT_IP_ADDRESS_SOURCE_TYPE *pSourceType);
  245. [propput, id (1)] HRESULT IpAddressSource ([in] WDSTRANSPORT_IP_ADDRESS_TYPE AddressType,[in] WDSTRANSPORT_IP_ADDRESS_SOURCE_TYPE SourceType);
  246. [propget, id (2)] HRESULT StartIpAddress ([in] WDSTRANSPORT_IP_ADDRESS_TYPE AddressType,[out, retval] BSTR *pbszStartIpAddress);
  247. [propput, id (2)] HRESULT StartIpAddress ([in] WDSTRANSPORT_IP_ADDRESS_TYPE AddressType,[in] BSTR bszStartIpAddress);
  248. [propget, id (3)] HRESULT EndIpAddress ([in] WDSTRANSPORT_IP_ADDRESS_TYPE AddressType,[out, retval] BSTR *pbszEndIpAddress);
  249. [propput, id (3)] HRESULT EndIpAddress ([in] WDSTRANSPORT_IP_ADDRESS_TYPE AddressType,[in] BSTR bszEndIpAddress);
  250. [propget, id (4)] HRESULT StartPort ([out, retval] ULONG *pulStartPort);
  251. [propput, id (4)] HRESULT StartPort ([in] ULONG ulStartPort);
  252. [propget, id (5)] HRESULT EndPort ([out, retval] ULONG *pulEndPort);
  253. [propput, id (5)] HRESULT EndPort ([in] ULONG ulEndPort);
  254. [propget, id (6)] HRESULT NetworkProfile ([out, retval] WDSTRANSPORT_NETWORK_PROFILE_TYPE *pProfileType);
  255. [propput, id (6)] HRESULT NetworkProfile ([in] WDSTRANSPORT_NETWORK_PROFILE_TYPE ProfileType);
  256. };
  257. cpp_quote("")
  258. [object, uuid (65c19e5c-AA7E-4b91-8944-91e0e5572797), dual, nonextensible, pointer_default (unique)]
  259. interface IWdsTransportServicePolicy2 : IWdsTransportServicePolicy {
  260. [propget, id (7)] HRESULT UdpPortPolicy ([out, retval] WDSTRANSPORT_UDP_PORT_POLICY *pUdpPortPolicy);
  261. [propput, id (7)] HRESULT UdpPortPolicy ([in] WDSTRANSPORT_UDP_PORT_POLICY UdpPortPolicy);
  262. [propget, id (8)] HRESULT TftpMaximumBlockSize ([out, retval] ULONG *pulTftpMaximumBlockSize);
  263. [propput, id (8)] HRESULT TftpMaximumBlockSize ([in] ULONG ulTftpMaximumBlockSize);
  264. [propget, id (9)] HRESULT EnableTftpVariableWindowExtension ([out, retval] VARIANT_BOOL *pbEnableTftpVariableWindowExtension);
  265. [propput, id (9)] HRESULT EnableTftpVariableWindowExtension ([in] VARIANT_BOOL bEnableTftpVariableWindowExtension);
  266. };
  267. cpp_quote("")
  268. [object, uuid (F7238425-EFA8-40a4-AEF9-C98D969C0B75), dual, nonextensible, pointer_default (unique)]
  269. interface IWdsTransportSetupManager : IDispatch {
  270. [propget, id (1)] HRESULT Version ([out, retval] ULONGLONG *pullVersion);
  271. [propget, id (2)] HRESULT InstalledFeatures ([out, retval] ULONG *pulInstalledFeatures);
  272. [propget, id (3)] HRESULT Protocols ([out, retval] ULONG *pulProtocols);
  273. [id (4)] HRESULT RegisterContentProvider ([in] BSTR bszName,[in] BSTR bszDescription,[in] BSTR bszFilePath,[in] BSTR bszInitializationRoutine);
  274. [id (5)] HRESULT DeregisterContentProvider ([in] BSTR bszName);
  275. };
  276. cpp_quote("")
  277. [object, uuid (02be79da-7e9e-4366-8b6e-2aa9a91be47f), dual, nonextensible, pointer_default (unique)]
  278. interface IWdsTransportSetupManager2 : IWdsTransportSetupManager {
  279. [propget, id (6)] HRESULT TftpCapabilities ([out, retval] ULONG *pulTftpCapabilities);
  280. [propget, id (7)] HRESULT ContentProviders ([out, retval] IWdsTransportCollection **ppProviderCollection);
  281. };
  282. cpp_quote("")
  283. [object, uuid (1327a7c8-ae8a-4fb3-8150-136227c37e9a), dual, nonextensible, pointer_default (unique)]
  284. interface IWdsTransportTftpManager : IDispatch {
  285. [id (1)] HRESULT RetrieveTftpClients ([out, retval] IWdsTransportCollection **ppWdsTransportTftpClients);
  286. };
  287. cpp_quote("")
  288. [object, uuid (4e5753cf-68ec-4504-A951-4a003266606b), dual, nonextensible, pointer_default (unique)]
  289. interface IWdsTransportMulticastSessionPolicy : IWdsTransportCacheable {
  290. [propget, id (1)] HRESULT SlowClientHandling ([out, retval] WDSTRANSPORT_SLOW_CLIENT_HANDLING_TYPE *pSlowClientHandling);
  291. [propput, id (1)] HRESULT SlowClientHandling ([in] WDSTRANSPORT_SLOW_CLIENT_HANDLING_TYPE SlowClientHandling);
  292. [propget, id (2)] HRESULT AutoDisconnectThreshold ([out, retval] ULONG *pulThreshold);
  293. [propput, id (2)] HRESULT AutoDisconnectThreshold ([in] ULONG ulThreshold);
  294. [propget, id (3)] HRESULT MultistreamStreamCount ([out, retval] ULONG *pulStreamCount);
  295. [propput, id (3)] HRESULT MultistreamStreamCount ([in] ULONG ulStreamCount);
  296. [propget, id (4)] HRESULT SlowClientFallback ([out, retval] VARIANT_BOOL *pbClientFallback);
  297. [propput, id (4)] HRESULT SlowClientFallback ([in] VARIANT_BOOL bClientFallback);
  298. };
  299. cpp_quote("")
  300. [object, uuid (D405D711-0296-4ab4-A860-AC7D32E65798), dual, nonextensible, pointer_default (unique)]
  301. interface IWdsTransportContent : IDispatch {
  302. [propget, id (1)] HRESULT Namespace ([out, retval] IWdsTransportNamespace **ppWdsTransportNamespace);
  303. [propget, id (2)] HRESULT Id ([out, retval] ULONG *pulId);
  304. [propget, id (3)] HRESULT Name ([out, retval] BSTR *pbszName);
  305. [id (4)] HRESULT RetrieveSessions ([out, retval] IWdsTransportCollection **ppWdsTransportSessions);
  306. [id (5)] HRESULT Terminate (void);
  307. };
  308. cpp_quote("")
  309. [object, uuid (F4EFEA88-65b1-4f30-A4B9-2793987796fb), dual, nonextensible, pointer_default (unique)]
  310. interface IWdsTransportSession : IDispatch {
  311. [propget, id (1)] HRESULT Content ([out, retval] IWdsTransportContent **ppWdsTransportContent);
  312. [propget, id (2)] HRESULT Id ([out, retval] ULONG *pulId);
  313. [propget, id (3)] HRESULT NetworkInterfaceName ([out, retval] BSTR *pbszNetworkInterfaceName);
  314. [propget, id (4)] HRESULT NetworkInterfaceAddress ([out, retval] BSTR *pbszNetworkInterfaceAddress);
  315. [propget, id (5)] HRESULT TransferRate ([out, retval] ULONG *pulTransferRate);
  316. [propget, id (6)] HRESULT MasterClientId ([out, retval] ULONG *pulMasterClientId);
  317. [id (7)] HRESULT RetrieveClients ([out, retval] IWdsTransportCollection **ppWdsTransportClients);
  318. [id (8)] HRESULT Terminate (void);
  319. };
  320. cpp_quote("")
  321. [object, uuid (B5DBC93A-CABE-46ca-837f-3e44e93c6545), dual, nonextensible, pointer_default (unique)]
  322. interface IWdsTransportClient : IDispatch {
  323. [propget, id (1)] HRESULT Session ([out, retval] IWdsTransportSession **ppWdsTransportSession);
  324. [propget, id (2)] HRESULT Id ([out, retval] ULONG *pulId);
  325. [propget, id (3)] HRESULT Name ([out, retval] BSTR *pbszName);
  326. [propget, id (4)] HRESULT MacAddress ([out, retval] BSTR *pbszMacAddress);
  327. [propget, id (5)] HRESULT IpAddress ([out, retval] BSTR *pbszIpAddress);
  328. [propget, id (6)] HRESULT PercentCompletion ([out, retval] ULONG *pulPercentCompletion);
  329. [propget, id (7)] HRESULT JoinDuration ([out, retval] ULONG *pulJoinDuration);
  330. [propget, id (8)] HRESULT CpuUtilization ([out, retval] ULONG *pulCpuUtilization);
  331. [propget, id (9)] HRESULT MemoryUtilization ([out, retval] ULONG *pulMemoryUtilization);
  332. [propget, id (10)] HRESULT NetworkUtilization ([out, retval] ULONG *pulNetworkUtilization);
  333. [propget, id (11)] HRESULT UserIdentity ([out, retval] BSTR *pbszUserIdentity);
  334. [id (12)] HRESULT Disconnect ([in] WDSTRANSPORT_DISCONNECT_TYPE DisconnectionType);
  335. };
  336. cpp_quote("")
  337. [object, uuid (b022d3ae-884d-4d85-b146-53320e76ef62), dual, nonextensible, pointer_default (unique)]
  338. interface IWdsTransportTftpClient : IDispatch {
  339. [propget, id (1)] HRESULT FileName ([out, retval] BSTR *pbszFileName);
  340. [propget, id (2)] HRESULT IpAddress ([out, retval] BSTR *pbszIpAddress);
  341. [propget, id (3)] HRESULT Timeout ([out, retval] ULONG *pulTimeout);
  342. [propget, id (4)] HRESULT CurrentFileOffset ([out, retval] ULONG64 *pul64CurrentOffset);
  343. [propget, id (5)] HRESULT FileSize ([out, retval] ULONG64 *pul64FileSize);
  344. [propget, id (6)] HRESULT BlockSize ([out, retval] ULONG *pulBlockSize);
  345. [propget, id (7)] HRESULT WindowSize ([out, retval] ULONG *pulWindowSize);
  346. };
  347. cpp_quote("")
  348. [object, uuid (B9489F24-F219-4acf-AAD7-265c7c08a6ae), dual, nonextensible, pointer_default (unique)]
  349. interface IWdsTransportContentProvider : IDispatch {
  350. [propget, id (1)] HRESULT Name ([out, retval] BSTR *pbszName);
  351. [propget, id (2)] HRESULT Description ([out, retval] BSTR *pbszDescription);
  352. [propget, id (3)] HRESULT FilePath ([out, retval] BSTR *pbszFilePath);
  353. [propget, id (4)] HRESULT InitializationRoutine ([out, retval] BSTR *pbszInitializationRoutine);
  354. };
  355. cpp_quote("")
  356. [uuid (9212887f-F5BC-45dd-A510-265413a18ed7), version (1.0)]
  357. library WdsTptMgmtLib {
  358. importlib ("stdole2.tlb");
  359. [uuid (70590b16-F146-46bd-BD9D-4aaa90084bf5), noncreatable]
  360. coclass WdsTransportCacheable {
  361. [default] interface IWdsTransportCacheable;
  362. };
  363. [uuid (C7F18B09-391e-436e-B10B-C3EF46F2C34F), noncreatable]
  364. coclass WdsTransportCollection {
  365. [default] interface IWdsTransportCollection;
  366. };
  367. [uuid (F21523F6-837c-4a58-AF99-8a7e27f8ff59)]
  368. coclass WdsTransportManager {
  369. [default] interface IWdsTransportManager;
  370. };
  371. [uuid (EA19B643-4adf-4413-942c-14f379118760), noncreatable]
  372. coclass WdsTransportServer {
  373. [default] interface IWdsTransportServer;
  374. interface IWdsTransportServer2;
  375. };
  376. [uuid (C7BEEAAD-9f04-4923-9f0c-FBF52BC7590F), noncreatable]
  377. coclass WdsTransportSetupManager {
  378. [default] interface IWdsTransportSetupManager;
  379. interface IWdsTransportSetupManager2;
  380. };
  381. [uuid (8743f674-904c-47ca-8512-35fe98f6b0ac), noncreatable]
  382. coclass WdsTransportConfigurationManager {
  383. [default] interface IWdsTransportConfigurationManager;
  384. interface IWdsTransportConfigurationManager2;
  385. };
  386. [uuid (F08CDB63-85de-4a28-A1A9-5ca3e7efda73), noncreatable]
  387. coclass WdsTransportNamespaceManager {
  388. [default] interface IWdsTransportNamespaceManager;
  389. };
  390. [uuid (65aceadc-2f0b-4f43-9f4d-811865d8cead), noncreatable]
  391. coclass WdsTransportServicePolicy {
  392. [default] interface IWdsTransportServicePolicy;
  393. interface IWdsTransportServicePolicy2;
  394. };
  395. [uuid (EB3333E1-A7AD-46f5-80d6-6b740204e509), noncreatable]
  396. coclass WdsTransportDiagnosticsPolicy {
  397. [default] interface IWdsTransportDiagnosticsPolicy;
  398. };
  399. [uuid (3c6bc3f4-6418-472a-B6F1-52d457195437), noncreatable]
  400. coclass WdsTransportMulticastSessionPolicy {
  401. [default] interface IWdsTransportMulticastSessionPolicy;
  402. };
  403. [uuid (D8385768-0732-4ec1-95ea-16da581908a1), noncreatable]
  404. coclass WdsTransportNamespace {
  405. [default] interface IWdsTransportNamespace;
  406. };
  407. [uuid (B091F5A8-6a99-478d-B23B-09e8fee04574), noncreatable]
  408. coclass WdsTransportNamespaceAutoCast {
  409. [default] interface IWdsTransportNamespaceAutoCast;
  410. };
  411. [uuid (BADC1897-7025-44eb-9108-FB61C4055792), noncreatable]
  412. coclass WdsTransportNamespaceScheduledCast {
  413. [default] interface IWdsTransportNamespaceScheduledCast;
  414. };
  415. [uuid (D3E1A2AA-CAAC-460e-B98A-47f9f318a1fa), noncreatable]
  416. coclass WdsTransportNamespaceScheduledCastManualStart {
  417. [default] interface IWdsTransportNamespaceScheduledCastManualStart;
  418. };
  419. [uuid (A1107052-122c-4b81-9b7c-386e6855383f), noncreatable]
  420. coclass WdsTransportNamespaceScheduledCastAutoStart {
  421. [default] interface IWdsTransportNamespaceScheduledCastAutoStart;
  422. };
  423. [uuid (0a891fe7-4a3f-4c65-B6F2-1467619679ea), noncreatable]
  424. coclass WdsTransportContent {
  425. [default] interface IWdsTransportContent;
  426. };
  427. [uuid (749ac4e0-67bc-4743-BFE5-CACB1F26F57F), noncreatable]
  428. coclass WdsTransportSession {
  429. [default] interface IWdsTransportSession;
  430. };
  431. [uuid (66d2c5e9-0ff6-49ec-9733-DAFB1E01DF1C), noncreatable]
  432. coclass WdsTransportClient {
  433. [default] interface IWdsTransportClient;
  434. };
  435. [uuid (50343925-7c5c-4c8c-96c4-ad9fa5005fba), noncreatable]
  436. coclass WdsTransportTftpClient {
  437. [default] interface IWdsTransportTftpClient;
  438. };
  439. [uuid (c8e9dca2-3241-4e4d-b806-bc74019dfeda), noncreatable]
  440. coclass WdsTransportTftpManager {
  441. [default] interface IWdsTransportTftpManager;
  442. };
  443. [uuid (E0BE741F-5a75-4eb9-8a2d-5e189b45f327), noncreatable]
  444. coclass WdsTransportContentProvider {
  445. [default] interface IWdsTransportContentProvider;
  446. };
  447. };
  448. cpp_quote("#endif")