Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

7533 lines
246 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for rtccore.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __rtccore_h__
  27. #define __rtccore_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IRTCClient_FWD_DEFINED__
  33. #define __IRTCClient_FWD_DEFINED__
  34. typedef interface IRTCClient IRTCClient;
  35. #endif /* __IRTCClient_FWD_DEFINED__ */
  36. #ifndef __IRTCClientPresence_FWD_DEFINED__
  37. #define __IRTCClientPresence_FWD_DEFINED__
  38. typedef interface IRTCClientPresence IRTCClientPresence;
  39. #endif /* __IRTCClientPresence_FWD_DEFINED__ */
  40. #ifndef __IRTCClientProvisioning_FWD_DEFINED__
  41. #define __IRTCClientProvisioning_FWD_DEFINED__
  42. typedef interface IRTCClientProvisioning IRTCClientProvisioning;
  43. #endif /* __IRTCClientProvisioning_FWD_DEFINED__ */
  44. #ifndef __IRTCProfile_FWD_DEFINED__
  45. #define __IRTCProfile_FWD_DEFINED__
  46. typedef interface IRTCProfile IRTCProfile;
  47. #endif /* __IRTCProfile_FWD_DEFINED__ */
  48. #ifndef __IRTCSession_FWD_DEFINED__
  49. #define __IRTCSession_FWD_DEFINED__
  50. typedef interface IRTCSession IRTCSession;
  51. #endif /* __IRTCSession_FWD_DEFINED__ */
  52. #ifndef __IRTCParticipant_FWD_DEFINED__
  53. #define __IRTCParticipant_FWD_DEFINED__
  54. typedef interface IRTCParticipant IRTCParticipant;
  55. #endif /* __IRTCParticipant_FWD_DEFINED__ */
  56. #ifndef __IRTCProfileEvent_FWD_DEFINED__
  57. #define __IRTCProfileEvent_FWD_DEFINED__
  58. typedef interface IRTCProfileEvent IRTCProfileEvent;
  59. #endif /* __IRTCProfileEvent_FWD_DEFINED__ */
  60. #ifndef __IRTCClientEvent_FWD_DEFINED__
  61. #define __IRTCClientEvent_FWD_DEFINED__
  62. typedef interface IRTCClientEvent IRTCClientEvent;
  63. #endif /* __IRTCClientEvent_FWD_DEFINED__ */
  64. #ifndef __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
  65. #define __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
  66. typedef interface IRTCRegistrationStateChangeEvent IRTCRegistrationStateChangeEvent;
  67. #endif /* __IRTCRegistrationStateChangeEvent_FWD_DEFINED__ */
  68. #ifndef __IRTCSessionStateChangeEvent_FWD_DEFINED__
  69. #define __IRTCSessionStateChangeEvent_FWD_DEFINED__
  70. typedef interface IRTCSessionStateChangeEvent IRTCSessionStateChangeEvent;
  71. #endif /* __IRTCSessionStateChangeEvent_FWD_DEFINED__ */
  72. #ifndef __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
  73. #define __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
  74. typedef interface IRTCSessionOperationCompleteEvent IRTCSessionOperationCompleteEvent;
  75. #endif /* __IRTCSessionOperationCompleteEvent_FWD_DEFINED__ */
  76. #ifndef __IRTCParticipantStateChangeEvent_FWD_DEFINED__
  77. #define __IRTCParticipantStateChangeEvent_FWD_DEFINED__
  78. typedef interface IRTCParticipantStateChangeEvent IRTCParticipantStateChangeEvent;
  79. #endif /* __IRTCParticipantStateChangeEvent_FWD_DEFINED__ */
  80. #ifndef __IRTCMediaEvent_FWD_DEFINED__
  81. #define __IRTCMediaEvent_FWD_DEFINED__
  82. typedef interface IRTCMediaEvent IRTCMediaEvent;
  83. #endif /* __IRTCMediaEvent_FWD_DEFINED__ */
  84. #ifndef __IRTCIntensityEvent_FWD_DEFINED__
  85. #define __IRTCIntensityEvent_FWD_DEFINED__
  86. typedef interface IRTCIntensityEvent IRTCIntensityEvent;
  87. #endif /* __IRTCIntensityEvent_FWD_DEFINED__ */
  88. #ifndef __IRTCMessagingEvent_FWD_DEFINED__
  89. #define __IRTCMessagingEvent_FWD_DEFINED__
  90. typedef interface IRTCMessagingEvent IRTCMessagingEvent;
  91. #endif /* __IRTCMessagingEvent_FWD_DEFINED__ */
  92. #ifndef __IRTCBuddyEvent_FWD_DEFINED__
  93. #define __IRTCBuddyEvent_FWD_DEFINED__
  94. typedef interface IRTCBuddyEvent IRTCBuddyEvent;
  95. #endif /* __IRTCBuddyEvent_FWD_DEFINED__ */
  96. #ifndef __IRTCWatcherEvent_FWD_DEFINED__
  97. #define __IRTCWatcherEvent_FWD_DEFINED__
  98. typedef interface IRTCWatcherEvent IRTCWatcherEvent;
  99. #endif /* __IRTCWatcherEvent_FWD_DEFINED__ */
  100. #ifndef __IRTCCollection_FWD_DEFINED__
  101. #define __IRTCCollection_FWD_DEFINED__
  102. typedef interface IRTCCollection IRTCCollection;
  103. #endif /* __IRTCCollection_FWD_DEFINED__ */
  104. #ifndef __IRTCEnumParticipants_FWD_DEFINED__
  105. #define __IRTCEnumParticipants_FWD_DEFINED__
  106. typedef interface IRTCEnumParticipants IRTCEnumParticipants;
  107. #endif /* __IRTCEnumParticipants_FWD_DEFINED__ */
  108. #ifndef __IRTCEnumProfiles_FWD_DEFINED__
  109. #define __IRTCEnumProfiles_FWD_DEFINED__
  110. typedef interface IRTCEnumProfiles IRTCEnumProfiles;
  111. #endif /* __IRTCEnumProfiles_FWD_DEFINED__ */
  112. #ifndef __IRTCEnumBuddies_FWD_DEFINED__
  113. #define __IRTCEnumBuddies_FWD_DEFINED__
  114. typedef interface IRTCEnumBuddies IRTCEnumBuddies;
  115. #endif /* __IRTCEnumBuddies_FWD_DEFINED__ */
  116. #ifndef __IRTCEnumWatchers_FWD_DEFINED__
  117. #define __IRTCEnumWatchers_FWD_DEFINED__
  118. typedef interface IRTCEnumWatchers IRTCEnumWatchers;
  119. #endif /* __IRTCEnumWatchers_FWD_DEFINED__ */
  120. #ifndef __IRTCPresenceContact_FWD_DEFINED__
  121. #define __IRTCPresenceContact_FWD_DEFINED__
  122. typedef interface IRTCPresenceContact IRTCPresenceContact;
  123. #endif /* __IRTCPresenceContact_FWD_DEFINED__ */
  124. #ifndef __IRTCBuddy_FWD_DEFINED__
  125. #define __IRTCBuddy_FWD_DEFINED__
  126. typedef interface IRTCBuddy IRTCBuddy;
  127. #endif /* __IRTCBuddy_FWD_DEFINED__ */
  128. #ifndef __IRTCWatcher_FWD_DEFINED__
  129. #define __IRTCWatcher_FWD_DEFINED__
  130. typedef interface IRTCWatcher IRTCWatcher;
  131. #endif /* __IRTCWatcher_FWD_DEFINED__ */
  132. #ifndef __IRTCEventNotification_FWD_DEFINED__
  133. #define __IRTCEventNotification_FWD_DEFINED__
  134. typedef interface IRTCEventNotification IRTCEventNotification;
  135. #endif /* __IRTCEventNotification_FWD_DEFINED__ */
  136. #ifndef __IRTCDispatchEventNotification_FWD_DEFINED__
  137. #define __IRTCDispatchEventNotification_FWD_DEFINED__
  138. typedef interface IRTCDispatchEventNotification IRTCDispatchEventNotification;
  139. #endif /* __IRTCDispatchEventNotification_FWD_DEFINED__ */
  140. #ifndef __IRTCPortManager_FWD_DEFINED__
  141. #define __IRTCPortManager_FWD_DEFINED__
  142. typedef interface IRTCPortManager IRTCPortManager;
  143. #endif /* __IRTCPortManager_FWD_DEFINED__ */
  144. #ifndef __IRTCSessionPortManagement_FWD_DEFINED__
  145. #define __IRTCSessionPortManagement_FWD_DEFINED__
  146. typedef interface IRTCSessionPortManagement IRTCSessionPortManagement;
  147. #endif /* __IRTCSessionPortManagement_FWD_DEFINED__ */
  148. #ifndef __IRTCProfile_FWD_DEFINED__
  149. #define __IRTCProfile_FWD_DEFINED__
  150. typedef interface IRTCProfile IRTCProfile;
  151. #endif /* __IRTCProfile_FWD_DEFINED__ */
  152. #ifndef __IRTCSession_FWD_DEFINED__
  153. #define __IRTCSession_FWD_DEFINED__
  154. typedef interface IRTCSession IRTCSession;
  155. #endif /* __IRTCSession_FWD_DEFINED__ */
  156. #ifndef __IRTCParticipant_FWD_DEFINED__
  157. #define __IRTCParticipant_FWD_DEFINED__
  158. typedef interface IRTCParticipant IRTCParticipant;
  159. #endif /* __IRTCParticipant_FWD_DEFINED__ */
  160. #ifndef __IRTCEnumProfiles_FWD_DEFINED__
  161. #define __IRTCEnumProfiles_FWD_DEFINED__
  162. typedef interface IRTCEnumProfiles IRTCEnumProfiles;
  163. #endif /* __IRTCEnumProfiles_FWD_DEFINED__ */
  164. #ifndef __IRTCEnumParticipants_FWD_DEFINED__
  165. #define __IRTCEnumParticipants_FWD_DEFINED__
  166. typedef interface IRTCEnumParticipants IRTCEnumParticipants;
  167. #endif /* __IRTCEnumParticipants_FWD_DEFINED__ */
  168. #ifndef __IRTCCollection_FWD_DEFINED__
  169. #define __IRTCCollection_FWD_DEFINED__
  170. typedef interface IRTCCollection IRTCCollection;
  171. #endif /* __IRTCCollection_FWD_DEFINED__ */
  172. #ifndef __IRTCEnumBuddies_FWD_DEFINED__
  173. #define __IRTCEnumBuddies_FWD_DEFINED__
  174. typedef interface IRTCEnumBuddies IRTCEnumBuddies;
  175. #endif /* __IRTCEnumBuddies_FWD_DEFINED__ */
  176. #ifndef __IRTCPresenceContact_FWD_DEFINED__
  177. #define __IRTCPresenceContact_FWD_DEFINED__
  178. typedef interface IRTCPresenceContact IRTCPresenceContact;
  179. #endif /* __IRTCPresenceContact_FWD_DEFINED__ */
  180. #ifndef __IRTCBuddy_FWD_DEFINED__
  181. #define __IRTCBuddy_FWD_DEFINED__
  182. typedef interface IRTCBuddy IRTCBuddy;
  183. #endif /* __IRTCBuddy_FWD_DEFINED__ */
  184. #ifndef __IRTCEnumWatchers_FWD_DEFINED__
  185. #define __IRTCEnumWatchers_FWD_DEFINED__
  186. typedef interface IRTCEnumWatchers IRTCEnumWatchers;
  187. #endif /* __IRTCEnumWatchers_FWD_DEFINED__ */
  188. #ifndef __IRTCWatcher_FWD_DEFINED__
  189. #define __IRTCWatcher_FWD_DEFINED__
  190. typedef interface IRTCWatcher IRTCWatcher;
  191. #endif /* __IRTCWatcher_FWD_DEFINED__ */
  192. #ifndef __IRTCEventNotification_FWD_DEFINED__
  193. #define __IRTCEventNotification_FWD_DEFINED__
  194. typedef interface IRTCEventNotification IRTCEventNotification;
  195. #endif /* __IRTCEventNotification_FWD_DEFINED__ */
  196. #ifndef __IRTCClientEvent_FWD_DEFINED__
  197. #define __IRTCClientEvent_FWD_DEFINED__
  198. typedef interface IRTCClientEvent IRTCClientEvent;
  199. #endif /* __IRTCClientEvent_FWD_DEFINED__ */
  200. #ifndef __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
  201. #define __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
  202. typedef interface IRTCRegistrationStateChangeEvent IRTCRegistrationStateChangeEvent;
  203. #endif /* __IRTCRegistrationStateChangeEvent_FWD_DEFINED__ */
  204. #ifndef __IRTCSessionStateChangeEvent_FWD_DEFINED__
  205. #define __IRTCSessionStateChangeEvent_FWD_DEFINED__
  206. typedef interface IRTCSessionStateChangeEvent IRTCSessionStateChangeEvent;
  207. #endif /* __IRTCSessionStateChangeEvent_FWD_DEFINED__ */
  208. #ifndef __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
  209. #define __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
  210. typedef interface IRTCSessionOperationCompleteEvent IRTCSessionOperationCompleteEvent;
  211. #endif /* __IRTCSessionOperationCompleteEvent_FWD_DEFINED__ */
  212. #ifndef __IRTCParticipantStateChangeEvent_FWD_DEFINED__
  213. #define __IRTCParticipantStateChangeEvent_FWD_DEFINED__
  214. typedef interface IRTCParticipantStateChangeEvent IRTCParticipantStateChangeEvent;
  215. #endif /* __IRTCParticipantStateChangeEvent_FWD_DEFINED__ */
  216. #ifndef __IRTCMediaEvent_FWD_DEFINED__
  217. #define __IRTCMediaEvent_FWD_DEFINED__
  218. typedef interface IRTCMediaEvent IRTCMediaEvent;
  219. #endif /* __IRTCMediaEvent_FWD_DEFINED__ */
  220. #ifndef __IRTCIntensityEvent_FWD_DEFINED__
  221. #define __IRTCIntensityEvent_FWD_DEFINED__
  222. typedef interface IRTCIntensityEvent IRTCIntensityEvent;
  223. #endif /* __IRTCIntensityEvent_FWD_DEFINED__ */
  224. #ifndef __IRTCMessagingEvent_FWD_DEFINED__
  225. #define __IRTCMessagingEvent_FWD_DEFINED__
  226. typedef interface IRTCMessagingEvent IRTCMessagingEvent;
  227. #endif /* __IRTCMessagingEvent_FWD_DEFINED__ */
  228. #ifndef __IRTCBuddyEvent_FWD_DEFINED__
  229. #define __IRTCBuddyEvent_FWD_DEFINED__
  230. typedef interface IRTCBuddyEvent IRTCBuddyEvent;
  231. #endif /* __IRTCBuddyEvent_FWD_DEFINED__ */
  232. #ifndef __IRTCWatcherEvent_FWD_DEFINED__
  233. #define __IRTCWatcherEvent_FWD_DEFINED__
  234. typedef interface IRTCWatcherEvent IRTCWatcherEvent;
  235. #endif /* __IRTCWatcherEvent_FWD_DEFINED__ */
  236. #ifndef __IRTCPortManager_FWD_DEFINED__
  237. #define __IRTCPortManager_FWD_DEFINED__
  238. typedef interface IRTCPortManager IRTCPortManager;
  239. #endif /* __IRTCPortManager_FWD_DEFINED__ */
  240. #ifndef __IRTCSessionPortManagement_FWD_DEFINED__
  241. #define __IRTCSessionPortManagement_FWD_DEFINED__
  242. typedef interface IRTCSessionPortManagement IRTCSessionPortManagement;
  243. #endif /* __IRTCSessionPortManagement_FWD_DEFINED__ */
  244. #ifndef __IRTCDispatchEventNotification_FWD_DEFINED__
  245. #define __IRTCDispatchEventNotification_FWD_DEFINED__
  246. typedef interface IRTCDispatchEventNotification IRTCDispatchEventNotification;
  247. #endif /* __IRTCDispatchEventNotification_FWD_DEFINED__ */
  248. #ifndef __RTCClient_FWD_DEFINED__
  249. #define __RTCClient_FWD_DEFINED__
  250. #ifdef __cplusplus
  251. typedef class RTCClient RTCClient;
  252. #else
  253. typedef struct RTCClient RTCClient;
  254. #endif /* __cplusplus */
  255. #endif /* __RTCClient_FWD_DEFINED__ */
  256. /* header files for imported files */
  257. #include "oaidl.h"
  258. #include "ocidl.h"
  259. #include "control.h"
  260. #ifdef __cplusplus
  261. extern "C"{
  262. #endif
  263. void * __RPC_USER MIDL_user_allocate(size_t);
  264. void __RPC_USER MIDL_user_free( void * );
  265. /* interface __MIDL_itf_rtccore_0000 */
  266. /* [local] */
  267. /* Copyright (c) 2000-2001 Microsoft Corporation */
  268. typedef
  269. enum RTC_AUDIO_DEVICE
  270. { RTCAD_SPEAKER = 0,
  271. RTCAD_MICROPHONE = RTCAD_SPEAKER + 1
  272. } RTC_AUDIO_DEVICE;
  273. typedef
  274. enum RTC_VIDEO_DEVICE
  275. { RTCVD_RECEIVE = 0,
  276. RTCVD_PREVIEW = RTCVD_RECEIVE + 1
  277. } RTC_VIDEO_DEVICE;
  278. typedef
  279. enum RTC_EVENT
  280. { RTCE_CLIENT = 0,
  281. RTCE_REGISTRATION_STATE_CHANGE = RTCE_CLIENT + 1,
  282. RTCE_SESSION_STATE_CHANGE = RTCE_REGISTRATION_STATE_CHANGE + 1,
  283. RTCE_SESSION_OPERATION_COMPLETE = RTCE_SESSION_STATE_CHANGE + 1,
  284. RTCE_PARTICIPANT_STATE_CHANGE = RTCE_SESSION_OPERATION_COMPLETE + 1,
  285. RTCE_MEDIA = RTCE_PARTICIPANT_STATE_CHANGE + 1,
  286. RTCE_INTENSITY = RTCE_MEDIA + 1,
  287. RTCE_MESSAGING = RTCE_INTENSITY + 1,
  288. RTCE_BUDDY = RTCE_MESSAGING + 1,
  289. RTCE_WATCHER = RTCE_BUDDY + 1,
  290. RTCE_PROFILE = RTCE_WATCHER + 1
  291. } RTC_EVENT;
  292. typedef
  293. enum RTC_LISTEN_MODE
  294. { RTCLM_NONE = 0,
  295. RTCLM_DYNAMIC = RTCLM_NONE + 1,
  296. RTCLM_BOTH = RTCLM_DYNAMIC + 1
  297. } RTC_LISTEN_MODE;
  298. typedef
  299. enum RTC_CLIENT_EVENT_TYPE
  300. { RTCCET_VOLUME_CHANGE = 0,
  301. RTCCET_DEVICE_CHANGE = RTCCET_VOLUME_CHANGE + 1,
  302. RTCCET_NETWORK_QUALITY_CHANGE = RTCCET_DEVICE_CHANGE + 1,
  303. RTCCET_ASYNC_CLEANUP_DONE = RTCCET_NETWORK_QUALITY_CHANGE + 1
  304. } RTC_CLIENT_EVENT_TYPE;
  305. typedef
  306. enum RTC_TERMINATE_REASON
  307. { RTCTR_NORMAL = 0,
  308. RTCTR_DND = RTCTR_NORMAL + 1,
  309. RTCTR_BUSY = RTCTR_DND + 1,
  310. RTCTR_REJECT = RTCTR_BUSY + 1,
  311. RTCTR_TIMEOUT = RTCTR_REJECT + 1,
  312. RTCTR_SHUTDOWN = RTCTR_TIMEOUT + 1
  313. } RTC_TERMINATE_REASON;
  314. typedef
  315. enum RTC_REGISTRATION_STATE
  316. { RTCRS_NOT_REGISTERED = 0,
  317. RTCRS_REGISTERING = RTCRS_NOT_REGISTERED + 1,
  318. RTCRS_REGISTERED = RTCRS_REGISTERING + 1,
  319. RTCRS_REJECTED = RTCRS_REGISTERED + 1,
  320. RTCRS_UNREGISTERING = RTCRS_REJECTED + 1,
  321. RTCRS_ERROR = RTCRS_UNREGISTERING + 1,
  322. RTCRS_LOGGED_OFF = RTCRS_ERROR + 1,
  323. RTCRS_LOCAL_PA_LOGGED_OFF = RTCRS_LOGGED_OFF + 1,
  324. RTCRS_REMOTE_PA_LOGGED_OFF = RTCRS_LOCAL_PA_LOGGED_OFF + 1
  325. } RTC_REGISTRATION_STATE;
  326. typedef
  327. enum RTC_SESSION_STATE
  328. { RTCSS_IDLE = 0,
  329. RTCSS_INCOMING = RTCSS_IDLE + 1,
  330. RTCSS_ANSWERING = RTCSS_INCOMING + 1,
  331. RTCSS_INPROGRESS = RTCSS_ANSWERING + 1,
  332. RTCSS_CONNECTED = RTCSS_INPROGRESS + 1,
  333. RTCSS_DISCONNECTED = RTCSS_CONNECTED + 1
  334. } RTC_SESSION_STATE;
  335. typedef
  336. enum RTC_PARTICIPANT_STATE
  337. { RTCPS_IDLE = 0,
  338. RTCPS_PENDING = RTCPS_IDLE + 1,
  339. RTCPS_INCOMING = RTCPS_PENDING + 1,
  340. RTCPS_ANSWERING = RTCPS_INCOMING + 1,
  341. RTCPS_INPROGRESS = RTCPS_ANSWERING + 1,
  342. RTCPS_ALERTING = RTCPS_INPROGRESS + 1,
  343. RTCPS_CONNECTED = RTCPS_ALERTING + 1,
  344. RTCPS_DISCONNECTING = RTCPS_CONNECTED + 1,
  345. RTCPS_DISCONNECTED = RTCPS_DISCONNECTING + 1
  346. } RTC_PARTICIPANT_STATE;
  347. typedef
  348. enum RTC_WATCHER_STATE
  349. { RTCWS_UNKNOWN = 0,
  350. RTCWS_OFFERING = RTCWS_UNKNOWN + 1,
  351. RTCWS_ALLOWED = RTCWS_OFFERING + 1,
  352. RTCWS_BLOCKED = RTCWS_ALLOWED + 1
  353. } RTC_WATCHER_STATE;
  354. typedef
  355. enum RTC_OFFER_WATCHER_MODE
  356. { RTCOWM_OFFER_WATCHER_EVENT = 0,
  357. RTCOWM_AUTOMATICALLY_ADD_WATCHER = RTCOWM_OFFER_WATCHER_EVENT + 1
  358. } RTC_OFFER_WATCHER_MODE;
  359. typedef
  360. enum RTC_PRIVACY_MODE
  361. { RTCPM_BLOCK_LIST_EXCLUDED = 0,
  362. RTCPM_ALLOW_LIST_ONLY = RTCPM_BLOCK_LIST_EXCLUDED + 1
  363. } RTC_PRIVACY_MODE;
  364. typedef
  365. enum RTC_SESSION_TYPE
  366. { RTCST_PC_TO_PC = 0,
  367. RTCST_PC_TO_PHONE = RTCST_PC_TO_PC + 1,
  368. RTCST_PHONE_TO_PHONE = RTCST_PC_TO_PHONE + 1,
  369. RTCST_IM = RTCST_PHONE_TO_PHONE + 1
  370. } RTC_SESSION_TYPE;
  371. typedef
  372. enum RTC_PRESENCE_STATUS
  373. { RTCXS_PRESENCE_OFFLINE = 0,
  374. RTCXS_PRESENCE_ONLINE = RTCXS_PRESENCE_OFFLINE + 1,
  375. RTCXS_PRESENCE_AWAY = RTCXS_PRESENCE_ONLINE + 1,
  376. RTCXS_PRESENCE_IDLE = RTCXS_PRESENCE_AWAY + 1,
  377. RTCXS_PRESENCE_BUSY = RTCXS_PRESENCE_IDLE + 1,
  378. RTCXS_PRESENCE_BE_RIGHT_BACK = RTCXS_PRESENCE_BUSY + 1,
  379. RTCXS_PRESENCE_ON_THE_PHONE = RTCXS_PRESENCE_BE_RIGHT_BACK + 1,
  380. RTCXS_PRESENCE_OUT_TO_LUNCH = RTCXS_PRESENCE_ON_THE_PHONE + 1
  381. } RTC_PRESENCE_STATUS;
  382. typedef
  383. enum RTC_MEDIA_EVENT_TYPE
  384. { RTCMET_STOPPED = 0,
  385. RTCMET_STARTED = RTCMET_STOPPED + 1,
  386. RTCMET_FAILED = RTCMET_STARTED + 1
  387. } RTC_MEDIA_EVENT_TYPE;
  388. typedef
  389. enum RTC_MEDIA_EVENT_REASON
  390. { RTCMER_NORMAL = 0,
  391. RTCMER_HOLD = RTCMER_NORMAL + 1,
  392. RTCMER_TIMEOUT = RTCMER_HOLD + 1,
  393. RTCMER_BAD_DEVICE = RTCMER_TIMEOUT + 1
  394. } RTC_MEDIA_EVENT_REASON;
  395. typedef
  396. enum RTC_MESSAGING_EVENT_TYPE
  397. { RTCMSET_MESSAGE = 0,
  398. RTCMSET_STATUS = RTCMSET_MESSAGE + 1
  399. } RTC_MESSAGING_EVENT_TYPE;
  400. typedef
  401. enum RTC_MESSAGING_USER_STATUS
  402. { RTCMUS_IDLE = 0,
  403. RTCMUS_TYPING = RTCMUS_IDLE + 1
  404. } RTC_MESSAGING_USER_STATUS;
  405. typedef
  406. enum RTC_DTMF
  407. { RTC_DTMF_0 = 0,
  408. RTC_DTMF_1 = RTC_DTMF_0 + 1,
  409. RTC_DTMF_2 = RTC_DTMF_1 + 1,
  410. RTC_DTMF_3 = RTC_DTMF_2 + 1,
  411. RTC_DTMF_4 = RTC_DTMF_3 + 1,
  412. RTC_DTMF_5 = RTC_DTMF_4 + 1,
  413. RTC_DTMF_6 = RTC_DTMF_5 + 1,
  414. RTC_DTMF_7 = RTC_DTMF_6 + 1,
  415. RTC_DTMF_8 = RTC_DTMF_7 + 1,
  416. RTC_DTMF_9 = RTC_DTMF_8 + 1,
  417. RTC_DTMF_STAR = RTC_DTMF_9 + 1,
  418. RTC_DTMF_POUND = RTC_DTMF_STAR + 1,
  419. RTC_DTMF_A = RTC_DTMF_POUND + 1,
  420. RTC_DTMF_B = RTC_DTMF_A + 1,
  421. RTC_DTMF_C = RTC_DTMF_B + 1,
  422. RTC_DTMF_D = RTC_DTMF_C + 1,
  423. RTC_DTMF_FLASH = RTC_DTMF_D + 1
  424. } RTC_DTMF;
  425. typedef
  426. enum RTC_PROVIDER_URI
  427. { RTCPU_URIHOMEPAGE = 0,
  428. RTCPU_URIHELPDESK = RTCPU_URIHOMEPAGE + 1,
  429. RTCPU_URIPERSONALACCOUNT = RTCPU_URIHELPDESK + 1,
  430. RTCPU_URIDISPLAYDURINGCALL = RTCPU_URIPERSONALACCOUNT + 1,
  431. RTCPU_URIDISPLAYDURINGIDLE = RTCPU_URIDISPLAYDURINGCALL + 1
  432. } RTC_PROVIDER_URI;
  433. typedef
  434. enum RTC_RING_TYPE
  435. { RTCRT_PHONE = 0,
  436. RTCRT_MESSAGE = RTCRT_PHONE + 1,
  437. RTCRT_RINGBACK = RTCRT_MESSAGE + 1
  438. } RTC_RING_TYPE;
  439. typedef
  440. enum RTC_T120_APPLET
  441. { RTCTA_WHITEBOARD = 0,
  442. RTCTA_APPSHARING = RTCTA_WHITEBOARD + 1
  443. } RTC_T120_APPLET;
  444. typedef
  445. enum RTC_PORT_TYPE
  446. { RTCPT_AUDIO_RTP = 0,
  447. RTCPT_AUDIO_RTCP = RTCPT_AUDIO_RTP + 1
  448. } RTC_PORT_TYPE;
  449. #define RTCCS_FORCE_PROFILE 0x00000001
  450. #define RTCCS_FAIL_ON_REDIRECT 0x00000002
  451. #define RTCMT_AUDIO_SEND 0x00000001
  452. #define RTCMT_AUDIO_RECEIVE 0x00000002
  453. #define RTCMT_VIDEO_SEND 0x00000004
  454. #define RTCMT_VIDEO_RECEIVE 0x00000008
  455. #define RTCMT_T120_SENDRECV 0x00000010
  456. #define RTCMT_ALL_RTP ( \
  457. RTCMT_AUDIO_SEND | \
  458. RTCMT_AUDIO_RECEIVE | \
  459. RTCMT_VIDEO_SEND | \
  460. RTCMT_VIDEO_RECEIVE )
  461. #define RTCMT_ALL ( \
  462. RTCMT_ALL_RTP | \
  463. RTCMT_T120_SENDRECV )
  464. #define RTCSI_PC_TO_PC 0x00000001
  465. #define RTCSI_PC_TO_PHONE 0x00000002
  466. #define RTCSI_PHONE_TO_PHONE 0x00000004
  467. #define RTCSI_IM 0x00000008
  468. #define RTCTR_UDP 0x00000001
  469. #define RTCTR_TCP 0x00000002
  470. #define RTCTR_TLS 0x00000004
  471. #define RTCRF_REGISTER_INVITE_SESSIONS 0x00000001
  472. #define RTCRF_REGISTER_MESSAGE_SESSIONS 0x00000002
  473. #define RTCRF_REGISTER_PRESENCE 0x00000004
  474. #define RTCRF_REGISTER_ALL 0x00000007
  475. #define RTCEF_CLIENT 0x00000001
  476. #define RTCEF_REGISTRATION_STATE_CHANGE 0x00000002
  477. #define RTCEF_SESSION_STATE_CHANGE 0x00000004
  478. #define RTCEF_SESSION_OPERATION_COMPLETE 0x00000008
  479. #define RTCEF_PARTICIPANT_STATE_CHANGE 0x00000010
  480. #define RTCEF_MEDIA 0x00000020
  481. #define RTCEF_INTENSITY 0x00000040
  482. #define RTCEF_MESSAGING 0x00000080
  483. #define RTCEF_BUDDY 0x00000100
  484. #define RTCEF_WATCHER 0x00000200
  485. #define RTCEF_PROFILE 0x00000400
  486. #define RTCEF_ALL 0x000007FF
  487. extern RPC_IF_HANDLE __MIDL_itf_rtccore_0000_v0_0_c_ifspec;
  488. extern RPC_IF_HANDLE __MIDL_itf_rtccore_0000_v0_0_s_ifspec;
  489. #ifndef __IRTCClient_INTERFACE_DEFINED__
  490. #define __IRTCClient_INTERFACE_DEFINED__
  491. /* interface IRTCClient */
  492. /* [unique][helpstring][uuid][object] */
  493. EXTERN_C const IID IID_IRTCClient;
  494. #if defined(__cplusplus) && !defined(CINTERFACE)
  495. MIDL_INTERFACE("07829e45-9a34-408e-a011-bddf13487cd1")
  496. IRTCClient : public IUnknown
  497. {
  498. public:
  499. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Initialize( void) = 0;
  500. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Shutdown( void) = 0;
  501. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PrepareForShutdown( void) = 0;
  502. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_EventFilter(
  503. /* [in] */ long lFilter) = 0;
  504. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_EventFilter(
  505. /* [retval][out] */ long *plFilter) = 0;
  506. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetPreferredMediaTypes(
  507. /* [in] */ long lMediaTypes,
  508. /* [in] */ VARIANT_BOOL fPersistent) = 0;
  509. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PreferredMediaTypes(
  510. /* [retval][out] */ long *plMediaTypes) = 0;
  511. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_MediaCapabilities(
  512. /* [retval][out] */ long *plMediaTypes) = 0;
  513. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateSession(
  514. /* [in] */ RTC_SESSION_TYPE enType,
  515. /* [in] */ BSTR bstrLocalPhoneURI,
  516. /* [in] */ IRTCProfile *pProfile,
  517. /* [in] */ long lFlags,
  518. /* [retval][out] */ IRTCSession **ppSession) = 0;
  519. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_ListenForIncomingSessions(
  520. /* [in] */ RTC_LISTEN_MODE enListen) = 0;
  521. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ListenForIncomingSessions(
  522. /* [retval][out] */ RTC_LISTEN_MODE *penListen) = 0;
  523. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_NetworkAddresses(
  524. /* [in] */ VARIANT_BOOL fTCP,
  525. /* [in] */ VARIANT_BOOL fExternal,
  526. /* [retval][out] */ VARIANT *pvAddresses) = 0;
  527. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_Volume(
  528. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  529. /* [in] */ long lVolume) = 0;
  530. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Volume(
  531. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  532. /* [retval][out] */ long *plVolume) = 0;
  533. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_AudioMuted(
  534. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  535. /* [in] */ VARIANT_BOOL fMuted) = 0;
  536. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AudioMuted(
  537. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  538. /* [retval][out] */ VARIANT_BOOL *pfMuted) = 0;
  539. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_IVideoWindow(
  540. /* [in] */ RTC_VIDEO_DEVICE enDevice,
  541. /* [retval][out] */ IVideoWindow **ppIVideoWindow) = 0;
  542. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_PreferredAudioDevice(
  543. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  544. /* [in] */ BSTR bstrDeviceName) = 0;
  545. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PreferredAudioDevice(
  546. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  547. /* [retval][out] */ BSTR *pbstrDeviceName) = 0;
  548. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_PreferredVolume(
  549. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  550. /* [in] */ long lVolume) = 0;
  551. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PreferredVolume(
  552. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  553. /* [retval][out] */ long *plVolume) = 0;
  554. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_PreferredAEC(
  555. /* [in] */ VARIANT_BOOL bEnable) = 0;
  556. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PreferredAEC(
  557. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  558. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_PreferredVideoDevice(
  559. /* [in] */ BSTR bstrDeviceName) = 0;
  560. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PreferredVideoDevice(
  561. /* [retval][out] */ BSTR *pbstrDeviceName) = 0;
  562. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveMedia(
  563. /* [retval][out] */ long *plMediaType) = 0;
  564. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_MaxBitrate(
  565. /* [in] */ long lMaxBitrate) = 0;
  566. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_MaxBitrate(
  567. /* [retval][out] */ long *plMaxBitrate) = 0;
  568. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_TemporalSpatialTradeOff(
  569. /* [in] */ long lValue) = 0;
  570. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_TemporalSpatialTradeOff(
  571. /* [retval][out] */ long *plValue) = 0;
  572. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_NetworkQuality(
  573. /* [retval][out] */ long *plNetworkQuality) = 0;
  574. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE StartT120Applet(
  575. /* [in] */ RTC_T120_APPLET enApplet) = 0;
  576. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE StopT120Applets( void) = 0;
  577. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_IsT120AppletRunning(
  578. /* [in] */ RTC_T120_APPLET enApplet,
  579. /* [retval][out] */ VARIANT_BOOL *pfRunning) = 0;
  580. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_LocalUserURI(
  581. /* [retval][out] */ BSTR *pbstrUserURI) = 0;
  582. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_LocalUserURI(
  583. /* [in] */ BSTR bstrUserURI) = 0;
  584. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_LocalUserName(
  585. /* [retval][out] */ BSTR *pbstrUserName) = 0;
  586. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_LocalUserName(
  587. /* [in] */ BSTR bstrUserName) = 0;
  588. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PlayRing(
  589. /* [in] */ RTC_RING_TYPE enType,
  590. /* [in] */ VARIANT_BOOL bPlay) = 0;
  591. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SendDTMF(
  592. /* [in] */ RTC_DTMF enDTMF) = 0;
  593. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE InvokeTuningWizard(
  594. /* [in] */ OAHWND hwndParent) = 0;
  595. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_IsTuned(
  596. /* [retval][out] */ VARIANT_BOOL *pfTuned) = 0;
  597. };
  598. #else /* C style interface */
  599. typedef struct IRTCClientVtbl
  600. {
  601. BEGIN_INTERFACE
  602. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  603. IRTCClient * This,
  604. /* [in] */ REFIID riid,
  605. /* [iid_is][out] */ void **ppvObject);
  606. ULONG ( STDMETHODCALLTYPE *AddRef )(
  607. IRTCClient * This);
  608. ULONG ( STDMETHODCALLTYPE *Release )(
  609. IRTCClient * This);
  610. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Initialize )(
  611. IRTCClient * This);
  612. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Shutdown )(
  613. IRTCClient * This);
  614. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PrepareForShutdown )(
  615. IRTCClient * This);
  616. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EventFilter )(
  617. IRTCClient * This,
  618. /* [in] */ long lFilter);
  619. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventFilter )(
  620. IRTCClient * This,
  621. /* [retval][out] */ long *plFilter);
  622. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetPreferredMediaTypes )(
  623. IRTCClient * This,
  624. /* [in] */ long lMediaTypes,
  625. /* [in] */ VARIANT_BOOL fPersistent);
  626. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PreferredMediaTypes )(
  627. IRTCClient * This,
  628. /* [retval][out] */ long *plMediaTypes);
  629. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaCapabilities )(
  630. IRTCClient * This,
  631. /* [retval][out] */ long *plMediaTypes);
  632. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateSession )(
  633. IRTCClient * This,
  634. /* [in] */ RTC_SESSION_TYPE enType,
  635. /* [in] */ BSTR bstrLocalPhoneURI,
  636. /* [in] */ IRTCProfile *pProfile,
  637. /* [in] */ long lFlags,
  638. /* [retval][out] */ IRTCSession **ppSession);
  639. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ListenForIncomingSessions )(
  640. IRTCClient * This,
  641. /* [in] */ RTC_LISTEN_MODE enListen);
  642. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ListenForIncomingSessions )(
  643. IRTCClient * This,
  644. /* [retval][out] */ RTC_LISTEN_MODE *penListen);
  645. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkAddresses )(
  646. IRTCClient * This,
  647. /* [in] */ VARIANT_BOOL fTCP,
  648. /* [in] */ VARIANT_BOOL fExternal,
  649. /* [retval][out] */ VARIANT *pvAddresses);
  650. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Volume )(
  651. IRTCClient * This,
  652. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  653. /* [in] */ long lVolume);
  654. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Volume )(
  655. IRTCClient * This,
  656. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  657. /* [retval][out] */ long *plVolume);
  658. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AudioMuted )(
  659. IRTCClient * This,
  660. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  661. /* [in] */ VARIANT_BOOL fMuted);
  662. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioMuted )(
  663. IRTCClient * This,
  664. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  665. /* [retval][out] */ VARIANT_BOOL *pfMuted);
  666. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IVideoWindow )(
  667. IRTCClient * This,
  668. /* [in] */ RTC_VIDEO_DEVICE enDevice,
  669. /* [retval][out] */ IVideoWindow **ppIVideoWindow);
  670. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PreferredAudioDevice )(
  671. IRTCClient * This,
  672. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  673. /* [in] */ BSTR bstrDeviceName);
  674. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PreferredAudioDevice )(
  675. IRTCClient * This,
  676. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  677. /* [retval][out] */ BSTR *pbstrDeviceName);
  678. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PreferredVolume )(
  679. IRTCClient * This,
  680. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  681. /* [in] */ long lVolume);
  682. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PreferredVolume )(
  683. IRTCClient * This,
  684. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  685. /* [retval][out] */ long *plVolume);
  686. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PreferredAEC )(
  687. IRTCClient * This,
  688. /* [in] */ VARIANT_BOOL bEnable);
  689. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PreferredAEC )(
  690. IRTCClient * This,
  691. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  692. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PreferredVideoDevice )(
  693. IRTCClient * This,
  694. /* [in] */ BSTR bstrDeviceName);
  695. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PreferredVideoDevice )(
  696. IRTCClient * This,
  697. /* [retval][out] */ BSTR *pbstrDeviceName);
  698. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ActiveMedia )(
  699. IRTCClient * This,
  700. /* [retval][out] */ long *plMediaType);
  701. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaxBitrate )(
  702. IRTCClient * This,
  703. /* [in] */ long lMaxBitrate);
  704. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxBitrate )(
  705. IRTCClient * This,
  706. /* [retval][out] */ long *plMaxBitrate);
  707. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TemporalSpatialTradeOff )(
  708. IRTCClient * This,
  709. /* [in] */ long lValue);
  710. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TemporalSpatialTradeOff )(
  711. IRTCClient * This,
  712. /* [retval][out] */ long *plValue);
  713. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkQuality )(
  714. IRTCClient * This,
  715. /* [retval][out] */ long *plNetworkQuality);
  716. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *StartT120Applet )(
  717. IRTCClient * This,
  718. /* [in] */ RTC_T120_APPLET enApplet);
  719. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *StopT120Applets )(
  720. IRTCClient * This);
  721. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsT120AppletRunning )(
  722. IRTCClient * This,
  723. /* [in] */ RTC_T120_APPLET enApplet,
  724. /* [retval][out] */ VARIANT_BOOL *pfRunning);
  725. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LocalUserURI )(
  726. IRTCClient * This,
  727. /* [retval][out] */ BSTR *pbstrUserURI);
  728. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LocalUserURI )(
  729. IRTCClient * This,
  730. /* [in] */ BSTR bstrUserURI);
  731. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LocalUserName )(
  732. IRTCClient * This,
  733. /* [retval][out] */ BSTR *pbstrUserName);
  734. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LocalUserName )(
  735. IRTCClient * This,
  736. /* [in] */ BSTR bstrUserName);
  737. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PlayRing )(
  738. IRTCClient * This,
  739. /* [in] */ RTC_RING_TYPE enType,
  740. /* [in] */ VARIANT_BOOL bPlay);
  741. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SendDTMF )(
  742. IRTCClient * This,
  743. /* [in] */ RTC_DTMF enDTMF);
  744. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *InvokeTuningWizard )(
  745. IRTCClient * This,
  746. /* [in] */ OAHWND hwndParent);
  747. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsTuned )(
  748. IRTCClient * This,
  749. /* [retval][out] */ VARIANT_BOOL *pfTuned);
  750. END_INTERFACE
  751. } IRTCClientVtbl;
  752. interface IRTCClient
  753. {
  754. CONST_VTBL struct IRTCClientVtbl *lpVtbl;
  755. };
  756. #ifdef COBJMACROS
  757. #define IRTCClient_QueryInterface(This,riid,ppvObject) \
  758. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  759. #define IRTCClient_AddRef(This) \
  760. (This)->lpVtbl -> AddRef(This)
  761. #define IRTCClient_Release(This) \
  762. (This)->lpVtbl -> Release(This)
  763. #define IRTCClient_Initialize(This) \
  764. (This)->lpVtbl -> Initialize(This)
  765. #define IRTCClient_Shutdown(This) \
  766. (This)->lpVtbl -> Shutdown(This)
  767. #define IRTCClient_PrepareForShutdown(This) \
  768. (This)->lpVtbl -> PrepareForShutdown(This)
  769. #define IRTCClient_put_EventFilter(This,lFilter) \
  770. (This)->lpVtbl -> put_EventFilter(This,lFilter)
  771. #define IRTCClient_get_EventFilter(This,plFilter) \
  772. (This)->lpVtbl -> get_EventFilter(This,plFilter)
  773. #define IRTCClient_SetPreferredMediaTypes(This,lMediaTypes,fPersistent) \
  774. (This)->lpVtbl -> SetPreferredMediaTypes(This,lMediaTypes,fPersistent)
  775. #define IRTCClient_get_PreferredMediaTypes(This,plMediaTypes) \
  776. (This)->lpVtbl -> get_PreferredMediaTypes(This,plMediaTypes)
  777. #define IRTCClient_get_MediaCapabilities(This,plMediaTypes) \
  778. (This)->lpVtbl -> get_MediaCapabilities(This,plMediaTypes)
  779. #define IRTCClient_CreateSession(This,enType,bstrLocalPhoneURI,pProfile,lFlags,ppSession) \
  780. (This)->lpVtbl -> CreateSession(This,enType,bstrLocalPhoneURI,pProfile,lFlags,ppSession)
  781. #define IRTCClient_put_ListenForIncomingSessions(This,enListen) \
  782. (This)->lpVtbl -> put_ListenForIncomingSessions(This,enListen)
  783. #define IRTCClient_get_ListenForIncomingSessions(This,penListen) \
  784. (This)->lpVtbl -> get_ListenForIncomingSessions(This,penListen)
  785. #define IRTCClient_get_NetworkAddresses(This,fTCP,fExternal,pvAddresses) \
  786. (This)->lpVtbl -> get_NetworkAddresses(This,fTCP,fExternal,pvAddresses)
  787. #define IRTCClient_put_Volume(This,enDevice,lVolume) \
  788. (This)->lpVtbl -> put_Volume(This,enDevice,lVolume)
  789. #define IRTCClient_get_Volume(This,enDevice,plVolume) \
  790. (This)->lpVtbl -> get_Volume(This,enDevice,plVolume)
  791. #define IRTCClient_put_AudioMuted(This,enDevice,fMuted) \
  792. (This)->lpVtbl -> put_AudioMuted(This,enDevice,fMuted)
  793. #define IRTCClient_get_AudioMuted(This,enDevice,pfMuted) \
  794. (This)->lpVtbl -> get_AudioMuted(This,enDevice,pfMuted)
  795. #define IRTCClient_get_IVideoWindow(This,enDevice,ppIVideoWindow) \
  796. (This)->lpVtbl -> get_IVideoWindow(This,enDevice,ppIVideoWindow)
  797. #define IRTCClient_put_PreferredAudioDevice(This,enDevice,bstrDeviceName) \
  798. (This)->lpVtbl -> put_PreferredAudioDevice(This,enDevice,bstrDeviceName)
  799. #define IRTCClient_get_PreferredAudioDevice(This,enDevice,pbstrDeviceName) \
  800. (This)->lpVtbl -> get_PreferredAudioDevice(This,enDevice,pbstrDeviceName)
  801. #define IRTCClient_put_PreferredVolume(This,enDevice,lVolume) \
  802. (This)->lpVtbl -> put_PreferredVolume(This,enDevice,lVolume)
  803. #define IRTCClient_get_PreferredVolume(This,enDevice,plVolume) \
  804. (This)->lpVtbl -> get_PreferredVolume(This,enDevice,plVolume)
  805. #define IRTCClient_put_PreferredAEC(This,bEnable) \
  806. (This)->lpVtbl -> put_PreferredAEC(This,bEnable)
  807. #define IRTCClient_get_PreferredAEC(This,pbEnabled) \
  808. (This)->lpVtbl -> get_PreferredAEC(This,pbEnabled)
  809. #define IRTCClient_put_PreferredVideoDevice(This,bstrDeviceName) \
  810. (This)->lpVtbl -> put_PreferredVideoDevice(This,bstrDeviceName)
  811. #define IRTCClient_get_PreferredVideoDevice(This,pbstrDeviceName) \
  812. (This)->lpVtbl -> get_PreferredVideoDevice(This,pbstrDeviceName)
  813. #define IRTCClient_get_ActiveMedia(This,plMediaType) \
  814. (This)->lpVtbl -> get_ActiveMedia(This,plMediaType)
  815. #define IRTCClient_put_MaxBitrate(This,lMaxBitrate) \
  816. (This)->lpVtbl -> put_MaxBitrate(This,lMaxBitrate)
  817. #define IRTCClient_get_MaxBitrate(This,plMaxBitrate) \
  818. (This)->lpVtbl -> get_MaxBitrate(This,plMaxBitrate)
  819. #define IRTCClient_put_TemporalSpatialTradeOff(This,lValue) \
  820. (This)->lpVtbl -> put_TemporalSpatialTradeOff(This,lValue)
  821. #define IRTCClient_get_TemporalSpatialTradeOff(This,plValue) \
  822. (This)->lpVtbl -> get_TemporalSpatialTradeOff(This,plValue)
  823. #define IRTCClient_get_NetworkQuality(This,plNetworkQuality) \
  824. (This)->lpVtbl -> get_NetworkQuality(This,plNetworkQuality)
  825. #define IRTCClient_StartT120Applet(This,enApplet) \
  826. (This)->lpVtbl -> StartT120Applet(This,enApplet)
  827. #define IRTCClient_StopT120Applets(This) \
  828. (This)->lpVtbl -> StopT120Applets(This)
  829. #define IRTCClient_get_IsT120AppletRunning(This,enApplet,pfRunning) \
  830. (This)->lpVtbl -> get_IsT120AppletRunning(This,enApplet,pfRunning)
  831. #define IRTCClient_get_LocalUserURI(This,pbstrUserURI) \
  832. (This)->lpVtbl -> get_LocalUserURI(This,pbstrUserURI)
  833. #define IRTCClient_put_LocalUserURI(This,bstrUserURI) \
  834. (This)->lpVtbl -> put_LocalUserURI(This,bstrUserURI)
  835. #define IRTCClient_get_LocalUserName(This,pbstrUserName) \
  836. (This)->lpVtbl -> get_LocalUserName(This,pbstrUserName)
  837. #define IRTCClient_put_LocalUserName(This,bstrUserName) \
  838. (This)->lpVtbl -> put_LocalUserName(This,bstrUserName)
  839. #define IRTCClient_PlayRing(This,enType,bPlay) \
  840. (This)->lpVtbl -> PlayRing(This,enType,bPlay)
  841. #define IRTCClient_SendDTMF(This,enDTMF) \
  842. (This)->lpVtbl -> SendDTMF(This,enDTMF)
  843. #define IRTCClient_InvokeTuningWizard(This,hwndParent) \
  844. (This)->lpVtbl -> InvokeTuningWizard(This,hwndParent)
  845. #define IRTCClient_get_IsTuned(This,pfTuned) \
  846. (This)->lpVtbl -> get_IsTuned(This,pfTuned)
  847. #endif /* COBJMACROS */
  848. #endif /* C style interface */
  849. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_Initialize_Proxy(
  850. IRTCClient * This);
  851. void __RPC_STUB IRTCClient_Initialize_Stub(
  852. IRpcStubBuffer *This,
  853. IRpcChannelBuffer *_pRpcChannelBuffer,
  854. PRPC_MESSAGE _pRpcMessage,
  855. DWORD *_pdwStubPhase);
  856. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_Shutdown_Proxy(
  857. IRTCClient * This);
  858. void __RPC_STUB IRTCClient_Shutdown_Stub(
  859. IRpcStubBuffer *This,
  860. IRpcChannelBuffer *_pRpcChannelBuffer,
  861. PRPC_MESSAGE _pRpcMessage,
  862. DWORD *_pdwStubPhase);
  863. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_PrepareForShutdown_Proxy(
  864. IRTCClient * This);
  865. void __RPC_STUB IRTCClient_PrepareForShutdown_Stub(
  866. IRpcStubBuffer *This,
  867. IRpcChannelBuffer *_pRpcChannelBuffer,
  868. PRPC_MESSAGE _pRpcMessage,
  869. DWORD *_pdwStubPhase);
  870. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_EventFilter_Proxy(
  871. IRTCClient * This,
  872. /* [in] */ long lFilter);
  873. void __RPC_STUB IRTCClient_put_EventFilter_Stub(
  874. IRpcStubBuffer *This,
  875. IRpcChannelBuffer *_pRpcChannelBuffer,
  876. PRPC_MESSAGE _pRpcMessage,
  877. DWORD *_pdwStubPhase);
  878. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_EventFilter_Proxy(
  879. IRTCClient * This,
  880. /* [retval][out] */ long *plFilter);
  881. void __RPC_STUB IRTCClient_get_EventFilter_Stub(
  882. IRpcStubBuffer *This,
  883. IRpcChannelBuffer *_pRpcChannelBuffer,
  884. PRPC_MESSAGE _pRpcMessage,
  885. DWORD *_pdwStubPhase);
  886. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_SetPreferredMediaTypes_Proxy(
  887. IRTCClient * This,
  888. /* [in] */ long lMediaTypes,
  889. /* [in] */ VARIANT_BOOL fPersistent);
  890. void __RPC_STUB IRTCClient_SetPreferredMediaTypes_Stub(
  891. IRpcStubBuffer *This,
  892. IRpcChannelBuffer *_pRpcChannelBuffer,
  893. PRPC_MESSAGE _pRpcMessage,
  894. DWORD *_pdwStubPhase);
  895. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_PreferredMediaTypes_Proxy(
  896. IRTCClient * This,
  897. /* [retval][out] */ long *plMediaTypes);
  898. void __RPC_STUB IRTCClient_get_PreferredMediaTypes_Stub(
  899. IRpcStubBuffer *This,
  900. IRpcChannelBuffer *_pRpcChannelBuffer,
  901. PRPC_MESSAGE _pRpcMessage,
  902. DWORD *_pdwStubPhase);
  903. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_MediaCapabilities_Proxy(
  904. IRTCClient * This,
  905. /* [retval][out] */ long *plMediaTypes);
  906. void __RPC_STUB IRTCClient_get_MediaCapabilities_Stub(
  907. IRpcStubBuffer *This,
  908. IRpcChannelBuffer *_pRpcChannelBuffer,
  909. PRPC_MESSAGE _pRpcMessage,
  910. DWORD *_pdwStubPhase);
  911. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_CreateSession_Proxy(
  912. IRTCClient * This,
  913. /* [in] */ RTC_SESSION_TYPE enType,
  914. /* [in] */ BSTR bstrLocalPhoneURI,
  915. /* [in] */ IRTCProfile *pProfile,
  916. /* [in] */ long lFlags,
  917. /* [retval][out] */ IRTCSession **ppSession);
  918. void __RPC_STUB IRTCClient_CreateSession_Stub(
  919. IRpcStubBuffer *This,
  920. IRpcChannelBuffer *_pRpcChannelBuffer,
  921. PRPC_MESSAGE _pRpcMessage,
  922. DWORD *_pdwStubPhase);
  923. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_ListenForIncomingSessions_Proxy(
  924. IRTCClient * This,
  925. /* [in] */ RTC_LISTEN_MODE enListen);
  926. void __RPC_STUB IRTCClient_put_ListenForIncomingSessions_Stub(
  927. IRpcStubBuffer *This,
  928. IRpcChannelBuffer *_pRpcChannelBuffer,
  929. PRPC_MESSAGE _pRpcMessage,
  930. DWORD *_pdwStubPhase);
  931. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_ListenForIncomingSessions_Proxy(
  932. IRTCClient * This,
  933. /* [retval][out] */ RTC_LISTEN_MODE *penListen);
  934. void __RPC_STUB IRTCClient_get_ListenForIncomingSessions_Stub(
  935. IRpcStubBuffer *This,
  936. IRpcChannelBuffer *_pRpcChannelBuffer,
  937. PRPC_MESSAGE _pRpcMessage,
  938. DWORD *_pdwStubPhase);
  939. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_NetworkAddresses_Proxy(
  940. IRTCClient * This,
  941. /* [in] */ VARIANT_BOOL fTCP,
  942. /* [in] */ VARIANT_BOOL fExternal,
  943. /* [retval][out] */ VARIANT *pvAddresses);
  944. void __RPC_STUB IRTCClient_get_NetworkAddresses_Stub(
  945. IRpcStubBuffer *This,
  946. IRpcChannelBuffer *_pRpcChannelBuffer,
  947. PRPC_MESSAGE _pRpcMessage,
  948. DWORD *_pdwStubPhase);
  949. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_Volume_Proxy(
  950. IRTCClient * This,
  951. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  952. /* [in] */ long lVolume);
  953. void __RPC_STUB IRTCClient_put_Volume_Stub(
  954. IRpcStubBuffer *This,
  955. IRpcChannelBuffer *_pRpcChannelBuffer,
  956. PRPC_MESSAGE _pRpcMessage,
  957. DWORD *_pdwStubPhase);
  958. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_Volume_Proxy(
  959. IRTCClient * This,
  960. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  961. /* [retval][out] */ long *plVolume);
  962. void __RPC_STUB IRTCClient_get_Volume_Stub(
  963. IRpcStubBuffer *This,
  964. IRpcChannelBuffer *_pRpcChannelBuffer,
  965. PRPC_MESSAGE _pRpcMessage,
  966. DWORD *_pdwStubPhase);
  967. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_AudioMuted_Proxy(
  968. IRTCClient * This,
  969. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  970. /* [in] */ VARIANT_BOOL fMuted);
  971. void __RPC_STUB IRTCClient_put_AudioMuted_Stub(
  972. IRpcStubBuffer *This,
  973. IRpcChannelBuffer *_pRpcChannelBuffer,
  974. PRPC_MESSAGE _pRpcMessage,
  975. DWORD *_pdwStubPhase);
  976. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_AudioMuted_Proxy(
  977. IRTCClient * This,
  978. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  979. /* [retval][out] */ VARIANT_BOOL *pfMuted);
  980. void __RPC_STUB IRTCClient_get_AudioMuted_Stub(
  981. IRpcStubBuffer *This,
  982. IRpcChannelBuffer *_pRpcChannelBuffer,
  983. PRPC_MESSAGE _pRpcMessage,
  984. DWORD *_pdwStubPhase);
  985. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_IVideoWindow_Proxy(
  986. IRTCClient * This,
  987. /* [in] */ RTC_VIDEO_DEVICE enDevice,
  988. /* [retval][out] */ IVideoWindow **ppIVideoWindow);
  989. void __RPC_STUB IRTCClient_get_IVideoWindow_Stub(
  990. IRpcStubBuffer *This,
  991. IRpcChannelBuffer *_pRpcChannelBuffer,
  992. PRPC_MESSAGE _pRpcMessage,
  993. DWORD *_pdwStubPhase);
  994. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_PreferredAudioDevice_Proxy(
  995. IRTCClient * This,
  996. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  997. /* [in] */ BSTR bstrDeviceName);
  998. void __RPC_STUB IRTCClient_put_PreferredAudioDevice_Stub(
  999. IRpcStubBuffer *This,
  1000. IRpcChannelBuffer *_pRpcChannelBuffer,
  1001. PRPC_MESSAGE _pRpcMessage,
  1002. DWORD *_pdwStubPhase);
  1003. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_PreferredAudioDevice_Proxy(
  1004. IRTCClient * This,
  1005. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  1006. /* [retval][out] */ BSTR *pbstrDeviceName);
  1007. void __RPC_STUB IRTCClient_get_PreferredAudioDevice_Stub(
  1008. IRpcStubBuffer *This,
  1009. IRpcChannelBuffer *_pRpcChannelBuffer,
  1010. PRPC_MESSAGE _pRpcMessage,
  1011. DWORD *_pdwStubPhase);
  1012. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_PreferredVolume_Proxy(
  1013. IRTCClient * This,
  1014. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  1015. /* [in] */ long lVolume);
  1016. void __RPC_STUB IRTCClient_put_PreferredVolume_Stub(
  1017. IRpcStubBuffer *This,
  1018. IRpcChannelBuffer *_pRpcChannelBuffer,
  1019. PRPC_MESSAGE _pRpcMessage,
  1020. DWORD *_pdwStubPhase);
  1021. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_PreferredVolume_Proxy(
  1022. IRTCClient * This,
  1023. /* [in] */ RTC_AUDIO_DEVICE enDevice,
  1024. /* [retval][out] */ long *plVolume);
  1025. void __RPC_STUB IRTCClient_get_PreferredVolume_Stub(
  1026. IRpcStubBuffer *This,
  1027. IRpcChannelBuffer *_pRpcChannelBuffer,
  1028. PRPC_MESSAGE _pRpcMessage,
  1029. DWORD *_pdwStubPhase);
  1030. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_PreferredAEC_Proxy(
  1031. IRTCClient * This,
  1032. /* [in] */ VARIANT_BOOL bEnable);
  1033. void __RPC_STUB IRTCClient_put_PreferredAEC_Stub(
  1034. IRpcStubBuffer *This,
  1035. IRpcChannelBuffer *_pRpcChannelBuffer,
  1036. PRPC_MESSAGE _pRpcMessage,
  1037. DWORD *_pdwStubPhase);
  1038. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_PreferredAEC_Proxy(
  1039. IRTCClient * This,
  1040. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  1041. void __RPC_STUB IRTCClient_get_PreferredAEC_Stub(
  1042. IRpcStubBuffer *This,
  1043. IRpcChannelBuffer *_pRpcChannelBuffer,
  1044. PRPC_MESSAGE _pRpcMessage,
  1045. DWORD *_pdwStubPhase);
  1046. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_PreferredVideoDevice_Proxy(
  1047. IRTCClient * This,
  1048. /* [in] */ BSTR bstrDeviceName);
  1049. void __RPC_STUB IRTCClient_put_PreferredVideoDevice_Stub(
  1050. IRpcStubBuffer *This,
  1051. IRpcChannelBuffer *_pRpcChannelBuffer,
  1052. PRPC_MESSAGE _pRpcMessage,
  1053. DWORD *_pdwStubPhase);
  1054. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_PreferredVideoDevice_Proxy(
  1055. IRTCClient * This,
  1056. /* [retval][out] */ BSTR *pbstrDeviceName);
  1057. void __RPC_STUB IRTCClient_get_PreferredVideoDevice_Stub(
  1058. IRpcStubBuffer *This,
  1059. IRpcChannelBuffer *_pRpcChannelBuffer,
  1060. PRPC_MESSAGE _pRpcMessage,
  1061. DWORD *_pdwStubPhase);
  1062. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_ActiveMedia_Proxy(
  1063. IRTCClient * This,
  1064. /* [retval][out] */ long *plMediaType);
  1065. void __RPC_STUB IRTCClient_get_ActiveMedia_Stub(
  1066. IRpcStubBuffer *This,
  1067. IRpcChannelBuffer *_pRpcChannelBuffer,
  1068. PRPC_MESSAGE _pRpcMessage,
  1069. DWORD *_pdwStubPhase);
  1070. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_MaxBitrate_Proxy(
  1071. IRTCClient * This,
  1072. /* [in] */ long lMaxBitrate);
  1073. void __RPC_STUB IRTCClient_put_MaxBitrate_Stub(
  1074. IRpcStubBuffer *This,
  1075. IRpcChannelBuffer *_pRpcChannelBuffer,
  1076. PRPC_MESSAGE _pRpcMessage,
  1077. DWORD *_pdwStubPhase);
  1078. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_MaxBitrate_Proxy(
  1079. IRTCClient * This,
  1080. /* [retval][out] */ long *plMaxBitrate);
  1081. void __RPC_STUB IRTCClient_get_MaxBitrate_Stub(
  1082. IRpcStubBuffer *This,
  1083. IRpcChannelBuffer *_pRpcChannelBuffer,
  1084. PRPC_MESSAGE _pRpcMessage,
  1085. DWORD *_pdwStubPhase);
  1086. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_TemporalSpatialTradeOff_Proxy(
  1087. IRTCClient * This,
  1088. /* [in] */ long lValue);
  1089. void __RPC_STUB IRTCClient_put_TemporalSpatialTradeOff_Stub(
  1090. IRpcStubBuffer *This,
  1091. IRpcChannelBuffer *_pRpcChannelBuffer,
  1092. PRPC_MESSAGE _pRpcMessage,
  1093. DWORD *_pdwStubPhase);
  1094. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_TemporalSpatialTradeOff_Proxy(
  1095. IRTCClient * This,
  1096. /* [retval][out] */ long *plValue);
  1097. void __RPC_STUB IRTCClient_get_TemporalSpatialTradeOff_Stub(
  1098. IRpcStubBuffer *This,
  1099. IRpcChannelBuffer *_pRpcChannelBuffer,
  1100. PRPC_MESSAGE _pRpcMessage,
  1101. DWORD *_pdwStubPhase);
  1102. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_NetworkQuality_Proxy(
  1103. IRTCClient * This,
  1104. /* [retval][out] */ long *plNetworkQuality);
  1105. void __RPC_STUB IRTCClient_get_NetworkQuality_Stub(
  1106. IRpcStubBuffer *This,
  1107. IRpcChannelBuffer *_pRpcChannelBuffer,
  1108. PRPC_MESSAGE _pRpcMessage,
  1109. DWORD *_pdwStubPhase);
  1110. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_StartT120Applet_Proxy(
  1111. IRTCClient * This,
  1112. /* [in] */ RTC_T120_APPLET enApplet);
  1113. void __RPC_STUB IRTCClient_StartT120Applet_Stub(
  1114. IRpcStubBuffer *This,
  1115. IRpcChannelBuffer *_pRpcChannelBuffer,
  1116. PRPC_MESSAGE _pRpcMessage,
  1117. DWORD *_pdwStubPhase);
  1118. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_StopT120Applets_Proxy(
  1119. IRTCClient * This);
  1120. void __RPC_STUB IRTCClient_StopT120Applets_Stub(
  1121. IRpcStubBuffer *This,
  1122. IRpcChannelBuffer *_pRpcChannelBuffer,
  1123. PRPC_MESSAGE _pRpcMessage,
  1124. DWORD *_pdwStubPhase);
  1125. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_IsT120AppletRunning_Proxy(
  1126. IRTCClient * This,
  1127. /* [in] */ RTC_T120_APPLET enApplet,
  1128. /* [retval][out] */ VARIANT_BOOL *pfRunning);
  1129. void __RPC_STUB IRTCClient_get_IsT120AppletRunning_Stub(
  1130. IRpcStubBuffer *This,
  1131. IRpcChannelBuffer *_pRpcChannelBuffer,
  1132. PRPC_MESSAGE _pRpcMessage,
  1133. DWORD *_pdwStubPhase);
  1134. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_LocalUserURI_Proxy(
  1135. IRTCClient * This,
  1136. /* [retval][out] */ BSTR *pbstrUserURI);
  1137. void __RPC_STUB IRTCClient_get_LocalUserURI_Stub(
  1138. IRpcStubBuffer *This,
  1139. IRpcChannelBuffer *_pRpcChannelBuffer,
  1140. PRPC_MESSAGE _pRpcMessage,
  1141. DWORD *_pdwStubPhase);
  1142. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_LocalUserURI_Proxy(
  1143. IRTCClient * This,
  1144. /* [in] */ BSTR bstrUserURI);
  1145. void __RPC_STUB IRTCClient_put_LocalUserURI_Stub(
  1146. IRpcStubBuffer *This,
  1147. IRpcChannelBuffer *_pRpcChannelBuffer,
  1148. PRPC_MESSAGE _pRpcMessage,
  1149. DWORD *_pdwStubPhase);
  1150. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_LocalUserName_Proxy(
  1151. IRTCClient * This,
  1152. /* [retval][out] */ BSTR *pbstrUserName);
  1153. void __RPC_STUB IRTCClient_get_LocalUserName_Stub(
  1154. IRpcStubBuffer *This,
  1155. IRpcChannelBuffer *_pRpcChannelBuffer,
  1156. PRPC_MESSAGE _pRpcMessage,
  1157. DWORD *_pdwStubPhase);
  1158. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClient_put_LocalUserName_Proxy(
  1159. IRTCClient * This,
  1160. /* [in] */ BSTR bstrUserName);
  1161. void __RPC_STUB IRTCClient_put_LocalUserName_Stub(
  1162. IRpcStubBuffer *This,
  1163. IRpcChannelBuffer *_pRpcChannelBuffer,
  1164. PRPC_MESSAGE _pRpcMessage,
  1165. DWORD *_pdwStubPhase);
  1166. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_PlayRing_Proxy(
  1167. IRTCClient * This,
  1168. /* [in] */ RTC_RING_TYPE enType,
  1169. /* [in] */ VARIANT_BOOL bPlay);
  1170. void __RPC_STUB IRTCClient_PlayRing_Stub(
  1171. IRpcStubBuffer *This,
  1172. IRpcChannelBuffer *_pRpcChannelBuffer,
  1173. PRPC_MESSAGE _pRpcMessage,
  1174. DWORD *_pdwStubPhase);
  1175. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_SendDTMF_Proxy(
  1176. IRTCClient * This,
  1177. /* [in] */ RTC_DTMF enDTMF);
  1178. void __RPC_STUB IRTCClient_SendDTMF_Stub(
  1179. IRpcStubBuffer *This,
  1180. IRpcChannelBuffer *_pRpcChannelBuffer,
  1181. PRPC_MESSAGE _pRpcMessage,
  1182. DWORD *_pdwStubPhase);
  1183. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClient_InvokeTuningWizard_Proxy(
  1184. IRTCClient * This,
  1185. /* [in] */ OAHWND hwndParent);
  1186. void __RPC_STUB IRTCClient_InvokeTuningWizard_Stub(
  1187. IRpcStubBuffer *This,
  1188. IRpcChannelBuffer *_pRpcChannelBuffer,
  1189. PRPC_MESSAGE _pRpcMessage,
  1190. DWORD *_pdwStubPhase);
  1191. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClient_get_IsTuned_Proxy(
  1192. IRTCClient * This,
  1193. /* [retval][out] */ VARIANT_BOOL *pfTuned);
  1194. void __RPC_STUB IRTCClient_get_IsTuned_Stub(
  1195. IRpcStubBuffer *This,
  1196. IRpcChannelBuffer *_pRpcChannelBuffer,
  1197. PRPC_MESSAGE _pRpcMessage,
  1198. DWORD *_pdwStubPhase);
  1199. #endif /* __IRTCClient_INTERFACE_DEFINED__ */
  1200. #ifndef __IRTCClientPresence_INTERFACE_DEFINED__
  1201. #define __IRTCClientPresence_INTERFACE_DEFINED__
  1202. /* interface IRTCClientPresence */
  1203. /* [unique][helpstring][uuid][object] */
  1204. EXTERN_C const IID IID_IRTCClientPresence;
  1205. #if defined(__cplusplus) && !defined(CINTERFACE)
  1206. MIDL_INTERFACE("11c3cbcc-0744-42d1-968a-51aa1bb274c6")
  1207. IRTCClientPresence : public IUnknown
  1208. {
  1209. public:
  1210. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE EnablePresence(
  1211. /* [in] */ VARIANT_BOOL fUseStorage,
  1212. /* [in] */ VARIANT varStorage) = 0;
  1213. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Export(
  1214. /* [in] */ VARIANT varStorage) = 0;
  1215. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Import(
  1216. /* [in] */ VARIANT varStorage,
  1217. /* [in] */ VARIANT_BOOL fReplaceAll) = 0;
  1218. virtual /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE EnumerateBuddies(
  1219. /* [retval][out] */ IRTCEnumBuddies **ppEnum) = 0;
  1220. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Buddies(
  1221. /* [retval][out] */ IRTCCollection **ppCollection) = 0;
  1222. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Buddy(
  1223. /* [in] */ BSTR bstrPresentityURI,
  1224. /* [retval][out] */ IRTCBuddy **ppBuddy) = 0;
  1225. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddBuddy(
  1226. /* [in] */ BSTR bstrPresentityURI,
  1227. /* [in] */ BSTR bstrUserName,
  1228. /* [in] */ BSTR bstrData,
  1229. /* [in] */ VARIANT_BOOL fPersistent,
  1230. /* [in] */ IRTCProfile *pProfile,
  1231. /* [in] */ long lFlags,
  1232. /* [retval][out] */ IRTCBuddy **ppBuddy) = 0;
  1233. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveBuddy(
  1234. /* [in] */ IRTCBuddy *pBuddy) = 0;
  1235. virtual /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE EnumerateWatchers(
  1236. /* [retval][out] */ IRTCEnumWatchers **ppEnum) = 0;
  1237. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Watchers(
  1238. /* [retval][out] */ IRTCCollection **ppCollection) = 0;
  1239. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Watcher(
  1240. /* [in] */ BSTR bstrPresentityURI,
  1241. /* [retval][out] */ IRTCWatcher **ppWatcher) = 0;
  1242. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddWatcher(
  1243. /* [in] */ BSTR bstrPresentityURI,
  1244. /* [in] */ BSTR bstrUserName,
  1245. /* [in] */ BSTR bstrData,
  1246. /* [in] */ VARIANT_BOOL fBlocked,
  1247. /* [in] */ VARIANT_BOOL fPersistent,
  1248. /* [retval][out] */ IRTCWatcher **ppWatcher) = 0;
  1249. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveWatcher(
  1250. /* [in] */ IRTCWatcher *pWatcher) = 0;
  1251. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetLocalPresenceInfo(
  1252. /* [in] */ RTC_PRESENCE_STATUS enStatus,
  1253. /* [in] */ BSTR bstrNotes) = 0;
  1254. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_OfferWatcherMode(
  1255. /* [retval][out] */ RTC_OFFER_WATCHER_MODE *penMode) = 0;
  1256. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_OfferWatcherMode(
  1257. /* [in] */ RTC_OFFER_WATCHER_MODE enMode) = 0;
  1258. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PrivacyMode(
  1259. /* [retval][out] */ RTC_PRIVACY_MODE *penMode) = 0;
  1260. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_PrivacyMode(
  1261. /* [in] */ RTC_PRIVACY_MODE enMode) = 0;
  1262. };
  1263. #else /* C style interface */
  1264. typedef struct IRTCClientPresenceVtbl
  1265. {
  1266. BEGIN_INTERFACE
  1267. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1268. IRTCClientPresence * This,
  1269. /* [in] */ REFIID riid,
  1270. /* [iid_is][out] */ void **ppvObject);
  1271. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1272. IRTCClientPresence * This);
  1273. ULONG ( STDMETHODCALLTYPE *Release )(
  1274. IRTCClientPresence * This);
  1275. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *EnablePresence )(
  1276. IRTCClientPresence * This,
  1277. /* [in] */ VARIANT_BOOL fUseStorage,
  1278. /* [in] */ VARIANT varStorage);
  1279. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Export )(
  1280. IRTCClientPresence * This,
  1281. /* [in] */ VARIANT varStorage);
  1282. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Import )(
  1283. IRTCClientPresence * This,
  1284. /* [in] */ VARIANT varStorage,
  1285. /* [in] */ VARIANT_BOOL fReplaceAll);
  1286. /* [helpstring][hidden] */ HRESULT ( STDMETHODCALLTYPE *EnumerateBuddies )(
  1287. IRTCClientPresence * This,
  1288. /* [retval][out] */ IRTCEnumBuddies **ppEnum);
  1289. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Buddies )(
  1290. IRTCClientPresence * This,
  1291. /* [retval][out] */ IRTCCollection **ppCollection);
  1292. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Buddy )(
  1293. IRTCClientPresence * This,
  1294. /* [in] */ BSTR bstrPresentityURI,
  1295. /* [retval][out] */ IRTCBuddy **ppBuddy);
  1296. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddBuddy )(
  1297. IRTCClientPresence * This,
  1298. /* [in] */ BSTR bstrPresentityURI,
  1299. /* [in] */ BSTR bstrUserName,
  1300. /* [in] */ BSTR bstrData,
  1301. /* [in] */ VARIANT_BOOL fPersistent,
  1302. /* [in] */ IRTCProfile *pProfile,
  1303. /* [in] */ long lFlags,
  1304. /* [retval][out] */ IRTCBuddy **ppBuddy);
  1305. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveBuddy )(
  1306. IRTCClientPresence * This,
  1307. /* [in] */ IRTCBuddy *pBuddy);
  1308. /* [helpstring][hidden] */ HRESULT ( STDMETHODCALLTYPE *EnumerateWatchers )(
  1309. IRTCClientPresence * This,
  1310. /* [retval][out] */ IRTCEnumWatchers **ppEnum);
  1311. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Watchers )(
  1312. IRTCClientPresence * This,
  1313. /* [retval][out] */ IRTCCollection **ppCollection);
  1314. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Watcher )(
  1315. IRTCClientPresence * This,
  1316. /* [in] */ BSTR bstrPresentityURI,
  1317. /* [retval][out] */ IRTCWatcher **ppWatcher);
  1318. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddWatcher )(
  1319. IRTCClientPresence * This,
  1320. /* [in] */ BSTR bstrPresentityURI,
  1321. /* [in] */ BSTR bstrUserName,
  1322. /* [in] */ BSTR bstrData,
  1323. /* [in] */ VARIANT_BOOL fBlocked,
  1324. /* [in] */ VARIANT_BOOL fPersistent,
  1325. /* [retval][out] */ IRTCWatcher **ppWatcher);
  1326. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveWatcher )(
  1327. IRTCClientPresence * This,
  1328. /* [in] */ IRTCWatcher *pWatcher);
  1329. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetLocalPresenceInfo )(
  1330. IRTCClientPresence * This,
  1331. /* [in] */ RTC_PRESENCE_STATUS enStatus,
  1332. /* [in] */ BSTR bstrNotes);
  1333. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OfferWatcherMode )(
  1334. IRTCClientPresence * This,
  1335. /* [retval][out] */ RTC_OFFER_WATCHER_MODE *penMode);
  1336. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OfferWatcherMode )(
  1337. IRTCClientPresence * This,
  1338. /* [in] */ RTC_OFFER_WATCHER_MODE enMode);
  1339. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrivacyMode )(
  1340. IRTCClientPresence * This,
  1341. /* [retval][out] */ RTC_PRIVACY_MODE *penMode);
  1342. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PrivacyMode )(
  1343. IRTCClientPresence * This,
  1344. /* [in] */ RTC_PRIVACY_MODE enMode);
  1345. END_INTERFACE
  1346. } IRTCClientPresenceVtbl;
  1347. interface IRTCClientPresence
  1348. {
  1349. CONST_VTBL struct IRTCClientPresenceVtbl *lpVtbl;
  1350. };
  1351. #ifdef COBJMACROS
  1352. #define IRTCClientPresence_QueryInterface(This,riid,ppvObject) \
  1353. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1354. #define IRTCClientPresence_AddRef(This) \
  1355. (This)->lpVtbl -> AddRef(This)
  1356. #define IRTCClientPresence_Release(This) \
  1357. (This)->lpVtbl -> Release(This)
  1358. #define IRTCClientPresence_EnablePresence(This,fUseStorage,varStorage) \
  1359. (This)->lpVtbl -> EnablePresence(This,fUseStorage,varStorage)
  1360. #define IRTCClientPresence_Export(This,varStorage) \
  1361. (This)->lpVtbl -> Export(This,varStorage)
  1362. #define IRTCClientPresence_Import(This,varStorage,fReplaceAll) \
  1363. (This)->lpVtbl -> Import(This,varStorage,fReplaceAll)
  1364. #define IRTCClientPresence_EnumerateBuddies(This,ppEnum) \
  1365. (This)->lpVtbl -> EnumerateBuddies(This,ppEnum)
  1366. #define IRTCClientPresence_get_Buddies(This,ppCollection) \
  1367. (This)->lpVtbl -> get_Buddies(This,ppCollection)
  1368. #define IRTCClientPresence_get_Buddy(This,bstrPresentityURI,ppBuddy) \
  1369. (This)->lpVtbl -> get_Buddy(This,bstrPresentityURI,ppBuddy)
  1370. #define IRTCClientPresence_AddBuddy(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,pProfile,lFlags,ppBuddy) \
  1371. (This)->lpVtbl -> AddBuddy(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,pProfile,lFlags,ppBuddy)
  1372. #define IRTCClientPresence_RemoveBuddy(This,pBuddy) \
  1373. (This)->lpVtbl -> RemoveBuddy(This,pBuddy)
  1374. #define IRTCClientPresence_EnumerateWatchers(This,ppEnum) \
  1375. (This)->lpVtbl -> EnumerateWatchers(This,ppEnum)
  1376. #define IRTCClientPresence_get_Watchers(This,ppCollection) \
  1377. (This)->lpVtbl -> get_Watchers(This,ppCollection)
  1378. #define IRTCClientPresence_get_Watcher(This,bstrPresentityURI,ppWatcher) \
  1379. (This)->lpVtbl -> get_Watcher(This,bstrPresentityURI,ppWatcher)
  1380. #define IRTCClientPresence_AddWatcher(This,bstrPresentityURI,bstrUserName,bstrData,fBlocked,fPersistent,ppWatcher) \
  1381. (This)->lpVtbl -> AddWatcher(This,bstrPresentityURI,bstrUserName,bstrData,fBlocked,fPersistent,ppWatcher)
  1382. #define IRTCClientPresence_RemoveWatcher(This,pWatcher) \
  1383. (This)->lpVtbl -> RemoveWatcher(This,pWatcher)
  1384. #define IRTCClientPresence_SetLocalPresenceInfo(This,enStatus,bstrNotes) \
  1385. (This)->lpVtbl -> SetLocalPresenceInfo(This,enStatus,bstrNotes)
  1386. #define IRTCClientPresence_get_OfferWatcherMode(This,penMode) \
  1387. (This)->lpVtbl -> get_OfferWatcherMode(This,penMode)
  1388. #define IRTCClientPresence_put_OfferWatcherMode(This,enMode) \
  1389. (This)->lpVtbl -> put_OfferWatcherMode(This,enMode)
  1390. #define IRTCClientPresence_get_PrivacyMode(This,penMode) \
  1391. (This)->lpVtbl -> get_PrivacyMode(This,penMode)
  1392. #define IRTCClientPresence_put_PrivacyMode(This,enMode) \
  1393. (This)->lpVtbl -> put_PrivacyMode(This,enMode)
  1394. #endif /* COBJMACROS */
  1395. #endif /* C style interface */
  1396. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_EnablePresence_Proxy(
  1397. IRTCClientPresence * This,
  1398. /* [in] */ VARIANT_BOOL fUseStorage,
  1399. /* [in] */ VARIANT varStorage);
  1400. void __RPC_STUB IRTCClientPresence_EnablePresence_Stub(
  1401. IRpcStubBuffer *This,
  1402. IRpcChannelBuffer *_pRpcChannelBuffer,
  1403. PRPC_MESSAGE _pRpcMessage,
  1404. DWORD *_pdwStubPhase);
  1405. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_Export_Proxy(
  1406. IRTCClientPresence * This,
  1407. /* [in] */ VARIANT varStorage);
  1408. void __RPC_STUB IRTCClientPresence_Export_Stub(
  1409. IRpcStubBuffer *This,
  1410. IRpcChannelBuffer *_pRpcChannelBuffer,
  1411. PRPC_MESSAGE _pRpcMessage,
  1412. DWORD *_pdwStubPhase);
  1413. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_Import_Proxy(
  1414. IRTCClientPresence * This,
  1415. /* [in] */ VARIANT varStorage,
  1416. /* [in] */ VARIANT_BOOL fReplaceAll);
  1417. void __RPC_STUB IRTCClientPresence_Import_Stub(
  1418. IRpcStubBuffer *This,
  1419. IRpcChannelBuffer *_pRpcChannelBuffer,
  1420. PRPC_MESSAGE _pRpcMessage,
  1421. DWORD *_pdwStubPhase);
  1422. /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_EnumerateBuddies_Proxy(
  1423. IRTCClientPresence * This,
  1424. /* [retval][out] */ IRTCEnumBuddies **ppEnum);
  1425. void __RPC_STUB IRTCClientPresence_EnumerateBuddies_Stub(
  1426. IRpcStubBuffer *This,
  1427. IRpcChannelBuffer *_pRpcChannelBuffer,
  1428. PRPC_MESSAGE _pRpcMessage,
  1429. DWORD *_pdwStubPhase);
  1430. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_get_Buddies_Proxy(
  1431. IRTCClientPresence * This,
  1432. /* [retval][out] */ IRTCCollection **ppCollection);
  1433. void __RPC_STUB IRTCClientPresence_get_Buddies_Stub(
  1434. IRpcStubBuffer *This,
  1435. IRpcChannelBuffer *_pRpcChannelBuffer,
  1436. PRPC_MESSAGE _pRpcMessage,
  1437. DWORD *_pdwStubPhase);
  1438. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_get_Buddy_Proxy(
  1439. IRTCClientPresence * This,
  1440. /* [in] */ BSTR bstrPresentityURI,
  1441. /* [retval][out] */ IRTCBuddy **ppBuddy);
  1442. void __RPC_STUB IRTCClientPresence_get_Buddy_Stub(
  1443. IRpcStubBuffer *This,
  1444. IRpcChannelBuffer *_pRpcChannelBuffer,
  1445. PRPC_MESSAGE _pRpcMessage,
  1446. DWORD *_pdwStubPhase);
  1447. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_AddBuddy_Proxy(
  1448. IRTCClientPresence * This,
  1449. /* [in] */ BSTR bstrPresentityURI,
  1450. /* [in] */ BSTR bstrUserName,
  1451. /* [in] */ BSTR bstrData,
  1452. /* [in] */ VARIANT_BOOL fPersistent,
  1453. /* [in] */ IRTCProfile *pProfile,
  1454. /* [in] */ long lFlags,
  1455. /* [retval][out] */ IRTCBuddy **ppBuddy);
  1456. void __RPC_STUB IRTCClientPresence_AddBuddy_Stub(
  1457. IRpcStubBuffer *This,
  1458. IRpcChannelBuffer *_pRpcChannelBuffer,
  1459. PRPC_MESSAGE _pRpcMessage,
  1460. DWORD *_pdwStubPhase);
  1461. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_RemoveBuddy_Proxy(
  1462. IRTCClientPresence * This,
  1463. /* [in] */ IRTCBuddy *pBuddy);
  1464. void __RPC_STUB IRTCClientPresence_RemoveBuddy_Stub(
  1465. IRpcStubBuffer *This,
  1466. IRpcChannelBuffer *_pRpcChannelBuffer,
  1467. PRPC_MESSAGE _pRpcMessage,
  1468. DWORD *_pdwStubPhase);
  1469. /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_EnumerateWatchers_Proxy(
  1470. IRTCClientPresence * This,
  1471. /* [retval][out] */ IRTCEnumWatchers **ppEnum);
  1472. void __RPC_STUB IRTCClientPresence_EnumerateWatchers_Stub(
  1473. IRpcStubBuffer *This,
  1474. IRpcChannelBuffer *_pRpcChannelBuffer,
  1475. PRPC_MESSAGE _pRpcMessage,
  1476. DWORD *_pdwStubPhase);
  1477. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_get_Watchers_Proxy(
  1478. IRTCClientPresence * This,
  1479. /* [retval][out] */ IRTCCollection **ppCollection);
  1480. void __RPC_STUB IRTCClientPresence_get_Watchers_Stub(
  1481. IRpcStubBuffer *This,
  1482. IRpcChannelBuffer *_pRpcChannelBuffer,
  1483. PRPC_MESSAGE _pRpcMessage,
  1484. DWORD *_pdwStubPhase);
  1485. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_get_Watcher_Proxy(
  1486. IRTCClientPresence * This,
  1487. /* [in] */ BSTR bstrPresentityURI,
  1488. /* [retval][out] */ IRTCWatcher **ppWatcher);
  1489. void __RPC_STUB IRTCClientPresence_get_Watcher_Stub(
  1490. IRpcStubBuffer *This,
  1491. IRpcChannelBuffer *_pRpcChannelBuffer,
  1492. PRPC_MESSAGE _pRpcMessage,
  1493. DWORD *_pdwStubPhase);
  1494. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_AddWatcher_Proxy(
  1495. IRTCClientPresence * This,
  1496. /* [in] */ BSTR bstrPresentityURI,
  1497. /* [in] */ BSTR bstrUserName,
  1498. /* [in] */ BSTR bstrData,
  1499. /* [in] */ VARIANT_BOOL fBlocked,
  1500. /* [in] */ VARIANT_BOOL fPersistent,
  1501. /* [retval][out] */ IRTCWatcher **ppWatcher);
  1502. void __RPC_STUB IRTCClientPresence_AddWatcher_Stub(
  1503. IRpcStubBuffer *This,
  1504. IRpcChannelBuffer *_pRpcChannelBuffer,
  1505. PRPC_MESSAGE _pRpcMessage,
  1506. DWORD *_pdwStubPhase);
  1507. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_RemoveWatcher_Proxy(
  1508. IRTCClientPresence * This,
  1509. /* [in] */ IRTCWatcher *pWatcher);
  1510. void __RPC_STUB IRTCClientPresence_RemoveWatcher_Stub(
  1511. IRpcStubBuffer *This,
  1512. IRpcChannelBuffer *_pRpcChannelBuffer,
  1513. PRPC_MESSAGE _pRpcMessage,
  1514. DWORD *_pdwStubPhase);
  1515. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_SetLocalPresenceInfo_Proxy(
  1516. IRTCClientPresence * This,
  1517. /* [in] */ RTC_PRESENCE_STATUS enStatus,
  1518. /* [in] */ BSTR bstrNotes);
  1519. void __RPC_STUB IRTCClientPresence_SetLocalPresenceInfo_Stub(
  1520. IRpcStubBuffer *This,
  1521. IRpcChannelBuffer *_pRpcChannelBuffer,
  1522. PRPC_MESSAGE _pRpcMessage,
  1523. DWORD *_pdwStubPhase);
  1524. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_get_OfferWatcherMode_Proxy(
  1525. IRTCClientPresence * This,
  1526. /* [retval][out] */ RTC_OFFER_WATCHER_MODE *penMode);
  1527. void __RPC_STUB IRTCClientPresence_get_OfferWatcherMode_Stub(
  1528. IRpcStubBuffer *This,
  1529. IRpcChannelBuffer *_pRpcChannelBuffer,
  1530. PRPC_MESSAGE _pRpcMessage,
  1531. DWORD *_pdwStubPhase);
  1532. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_put_OfferWatcherMode_Proxy(
  1533. IRTCClientPresence * This,
  1534. /* [in] */ RTC_OFFER_WATCHER_MODE enMode);
  1535. void __RPC_STUB IRTCClientPresence_put_OfferWatcherMode_Stub(
  1536. IRpcStubBuffer *This,
  1537. IRpcChannelBuffer *_pRpcChannelBuffer,
  1538. PRPC_MESSAGE _pRpcMessage,
  1539. DWORD *_pdwStubPhase);
  1540. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_get_PrivacyMode_Proxy(
  1541. IRTCClientPresence * This,
  1542. /* [retval][out] */ RTC_PRIVACY_MODE *penMode);
  1543. void __RPC_STUB IRTCClientPresence_get_PrivacyMode_Stub(
  1544. IRpcStubBuffer *This,
  1545. IRpcChannelBuffer *_pRpcChannelBuffer,
  1546. PRPC_MESSAGE _pRpcMessage,
  1547. DWORD *_pdwStubPhase);
  1548. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCClientPresence_put_PrivacyMode_Proxy(
  1549. IRTCClientPresence * This,
  1550. /* [in] */ RTC_PRIVACY_MODE enMode);
  1551. void __RPC_STUB IRTCClientPresence_put_PrivacyMode_Stub(
  1552. IRpcStubBuffer *This,
  1553. IRpcChannelBuffer *_pRpcChannelBuffer,
  1554. PRPC_MESSAGE _pRpcMessage,
  1555. DWORD *_pdwStubPhase);
  1556. #endif /* __IRTCClientPresence_INTERFACE_DEFINED__ */
  1557. #ifndef __IRTCClientProvisioning_INTERFACE_DEFINED__
  1558. #define __IRTCClientProvisioning_INTERFACE_DEFINED__
  1559. /* interface IRTCClientProvisioning */
  1560. /* [unique][helpstring][uuid][object] */
  1561. EXTERN_C const IID IID_IRTCClientProvisioning;
  1562. #if defined(__cplusplus) && !defined(CINTERFACE)
  1563. MIDL_INTERFACE("B9F5CF06-65B9-4a80-A0E6-73CAE3EF3822")
  1564. IRTCClientProvisioning : public IUnknown
  1565. {
  1566. public:
  1567. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateProfile(
  1568. /* [in] */ BSTR bstrProfileXML,
  1569. /* [retval][out] */ IRTCProfile **ppProfile) = 0;
  1570. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE EnableProfile(
  1571. /* [in] */ IRTCProfile *pProfile,
  1572. /* [in] */ long lRegisterFlags) = 0;
  1573. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DisableProfile(
  1574. /* [in] */ IRTCProfile *pProfile) = 0;
  1575. virtual /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE EnumerateProfiles(
  1576. /* [retval][out] */ IRTCEnumProfiles **ppEnum) = 0;
  1577. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Profiles(
  1578. /* [retval][out] */ IRTCCollection **ppCollection) = 0;
  1579. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetProfile(
  1580. /* [in] */ BSTR bstrUserAccount,
  1581. /* [in] */ BSTR bstrUserPassword,
  1582. /* [in] */ BSTR bstrUserURI,
  1583. /* [in] */ BSTR bstrServer,
  1584. /* [in] */ long lTransport,
  1585. /* [in] */ long lCookie) = 0;
  1586. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_SessionCapabilities(
  1587. /* [retval][out] */ long *plSupportedSessions) = 0;
  1588. };
  1589. #else /* C style interface */
  1590. typedef struct IRTCClientProvisioningVtbl
  1591. {
  1592. BEGIN_INTERFACE
  1593. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1594. IRTCClientProvisioning * This,
  1595. /* [in] */ REFIID riid,
  1596. /* [iid_is][out] */ void **ppvObject);
  1597. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1598. IRTCClientProvisioning * This);
  1599. ULONG ( STDMETHODCALLTYPE *Release )(
  1600. IRTCClientProvisioning * This);
  1601. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateProfile )(
  1602. IRTCClientProvisioning * This,
  1603. /* [in] */ BSTR bstrProfileXML,
  1604. /* [retval][out] */ IRTCProfile **ppProfile);
  1605. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *EnableProfile )(
  1606. IRTCClientProvisioning * This,
  1607. /* [in] */ IRTCProfile *pProfile,
  1608. /* [in] */ long lRegisterFlags);
  1609. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DisableProfile )(
  1610. IRTCClientProvisioning * This,
  1611. /* [in] */ IRTCProfile *pProfile);
  1612. /* [helpstring][hidden] */ HRESULT ( STDMETHODCALLTYPE *EnumerateProfiles )(
  1613. IRTCClientProvisioning * This,
  1614. /* [retval][out] */ IRTCEnumProfiles **ppEnum);
  1615. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Profiles )(
  1616. IRTCClientProvisioning * This,
  1617. /* [retval][out] */ IRTCCollection **ppCollection);
  1618. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetProfile )(
  1619. IRTCClientProvisioning * This,
  1620. /* [in] */ BSTR bstrUserAccount,
  1621. /* [in] */ BSTR bstrUserPassword,
  1622. /* [in] */ BSTR bstrUserURI,
  1623. /* [in] */ BSTR bstrServer,
  1624. /* [in] */ long lTransport,
  1625. /* [in] */ long lCookie);
  1626. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SessionCapabilities )(
  1627. IRTCClientProvisioning * This,
  1628. /* [retval][out] */ long *plSupportedSessions);
  1629. END_INTERFACE
  1630. } IRTCClientProvisioningVtbl;
  1631. interface IRTCClientProvisioning
  1632. {
  1633. CONST_VTBL struct IRTCClientProvisioningVtbl *lpVtbl;
  1634. };
  1635. #ifdef COBJMACROS
  1636. #define IRTCClientProvisioning_QueryInterface(This,riid,ppvObject) \
  1637. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1638. #define IRTCClientProvisioning_AddRef(This) \
  1639. (This)->lpVtbl -> AddRef(This)
  1640. #define IRTCClientProvisioning_Release(This) \
  1641. (This)->lpVtbl -> Release(This)
  1642. #define IRTCClientProvisioning_CreateProfile(This,bstrProfileXML,ppProfile) \
  1643. (This)->lpVtbl -> CreateProfile(This,bstrProfileXML,ppProfile)
  1644. #define IRTCClientProvisioning_EnableProfile(This,pProfile,lRegisterFlags) \
  1645. (This)->lpVtbl -> EnableProfile(This,pProfile,lRegisterFlags)
  1646. #define IRTCClientProvisioning_DisableProfile(This,pProfile) \
  1647. (This)->lpVtbl -> DisableProfile(This,pProfile)
  1648. #define IRTCClientProvisioning_EnumerateProfiles(This,ppEnum) \
  1649. (This)->lpVtbl -> EnumerateProfiles(This,ppEnum)
  1650. #define IRTCClientProvisioning_get_Profiles(This,ppCollection) \
  1651. (This)->lpVtbl -> get_Profiles(This,ppCollection)
  1652. #define IRTCClientProvisioning_GetProfile(This,bstrUserAccount,bstrUserPassword,bstrUserURI,bstrServer,lTransport,lCookie) \
  1653. (This)->lpVtbl -> GetProfile(This,bstrUserAccount,bstrUserPassword,bstrUserURI,bstrServer,lTransport,lCookie)
  1654. #define IRTCClientProvisioning_get_SessionCapabilities(This,plSupportedSessions) \
  1655. (This)->lpVtbl -> get_SessionCapabilities(This,plSupportedSessions)
  1656. #endif /* COBJMACROS */
  1657. #endif /* C style interface */
  1658. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientProvisioning_CreateProfile_Proxy(
  1659. IRTCClientProvisioning * This,
  1660. /* [in] */ BSTR bstrProfileXML,
  1661. /* [retval][out] */ IRTCProfile **ppProfile);
  1662. void __RPC_STUB IRTCClientProvisioning_CreateProfile_Stub(
  1663. IRpcStubBuffer *This,
  1664. IRpcChannelBuffer *_pRpcChannelBuffer,
  1665. PRPC_MESSAGE _pRpcMessage,
  1666. DWORD *_pdwStubPhase);
  1667. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientProvisioning_EnableProfile_Proxy(
  1668. IRTCClientProvisioning * This,
  1669. /* [in] */ IRTCProfile *pProfile,
  1670. /* [in] */ long lRegisterFlags);
  1671. void __RPC_STUB IRTCClientProvisioning_EnableProfile_Stub(
  1672. IRpcStubBuffer *This,
  1673. IRpcChannelBuffer *_pRpcChannelBuffer,
  1674. PRPC_MESSAGE _pRpcMessage,
  1675. DWORD *_pdwStubPhase);
  1676. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientProvisioning_DisableProfile_Proxy(
  1677. IRTCClientProvisioning * This,
  1678. /* [in] */ IRTCProfile *pProfile);
  1679. void __RPC_STUB IRTCClientProvisioning_DisableProfile_Stub(
  1680. IRpcStubBuffer *This,
  1681. IRpcChannelBuffer *_pRpcChannelBuffer,
  1682. PRPC_MESSAGE _pRpcMessage,
  1683. DWORD *_pdwStubPhase);
  1684. /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE IRTCClientProvisioning_EnumerateProfiles_Proxy(
  1685. IRTCClientProvisioning * This,
  1686. /* [retval][out] */ IRTCEnumProfiles **ppEnum);
  1687. void __RPC_STUB IRTCClientProvisioning_EnumerateProfiles_Stub(
  1688. IRpcStubBuffer *This,
  1689. IRpcChannelBuffer *_pRpcChannelBuffer,
  1690. PRPC_MESSAGE _pRpcMessage,
  1691. DWORD *_pdwStubPhase);
  1692. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientProvisioning_get_Profiles_Proxy(
  1693. IRTCClientProvisioning * This,
  1694. /* [retval][out] */ IRTCCollection **ppCollection);
  1695. void __RPC_STUB IRTCClientProvisioning_get_Profiles_Stub(
  1696. IRpcStubBuffer *This,
  1697. IRpcChannelBuffer *_pRpcChannelBuffer,
  1698. PRPC_MESSAGE _pRpcMessage,
  1699. DWORD *_pdwStubPhase);
  1700. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCClientProvisioning_GetProfile_Proxy(
  1701. IRTCClientProvisioning * This,
  1702. /* [in] */ BSTR bstrUserAccount,
  1703. /* [in] */ BSTR bstrUserPassword,
  1704. /* [in] */ BSTR bstrUserURI,
  1705. /* [in] */ BSTR bstrServer,
  1706. /* [in] */ long lTransport,
  1707. /* [in] */ long lCookie);
  1708. void __RPC_STUB IRTCClientProvisioning_GetProfile_Stub(
  1709. IRpcStubBuffer *This,
  1710. IRpcChannelBuffer *_pRpcChannelBuffer,
  1711. PRPC_MESSAGE _pRpcMessage,
  1712. DWORD *_pdwStubPhase);
  1713. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientProvisioning_get_SessionCapabilities_Proxy(
  1714. IRTCClientProvisioning * This,
  1715. /* [retval][out] */ long *plSupportedSessions);
  1716. void __RPC_STUB IRTCClientProvisioning_get_SessionCapabilities_Stub(
  1717. IRpcStubBuffer *This,
  1718. IRpcChannelBuffer *_pRpcChannelBuffer,
  1719. PRPC_MESSAGE _pRpcMessage,
  1720. DWORD *_pdwStubPhase);
  1721. #endif /* __IRTCClientProvisioning_INTERFACE_DEFINED__ */
  1722. #ifndef __IRTCProfile_INTERFACE_DEFINED__
  1723. #define __IRTCProfile_INTERFACE_DEFINED__
  1724. /* interface IRTCProfile */
  1725. /* [unique][helpstring][uuid][object] */
  1726. EXTERN_C const IID IID_IRTCProfile;
  1727. #if defined(__cplusplus) && !defined(CINTERFACE)
  1728. MIDL_INTERFACE("d07eca9e-4062-4dd4-9e7d-722a49ba7303")
  1729. IRTCProfile : public IUnknown
  1730. {
  1731. public:
  1732. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Key(
  1733. /* [retval][out] */ BSTR *pbstrKey) = 0;
  1734. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Name(
  1735. /* [retval][out] */ BSTR *pbstrName) = 0;
  1736. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_XML(
  1737. /* [retval][out] */ BSTR *pbstrXML) = 0;
  1738. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ProviderName(
  1739. /* [retval][out] */ BSTR *pbstrName) = 0;
  1740. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ProviderURI(
  1741. /* [in] */ RTC_PROVIDER_URI enURI,
  1742. /* [retval][out] */ BSTR *pbstrURI) = 0;
  1743. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ProviderData(
  1744. /* [retval][out] */ BSTR *pbstrData) = 0;
  1745. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ClientName(
  1746. /* [retval][out] */ BSTR *pbstrName) = 0;
  1747. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ClientBanner(
  1748. /* [retval][out] */ VARIANT_BOOL *pfBanner) = 0;
  1749. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ClientMinVer(
  1750. /* [retval][out] */ BSTR *pbstrMinVer) = 0;
  1751. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ClientCurVer(
  1752. /* [retval][out] */ BSTR *pbstrCurVer) = 0;
  1753. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ClientUpdateURI(
  1754. /* [retval][out] */ BSTR *pbstrUpdateURI) = 0;
  1755. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ClientData(
  1756. /* [retval][out] */ BSTR *pbstrData) = 0;
  1757. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_UserURI(
  1758. /* [retval][out] */ BSTR *pbstrUserURI) = 0;
  1759. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_UserName(
  1760. /* [retval][out] */ BSTR *pbstrUserName) = 0;
  1761. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_UserAccount(
  1762. /* [retval][out] */ BSTR *pbstrUserAccount) = 0;
  1763. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetCredentials(
  1764. /* [in] */ BSTR bstrUserURI,
  1765. /* [in] */ BSTR bstrUserAccount,
  1766. /* [in] */ BSTR bstrPassword) = 0;
  1767. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_SessionCapabilities(
  1768. /* [retval][out] */ long *plSupportedSessions) = 0;
  1769. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_State(
  1770. /* [retval][out] */ RTC_REGISTRATION_STATE *penState) = 0;
  1771. };
  1772. #else /* C style interface */
  1773. typedef struct IRTCProfileVtbl
  1774. {
  1775. BEGIN_INTERFACE
  1776. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1777. IRTCProfile * This,
  1778. /* [in] */ REFIID riid,
  1779. /* [iid_is][out] */ void **ppvObject);
  1780. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1781. IRTCProfile * This);
  1782. ULONG ( STDMETHODCALLTYPE *Release )(
  1783. IRTCProfile * This);
  1784. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Key )(
  1785. IRTCProfile * This,
  1786. /* [retval][out] */ BSTR *pbstrKey);
  1787. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
  1788. IRTCProfile * This,
  1789. /* [retval][out] */ BSTR *pbstrName);
  1790. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XML )(
  1791. IRTCProfile * This,
  1792. /* [retval][out] */ BSTR *pbstrXML);
  1793. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProviderName )(
  1794. IRTCProfile * This,
  1795. /* [retval][out] */ BSTR *pbstrName);
  1796. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProviderURI )(
  1797. IRTCProfile * This,
  1798. /* [in] */ RTC_PROVIDER_URI enURI,
  1799. /* [retval][out] */ BSTR *pbstrURI);
  1800. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProviderData )(
  1801. IRTCProfile * This,
  1802. /* [retval][out] */ BSTR *pbstrData);
  1803. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientName )(
  1804. IRTCProfile * This,
  1805. /* [retval][out] */ BSTR *pbstrName);
  1806. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientBanner )(
  1807. IRTCProfile * This,
  1808. /* [retval][out] */ VARIANT_BOOL *pfBanner);
  1809. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientMinVer )(
  1810. IRTCProfile * This,
  1811. /* [retval][out] */ BSTR *pbstrMinVer);
  1812. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientCurVer )(
  1813. IRTCProfile * This,
  1814. /* [retval][out] */ BSTR *pbstrCurVer);
  1815. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientUpdateURI )(
  1816. IRTCProfile * This,
  1817. /* [retval][out] */ BSTR *pbstrUpdateURI);
  1818. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientData )(
  1819. IRTCProfile * This,
  1820. /* [retval][out] */ BSTR *pbstrData);
  1821. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UserURI )(
  1822. IRTCProfile * This,
  1823. /* [retval][out] */ BSTR *pbstrUserURI);
  1824. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )(
  1825. IRTCProfile * This,
  1826. /* [retval][out] */ BSTR *pbstrUserName);
  1827. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UserAccount )(
  1828. IRTCProfile * This,
  1829. /* [retval][out] */ BSTR *pbstrUserAccount);
  1830. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetCredentials )(
  1831. IRTCProfile * This,
  1832. /* [in] */ BSTR bstrUserURI,
  1833. /* [in] */ BSTR bstrUserAccount,
  1834. /* [in] */ BSTR bstrPassword);
  1835. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SessionCapabilities )(
  1836. IRTCProfile * This,
  1837. /* [retval][out] */ long *plSupportedSessions);
  1838. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )(
  1839. IRTCProfile * This,
  1840. /* [retval][out] */ RTC_REGISTRATION_STATE *penState);
  1841. END_INTERFACE
  1842. } IRTCProfileVtbl;
  1843. interface IRTCProfile
  1844. {
  1845. CONST_VTBL struct IRTCProfileVtbl *lpVtbl;
  1846. };
  1847. #ifdef COBJMACROS
  1848. #define IRTCProfile_QueryInterface(This,riid,ppvObject) \
  1849. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1850. #define IRTCProfile_AddRef(This) \
  1851. (This)->lpVtbl -> AddRef(This)
  1852. #define IRTCProfile_Release(This) \
  1853. (This)->lpVtbl -> Release(This)
  1854. #define IRTCProfile_get_Key(This,pbstrKey) \
  1855. (This)->lpVtbl -> get_Key(This,pbstrKey)
  1856. #define IRTCProfile_get_Name(This,pbstrName) \
  1857. (This)->lpVtbl -> get_Name(This,pbstrName)
  1858. #define IRTCProfile_get_XML(This,pbstrXML) \
  1859. (This)->lpVtbl -> get_XML(This,pbstrXML)
  1860. #define IRTCProfile_get_ProviderName(This,pbstrName) \
  1861. (This)->lpVtbl -> get_ProviderName(This,pbstrName)
  1862. #define IRTCProfile_get_ProviderURI(This,enURI,pbstrURI) \
  1863. (This)->lpVtbl -> get_ProviderURI(This,enURI,pbstrURI)
  1864. #define IRTCProfile_get_ProviderData(This,pbstrData) \
  1865. (This)->lpVtbl -> get_ProviderData(This,pbstrData)
  1866. #define IRTCProfile_get_ClientName(This,pbstrName) \
  1867. (This)->lpVtbl -> get_ClientName(This,pbstrName)
  1868. #define IRTCProfile_get_ClientBanner(This,pfBanner) \
  1869. (This)->lpVtbl -> get_ClientBanner(This,pfBanner)
  1870. #define IRTCProfile_get_ClientMinVer(This,pbstrMinVer) \
  1871. (This)->lpVtbl -> get_ClientMinVer(This,pbstrMinVer)
  1872. #define IRTCProfile_get_ClientCurVer(This,pbstrCurVer) \
  1873. (This)->lpVtbl -> get_ClientCurVer(This,pbstrCurVer)
  1874. #define IRTCProfile_get_ClientUpdateURI(This,pbstrUpdateURI) \
  1875. (This)->lpVtbl -> get_ClientUpdateURI(This,pbstrUpdateURI)
  1876. #define IRTCProfile_get_ClientData(This,pbstrData) \
  1877. (This)->lpVtbl -> get_ClientData(This,pbstrData)
  1878. #define IRTCProfile_get_UserURI(This,pbstrUserURI) \
  1879. (This)->lpVtbl -> get_UserURI(This,pbstrUserURI)
  1880. #define IRTCProfile_get_UserName(This,pbstrUserName) \
  1881. (This)->lpVtbl -> get_UserName(This,pbstrUserName)
  1882. #define IRTCProfile_get_UserAccount(This,pbstrUserAccount) \
  1883. (This)->lpVtbl -> get_UserAccount(This,pbstrUserAccount)
  1884. #define IRTCProfile_SetCredentials(This,bstrUserURI,bstrUserAccount,bstrPassword) \
  1885. (This)->lpVtbl -> SetCredentials(This,bstrUserURI,bstrUserAccount,bstrPassword)
  1886. #define IRTCProfile_get_SessionCapabilities(This,plSupportedSessions) \
  1887. (This)->lpVtbl -> get_SessionCapabilities(This,plSupportedSessions)
  1888. #define IRTCProfile_get_State(This,penState) \
  1889. (This)->lpVtbl -> get_State(This,penState)
  1890. #endif /* COBJMACROS */
  1891. #endif /* C style interface */
  1892. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_Key_Proxy(
  1893. IRTCProfile * This,
  1894. /* [retval][out] */ BSTR *pbstrKey);
  1895. void __RPC_STUB IRTCProfile_get_Key_Stub(
  1896. IRpcStubBuffer *This,
  1897. IRpcChannelBuffer *_pRpcChannelBuffer,
  1898. PRPC_MESSAGE _pRpcMessage,
  1899. DWORD *_pdwStubPhase);
  1900. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_Name_Proxy(
  1901. IRTCProfile * This,
  1902. /* [retval][out] */ BSTR *pbstrName);
  1903. void __RPC_STUB IRTCProfile_get_Name_Stub(
  1904. IRpcStubBuffer *This,
  1905. IRpcChannelBuffer *_pRpcChannelBuffer,
  1906. PRPC_MESSAGE _pRpcMessage,
  1907. DWORD *_pdwStubPhase);
  1908. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_XML_Proxy(
  1909. IRTCProfile * This,
  1910. /* [retval][out] */ BSTR *pbstrXML);
  1911. void __RPC_STUB IRTCProfile_get_XML_Stub(
  1912. IRpcStubBuffer *This,
  1913. IRpcChannelBuffer *_pRpcChannelBuffer,
  1914. PRPC_MESSAGE _pRpcMessage,
  1915. DWORD *_pdwStubPhase);
  1916. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ProviderName_Proxy(
  1917. IRTCProfile * This,
  1918. /* [retval][out] */ BSTR *pbstrName);
  1919. void __RPC_STUB IRTCProfile_get_ProviderName_Stub(
  1920. IRpcStubBuffer *This,
  1921. IRpcChannelBuffer *_pRpcChannelBuffer,
  1922. PRPC_MESSAGE _pRpcMessage,
  1923. DWORD *_pdwStubPhase);
  1924. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ProviderURI_Proxy(
  1925. IRTCProfile * This,
  1926. /* [in] */ RTC_PROVIDER_URI enURI,
  1927. /* [retval][out] */ BSTR *pbstrURI);
  1928. void __RPC_STUB IRTCProfile_get_ProviderURI_Stub(
  1929. IRpcStubBuffer *This,
  1930. IRpcChannelBuffer *_pRpcChannelBuffer,
  1931. PRPC_MESSAGE _pRpcMessage,
  1932. DWORD *_pdwStubPhase);
  1933. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ProviderData_Proxy(
  1934. IRTCProfile * This,
  1935. /* [retval][out] */ BSTR *pbstrData);
  1936. void __RPC_STUB IRTCProfile_get_ProviderData_Stub(
  1937. IRpcStubBuffer *This,
  1938. IRpcChannelBuffer *_pRpcChannelBuffer,
  1939. PRPC_MESSAGE _pRpcMessage,
  1940. DWORD *_pdwStubPhase);
  1941. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ClientName_Proxy(
  1942. IRTCProfile * This,
  1943. /* [retval][out] */ BSTR *pbstrName);
  1944. void __RPC_STUB IRTCProfile_get_ClientName_Stub(
  1945. IRpcStubBuffer *This,
  1946. IRpcChannelBuffer *_pRpcChannelBuffer,
  1947. PRPC_MESSAGE _pRpcMessage,
  1948. DWORD *_pdwStubPhase);
  1949. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ClientBanner_Proxy(
  1950. IRTCProfile * This,
  1951. /* [retval][out] */ VARIANT_BOOL *pfBanner);
  1952. void __RPC_STUB IRTCProfile_get_ClientBanner_Stub(
  1953. IRpcStubBuffer *This,
  1954. IRpcChannelBuffer *_pRpcChannelBuffer,
  1955. PRPC_MESSAGE _pRpcMessage,
  1956. DWORD *_pdwStubPhase);
  1957. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ClientMinVer_Proxy(
  1958. IRTCProfile * This,
  1959. /* [retval][out] */ BSTR *pbstrMinVer);
  1960. void __RPC_STUB IRTCProfile_get_ClientMinVer_Stub(
  1961. IRpcStubBuffer *This,
  1962. IRpcChannelBuffer *_pRpcChannelBuffer,
  1963. PRPC_MESSAGE _pRpcMessage,
  1964. DWORD *_pdwStubPhase);
  1965. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ClientCurVer_Proxy(
  1966. IRTCProfile * This,
  1967. /* [retval][out] */ BSTR *pbstrCurVer);
  1968. void __RPC_STUB IRTCProfile_get_ClientCurVer_Stub(
  1969. IRpcStubBuffer *This,
  1970. IRpcChannelBuffer *_pRpcChannelBuffer,
  1971. PRPC_MESSAGE _pRpcMessage,
  1972. DWORD *_pdwStubPhase);
  1973. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ClientUpdateURI_Proxy(
  1974. IRTCProfile * This,
  1975. /* [retval][out] */ BSTR *pbstrUpdateURI);
  1976. void __RPC_STUB IRTCProfile_get_ClientUpdateURI_Stub(
  1977. IRpcStubBuffer *This,
  1978. IRpcChannelBuffer *_pRpcChannelBuffer,
  1979. PRPC_MESSAGE _pRpcMessage,
  1980. DWORD *_pdwStubPhase);
  1981. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_ClientData_Proxy(
  1982. IRTCProfile * This,
  1983. /* [retval][out] */ BSTR *pbstrData);
  1984. void __RPC_STUB IRTCProfile_get_ClientData_Stub(
  1985. IRpcStubBuffer *This,
  1986. IRpcChannelBuffer *_pRpcChannelBuffer,
  1987. PRPC_MESSAGE _pRpcMessage,
  1988. DWORD *_pdwStubPhase);
  1989. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_UserURI_Proxy(
  1990. IRTCProfile * This,
  1991. /* [retval][out] */ BSTR *pbstrUserURI);
  1992. void __RPC_STUB IRTCProfile_get_UserURI_Stub(
  1993. IRpcStubBuffer *This,
  1994. IRpcChannelBuffer *_pRpcChannelBuffer,
  1995. PRPC_MESSAGE _pRpcMessage,
  1996. DWORD *_pdwStubPhase);
  1997. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_UserName_Proxy(
  1998. IRTCProfile * This,
  1999. /* [retval][out] */ BSTR *pbstrUserName);
  2000. void __RPC_STUB IRTCProfile_get_UserName_Stub(
  2001. IRpcStubBuffer *This,
  2002. IRpcChannelBuffer *_pRpcChannelBuffer,
  2003. PRPC_MESSAGE _pRpcMessage,
  2004. DWORD *_pdwStubPhase);
  2005. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_UserAccount_Proxy(
  2006. IRTCProfile * This,
  2007. /* [retval][out] */ BSTR *pbstrUserAccount);
  2008. void __RPC_STUB IRTCProfile_get_UserAccount_Stub(
  2009. IRpcStubBuffer *This,
  2010. IRpcChannelBuffer *_pRpcChannelBuffer,
  2011. PRPC_MESSAGE _pRpcMessage,
  2012. DWORD *_pdwStubPhase);
  2013. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCProfile_SetCredentials_Proxy(
  2014. IRTCProfile * This,
  2015. /* [in] */ BSTR bstrUserURI,
  2016. /* [in] */ BSTR bstrUserAccount,
  2017. /* [in] */ BSTR bstrPassword);
  2018. void __RPC_STUB IRTCProfile_SetCredentials_Stub(
  2019. IRpcStubBuffer *This,
  2020. IRpcChannelBuffer *_pRpcChannelBuffer,
  2021. PRPC_MESSAGE _pRpcMessage,
  2022. DWORD *_pdwStubPhase);
  2023. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_SessionCapabilities_Proxy(
  2024. IRTCProfile * This,
  2025. /* [retval][out] */ long *plSupportedSessions);
  2026. void __RPC_STUB IRTCProfile_get_SessionCapabilities_Stub(
  2027. IRpcStubBuffer *This,
  2028. IRpcChannelBuffer *_pRpcChannelBuffer,
  2029. PRPC_MESSAGE _pRpcMessage,
  2030. DWORD *_pdwStubPhase);
  2031. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfile_get_State_Proxy(
  2032. IRTCProfile * This,
  2033. /* [retval][out] */ RTC_REGISTRATION_STATE *penState);
  2034. void __RPC_STUB IRTCProfile_get_State_Stub(
  2035. IRpcStubBuffer *This,
  2036. IRpcChannelBuffer *_pRpcChannelBuffer,
  2037. PRPC_MESSAGE _pRpcMessage,
  2038. DWORD *_pdwStubPhase);
  2039. #endif /* __IRTCProfile_INTERFACE_DEFINED__ */
  2040. #ifndef __IRTCSession_INTERFACE_DEFINED__
  2041. #define __IRTCSession_INTERFACE_DEFINED__
  2042. /* interface IRTCSession */
  2043. /* [unique][helpstring][uuid][object] */
  2044. EXTERN_C const IID IID_IRTCSession;
  2045. #if defined(__cplusplus) && !defined(CINTERFACE)
  2046. MIDL_INTERFACE("387c8086-99be-42fb-9973-7c0fc0ca9fa8")
  2047. IRTCSession : public IUnknown
  2048. {
  2049. public:
  2050. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Client(
  2051. /* [retval][out] */ IRTCClient **ppClient) = 0;
  2052. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_State(
  2053. /* [retval][out] */ RTC_SESSION_STATE *penState) = 0;
  2054. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Type(
  2055. /* [retval][out] */ RTC_SESSION_TYPE *penType) = 0;
  2056. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Profile(
  2057. /* [retval][out] */ IRTCProfile **ppProfile) = 0;
  2058. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Participants(
  2059. /* [retval][out] */ IRTCCollection **ppCollection) = 0;
  2060. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Answer( void) = 0;
  2061. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Terminate(
  2062. /* [in] */ RTC_TERMINATE_REASON enReason) = 0;
  2063. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Redirect(
  2064. /* [in] */ RTC_SESSION_TYPE enType,
  2065. /* [in] */ BSTR bstrLocalPhoneURI,
  2066. /* [in] */ IRTCProfile *pProfile,
  2067. /* [in] */ long lFlags) = 0;
  2068. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddParticipant(
  2069. /* [in] */ BSTR bstrAddress,
  2070. /* [in] */ BSTR bstrName,
  2071. /* [retval][out] */ IRTCParticipant **ppParticipant) = 0;
  2072. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveParticipant(
  2073. /* [in] */ IRTCParticipant *pParticipant) = 0;
  2074. virtual /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE EnumerateParticipants(
  2075. /* [retval][out] */ IRTCEnumParticipants **ppEnum) = 0;
  2076. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_CanAddParticipants(
  2077. /* [retval][out] */ VARIANT_BOOL *pfCanAdd) = 0;
  2078. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_RedirectedUserURI(
  2079. /* [retval][out] */ BSTR *pbstrUserURI) = 0;
  2080. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_RedirectedUserName(
  2081. /* [retval][out] */ BSTR *pbstrUserName) = 0;
  2082. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE NextRedirectedUser( void) = 0;
  2083. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SendMessage(
  2084. /* [in] */ BSTR bstrMessageHeader,
  2085. /* [in] */ BSTR bstrMessage,
  2086. /* [in] */ long lCookie) = 0;
  2087. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SendMessageStatus(
  2088. /* [in] */ RTC_MESSAGING_USER_STATUS enUserStatus,
  2089. /* [in] */ long lCookie) = 0;
  2090. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddStream(
  2091. /* [in] */ long lMediaType,
  2092. /* [in] */ long lCookie) = 0;
  2093. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveStream(
  2094. /* [in] */ long lMediaType,
  2095. /* [in] */ long lCookie) = 0;
  2096. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_EncryptionKey(
  2097. /* [in] */ long lMediaType,
  2098. /* [in] */ BSTR EncryptionKey) = 0;
  2099. };
  2100. #else /* C style interface */
  2101. typedef struct IRTCSessionVtbl
  2102. {
  2103. BEGIN_INTERFACE
  2104. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2105. IRTCSession * This,
  2106. /* [in] */ REFIID riid,
  2107. /* [iid_is][out] */ void **ppvObject);
  2108. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2109. IRTCSession * This);
  2110. ULONG ( STDMETHODCALLTYPE *Release )(
  2111. IRTCSession * This);
  2112. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Client )(
  2113. IRTCSession * This,
  2114. /* [retval][out] */ IRTCClient **ppClient);
  2115. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )(
  2116. IRTCSession * This,
  2117. /* [retval][out] */ RTC_SESSION_STATE *penState);
  2118. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )(
  2119. IRTCSession * This,
  2120. /* [retval][out] */ RTC_SESSION_TYPE *penType);
  2121. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Profile )(
  2122. IRTCSession * This,
  2123. /* [retval][out] */ IRTCProfile **ppProfile);
  2124. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Participants )(
  2125. IRTCSession * This,
  2126. /* [retval][out] */ IRTCCollection **ppCollection);
  2127. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Answer )(
  2128. IRTCSession * This);
  2129. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Terminate )(
  2130. IRTCSession * This,
  2131. /* [in] */ RTC_TERMINATE_REASON enReason);
  2132. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Redirect )(
  2133. IRTCSession * This,
  2134. /* [in] */ RTC_SESSION_TYPE enType,
  2135. /* [in] */ BSTR bstrLocalPhoneURI,
  2136. /* [in] */ IRTCProfile *pProfile,
  2137. /* [in] */ long lFlags);
  2138. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddParticipant )(
  2139. IRTCSession * This,
  2140. /* [in] */ BSTR bstrAddress,
  2141. /* [in] */ BSTR bstrName,
  2142. /* [retval][out] */ IRTCParticipant **ppParticipant);
  2143. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveParticipant )(
  2144. IRTCSession * This,
  2145. /* [in] */ IRTCParticipant *pParticipant);
  2146. /* [helpstring][hidden] */ HRESULT ( STDMETHODCALLTYPE *EnumerateParticipants )(
  2147. IRTCSession * This,
  2148. /* [retval][out] */ IRTCEnumParticipants **ppEnum);
  2149. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CanAddParticipants )(
  2150. IRTCSession * This,
  2151. /* [retval][out] */ VARIANT_BOOL *pfCanAdd);
  2152. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectedUserURI )(
  2153. IRTCSession * This,
  2154. /* [retval][out] */ BSTR *pbstrUserURI);
  2155. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectedUserName )(
  2156. IRTCSession * This,
  2157. /* [retval][out] */ BSTR *pbstrUserName);
  2158. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *NextRedirectedUser )(
  2159. IRTCSession * This);
  2160. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SendMessage )(
  2161. IRTCSession * This,
  2162. /* [in] */ BSTR bstrMessageHeader,
  2163. /* [in] */ BSTR bstrMessage,
  2164. /* [in] */ long lCookie);
  2165. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SendMessageStatus )(
  2166. IRTCSession * This,
  2167. /* [in] */ RTC_MESSAGING_USER_STATUS enUserStatus,
  2168. /* [in] */ long lCookie);
  2169. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddStream )(
  2170. IRTCSession * This,
  2171. /* [in] */ long lMediaType,
  2172. /* [in] */ long lCookie);
  2173. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveStream )(
  2174. IRTCSession * This,
  2175. /* [in] */ long lMediaType,
  2176. /* [in] */ long lCookie);
  2177. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionKey )(
  2178. IRTCSession * This,
  2179. /* [in] */ long lMediaType,
  2180. /* [in] */ BSTR EncryptionKey);
  2181. END_INTERFACE
  2182. } IRTCSessionVtbl;
  2183. interface IRTCSession
  2184. {
  2185. CONST_VTBL struct IRTCSessionVtbl *lpVtbl;
  2186. };
  2187. #ifdef COBJMACROS
  2188. #define IRTCSession_QueryInterface(This,riid,ppvObject) \
  2189. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2190. #define IRTCSession_AddRef(This) \
  2191. (This)->lpVtbl -> AddRef(This)
  2192. #define IRTCSession_Release(This) \
  2193. (This)->lpVtbl -> Release(This)
  2194. #define IRTCSession_get_Client(This,ppClient) \
  2195. (This)->lpVtbl -> get_Client(This,ppClient)
  2196. #define IRTCSession_get_State(This,penState) \
  2197. (This)->lpVtbl -> get_State(This,penState)
  2198. #define IRTCSession_get_Type(This,penType) \
  2199. (This)->lpVtbl -> get_Type(This,penType)
  2200. #define IRTCSession_get_Profile(This,ppProfile) \
  2201. (This)->lpVtbl -> get_Profile(This,ppProfile)
  2202. #define IRTCSession_get_Participants(This,ppCollection) \
  2203. (This)->lpVtbl -> get_Participants(This,ppCollection)
  2204. #define IRTCSession_Answer(This) \
  2205. (This)->lpVtbl -> Answer(This)
  2206. #define IRTCSession_Terminate(This,enReason) \
  2207. (This)->lpVtbl -> Terminate(This,enReason)
  2208. #define IRTCSession_Redirect(This,enType,bstrLocalPhoneURI,pProfile,lFlags) \
  2209. (This)->lpVtbl -> Redirect(This,enType,bstrLocalPhoneURI,pProfile,lFlags)
  2210. #define IRTCSession_AddParticipant(This,bstrAddress,bstrName,ppParticipant) \
  2211. (This)->lpVtbl -> AddParticipant(This,bstrAddress,bstrName,ppParticipant)
  2212. #define IRTCSession_RemoveParticipant(This,pParticipant) \
  2213. (This)->lpVtbl -> RemoveParticipant(This,pParticipant)
  2214. #define IRTCSession_EnumerateParticipants(This,ppEnum) \
  2215. (This)->lpVtbl -> EnumerateParticipants(This,ppEnum)
  2216. #define IRTCSession_get_CanAddParticipants(This,pfCanAdd) \
  2217. (This)->lpVtbl -> get_CanAddParticipants(This,pfCanAdd)
  2218. #define IRTCSession_get_RedirectedUserURI(This,pbstrUserURI) \
  2219. (This)->lpVtbl -> get_RedirectedUserURI(This,pbstrUserURI)
  2220. #define IRTCSession_get_RedirectedUserName(This,pbstrUserName) \
  2221. (This)->lpVtbl -> get_RedirectedUserName(This,pbstrUserName)
  2222. #define IRTCSession_NextRedirectedUser(This) \
  2223. (This)->lpVtbl -> NextRedirectedUser(This)
  2224. #define IRTCSession_SendMessage(This,bstrMessageHeader,bstrMessage,lCookie) \
  2225. (This)->lpVtbl -> SendMessage(This,bstrMessageHeader,bstrMessage,lCookie)
  2226. #define IRTCSession_SendMessageStatus(This,enUserStatus,lCookie) \
  2227. (This)->lpVtbl -> SendMessageStatus(This,enUserStatus,lCookie)
  2228. #define IRTCSession_AddStream(This,lMediaType,lCookie) \
  2229. (This)->lpVtbl -> AddStream(This,lMediaType,lCookie)
  2230. #define IRTCSession_RemoveStream(This,lMediaType,lCookie) \
  2231. (This)->lpVtbl -> RemoveStream(This,lMediaType,lCookie)
  2232. #define IRTCSession_put_EncryptionKey(This,lMediaType,EncryptionKey) \
  2233. (This)->lpVtbl -> put_EncryptionKey(This,lMediaType,EncryptionKey)
  2234. #endif /* COBJMACROS */
  2235. #endif /* C style interface */
  2236. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_Client_Proxy(
  2237. IRTCSession * This,
  2238. /* [retval][out] */ IRTCClient **ppClient);
  2239. void __RPC_STUB IRTCSession_get_Client_Stub(
  2240. IRpcStubBuffer *This,
  2241. IRpcChannelBuffer *_pRpcChannelBuffer,
  2242. PRPC_MESSAGE _pRpcMessage,
  2243. DWORD *_pdwStubPhase);
  2244. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_State_Proxy(
  2245. IRTCSession * This,
  2246. /* [retval][out] */ RTC_SESSION_STATE *penState);
  2247. void __RPC_STUB IRTCSession_get_State_Stub(
  2248. IRpcStubBuffer *This,
  2249. IRpcChannelBuffer *_pRpcChannelBuffer,
  2250. PRPC_MESSAGE _pRpcMessage,
  2251. DWORD *_pdwStubPhase);
  2252. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_Type_Proxy(
  2253. IRTCSession * This,
  2254. /* [retval][out] */ RTC_SESSION_TYPE *penType);
  2255. void __RPC_STUB IRTCSession_get_Type_Stub(
  2256. IRpcStubBuffer *This,
  2257. IRpcChannelBuffer *_pRpcChannelBuffer,
  2258. PRPC_MESSAGE _pRpcMessage,
  2259. DWORD *_pdwStubPhase);
  2260. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_Profile_Proxy(
  2261. IRTCSession * This,
  2262. /* [retval][out] */ IRTCProfile **ppProfile);
  2263. void __RPC_STUB IRTCSession_get_Profile_Stub(
  2264. IRpcStubBuffer *This,
  2265. IRpcChannelBuffer *_pRpcChannelBuffer,
  2266. PRPC_MESSAGE _pRpcMessage,
  2267. DWORD *_pdwStubPhase);
  2268. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_Participants_Proxy(
  2269. IRTCSession * This,
  2270. /* [retval][out] */ IRTCCollection **ppCollection);
  2271. void __RPC_STUB IRTCSession_get_Participants_Stub(
  2272. IRpcStubBuffer *This,
  2273. IRpcChannelBuffer *_pRpcChannelBuffer,
  2274. PRPC_MESSAGE _pRpcMessage,
  2275. DWORD *_pdwStubPhase);
  2276. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_Answer_Proxy(
  2277. IRTCSession * This);
  2278. void __RPC_STUB IRTCSession_Answer_Stub(
  2279. IRpcStubBuffer *This,
  2280. IRpcChannelBuffer *_pRpcChannelBuffer,
  2281. PRPC_MESSAGE _pRpcMessage,
  2282. DWORD *_pdwStubPhase);
  2283. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_Terminate_Proxy(
  2284. IRTCSession * This,
  2285. /* [in] */ RTC_TERMINATE_REASON enReason);
  2286. void __RPC_STUB IRTCSession_Terminate_Stub(
  2287. IRpcStubBuffer *This,
  2288. IRpcChannelBuffer *_pRpcChannelBuffer,
  2289. PRPC_MESSAGE _pRpcMessage,
  2290. DWORD *_pdwStubPhase);
  2291. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_Redirect_Proxy(
  2292. IRTCSession * This,
  2293. /* [in] */ RTC_SESSION_TYPE enType,
  2294. /* [in] */ BSTR bstrLocalPhoneURI,
  2295. /* [in] */ IRTCProfile *pProfile,
  2296. /* [in] */ long lFlags);
  2297. void __RPC_STUB IRTCSession_Redirect_Stub(
  2298. IRpcStubBuffer *This,
  2299. IRpcChannelBuffer *_pRpcChannelBuffer,
  2300. PRPC_MESSAGE _pRpcMessage,
  2301. DWORD *_pdwStubPhase);
  2302. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_AddParticipant_Proxy(
  2303. IRTCSession * This,
  2304. /* [in] */ BSTR bstrAddress,
  2305. /* [in] */ BSTR bstrName,
  2306. /* [retval][out] */ IRTCParticipant **ppParticipant);
  2307. void __RPC_STUB IRTCSession_AddParticipant_Stub(
  2308. IRpcStubBuffer *This,
  2309. IRpcChannelBuffer *_pRpcChannelBuffer,
  2310. PRPC_MESSAGE _pRpcMessage,
  2311. DWORD *_pdwStubPhase);
  2312. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_RemoveParticipant_Proxy(
  2313. IRTCSession * This,
  2314. /* [in] */ IRTCParticipant *pParticipant);
  2315. void __RPC_STUB IRTCSession_RemoveParticipant_Stub(
  2316. IRpcStubBuffer *This,
  2317. IRpcChannelBuffer *_pRpcChannelBuffer,
  2318. PRPC_MESSAGE _pRpcMessage,
  2319. DWORD *_pdwStubPhase);
  2320. /* [helpstring][hidden] */ HRESULT STDMETHODCALLTYPE IRTCSession_EnumerateParticipants_Proxy(
  2321. IRTCSession * This,
  2322. /* [retval][out] */ IRTCEnumParticipants **ppEnum);
  2323. void __RPC_STUB IRTCSession_EnumerateParticipants_Stub(
  2324. IRpcStubBuffer *This,
  2325. IRpcChannelBuffer *_pRpcChannelBuffer,
  2326. PRPC_MESSAGE _pRpcMessage,
  2327. DWORD *_pdwStubPhase);
  2328. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_CanAddParticipants_Proxy(
  2329. IRTCSession * This,
  2330. /* [retval][out] */ VARIANT_BOOL *pfCanAdd);
  2331. void __RPC_STUB IRTCSession_get_CanAddParticipants_Stub(
  2332. IRpcStubBuffer *This,
  2333. IRpcChannelBuffer *_pRpcChannelBuffer,
  2334. PRPC_MESSAGE _pRpcMessage,
  2335. DWORD *_pdwStubPhase);
  2336. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_RedirectedUserURI_Proxy(
  2337. IRTCSession * This,
  2338. /* [retval][out] */ BSTR *pbstrUserURI);
  2339. void __RPC_STUB IRTCSession_get_RedirectedUserURI_Stub(
  2340. IRpcStubBuffer *This,
  2341. IRpcChannelBuffer *_pRpcChannelBuffer,
  2342. PRPC_MESSAGE _pRpcMessage,
  2343. DWORD *_pdwStubPhase);
  2344. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCSession_get_RedirectedUserName_Proxy(
  2345. IRTCSession * This,
  2346. /* [retval][out] */ BSTR *pbstrUserName);
  2347. void __RPC_STUB IRTCSession_get_RedirectedUserName_Stub(
  2348. IRpcStubBuffer *This,
  2349. IRpcChannelBuffer *_pRpcChannelBuffer,
  2350. PRPC_MESSAGE _pRpcMessage,
  2351. DWORD *_pdwStubPhase);
  2352. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_NextRedirectedUser_Proxy(
  2353. IRTCSession * This);
  2354. void __RPC_STUB IRTCSession_NextRedirectedUser_Stub(
  2355. IRpcStubBuffer *This,
  2356. IRpcChannelBuffer *_pRpcChannelBuffer,
  2357. PRPC_MESSAGE _pRpcMessage,
  2358. DWORD *_pdwStubPhase);
  2359. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_SendMessage_Proxy(
  2360. IRTCSession * This,
  2361. /* [in] */ BSTR bstrMessageHeader,
  2362. /* [in] */ BSTR bstrMessage,
  2363. /* [in] */ long lCookie);
  2364. void __RPC_STUB IRTCSession_SendMessage_Stub(
  2365. IRpcStubBuffer *This,
  2366. IRpcChannelBuffer *_pRpcChannelBuffer,
  2367. PRPC_MESSAGE _pRpcMessage,
  2368. DWORD *_pdwStubPhase);
  2369. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_SendMessageStatus_Proxy(
  2370. IRTCSession * This,
  2371. /* [in] */ RTC_MESSAGING_USER_STATUS enUserStatus,
  2372. /* [in] */ long lCookie);
  2373. void __RPC_STUB IRTCSession_SendMessageStatus_Stub(
  2374. IRpcStubBuffer *This,
  2375. IRpcChannelBuffer *_pRpcChannelBuffer,
  2376. PRPC_MESSAGE _pRpcMessage,
  2377. DWORD *_pdwStubPhase);
  2378. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_AddStream_Proxy(
  2379. IRTCSession * This,
  2380. /* [in] */ long lMediaType,
  2381. /* [in] */ long lCookie);
  2382. void __RPC_STUB IRTCSession_AddStream_Stub(
  2383. IRpcStubBuffer *This,
  2384. IRpcChannelBuffer *_pRpcChannelBuffer,
  2385. PRPC_MESSAGE _pRpcMessage,
  2386. DWORD *_pdwStubPhase);
  2387. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IRTCSession_RemoveStream_Proxy(
  2388. IRTCSession * This,
  2389. /* [in] */ long lMediaType,
  2390. /* [in] */ long lCookie);
  2391. void __RPC_STUB IRTCSession_RemoveStream_Stub(
  2392. IRpcStubBuffer *This,
  2393. IRpcChannelBuffer *_pRpcChannelBuffer,
  2394. PRPC_MESSAGE _pRpcMessage,
  2395. DWORD *_pdwStubPhase);
  2396. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCSession_put_EncryptionKey_Proxy(
  2397. IRTCSession * This,
  2398. /* [in] */ long lMediaType,
  2399. /* [in] */ BSTR EncryptionKey);
  2400. void __RPC_STUB IRTCSession_put_EncryptionKey_Stub(
  2401. IRpcStubBuffer *This,
  2402. IRpcChannelBuffer *_pRpcChannelBuffer,
  2403. PRPC_MESSAGE _pRpcMessage,
  2404. DWORD *_pdwStubPhase);
  2405. #endif /* __IRTCSession_INTERFACE_DEFINED__ */
  2406. #ifndef __IRTCParticipant_INTERFACE_DEFINED__
  2407. #define __IRTCParticipant_INTERFACE_DEFINED__
  2408. /* interface IRTCParticipant */
  2409. /* [unique][helpstring][uuid][object] */
  2410. EXTERN_C const IID IID_IRTCParticipant;
  2411. #if defined(__cplusplus) && !defined(CINTERFACE)
  2412. MIDL_INTERFACE("ae86add5-26b1-4414-af1d-b94cd938d739")
  2413. IRTCParticipant : public IUnknown
  2414. {
  2415. public:
  2416. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_UserURI(
  2417. /* [retval][out] */ BSTR *pbstrUserURI) = 0;
  2418. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Name(
  2419. /* [retval][out] */ BSTR *pbstrName) = 0;
  2420. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Removable(
  2421. /* [retval][out] */ VARIANT_BOOL *pfRemovable) = 0;
  2422. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_State(
  2423. /* [retval][out] */ RTC_PARTICIPANT_STATE *penState) = 0;
  2424. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Session(
  2425. /* [retval][out] */ IRTCSession **ppSession) = 0;
  2426. };
  2427. #else /* C style interface */
  2428. typedef struct IRTCParticipantVtbl
  2429. {
  2430. BEGIN_INTERFACE
  2431. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2432. IRTCParticipant * This,
  2433. /* [in] */ REFIID riid,
  2434. /* [iid_is][out] */ void **ppvObject);
  2435. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2436. IRTCParticipant * This);
  2437. ULONG ( STDMETHODCALLTYPE *Release )(
  2438. IRTCParticipant * This);
  2439. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UserURI )(
  2440. IRTCParticipant * This,
  2441. /* [retval][out] */ BSTR *pbstrUserURI);
  2442. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
  2443. IRTCParticipant * This,
  2444. /* [retval][out] */ BSTR *pbstrName);
  2445. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Removable )(
  2446. IRTCParticipant * This,
  2447. /* [retval][out] */ VARIANT_BOOL *pfRemovable);
  2448. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )(
  2449. IRTCParticipant * This,
  2450. /* [retval][out] */ RTC_PARTICIPANT_STATE *penState);
  2451. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Session )(
  2452. IRTCParticipant * This,
  2453. /* [retval][out] */ IRTCSession **ppSession);
  2454. END_INTERFACE
  2455. } IRTCParticipantVtbl;
  2456. interface IRTCParticipant
  2457. {
  2458. CONST_VTBL struct IRTCParticipantVtbl *lpVtbl;
  2459. };
  2460. #ifdef COBJMACROS
  2461. #define IRTCParticipant_QueryInterface(This,riid,ppvObject) \
  2462. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2463. #define IRTCParticipant_AddRef(This) \
  2464. (This)->lpVtbl -> AddRef(This)
  2465. #define IRTCParticipant_Release(This) \
  2466. (This)->lpVtbl -> Release(This)
  2467. #define IRTCParticipant_get_UserURI(This,pbstrUserURI) \
  2468. (This)->lpVtbl -> get_UserURI(This,pbstrUserURI)
  2469. #define IRTCParticipant_get_Name(This,pbstrName) \
  2470. (This)->lpVtbl -> get_Name(This,pbstrName)
  2471. #define IRTCParticipant_get_Removable(This,pfRemovable) \
  2472. (This)->lpVtbl -> get_Removable(This,pfRemovable)
  2473. #define IRTCParticipant_get_State(This,penState) \
  2474. (This)->lpVtbl -> get_State(This,penState)
  2475. #define IRTCParticipant_get_Session(This,ppSession) \
  2476. (This)->lpVtbl -> get_Session(This,ppSession)
  2477. #endif /* COBJMACROS */
  2478. #endif /* C style interface */
  2479. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipant_get_UserURI_Proxy(
  2480. IRTCParticipant * This,
  2481. /* [retval][out] */ BSTR *pbstrUserURI);
  2482. void __RPC_STUB IRTCParticipant_get_UserURI_Stub(
  2483. IRpcStubBuffer *This,
  2484. IRpcChannelBuffer *_pRpcChannelBuffer,
  2485. PRPC_MESSAGE _pRpcMessage,
  2486. DWORD *_pdwStubPhase);
  2487. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipant_get_Name_Proxy(
  2488. IRTCParticipant * This,
  2489. /* [retval][out] */ BSTR *pbstrName);
  2490. void __RPC_STUB IRTCParticipant_get_Name_Stub(
  2491. IRpcStubBuffer *This,
  2492. IRpcChannelBuffer *_pRpcChannelBuffer,
  2493. PRPC_MESSAGE _pRpcMessage,
  2494. DWORD *_pdwStubPhase);
  2495. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipant_get_Removable_Proxy(
  2496. IRTCParticipant * This,
  2497. /* [retval][out] */ VARIANT_BOOL *pfRemovable);
  2498. void __RPC_STUB IRTCParticipant_get_Removable_Stub(
  2499. IRpcStubBuffer *This,
  2500. IRpcChannelBuffer *_pRpcChannelBuffer,
  2501. PRPC_MESSAGE _pRpcMessage,
  2502. DWORD *_pdwStubPhase);
  2503. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipant_get_State_Proxy(
  2504. IRTCParticipant * This,
  2505. /* [retval][out] */ RTC_PARTICIPANT_STATE *penState);
  2506. void __RPC_STUB IRTCParticipant_get_State_Stub(
  2507. IRpcStubBuffer *This,
  2508. IRpcChannelBuffer *_pRpcChannelBuffer,
  2509. PRPC_MESSAGE _pRpcMessage,
  2510. DWORD *_pdwStubPhase);
  2511. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipant_get_Session_Proxy(
  2512. IRTCParticipant * This,
  2513. /* [retval][out] */ IRTCSession **ppSession);
  2514. void __RPC_STUB IRTCParticipant_get_Session_Stub(
  2515. IRpcStubBuffer *This,
  2516. IRpcChannelBuffer *_pRpcChannelBuffer,
  2517. PRPC_MESSAGE _pRpcMessage,
  2518. DWORD *_pdwStubPhase);
  2519. #endif /* __IRTCParticipant_INTERFACE_DEFINED__ */
  2520. #ifndef __IRTCProfileEvent_INTERFACE_DEFINED__
  2521. #define __IRTCProfileEvent_INTERFACE_DEFINED__
  2522. /* interface IRTCProfileEvent */
  2523. /* [unique][helpstring][dual][uuid][object] */
  2524. EXTERN_C const IID IID_IRTCProfileEvent;
  2525. #if defined(__cplusplus) && !defined(CINTERFACE)
  2526. MIDL_INTERFACE("D6D5AB3B-770E-43e8-800A-79B062395FCA")
  2527. IRTCProfileEvent : public IDispatch
  2528. {
  2529. public:
  2530. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Profile(
  2531. /* [retval][out] */ IRTCProfile **ppProfile) = 0;
  2532. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Cookie(
  2533. /* [retval][out] */ long *plCookie) = 0;
  2534. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusCode(
  2535. /* [retval][out] */ long *plStatusCode) = 0;
  2536. };
  2537. #else /* C style interface */
  2538. typedef struct IRTCProfileEventVtbl
  2539. {
  2540. BEGIN_INTERFACE
  2541. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2542. IRTCProfileEvent * This,
  2543. /* [in] */ REFIID riid,
  2544. /* [iid_is][out] */ void **ppvObject);
  2545. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2546. IRTCProfileEvent * This);
  2547. ULONG ( STDMETHODCALLTYPE *Release )(
  2548. IRTCProfileEvent * This);
  2549. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  2550. IRTCProfileEvent * This,
  2551. /* [out] */ UINT *pctinfo);
  2552. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  2553. IRTCProfileEvent * This,
  2554. /* [in] */ UINT iTInfo,
  2555. /* [in] */ LCID lcid,
  2556. /* [out] */ ITypeInfo **ppTInfo);
  2557. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  2558. IRTCProfileEvent * This,
  2559. /* [in] */ REFIID riid,
  2560. /* [size_is][in] */ LPOLESTR *rgszNames,
  2561. /* [in] */ UINT cNames,
  2562. /* [in] */ LCID lcid,
  2563. /* [size_is][out] */ DISPID *rgDispId);
  2564. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  2565. IRTCProfileEvent * This,
  2566. /* [in] */ DISPID dispIdMember,
  2567. /* [in] */ REFIID riid,
  2568. /* [in] */ LCID lcid,
  2569. /* [in] */ WORD wFlags,
  2570. /* [out][in] */ DISPPARAMS *pDispParams,
  2571. /* [out] */ VARIANT *pVarResult,
  2572. /* [out] */ EXCEPINFO *pExcepInfo,
  2573. /* [out] */ UINT *puArgErr);
  2574. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Profile )(
  2575. IRTCProfileEvent * This,
  2576. /* [retval][out] */ IRTCProfile **ppProfile);
  2577. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Cookie )(
  2578. IRTCProfileEvent * This,
  2579. /* [retval][out] */ long *plCookie);
  2580. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusCode )(
  2581. IRTCProfileEvent * This,
  2582. /* [retval][out] */ long *plStatusCode);
  2583. END_INTERFACE
  2584. } IRTCProfileEventVtbl;
  2585. interface IRTCProfileEvent
  2586. {
  2587. CONST_VTBL struct IRTCProfileEventVtbl *lpVtbl;
  2588. };
  2589. #ifdef COBJMACROS
  2590. #define IRTCProfileEvent_QueryInterface(This,riid,ppvObject) \
  2591. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2592. #define IRTCProfileEvent_AddRef(This) \
  2593. (This)->lpVtbl -> AddRef(This)
  2594. #define IRTCProfileEvent_Release(This) \
  2595. (This)->lpVtbl -> Release(This)
  2596. #define IRTCProfileEvent_GetTypeInfoCount(This,pctinfo) \
  2597. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2598. #define IRTCProfileEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  2599. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2600. #define IRTCProfileEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  2601. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2602. #define IRTCProfileEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  2603. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2604. #define IRTCProfileEvent_get_Profile(This,ppProfile) \
  2605. (This)->lpVtbl -> get_Profile(This,ppProfile)
  2606. #define IRTCProfileEvent_get_Cookie(This,plCookie) \
  2607. (This)->lpVtbl -> get_Cookie(This,plCookie)
  2608. #define IRTCProfileEvent_get_StatusCode(This,plStatusCode) \
  2609. (This)->lpVtbl -> get_StatusCode(This,plStatusCode)
  2610. #endif /* COBJMACROS */
  2611. #endif /* C style interface */
  2612. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfileEvent_get_Profile_Proxy(
  2613. IRTCProfileEvent * This,
  2614. /* [retval][out] */ IRTCProfile **ppProfile);
  2615. void __RPC_STUB IRTCProfileEvent_get_Profile_Stub(
  2616. IRpcStubBuffer *This,
  2617. IRpcChannelBuffer *_pRpcChannelBuffer,
  2618. PRPC_MESSAGE _pRpcMessage,
  2619. DWORD *_pdwStubPhase);
  2620. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfileEvent_get_Cookie_Proxy(
  2621. IRTCProfileEvent * This,
  2622. /* [retval][out] */ long *plCookie);
  2623. void __RPC_STUB IRTCProfileEvent_get_Cookie_Stub(
  2624. IRpcStubBuffer *This,
  2625. IRpcChannelBuffer *_pRpcChannelBuffer,
  2626. PRPC_MESSAGE _pRpcMessage,
  2627. DWORD *_pdwStubPhase);
  2628. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCProfileEvent_get_StatusCode_Proxy(
  2629. IRTCProfileEvent * This,
  2630. /* [retval][out] */ long *plStatusCode);
  2631. void __RPC_STUB IRTCProfileEvent_get_StatusCode_Stub(
  2632. IRpcStubBuffer *This,
  2633. IRpcChannelBuffer *_pRpcChannelBuffer,
  2634. PRPC_MESSAGE _pRpcMessage,
  2635. DWORD *_pdwStubPhase);
  2636. #endif /* __IRTCProfileEvent_INTERFACE_DEFINED__ */
  2637. #ifndef __IRTCClientEvent_INTERFACE_DEFINED__
  2638. #define __IRTCClientEvent_INTERFACE_DEFINED__
  2639. /* interface IRTCClientEvent */
  2640. /* [unique][helpstring][dual][uuid][object] */
  2641. EXTERN_C const IID IID_IRTCClientEvent;
  2642. #if defined(__cplusplus) && !defined(CINTERFACE)
  2643. MIDL_INTERFACE("2b493b7a-3cba-4170-9c8b-76a9dacdd644")
  2644. IRTCClientEvent : public IDispatch
  2645. {
  2646. public:
  2647. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EventType(
  2648. /* [retval][out] */ RTC_CLIENT_EVENT_TYPE *penEventType) = 0;
  2649. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Client(
  2650. /* [retval][out] */ IRTCClient **ppClient) = 0;
  2651. };
  2652. #else /* C style interface */
  2653. typedef struct IRTCClientEventVtbl
  2654. {
  2655. BEGIN_INTERFACE
  2656. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2657. IRTCClientEvent * This,
  2658. /* [in] */ REFIID riid,
  2659. /* [iid_is][out] */ void **ppvObject);
  2660. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2661. IRTCClientEvent * This);
  2662. ULONG ( STDMETHODCALLTYPE *Release )(
  2663. IRTCClientEvent * This);
  2664. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  2665. IRTCClientEvent * This,
  2666. /* [out] */ UINT *pctinfo);
  2667. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  2668. IRTCClientEvent * This,
  2669. /* [in] */ UINT iTInfo,
  2670. /* [in] */ LCID lcid,
  2671. /* [out] */ ITypeInfo **ppTInfo);
  2672. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  2673. IRTCClientEvent * This,
  2674. /* [in] */ REFIID riid,
  2675. /* [size_is][in] */ LPOLESTR *rgszNames,
  2676. /* [in] */ UINT cNames,
  2677. /* [in] */ LCID lcid,
  2678. /* [size_is][out] */ DISPID *rgDispId);
  2679. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  2680. IRTCClientEvent * This,
  2681. /* [in] */ DISPID dispIdMember,
  2682. /* [in] */ REFIID riid,
  2683. /* [in] */ LCID lcid,
  2684. /* [in] */ WORD wFlags,
  2685. /* [out][in] */ DISPPARAMS *pDispParams,
  2686. /* [out] */ VARIANT *pVarResult,
  2687. /* [out] */ EXCEPINFO *pExcepInfo,
  2688. /* [out] */ UINT *puArgErr);
  2689. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventType )(
  2690. IRTCClientEvent * This,
  2691. /* [retval][out] */ RTC_CLIENT_EVENT_TYPE *penEventType);
  2692. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Client )(
  2693. IRTCClientEvent * This,
  2694. /* [retval][out] */ IRTCClient **ppClient);
  2695. END_INTERFACE
  2696. } IRTCClientEventVtbl;
  2697. interface IRTCClientEvent
  2698. {
  2699. CONST_VTBL struct IRTCClientEventVtbl *lpVtbl;
  2700. };
  2701. #ifdef COBJMACROS
  2702. #define IRTCClientEvent_QueryInterface(This,riid,ppvObject) \
  2703. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2704. #define IRTCClientEvent_AddRef(This) \
  2705. (This)->lpVtbl -> AddRef(This)
  2706. #define IRTCClientEvent_Release(This) \
  2707. (This)->lpVtbl -> Release(This)
  2708. #define IRTCClientEvent_GetTypeInfoCount(This,pctinfo) \
  2709. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2710. #define IRTCClientEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  2711. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2712. #define IRTCClientEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  2713. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2714. #define IRTCClientEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  2715. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2716. #define IRTCClientEvent_get_EventType(This,penEventType) \
  2717. (This)->lpVtbl -> get_EventType(This,penEventType)
  2718. #define IRTCClientEvent_get_Client(This,ppClient) \
  2719. (This)->lpVtbl -> get_Client(This,ppClient)
  2720. #endif /* COBJMACROS */
  2721. #endif /* C style interface */
  2722. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientEvent_get_EventType_Proxy(
  2723. IRTCClientEvent * This,
  2724. /* [retval][out] */ RTC_CLIENT_EVENT_TYPE *penEventType);
  2725. void __RPC_STUB IRTCClientEvent_get_EventType_Stub(
  2726. IRpcStubBuffer *This,
  2727. IRpcChannelBuffer *_pRpcChannelBuffer,
  2728. PRPC_MESSAGE _pRpcMessage,
  2729. DWORD *_pdwStubPhase);
  2730. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCClientEvent_get_Client_Proxy(
  2731. IRTCClientEvent * This,
  2732. /* [retval][out] */ IRTCClient **ppClient);
  2733. void __RPC_STUB IRTCClientEvent_get_Client_Stub(
  2734. IRpcStubBuffer *This,
  2735. IRpcChannelBuffer *_pRpcChannelBuffer,
  2736. PRPC_MESSAGE _pRpcMessage,
  2737. DWORD *_pdwStubPhase);
  2738. #endif /* __IRTCClientEvent_INTERFACE_DEFINED__ */
  2739. #ifndef __IRTCRegistrationStateChangeEvent_INTERFACE_DEFINED__
  2740. #define __IRTCRegistrationStateChangeEvent_INTERFACE_DEFINED__
  2741. /* interface IRTCRegistrationStateChangeEvent */
  2742. /* [unique][helpstring][dual][uuid][object] */
  2743. EXTERN_C const IID IID_IRTCRegistrationStateChangeEvent;
  2744. #if defined(__cplusplus) && !defined(CINTERFACE)
  2745. MIDL_INTERFACE("62d0991b-50ab-4f02-b948-ca94f26f8f95")
  2746. IRTCRegistrationStateChangeEvent : public IDispatch
  2747. {
  2748. public:
  2749. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Profile(
  2750. /* [retval][out] */ IRTCProfile **ppProfile) = 0;
  2751. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_State(
  2752. /* [retval][out] */ RTC_REGISTRATION_STATE *penState) = 0;
  2753. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusCode(
  2754. /* [retval][out] */ long *plStatusCode) = 0;
  2755. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusText(
  2756. /* [retval][out] */ BSTR *pbstrStatusText) = 0;
  2757. };
  2758. #else /* C style interface */
  2759. typedef struct IRTCRegistrationStateChangeEventVtbl
  2760. {
  2761. BEGIN_INTERFACE
  2762. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2763. IRTCRegistrationStateChangeEvent * This,
  2764. /* [in] */ REFIID riid,
  2765. /* [iid_is][out] */ void **ppvObject);
  2766. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2767. IRTCRegistrationStateChangeEvent * This);
  2768. ULONG ( STDMETHODCALLTYPE *Release )(
  2769. IRTCRegistrationStateChangeEvent * This);
  2770. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  2771. IRTCRegistrationStateChangeEvent * This,
  2772. /* [out] */ UINT *pctinfo);
  2773. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  2774. IRTCRegistrationStateChangeEvent * This,
  2775. /* [in] */ UINT iTInfo,
  2776. /* [in] */ LCID lcid,
  2777. /* [out] */ ITypeInfo **ppTInfo);
  2778. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  2779. IRTCRegistrationStateChangeEvent * This,
  2780. /* [in] */ REFIID riid,
  2781. /* [size_is][in] */ LPOLESTR *rgszNames,
  2782. /* [in] */ UINT cNames,
  2783. /* [in] */ LCID lcid,
  2784. /* [size_is][out] */ DISPID *rgDispId);
  2785. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  2786. IRTCRegistrationStateChangeEvent * This,
  2787. /* [in] */ DISPID dispIdMember,
  2788. /* [in] */ REFIID riid,
  2789. /* [in] */ LCID lcid,
  2790. /* [in] */ WORD wFlags,
  2791. /* [out][in] */ DISPPARAMS *pDispParams,
  2792. /* [out] */ VARIANT *pVarResult,
  2793. /* [out] */ EXCEPINFO *pExcepInfo,
  2794. /* [out] */ UINT *puArgErr);
  2795. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Profile )(
  2796. IRTCRegistrationStateChangeEvent * This,
  2797. /* [retval][out] */ IRTCProfile **ppProfile);
  2798. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )(
  2799. IRTCRegistrationStateChangeEvent * This,
  2800. /* [retval][out] */ RTC_REGISTRATION_STATE *penState);
  2801. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusCode )(
  2802. IRTCRegistrationStateChangeEvent * This,
  2803. /* [retval][out] */ long *plStatusCode);
  2804. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusText )(
  2805. IRTCRegistrationStateChangeEvent * This,
  2806. /* [retval][out] */ BSTR *pbstrStatusText);
  2807. END_INTERFACE
  2808. } IRTCRegistrationStateChangeEventVtbl;
  2809. interface IRTCRegistrationStateChangeEvent
  2810. {
  2811. CONST_VTBL struct IRTCRegistrationStateChangeEventVtbl *lpVtbl;
  2812. };
  2813. #ifdef COBJMACROS
  2814. #define IRTCRegistrationStateChangeEvent_QueryInterface(This,riid,ppvObject) \
  2815. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2816. #define IRTCRegistrationStateChangeEvent_AddRef(This) \
  2817. (This)->lpVtbl -> AddRef(This)
  2818. #define IRTCRegistrationStateChangeEvent_Release(This) \
  2819. (This)->lpVtbl -> Release(This)
  2820. #define IRTCRegistrationStateChangeEvent_GetTypeInfoCount(This,pctinfo) \
  2821. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2822. #define IRTCRegistrationStateChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  2823. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2824. #define IRTCRegistrationStateChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  2825. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2826. #define IRTCRegistrationStateChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  2827. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2828. #define IRTCRegistrationStateChangeEvent_get_Profile(This,ppProfile) \
  2829. (This)->lpVtbl -> get_Profile(This,ppProfile)
  2830. #define IRTCRegistrationStateChangeEvent_get_State(This,penState) \
  2831. (This)->lpVtbl -> get_State(This,penState)
  2832. #define IRTCRegistrationStateChangeEvent_get_StatusCode(This,plStatusCode) \
  2833. (This)->lpVtbl -> get_StatusCode(This,plStatusCode)
  2834. #define IRTCRegistrationStateChangeEvent_get_StatusText(This,pbstrStatusText) \
  2835. (This)->lpVtbl -> get_StatusText(This,pbstrStatusText)
  2836. #endif /* COBJMACROS */
  2837. #endif /* C style interface */
  2838. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCRegistrationStateChangeEvent_get_Profile_Proxy(
  2839. IRTCRegistrationStateChangeEvent * This,
  2840. /* [retval][out] */ IRTCProfile **ppProfile);
  2841. void __RPC_STUB IRTCRegistrationStateChangeEvent_get_Profile_Stub(
  2842. IRpcStubBuffer *This,
  2843. IRpcChannelBuffer *_pRpcChannelBuffer,
  2844. PRPC_MESSAGE _pRpcMessage,
  2845. DWORD *_pdwStubPhase);
  2846. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCRegistrationStateChangeEvent_get_State_Proxy(
  2847. IRTCRegistrationStateChangeEvent * This,
  2848. /* [retval][out] */ RTC_REGISTRATION_STATE *penState);
  2849. void __RPC_STUB IRTCRegistrationStateChangeEvent_get_State_Stub(
  2850. IRpcStubBuffer *This,
  2851. IRpcChannelBuffer *_pRpcChannelBuffer,
  2852. PRPC_MESSAGE _pRpcMessage,
  2853. DWORD *_pdwStubPhase);
  2854. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCRegistrationStateChangeEvent_get_StatusCode_Proxy(
  2855. IRTCRegistrationStateChangeEvent * This,
  2856. /* [retval][out] */ long *plStatusCode);
  2857. void __RPC_STUB IRTCRegistrationStateChangeEvent_get_StatusCode_Stub(
  2858. IRpcStubBuffer *This,
  2859. IRpcChannelBuffer *_pRpcChannelBuffer,
  2860. PRPC_MESSAGE _pRpcMessage,
  2861. DWORD *_pdwStubPhase);
  2862. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCRegistrationStateChangeEvent_get_StatusText_Proxy(
  2863. IRTCRegistrationStateChangeEvent * This,
  2864. /* [retval][out] */ BSTR *pbstrStatusText);
  2865. void __RPC_STUB IRTCRegistrationStateChangeEvent_get_StatusText_Stub(
  2866. IRpcStubBuffer *This,
  2867. IRpcChannelBuffer *_pRpcChannelBuffer,
  2868. PRPC_MESSAGE _pRpcMessage,
  2869. DWORD *_pdwStubPhase);
  2870. #endif /* __IRTCRegistrationStateChangeEvent_INTERFACE_DEFINED__ */
  2871. #ifndef __IRTCSessionStateChangeEvent_INTERFACE_DEFINED__
  2872. #define __IRTCSessionStateChangeEvent_INTERFACE_DEFINED__
  2873. /* interface IRTCSessionStateChangeEvent */
  2874. /* [unique][helpstring][dual][uuid][object] */
  2875. EXTERN_C const IID IID_IRTCSessionStateChangeEvent;
  2876. #if defined(__cplusplus) && !defined(CINTERFACE)
  2877. MIDL_INTERFACE("b5bad703-5952-48b3-9321-7f4500521506")
  2878. IRTCSessionStateChangeEvent : public IDispatch
  2879. {
  2880. public:
  2881. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Session(
  2882. /* [retval][out] */ IRTCSession **ppSession) = 0;
  2883. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_State(
  2884. /* [retval][out] */ RTC_SESSION_STATE *penState) = 0;
  2885. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusCode(
  2886. /* [retval][out] */ long *plStatusCode) = 0;
  2887. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusText(
  2888. /* [retval][out] */ BSTR *pbstrStatusText) = 0;
  2889. };
  2890. #else /* C style interface */
  2891. typedef struct IRTCSessionStateChangeEventVtbl
  2892. {
  2893. BEGIN_INTERFACE
  2894. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2895. IRTCSessionStateChangeEvent * This,
  2896. /* [in] */ REFIID riid,
  2897. /* [iid_is][out] */ void **ppvObject);
  2898. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2899. IRTCSessionStateChangeEvent * This);
  2900. ULONG ( STDMETHODCALLTYPE *Release )(
  2901. IRTCSessionStateChangeEvent * This);
  2902. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  2903. IRTCSessionStateChangeEvent * This,
  2904. /* [out] */ UINT *pctinfo);
  2905. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  2906. IRTCSessionStateChangeEvent * This,
  2907. /* [in] */ UINT iTInfo,
  2908. /* [in] */ LCID lcid,
  2909. /* [out] */ ITypeInfo **ppTInfo);
  2910. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  2911. IRTCSessionStateChangeEvent * This,
  2912. /* [in] */ REFIID riid,
  2913. /* [size_is][in] */ LPOLESTR *rgszNames,
  2914. /* [in] */ UINT cNames,
  2915. /* [in] */ LCID lcid,
  2916. /* [size_is][out] */ DISPID *rgDispId);
  2917. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  2918. IRTCSessionStateChangeEvent * This,
  2919. /* [in] */ DISPID dispIdMember,
  2920. /* [in] */ REFIID riid,
  2921. /* [in] */ LCID lcid,
  2922. /* [in] */ WORD wFlags,
  2923. /* [out][in] */ DISPPARAMS *pDispParams,
  2924. /* [out] */ VARIANT *pVarResult,
  2925. /* [out] */ EXCEPINFO *pExcepInfo,
  2926. /* [out] */ UINT *puArgErr);
  2927. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Session )(
  2928. IRTCSessionStateChangeEvent * This,
  2929. /* [retval][out] */ IRTCSession **ppSession);
  2930. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )(
  2931. IRTCSessionStateChangeEvent * This,
  2932. /* [retval][out] */ RTC_SESSION_STATE *penState);
  2933. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusCode )(
  2934. IRTCSessionStateChangeEvent * This,
  2935. /* [retval][out] */ long *plStatusCode);
  2936. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusText )(
  2937. IRTCSessionStateChangeEvent * This,
  2938. /* [retval][out] */ BSTR *pbstrStatusText);
  2939. END_INTERFACE
  2940. } IRTCSessionStateChangeEventVtbl;
  2941. interface IRTCSessionStateChangeEvent
  2942. {
  2943. CONST_VTBL struct IRTCSessionStateChangeEventVtbl *lpVtbl;
  2944. };
  2945. #ifdef COBJMACROS
  2946. #define IRTCSessionStateChangeEvent_QueryInterface(This,riid,ppvObject) \
  2947. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2948. #define IRTCSessionStateChangeEvent_AddRef(This) \
  2949. (This)->lpVtbl -> AddRef(This)
  2950. #define IRTCSessionStateChangeEvent_Release(This) \
  2951. (This)->lpVtbl -> Release(This)
  2952. #define IRTCSessionStateChangeEvent_GetTypeInfoCount(This,pctinfo) \
  2953. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2954. #define IRTCSessionStateChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  2955. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2956. #define IRTCSessionStateChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  2957. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2958. #define IRTCSessionStateChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  2959. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2960. #define IRTCSessionStateChangeEvent_get_Session(This,ppSession) \
  2961. (This)->lpVtbl -> get_Session(This,ppSession)
  2962. #define IRTCSessionStateChangeEvent_get_State(This,penState) \
  2963. (This)->lpVtbl -> get_State(This,penState)
  2964. #define IRTCSessionStateChangeEvent_get_StatusCode(This,plStatusCode) \
  2965. (This)->lpVtbl -> get_StatusCode(This,plStatusCode)
  2966. #define IRTCSessionStateChangeEvent_get_StatusText(This,pbstrStatusText) \
  2967. (This)->lpVtbl -> get_StatusText(This,pbstrStatusText)
  2968. #endif /* COBJMACROS */
  2969. #endif /* C style interface */
  2970. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionStateChangeEvent_get_Session_Proxy(
  2971. IRTCSessionStateChangeEvent * This,
  2972. /* [retval][out] */ IRTCSession **ppSession);
  2973. void __RPC_STUB IRTCSessionStateChangeEvent_get_Session_Stub(
  2974. IRpcStubBuffer *This,
  2975. IRpcChannelBuffer *_pRpcChannelBuffer,
  2976. PRPC_MESSAGE _pRpcMessage,
  2977. DWORD *_pdwStubPhase);
  2978. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionStateChangeEvent_get_State_Proxy(
  2979. IRTCSessionStateChangeEvent * This,
  2980. /* [retval][out] */ RTC_SESSION_STATE *penState);
  2981. void __RPC_STUB IRTCSessionStateChangeEvent_get_State_Stub(
  2982. IRpcStubBuffer *This,
  2983. IRpcChannelBuffer *_pRpcChannelBuffer,
  2984. PRPC_MESSAGE _pRpcMessage,
  2985. DWORD *_pdwStubPhase);
  2986. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionStateChangeEvent_get_StatusCode_Proxy(
  2987. IRTCSessionStateChangeEvent * This,
  2988. /* [retval][out] */ long *plStatusCode);
  2989. void __RPC_STUB IRTCSessionStateChangeEvent_get_StatusCode_Stub(
  2990. IRpcStubBuffer *This,
  2991. IRpcChannelBuffer *_pRpcChannelBuffer,
  2992. PRPC_MESSAGE _pRpcMessage,
  2993. DWORD *_pdwStubPhase);
  2994. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionStateChangeEvent_get_StatusText_Proxy(
  2995. IRTCSessionStateChangeEvent * This,
  2996. /* [retval][out] */ BSTR *pbstrStatusText);
  2997. void __RPC_STUB IRTCSessionStateChangeEvent_get_StatusText_Stub(
  2998. IRpcStubBuffer *This,
  2999. IRpcChannelBuffer *_pRpcChannelBuffer,
  3000. PRPC_MESSAGE _pRpcMessage,
  3001. DWORD *_pdwStubPhase);
  3002. #endif /* __IRTCSessionStateChangeEvent_INTERFACE_DEFINED__ */
  3003. #ifndef __IRTCSessionOperationCompleteEvent_INTERFACE_DEFINED__
  3004. #define __IRTCSessionOperationCompleteEvent_INTERFACE_DEFINED__
  3005. /* interface IRTCSessionOperationCompleteEvent */
  3006. /* [unique][helpstring][dual][uuid][object] */
  3007. EXTERN_C const IID IID_IRTCSessionOperationCompleteEvent;
  3008. #if defined(__cplusplus) && !defined(CINTERFACE)
  3009. MIDL_INTERFACE("a6bff4c0-f7c8-4d3c-9a41-3550f78a95b0")
  3010. IRTCSessionOperationCompleteEvent : public IDispatch
  3011. {
  3012. public:
  3013. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Session(
  3014. /* [retval][out] */ IRTCSession **ppSession) = 0;
  3015. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Cookie(
  3016. /* [retval][out] */ long *plCookie) = 0;
  3017. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusCode(
  3018. /* [retval][out] */ long *plStatusCode) = 0;
  3019. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusText(
  3020. /* [retval][out] */ BSTR *pbstrStatusText) = 0;
  3021. };
  3022. #else /* C style interface */
  3023. typedef struct IRTCSessionOperationCompleteEventVtbl
  3024. {
  3025. BEGIN_INTERFACE
  3026. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3027. IRTCSessionOperationCompleteEvent * This,
  3028. /* [in] */ REFIID riid,
  3029. /* [iid_is][out] */ void **ppvObject);
  3030. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3031. IRTCSessionOperationCompleteEvent * This);
  3032. ULONG ( STDMETHODCALLTYPE *Release )(
  3033. IRTCSessionOperationCompleteEvent * This);
  3034. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3035. IRTCSessionOperationCompleteEvent * This,
  3036. /* [out] */ UINT *pctinfo);
  3037. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3038. IRTCSessionOperationCompleteEvent * This,
  3039. /* [in] */ UINT iTInfo,
  3040. /* [in] */ LCID lcid,
  3041. /* [out] */ ITypeInfo **ppTInfo);
  3042. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3043. IRTCSessionOperationCompleteEvent * This,
  3044. /* [in] */ REFIID riid,
  3045. /* [size_is][in] */ LPOLESTR *rgszNames,
  3046. /* [in] */ UINT cNames,
  3047. /* [in] */ LCID lcid,
  3048. /* [size_is][out] */ DISPID *rgDispId);
  3049. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3050. IRTCSessionOperationCompleteEvent * This,
  3051. /* [in] */ DISPID dispIdMember,
  3052. /* [in] */ REFIID riid,
  3053. /* [in] */ LCID lcid,
  3054. /* [in] */ WORD wFlags,
  3055. /* [out][in] */ DISPPARAMS *pDispParams,
  3056. /* [out] */ VARIANT *pVarResult,
  3057. /* [out] */ EXCEPINFO *pExcepInfo,
  3058. /* [out] */ UINT *puArgErr);
  3059. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Session )(
  3060. IRTCSessionOperationCompleteEvent * This,
  3061. /* [retval][out] */ IRTCSession **ppSession);
  3062. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Cookie )(
  3063. IRTCSessionOperationCompleteEvent * This,
  3064. /* [retval][out] */ long *plCookie);
  3065. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusCode )(
  3066. IRTCSessionOperationCompleteEvent * This,
  3067. /* [retval][out] */ long *plStatusCode);
  3068. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusText )(
  3069. IRTCSessionOperationCompleteEvent * This,
  3070. /* [retval][out] */ BSTR *pbstrStatusText);
  3071. END_INTERFACE
  3072. } IRTCSessionOperationCompleteEventVtbl;
  3073. interface IRTCSessionOperationCompleteEvent
  3074. {
  3075. CONST_VTBL struct IRTCSessionOperationCompleteEventVtbl *lpVtbl;
  3076. };
  3077. #ifdef COBJMACROS
  3078. #define IRTCSessionOperationCompleteEvent_QueryInterface(This,riid,ppvObject) \
  3079. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3080. #define IRTCSessionOperationCompleteEvent_AddRef(This) \
  3081. (This)->lpVtbl -> AddRef(This)
  3082. #define IRTCSessionOperationCompleteEvent_Release(This) \
  3083. (This)->lpVtbl -> Release(This)
  3084. #define IRTCSessionOperationCompleteEvent_GetTypeInfoCount(This,pctinfo) \
  3085. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3086. #define IRTCSessionOperationCompleteEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3087. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3088. #define IRTCSessionOperationCompleteEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3089. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3090. #define IRTCSessionOperationCompleteEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3091. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3092. #define IRTCSessionOperationCompleteEvent_get_Session(This,ppSession) \
  3093. (This)->lpVtbl -> get_Session(This,ppSession)
  3094. #define IRTCSessionOperationCompleteEvent_get_Cookie(This,plCookie) \
  3095. (This)->lpVtbl -> get_Cookie(This,plCookie)
  3096. #define IRTCSessionOperationCompleteEvent_get_StatusCode(This,plStatusCode) \
  3097. (This)->lpVtbl -> get_StatusCode(This,plStatusCode)
  3098. #define IRTCSessionOperationCompleteEvent_get_StatusText(This,pbstrStatusText) \
  3099. (This)->lpVtbl -> get_StatusText(This,pbstrStatusText)
  3100. #endif /* COBJMACROS */
  3101. #endif /* C style interface */
  3102. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionOperationCompleteEvent_get_Session_Proxy(
  3103. IRTCSessionOperationCompleteEvent * This,
  3104. /* [retval][out] */ IRTCSession **ppSession);
  3105. void __RPC_STUB IRTCSessionOperationCompleteEvent_get_Session_Stub(
  3106. IRpcStubBuffer *This,
  3107. IRpcChannelBuffer *_pRpcChannelBuffer,
  3108. PRPC_MESSAGE _pRpcMessage,
  3109. DWORD *_pdwStubPhase);
  3110. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionOperationCompleteEvent_get_Cookie_Proxy(
  3111. IRTCSessionOperationCompleteEvent * This,
  3112. /* [retval][out] */ long *plCookie);
  3113. void __RPC_STUB IRTCSessionOperationCompleteEvent_get_Cookie_Stub(
  3114. IRpcStubBuffer *This,
  3115. IRpcChannelBuffer *_pRpcChannelBuffer,
  3116. PRPC_MESSAGE _pRpcMessage,
  3117. DWORD *_pdwStubPhase);
  3118. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionOperationCompleteEvent_get_StatusCode_Proxy(
  3119. IRTCSessionOperationCompleteEvent * This,
  3120. /* [retval][out] */ long *plStatusCode);
  3121. void __RPC_STUB IRTCSessionOperationCompleteEvent_get_StatusCode_Stub(
  3122. IRpcStubBuffer *This,
  3123. IRpcChannelBuffer *_pRpcChannelBuffer,
  3124. PRPC_MESSAGE _pRpcMessage,
  3125. DWORD *_pdwStubPhase);
  3126. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCSessionOperationCompleteEvent_get_StatusText_Proxy(
  3127. IRTCSessionOperationCompleteEvent * This,
  3128. /* [retval][out] */ BSTR *pbstrStatusText);
  3129. void __RPC_STUB IRTCSessionOperationCompleteEvent_get_StatusText_Stub(
  3130. IRpcStubBuffer *This,
  3131. IRpcChannelBuffer *_pRpcChannelBuffer,
  3132. PRPC_MESSAGE _pRpcMessage,
  3133. DWORD *_pdwStubPhase);
  3134. #endif /* __IRTCSessionOperationCompleteEvent_INTERFACE_DEFINED__ */
  3135. #ifndef __IRTCParticipantStateChangeEvent_INTERFACE_DEFINED__
  3136. #define __IRTCParticipantStateChangeEvent_INTERFACE_DEFINED__
  3137. /* interface IRTCParticipantStateChangeEvent */
  3138. /* [unique][helpstring][dual][uuid][object] */
  3139. EXTERN_C const IID IID_IRTCParticipantStateChangeEvent;
  3140. #if defined(__cplusplus) && !defined(CINTERFACE)
  3141. MIDL_INTERFACE("09bcb597-f0fa-48f9-b420-468cea7fde04")
  3142. IRTCParticipantStateChangeEvent : public IDispatch
  3143. {
  3144. public:
  3145. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Participant(
  3146. /* [retval][out] */ IRTCParticipant **ppParticipant) = 0;
  3147. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_State(
  3148. /* [retval][out] */ RTC_PARTICIPANT_STATE *penState) = 0;
  3149. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusCode(
  3150. /* [retval][out] */ long *plStatusCode) = 0;
  3151. };
  3152. #else /* C style interface */
  3153. typedef struct IRTCParticipantStateChangeEventVtbl
  3154. {
  3155. BEGIN_INTERFACE
  3156. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3157. IRTCParticipantStateChangeEvent * This,
  3158. /* [in] */ REFIID riid,
  3159. /* [iid_is][out] */ void **ppvObject);
  3160. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3161. IRTCParticipantStateChangeEvent * This);
  3162. ULONG ( STDMETHODCALLTYPE *Release )(
  3163. IRTCParticipantStateChangeEvent * This);
  3164. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3165. IRTCParticipantStateChangeEvent * This,
  3166. /* [out] */ UINT *pctinfo);
  3167. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3168. IRTCParticipantStateChangeEvent * This,
  3169. /* [in] */ UINT iTInfo,
  3170. /* [in] */ LCID lcid,
  3171. /* [out] */ ITypeInfo **ppTInfo);
  3172. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3173. IRTCParticipantStateChangeEvent * This,
  3174. /* [in] */ REFIID riid,
  3175. /* [size_is][in] */ LPOLESTR *rgszNames,
  3176. /* [in] */ UINT cNames,
  3177. /* [in] */ LCID lcid,
  3178. /* [size_is][out] */ DISPID *rgDispId);
  3179. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3180. IRTCParticipantStateChangeEvent * This,
  3181. /* [in] */ DISPID dispIdMember,
  3182. /* [in] */ REFIID riid,
  3183. /* [in] */ LCID lcid,
  3184. /* [in] */ WORD wFlags,
  3185. /* [out][in] */ DISPPARAMS *pDispParams,
  3186. /* [out] */ VARIANT *pVarResult,
  3187. /* [out] */ EXCEPINFO *pExcepInfo,
  3188. /* [out] */ UINT *puArgErr);
  3189. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Participant )(
  3190. IRTCParticipantStateChangeEvent * This,
  3191. /* [retval][out] */ IRTCParticipant **ppParticipant);
  3192. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )(
  3193. IRTCParticipantStateChangeEvent * This,
  3194. /* [retval][out] */ RTC_PARTICIPANT_STATE *penState);
  3195. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusCode )(
  3196. IRTCParticipantStateChangeEvent * This,
  3197. /* [retval][out] */ long *plStatusCode);
  3198. END_INTERFACE
  3199. } IRTCParticipantStateChangeEventVtbl;
  3200. interface IRTCParticipantStateChangeEvent
  3201. {
  3202. CONST_VTBL struct IRTCParticipantStateChangeEventVtbl *lpVtbl;
  3203. };
  3204. #ifdef COBJMACROS
  3205. #define IRTCParticipantStateChangeEvent_QueryInterface(This,riid,ppvObject) \
  3206. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3207. #define IRTCParticipantStateChangeEvent_AddRef(This) \
  3208. (This)->lpVtbl -> AddRef(This)
  3209. #define IRTCParticipantStateChangeEvent_Release(This) \
  3210. (This)->lpVtbl -> Release(This)
  3211. #define IRTCParticipantStateChangeEvent_GetTypeInfoCount(This,pctinfo) \
  3212. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3213. #define IRTCParticipantStateChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3214. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3215. #define IRTCParticipantStateChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3216. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3217. #define IRTCParticipantStateChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3218. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3219. #define IRTCParticipantStateChangeEvent_get_Participant(This,ppParticipant) \
  3220. (This)->lpVtbl -> get_Participant(This,ppParticipant)
  3221. #define IRTCParticipantStateChangeEvent_get_State(This,penState) \
  3222. (This)->lpVtbl -> get_State(This,penState)
  3223. #define IRTCParticipantStateChangeEvent_get_StatusCode(This,plStatusCode) \
  3224. (This)->lpVtbl -> get_StatusCode(This,plStatusCode)
  3225. #endif /* COBJMACROS */
  3226. #endif /* C style interface */
  3227. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipantStateChangeEvent_get_Participant_Proxy(
  3228. IRTCParticipantStateChangeEvent * This,
  3229. /* [retval][out] */ IRTCParticipant **ppParticipant);
  3230. void __RPC_STUB IRTCParticipantStateChangeEvent_get_Participant_Stub(
  3231. IRpcStubBuffer *This,
  3232. IRpcChannelBuffer *_pRpcChannelBuffer,
  3233. PRPC_MESSAGE _pRpcMessage,
  3234. DWORD *_pdwStubPhase);
  3235. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipantStateChangeEvent_get_State_Proxy(
  3236. IRTCParticipantStateChangeEvent * This,
  3237. /* [retval][out] */ RTC_PARTICIPANT_STATE *penState);
  3238. void __RPC_STUB IRTCParticipantStateChangeEvent_get_State_Stub(
  3239. IRpcStubBuffer *This,
  3240. IRpcChannelBuffer *_pRpcChannelBuffer,
  3241. PRPC_MESSAGE _pRpcMessage,
  3242. DWORD *_pdwStubPhase);
  3243. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCParticipantStateChangeEvent_get_StatusCode_Proxy(
  3244. IRTCParticipantStateChangeEvent * This,
  3245. /* [retval][out] */ long *plStatusCode);
  3246. void __RPC_STUB IRTCParticipantStateChangeEvent_get_StatusCode_Stub(
  3247. IRpcStubBuffer *This,
  3248. IRpcChannelBuffer *_pRpcChannelBuffer,
  3249. PRPC_MESSAGE _pRpcMessage,
  3250. DWORD *_pdwStubPhase);
  3251. #endif /* __IRTCParticipantStateChangeEvent_INTERFACE_DEFINED__ */
  3252. #ifndef __IRTCMediaEvent_INTERFACE_DEFINED__
  3253. #define __IRTCMediaEvent_INTERFACE_DEFINED__
  3254. /* interface IRTCMediaEvent */
  3255. /* [unique][helpstring][dual][uuid][object] */
  3256. EXTERN_C const IID IID_IRTCMediaEvent;
  3257. #if defined(__cplusplus) && !defined(CINTERFACE)
  3258. MIDL_INTERFACE("099944fb-bcda-453e-8c41-e13da2adf7f3")
  3259. IRTCMediaEvent : public IDispatch
  3260. {
  3261. public:
  3262. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaType(
  3263. /* [retval][out] */ long *pMediaType) = 0;
  3264. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EventType(
  3265. /* [retval][out] */ RTC_MEDIA_EVENT_TYPE *penEventType) = 0;
  3266. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EventReason(
  3267. /* [retval][out] */ RTC_MEDIA_EVENT_REASON *penEventReason) = 0;
  3268. };
  3269. #else /* C style interface */
  3270. typedef struct IRTCMediaEventVtbl
  3271. {
  3272. BEGIN_INTERFACE
  3273. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3274. IRTCMediaEvent * This,
  3275. /* [in] */ REFIID riid,
  3276. /* [iid_is][out] */ void **ppvObject);
  3277. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3278. IRTCMediaEvent * This);
  3279. ULONG ( STDMETHODCALLTYPE *Release )(
  3280. IRTCMediaEvent * This);
  3281. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3282. IRTCMediaEvent * This,
  3283. /* [out] */ UINT *pctinfo);
  3284. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3285. IRTCMediaEvent * This,
  3286. /* [in] */ UINT iTInfo,
  3287. /* [in] */ LCID lcid,
  3288. /* [out] */ ITypeInfo **ppTInfo);
  3289. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3290. IRTCMediaEvent * This,
  3291. /* [in] */ REFIID riid,
  3292. /* [size_is][in] */ LPOLESTR *rgszNames,
  3293. /* [in] */ UINT cNames,
  3294. /* [in] */ LCID lcid,
  3295. /* [size_is][out] */ DISPID *rgDispId);
  3296. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3297. IRTCMediaEvent * This,
  3298. /* [in] */ DISPID dispIdMember,
  3299. /* [in] */ REFIID riid,
  3300. /* [in] */ LCID lcid,
  3301. /* [in] */ WORD wFlags,
  3302. /* [out][in] */ DISPPARAMS *pDispParams,
  3303. /* [out] */ VARIANT *pVarResult,
  3304. /* [out] */ EXCEPINFO *pExcepInfo,
  3305. /* [out] */ UINT *puArgErr);
  3306. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaType )(
  3307. IRTCMediaEvent * This,
  3308. /* [retval][out] */ long *pMediaType);
  3309. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventType )(
  3310. IRTCMediaEvent * This,
  3311. /* [retval][out] */ RTC_MEDIA_EVENT_TYPE *penEventType);
  3312. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventReason )(
  3313. IRTCMediaEvent * This,
  3314. /* [retval][out] */ RTC_MEDIA_EVENT_REASON *penEventReason);
  3315. END_INTERFACE
  3316. } IRTCMediaEventVtbl;
  3317. interface IRTCMediaEvent
  3318. {
  3319. CONST_VTBL struct IRTCMediaEventVtbl *lpVtbl;
  3320. };
  3321. #ifdef COBJMACROS
  3322. #define IRTCMediaEvent_QueryInterface(This,riid,ppvObject) \
  3323. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3324. #define IRTCMediaEvent_AddRef(This) \
  3325. (This)->lpVtbl -> AddRef(This)
  3326. #define IRTCMediaEvent_Release(This) \
  3327. (This)->lpVtbl -> Release(This)
  3328. #define IRTCMediaEvent_GetTypeInfoCount(This,pctinfo) \
  3329. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3330. #define IRTCMediaEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3331. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3332. #define IRTCMediaEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3333. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3334. #define IRTCMediaEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3335. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3336. #define IRTCMediaEvent_get_MediaType(This,pMediaType) \
  3337. (This)->lpVtbl -> get_MediaType(This,pMediaType)
  3338. #define IRTCMediaEvent_get_EventType(This,penEventType) \
  3339. (This)->lpVtbl -> get_EventType(This,penEventType)
  3340. #define IRTCMediaEvent_get_EventReason(This,penEventReason) \
  3341. (This)->lpVtbl -> get_EventReason(This,penEventReason)
  3342. #endif /* COBJMACROS */
  3343. #endif /* C style interface */
  3344. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMediaEvent_get_MediaType_Proxy(
  3345. IRTCMediaEvent * This,
  3346. /* [retval][out] */ long *pMediaType);
  3347. void __RPC_STUB IRTCMediaEvent_get_MediaType_Stub(
  3348. IRpcStubBuffer *This,
  3349. IRpcChannelBuffer *_pRpcChannelBuffer,
  3350. PRPC_MESSAGE _pRpcMessage,
  3351. DWORD *_pdwStubPhase);
  3352. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMediaEvent_get_EventType_Proxy(
  3353. IRTCMediaEvent * This,
  3354. /* [retval][out] */ RTC_MEDIA_EVENT_TYPE *penEventType);
  3355. void __RPC_STUB IRTCMediaEvent_get_EventType_Stub(
  3356. IRpcStubBuffer *This,
  3357. IRpcChannelBuffer *_pRpcChannelBuffer,
  3358. PRPC_MESSAGE _pRpcMessage,
  3359. DWORD *_pdwStubPhase);
  3360. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMediaEvent_get_EventReason_Proxy(
  3361. IRTCMediaEvent * This,
  3362. /* [retval][out] */ RTC_MEDIA_EVENT_REASON *penEventReason);
  3363. void __RPC_STUB IRTCMediaEvent_get_EventReason_Stub(
  3364. IRpcStubBuffer *This,
  3365. IRpcChannelBuffer *_pRpcChannelBuffer,
  3366. PRPC_MESSAGE _pRpcMessage,
  3367. DWORD *_pdwStubPhase);
  3368. #endif /* __IRTCMediaEvent_INTERFACE_DEFINED__ */
  3369. #ifndef __IRTCIntensityEvent_INTERFACE_DEFINED__
  3370. #define __IRTCIntensityEvent_INTERFACE_DEFINED__
  3371. /* interface IRTCIntensityEvent */
  3372. /* [unique][helpstring][dual][uuid][object] */
  3373. EXTERN_C const IID IID_IRTCIntensityEvent;
  3374. #if defined(__cplusplus) && !defined(CINTERFACE)
  3375. MIDL_INTERFACE("4c23bf51-390c-4992-a41d-41eec05b2a4b")
  3376. IRTCIntensityEvent : public IDispatch
  3377. {
  3378. public:
  3379. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Level(
  3380. /* [retval][out] */ long *plLevel) = 0;
  3381. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Min(
  3382. /* [retval][out] */ long *plMin) = 0;
  3383. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Max(
  3384. /* [retval][out] */ long *plMax) = 0;
  3385. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction(
  3386. /* [retval][out] */ RTC_AUDIO_DEVICE *penDirection) = 0;
  3387. };
  3388. #else /* C style interface */
  3389. typedef struct IRTCIntensityEventVtbl
  3390. {
  3391. BEGIN_INTERFACE
  3392. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3393. IRTCIntensityEvent * This,
  3394. /* [in] */ REFIID riid,
  3395. /* [iid_is][out] */ void **ppvObject);
  3396. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3397. IRTCIntensityEvent * This);
  3398. ULONG ( STDMETHODCALLTYPE *Release )(
  3399. IRTCIntensityEvent * This);
  3400. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3401. IRTCIntensityEvent * This,
  3402. /* [out] */ UINT *pctinfo);
  3403. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3404. IRTCIntensityEvent * This,
  3405. /* [in] */ UINT iTInfo,
  3406. /* [in] */ LCID lcid,
  3407. /* [out] */ ITypeInfo **ppTInfo);
  3408. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3409. IRTCIntensityEvent * This,
  3410. /* [in] */ REFIID riid,
  3411. /* [size_is][in] */ LPOLESTR *rgszNames,
  3412. /* [in] */ UINT cNames,
  3413. /* [in] */ LCID lcid,
  3414. /* [size_is][out] */ DISPID *rgDispId);
  3415. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3416. IRTCIntensityEvent * This,
  3417. /* [in] */ DISPID dispIdMember,
  3418. /* [in] */ REFIID riid,
  3419. /* [in] */ LCID lcid,
  3420. /* [in] */ WORD wFlags,
  3421. /* [out][in] */ DISPPARAMS *pDispParams,
  3422. /* [out] */ VARIANT *pVarResult,
  3423. /* [out] */ EXCEPINFO *pExcepInfo,
  3424. /* [out] */ UINT *puArgErr);
  3425. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Level )(
  3426. IRTCIntensityEvent * This,
  3427. /* [retval][out] */ long *plLevel);
  3428. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Min )(
  3429. IRTCIntensityEvent * This,
  3430. /* [retval][out] */ long *plMin);
  3431. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Max )(
  3432. IRTCIntensityEvent * This,
  3433. /* [retval][out] */ long *plMax);
  3434. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )(
  3435. IRTCIntensityEvent * This,
  3436. /* [retval][out] */ RTC_AUDIO_DEVICE *penDirection);
  3437. END_INTERFACE
  3438. } IRTCIntensityEventVtbl;
  3439. interface IRTCIntensityEvent
  3440. {
  3441. CONST_VTBL struct IRTCIntensityEventVtbl *lpVtbl;
  3442. };
  3443. #ifdef COBJMACROS
  3444. #define IRTCIntensityEvent_QueryInterface(This,riid,ppvObject) \
  3445. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3446. #define IRTCIntensityEvent_AddRef(This) \
  3447. (This)->lpVtbl -> AddRef(This)
  3448. #define IRTCIntensityEvent_Release(This) \
  3449. (This)->lpVtbl -> Release(This)
  3450. #define IRTCIntensityEvent_GetTypeInfoCount(This,pctinfo) \
  3451. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3452. #define IRTCIntensityEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3453. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3454. #define IRTCIntensityEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3455. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3456. #define IRTCIntensityEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3457. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3458. #define IRTCIntensityEvent_get_Level(This,plLevel) \
  3459. (This)->lpVtbl -> get_Level(This,plLevel)
  3460. #define IRTCIntensityEvent_get_Min(This,plMin) \
  3461. (This)->lpVtbl -> get_Min(This,plMin)
  3462. #define IRTCIntensityEvent_get_Max(This,plMax) \
  3463. (This)->lpVtbl -> get_Max(This,plMax)
  3464. #define IRTCIntensityEvent_get_Direction(This,penDirection) \
  3465. (This)->lpVtbl -> get_Direction(This,penDirection)
  3466. #endif /* COBJMACROS */
  3467. #endif /* C style interface */
  3468. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCIntensityEvent_get_Level_Proxy(
  3469. IRTCIntensityEvent * This,
  3470. /* [retval][out] */ long *plLevel);
  3471. void __RPC_STUB IRTCIntensityEvent_get_Level_Stub(
  3472. IRpcStubBuffer *This,
  3473. IRpcChannelBuffer *_pRpcChannelBuffer,
  3474. PRPC_MESSAGE _pRpcMessage,
  3475. DWORD *_pdwStubPhase);
  3476. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCIntensityEvent_get_Min_Proxy(
  3477. IRTCIntensityEvent * This,
  3478. /* [retval][out] */ long *plMin);
  3479. void __RPC_STUB IRTCIntensityEvent_get_Min_Stub(
  3480. IRpcStubBuffer *This,
  3481. IRpcChannelBuffer *_pRpcChannelBuffer,
  3482. PRPC_MESSAGE _pRpcMessage,
  3483. DWORD *_pdwStubPhase);
  3484. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCIntensityEvent_get_Max_Proxy(
  3485. IRTCIntensityEvent * This,
  3486. /* [retval][out] */ long *plMax);
  3487. void __RPC_STUB IRTCIntensityEvent_get_Max_Stub(
  3488. IRpcStubBuffer *This,
  3489. IRpcChannelBuffer *_pRpcChannelBuffer,
  3490. PRPC_MESSAGE _pRpcMessage,
  3491. DWORD *_pdwStubPhase);
  3492. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCIntensityEvent_get_Direction_Proxy(
  3493. IRTCIntensityEvent * This,
  3494. /* [retval][out] */ RTC_AUDIO_DEVICE *penDirection);
  3495. void __RPC_STUB IRTCIntensityEvent_get_Direction_Stub(
  3496. IRpcStubBuffer *This,
  3497. IRpcChannelBuffer *_pRpcChannelBuffer,
  3498. PRPC_MESSAGE _pRpcMessage,
  3499. DWORD *_pdwStubPhase);
  3500. #endif /* __IRTCIntensityEvent_INTERFACE_DEFINED__ */
  3501. #ifndef __IRTCMessagingEvent_INTERFACE_DEFINED__
  3502. #define __IRTCMessagingEvent_INTERFACE_DEFINED__
  3503. /* interface IRTCMessagingEvent */
  3504. /* [unique][helpstring][dual][uuid][object] */
  3505. EXTERN_C const IID IID_IRTCMessagingEvent;
  3506. #if defined(__cplusplus) && !defined(CINTERFACE)
  3507. MIDL_INTERFACE("d3609541-1b29-4de5-a4ad-5aebaf319512")
  3508. IRTCMessagingEvent : public IDispatch
  3509. {
  3510. public:
  3511. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Session(
  3512. /* [retval][out] */ IRTCSession **ppSession) = 0;
  3513. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Participant(
  3514. /* [retval][out] */ IRTCParticipant **ppParticipant) = 0;
  3515. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EventType(
  3516. /* [retval][out] */ RTC_MESSAGING_EVENT_TYPE *penEventType) = 0;
  3517. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Message(
  3518. /* [retval][out] */ BSTR *pbstrMessage) = 0;
  3519. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MessageHeader(
  3520. /* [retval][out] */ BSTR *pbstrMessageHeader) = 0;
  3521. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UserStatus(
  3522. /* [retval][out] */ RTC_MESSAGING_USER_STATUS *penUserStatus) = 0;
  3523. };
  3524. #else /* C style interface */
  3525. typedef struct IRTCMessagingEventVtbl
  3526. {
  3527. BEGIN_INTERFACE
  3528. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3529. IRTCMessagingEvent * This,
  3530. /* [in] */ REFIID riid,
  3531. /* [iid_is][out] */ void **ppvObject);
  3532. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3533. IRTCMessagingEvent * This);
  3534. ULONG ( STDMETHODCALLTYPE *Release )(
  3535. IRTCMessagingEvent * This);
  3536. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3537. IRTCMessagingEvent * This,
  3538. /* [out] */ UINT *pctinfo);
  3539. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3540. IRTCMessagingEvent * This,
  3541. /* [in] */ UINT iTInfo,
  3542. /* [in] */ LCID lcid,
  3543. /* [out] */ ITypeInfo **ppTInfo);
  3544. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3545. IRTCMessagingEvent * This,
  3546. /* [in] */ REFIID riid,
  3547. /* [size_is][in] */ LPOLESTR *rgszNames,
  3548. /* [in] */ UINT cNames,
  3549. /* [in] */ LCID lcid,
  3550. /* [size_is][out] */ DISPID *rgDispId);
  3551. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3552. IRTCMessagingEvent * This,
  3553. /* [in] */ DISPID dispIdMember,
  3554. /* [in] */ REFIID riid,
  3555. /* [in] */ LCID lcid,
  3556. /* [in] */ WORD wFlags,
  3557. /* [out][in] */ DISPPARAMS *pDispParams,
  3558. /* [out] */ VARIANT *pVarResult,
  3559. /* [out] */ EXCEPINFO *pExcepInfo,
  3560. /* [out] */ UINT *puArgErr);
  3561. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Session )(
  3562. IRTCMessagingEvent * This,
  3563. /* [retval][out] */ IRTCSession **ppSession);
  3564. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Participant )(
  3565. IRTCMessagingEvent * This,
  3566. /* [retval][out] */ IRTCParticipant **ppParticipant);
  3567. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventType )(
  3568. IRTCMessagingEvent * This,
  3569. /* [retval][out] */ RTC_MESSAGING_EVENT_TYPE *penEventType);
  3570. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Message )(
  3571. IRTCMessagingEvent * This,
  3572. /* [retval][out] */ BSTR *pbstrMessage);
  3573. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MessageHeader )(
  3574. IRTCMessagingEvent * This,
  3575. /* [retval][out] */ BSTR *pbstrMessageHeader);
  3576. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UserStatus )(
  3577. IRTCMessagingEvent * This,
  3578. /* [retval][out] */ RTC_MESSAGING_USER_STATUS *penUserStatus);
  3579. END_INTERFACE
  3580. } IRTCMessagingEventVtbl;
  3581. interface IRTCMessagingEvent
  3582. {
  3583. CONST_VTBL struct IRTCMessagingEventVtbl *lpVtbl;
  3584. };
  3585. #ifdef COBJMACROS
  3586. #define IRTCMessagingEvent_QueryInterface(This,riid,ppvObject) \
  3587. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3588. #define IRTCMessagingEvent_AddRef(This) \
  3589. (This)->lpVtbl -> AddRef(This)
  3590. #define IRTCMessagingEvent_Release(This) \
  3591. (This)->lpVtbl -> Release(This)
  3592. #define IRTCMessagingEvent_GetTypeInfoCount(This,pctinfo) \
  3593. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3594. #define IRTCMessagingEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3595. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3596. #define IRTCMessagingEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3597. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3598. #define IRTCMessagingEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3599. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3600. #define IRTCMessagingEvent_get_Session(This,ppSession) \
  3601. (This)->lpVtbl -> get_Session(This,ppSession)
  3602. #define IRTCMessagingEvent_get_Participant(This,ppParticipant) \
  3603. (This)->lpVtbl -> get_Participant(This,ppParticipant)
  3604. #define IRTCMessagingEvent_get_EventType(This,penEventType) \
  3605. (This)->lpVtbl -> get_EventType(This,penEventType)
  3606. #define IRTCMessagingEvent_get_Message(This,pbstrMessage) \
  3607. (This)->lpVtbl -> get_Message(This,pbstrMessage)
  3608. #define IRTCMessagingEvent_get_MessageHeader(This,pbstrMessageHeader) \
  3609. (This)->lpVtbl -> get_MessageHeader(This,pbstrMessageHeader)
  3610. #define IRTCMessagingEvent_get_UserStatus(This,penUserStatus) \
  3611. (This)->lpVtbl -> get_UserStatus(This,penUserStatus)
  3612. #endif /* COBJMACROS */
  3613. #endif /* C style interface */
  3614. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMessagingEvent_get_Session_Proxy(
  3615. IRTCMessagingEvent * This,
  3616. /* [retval][out] */ IRTCSession **ppSession);
  3617. void __RPC_STUB IRTCMessagingEvent_get_Session_Stub(
  3618. IRpcStubBuffer *This,
  3619. IRpcChannelBuffer *_pRpcChannelBuffer,
  3620. PRPC_MESSAGE _pRpcMessage,
  3621. DWORD *_pdwStubPhase);
  3622. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMessagingEvent_get_Participant_Proxy(
  3623. IRTCMessagingEvent * This,
  3624. /* [retval][out] */ IRTCParticipant **ppParticipant);
  3625. void __RPC_STUB IRTCMessagingEvent_get_Participant_Stub(
  3626. IRpcStubBuffer *This,
  3627. IRpcChannelBuffer *_pRpcChannelBuffer,
  3628. PRPC_MESSAGE _pRpcMessage,
  3629. DWORD *_pdwStubPhase);
  3630. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMessagingEvent_get_EventType_Proxy(
  3631. IRTCMessagingEvent * This,
  3632. /* [retval][out] */ RTC_MESSAGING_EVENT_TYPE *penEventType);
  3633. void __RPC_STUB IRTCMessagingEvent_get_EventType_Stub(
  3634. IRpcStubBuffer *This,
  3635. IRpcChannelBuffer *_pRpcChannelBuffer,
  3636. PRPC_MESSAGE _pRpcMessage,
  3637. DWORD *_pdwStubPhase);
  3638. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMessagingEvent_get_Message_Proxy(
  3639. IRTCMessagingEvent * This,
  3640. /* [retval][out] */ BSTR *pbstrMessage);
  3641. void __RPC_STUB IRTCMessagingEvent_get_Message_Stub(
  3642. IRpcStubBuffer *This,
  3643. IRpcChannelBuffer *_pRpcChannelBuffer,
  3644. PRPC_MESSAGE _pRpcMessage,
  3645. DWORD *_pdwStubPhase);
  3646. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMessagingEvent_get_MessageHeader_Proxy(
  3647. IRTCMessagingEvent * This,
  3648. /* [retval][out] */ BSTR *pbstrMessageHeader);
  3649. void __RPC_STUB IRTCMessagingEvent_get_MessageHeader_Stub(
  3650. IRpcStubBuffer *This,
  3651. IRpcChannelBuffer *_pRpcChannelBuffer,
  3652. PRPC_MESSAGE _pRpcMessage,
  3653. DWORD *_pdwStubPhase);
  3654. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCMessagingEvent_get_UserStatus_Proxy(
  3655. IRTCMessagingEvent * This,
  3656. /* [retval][out] */ RTC_MESSAGING_USER_STATUS *penUserStatus);
  3657. void __RPC_STUB IRTCMessagingEvent_get_UserStatus_Stub(
  3658. IRpcStubBuffer *This,
  3659. IRpcChannelBuffer *_pRpcChannelBuffer,
  3660. PRPC_MESSAGE _pRpcMessage,
  3661. DWORD *_pdwStubPhase);
  3662. #endif /* __IRTCMessagingEvent_INTERFACE_DEFINED__ */
  3663. #ifndef __IRTCBuddyEvent_INTERFACE_DEFINED__
  3664. #define __IRTCBuddyEvent_INTERFACE_DEFINED__
  3665. /* interface IRTCBuddyEvent */
  3666. /* [unique][helpstring][dual][uuid][object] */
  3667. EXTERN_C const IID IID_IRTCBuddyEvent;
  3668. #if defined(__cplusplus) && !defined(CINTERFACE)
  3669. MIDL_INTERFACE("f36d755d-17e6-404e-954f-0fc07574c78d")
  3670. IRTCBuddyEvent : public IDispatch
  3671. {
  3672. public:
  3673. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Buddy(
  3674. /* [retval][out] */ IRTCBuddy **ppBuddy) = 0;
  3675. };
  3676. #else /* C style interface */
  3677. typedef struct IRTCBuddyEventVtbl
  3678. {
  3679. BEGIN_INTERFACE
  3680. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3681. IRTCBuddyEvent * This,
  3682. /* [in] */ REFIID riid,
  3683. /* [iid_is][out] */ void **ppvObject);
  3684. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3685. IRTCBuddyEvent * This);
  3686. ULONG ( STDMETHODCALLTYPE *Release )(
  3687. IRTCBuddyEvent * This);
  3688. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3689. IRTCBuddyEvent * This,
  3690. /* [out] */ UINT *pctinfo);
  3691. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3692. IRTCBuddyEvent * This,
  3693. /* [in] */ UINT iTInfo,
  3694. /* [in] */ LCID lcid,
  3695. /* [out] */ ITypeInfo **ppTInfo);
  3696. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3697. IRTCBuddyEvent * This,
  3698. /* [in] */ REFIID riid,
  3699. /* [size_is][in] */ LPOLESTR *rgszNames,
  3700. /* [in] */ UINT cNames,
  3701. /* [in] */ LCID lcid,
  3702. /* [size_is][out] */ DISPID *rgDispId);
  3703. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3704. IRTCBuddyEvent * This,
  3705. /* [in] */ DISPID dispIdMember,
  3706. /* [in] */ REFIID riid,
  3707. /* [in] */ LCID lcid,
  3708. /* [in] */ WORD wFlags,
  3709. /* [out][in] */ DISPPARAMS *pDispParams,
  3710. /* [out] */ VARIANT *pVarResult,
  3711. /* [out] */ EXCEPINFO *pExcepInfo,
  3712. /* [out] */ UINT *puArgErr);
  3713. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Buddy )(
  3714. IRTCBuddyEvent * This,
  3715. /* [retval][out] */ IRTCBuddy **ppBuddy);
  3716. END_INTERFACE
  3717. } IRTCBuddyEventVtbl;
  3718. interface IRTCBuddyEvent
  3719. {
  3720. CONST_VTBL struct IRTCBuddyEventVtbl *lpVtbl;
  3721. };
  3722. #ifdef COBJMACROS
  3723. #define IRTCBuddyEvent_QueryInterface(This,riid,ppvObject) \
  3724. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3725. #define IRTCBuddyEvent_AddRef(This) \
  3726. (This)->lpVtbl -> AddRef(This)
  3727. #define IRTCBuddyEvent_Release(This) \
  3728. (This)->lpVtbl -> Release(This)
  3729. #define IRTCBuddyEvent_GetTypeInfoCount(This,pctinfo) \
  3730. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3731. #define IRTCBuddyEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3732. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3733. #define IRTCBuddyEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3734. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3735. #define IRTCBuddyEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3736. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3737. #define IRTCBuddyEvent_get_Buddy(This,ppBuddy) \
  3738. (This)->lpVtbl -> get_Buddy(This,ppBuddy)
  3739. #endif /* COBJMACROS */
  3740. #endif /* C style interface */
  3741. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCBuddyEvent_get_Buddy_Proxy(
  3742. IRTCBuddyEvent * This,
  3743. /* [retval][out] */ IRTCBuddy **ppBuddy);
  3744. void __RPC_STUB IRTCBuddyEvent_get_Buddy_Stub(
  3745. IRpcStubBuffer *This,
  3746. IRpcChannelBuffer *_pRpcChannelBuffer,
  3747. PRPC_MESSAGE _pRpcMessage,
  3748. DWORD *_pdwStubPhase);
  3749. #endif /* __IRTCBuddyEvent_INTERFACE_DEFINED__ */
  3750. #ifndef __IRTCWatcherEvent_INTERFACE_DEFINED__
  3751. #define __IRTCWatcherEvent_INTERFACE_DEFINED__
  3752. /* interface IRTCWatcherEvent */
  3753. /* [unique][helpstring][dual][uuid][object] */
  3754. EXTERN_C const IID IID_IRTCWatcherEvent;
  3755. #if defined(__cplusplus) && !defined(CINTERFACE)
  3756. MIDL_INTERFACE("f30d7261-587a-424f-822c-312788f43548")
  3757. IRTCWatcherEvent : public IDispatch
  3758. {
  3759. public:
  3760. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Watcher(
  3761. /* [retval][out] */ IRTCWatcher **ppWatcher) = 0;
  3762. };
  3763. #else /* C style interface */
  3764. typedef struct IRTCWatcherEventVtbl
  3765. {
  3766. BEGIN_INTERFACE
  3767. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3768. IRTCWatcherEvent * This,
  3769. /* [in] */ REFIID riid,
  3770. /* [iid_is][out] */ void **ppvObject);
  3771. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3772. IRTCWatcherEvent * This);
  3773. ULONG ( STDMETHODCALLTYPE *Release )(
  3774. IRTCWatcherEvent * This);
  3775. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3776. IRTCWatcherEvent * This,
  3777. /* [out] */ UINT *pctinfo);
  3778. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3779. IRTCWatcherEvent * This,
  3780. /* [in] */ UINT iTInfo,
  3781. /* [in] */ LCID lcid,
  3782. /* [out] */ ITypeInfo **ppTInfo);
  3783. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3784. IRTCWatcherEvent * This,
  3785. /* [in] */ REFIID riid,
  3786. /* [size_is][in] */ LPOLESTR *rgszNames,
  3787. /* [in] */ UINT cNames,
  3788. /* [in] */ LCID lcid,
  3789. /* [size_is][out] */ DISPID *rgDispId);
  3790. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3791. IRTCWatcherEvent * This,
  3792. /* [in] */ DISPID dispIdMember,
  3793. /* [in] */ REFIID riid,
  3794. /* [in] */ LCID lcid,
  3795. /* [in] */ WORD wFlags,
  3796. /* [out][in] */ DISPPARAMS *pDispParams,
  3797. /* [out] */ VARIANT *pVarResult,
  3798. /* [out] */ EXCEPINFO *pExcepInfo,
  3799. /* [out] */ UINT *puArgErr);
  3800. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Watcher )(
  3801. IRTCWatcherEvent * This,
  3802. /* [retval][out] */ IRTCWatcher **ppWatcher);
  3803. END_INTERFACE
  3804. } IRTCWatcherEventVtbl;
  3805. interface IRTCWatcherEvent
  3806. {
  3807. CONST_VTBL struct IRTCWatcherEventVtbl *lpVtbl;
  3808. };
  3809. #ifdef COBJMACROS
  3810. #define IRTCWatcherEvent_QueryInterface(This,riid,ppvObject) \
  3811. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3812. #define IRTCWatcherEvent_AddRef(This) \
  3813. (This)->lpVtbl -> AddRef(This)
  3814. #define IRTCWatcherEvent_Release(This) \
  3815. (This)->lpVtbl -> Release(This)
  3816. #define IRTCWatcherEvent_GetTypeInfoCount(This,pctinfo) \
  3817. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3818. #define IRTCWatcherEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3819. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3820. #define IRTCWatcherEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3821. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3822. #define IRTCWatcherEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3823. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3824. #define IRTCWatcherEvent_get_Watcher(This,ppWatcher) \
  3825. (This)->lpVtbl -> get_Watcher(This,ppWatcher)
  3826. #endif /* COBJMACROS */
  3827. #endif /* C style interface */
  3828. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCWatcherEvent_get_Watcher_Proxy(
  3829. IRTCWatcherEvent * This,
  3830. /* [retval][out] */ IRTCWatcher **ppWatcher);
  3831. void __RPC_STUB IRTCWatcherEvent_get_Watcher_Stub(
  3832. IRpcStubBuffer *This,
  3833. IRpcChannelBuffer *_pRpcChannelBuffer,
  3834. PRPC_MESSAGE _pRpcMessage,
  3835. DWORD *_pdwStubPhase);
  3836. #endif /* __IRTCWatcherEvent_INTERFACE_DEFINED__ */
  3837. #ifndef __IRTCCollection_INTERFACE_DEFINED__
  3838. #define __IRTCCollection_INTERFACE_DEFINED__
  3839. /* interface IRTCCollection */
  3840. /* [dual][helpstring][uuid][object] */
  3841. EXTERN_C const IID IID_IRTCCollection;
  3842. #if defined(__cplusplus) && !defined(CINTERFACE)
  3843. MIDL_INTERFACE("EC7C8096-B918-4044-94F1-E4FBA0361D5C")
  3844. IRTCCollection : public IDispatch
  3845. {
  3846. public:
  3847. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Count(
  3848. /* [retval][out] */ long *lCount) = 0;
  3849. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item(
  3850. /* [in] */ long Index,
  3851. /* [retval][out] */ VARIANT *pVariant) = 0;
  3852. virtual /* [helpstring][id][restricted][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum(
  3853. /* [retval][out] */ IUnknown **ppNewEnum) = 0;
  3854. };
  3855. #else /* C style interface */
  3856. typedef struct IRTCCollectionVtbl
  3857. {
  3858. BEGIN_INTERFACE
  3859. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3860. IRTCCollection * This,
  3861. /* [in] */ REFIID riid,
  3862. /* [iid_is][out] */ void **ppvObject);
  3863. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3864. IRTCCollection * This);
  3865. ULONG ( STDMETHODCALLTYPE *Release )(
  3866. IRTCCollection * This);
  3867. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  3868. IRTCCollection * This,
  3869. /* [out] */ UINT *pctinfo);
  3870. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  3871. IRTCCollection * This,
  3872. /* [in] */ UINT iTInfo,
  3873. /* [in] */ LCID lcid,
  3874. /* [out] */ ITypeInfo **ppTInfo);
  3875. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  3876. IRTCCollection * This,
  3877. /* [in] */ REFIID riid,
  3878. /* [size_is][in] */ LPOLESTR *rgszNames,
  3879. /* [in] */ UINT cNames,
  3880. /* [in] */ LCID lcid,
  3881. /* [size_is][out] */ DISPID *rgDispId);
  3882. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  3883. IRTCCollection * This,
  3884. /* [in] */ DISPID dispIdMember,
  3885. /* [in] */ REFIID riid,
  3886. /* [in] */ LCID lcid,
  3887. /* [in] */ WORD wFlags,
  3888. /* [out][in] */ DISPPARAMS *pDispParams,
  3889. /* [out] */ VARIANT *pVarResult,
  3890. /* [out] */ EXCEPINFO *pExcepInfo,
  3891. /* [out] */ UINT *puArgErr);
  3892. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )(
  3893. IRTCCollection * This,
  3894. /* [retval][out] */ long *lCount);
  3895. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Item )(
  3896. IRTCCollection * This,
  3897. /* [in] */ long Index,
  3898. /* [retval][out] */ VARIANT *pVariant);
  3899. /* [helpstring][id][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )(
  3900. IRTCCollection * This,
  3901. /* [retval][out] */ IUnknown **ppNewEnum);
  3902. END_INTERFACE
  3903. } IRTCCollectionVtbl;
  3904. interface IRTCCollection
  3905. {
  3906. CONST_VTBL struct IRTCCollectionVtbl *lpVtbl;
  3907. };
  3908. #ifdef COBJMACROS
  3909. #define IRTCCollection_QueryInterface(This,riid,ppvObject) \
  3910. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3911. #define IRTCCollection_AddRef(This) \
  3912. (This)->lpVtbl -> AddRef(This)
  3913. #define IRTCCollection_Release(This) \
  3914. (This)->lpVtbl -> Release(This)
  3915. #define IRTCCollection_GetTypeInfoCount(This,pctinfo) \
  3916. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3917. #define IRTCCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  3918. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3919. #define IRTCCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  3920. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3921. #define IRTCCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  3922. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3923. #define IRTCCollection_get_Count(This,lCount) \
  3924. (This)->lpVtbl -> get_Count(This,lCount)
  3925. #define IRTCCollection_get_Item(This,Index,pVariant) \
  3926. (This)->lpVtbl -> get_Item(This,Index,pVariant)
  3927. #define IRTCCollection_get__NewEnum(This,ppNewEnum) \
  3928. (This)->lpVtbl -> get__NewEnum(This,ppNewEnum)
  3929. #endif /* COBJMACROS */
  3930. #endif /* C style interface */
  3931. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCCollection_get_Count_Proxy(
  3932. IRTCCollection * This,
  3933. /* [retval][out] */ long *lCount);
  3934. void __RPC_STUB IRTCCollection_get_Count_Stub(
  3935. IRpcStubBuffer *This,
  3936. IRpcChannelBuffer *_pRpcChannelBuffer,
  3937. PRPC_MESSAGE _pRpcMessage,
  3938. DWORD *_pdwStubPhase);
  3939. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRTCCollection_get_Item_Proxy(
  3940. IRTCCollection * This,
  3941. /* [in] */ long Index,
  3942. /* [retval][out] */ VARIANT *pVariant);
  3943. void __RPC_STUB IRTCCollection_get_Item_Stub(
  3944. IRpcStubBuffer *This,
  3945. IRpcChannelBuffer *_pRpcChannelBuffer,
  3946. PRPC_MESSAGE _pRpcMessage,
  3947. DWORD *_pdwStubPhase);
  3948. /* [helpstring][id][restricted][propget] */ HRESULT STDMETHODCALLTYPE IRTCCollection_get__NewEnum_Proxy(
  3949. IRTCCollection * This,
  3950. /* [retval][out] */ IUnknown **ppNewEnum);
  3951. void __RPC_STUB IRTCCollection_get__NewEnum_Stub(
  3952. IRpcStubBuffer *This,
  3953. IRpcChannelBuffer *_pRpcChannelBuffer,
  3954. PRPC_MESSAGE _pRpcMessage,
  3955. DWORD *_pdwStubPhase);
  3956. #endif /* __IRTCCollection_INTERFACE_DEFINED__ */
  3957. #ifndef __IRTCEnumParticipants_INTERFACE_DEFINED__
  3958. #define __IRTCEnumParticipants_INTERFACE_DEFINED__
  3959. /* interface IRTCEnumParticipants */
  3960. /* [unique][helpstring][hidden][uuid][object] */
  3961. EXTERN_C const IID IID_IRTCEnumParticipants;
  3962. #if defined(__cplusplus) && !defined(CINTERFACE)
  3963. MIDL_INTERFACE("fcd56f29-4a4f-41b2-ba5c-f5bccc060bf6")
  3964. IRTCEnumParticipants : public IUnknown
  3965. {
  3966. public:
  3967. virtual HRESULT STDMETHODCALLTYPE Next(
  3968. /* [in] */ ULONG celt,
  3969. /* [size_is][out] */ IRTCParticipant **ppElements,
  3970. /* [full][out][in] */ ULONG *pceltFetched) = 0;
  3971. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  3972. virtual HRESULT STDMETHODCALLTYPE Skip(
  3973. /* [in] */ ULONG celt) = 0;
  3974. virtual HRESULT STDMETHODCALLTYPE Clone(
  3975. /* [retval][out] */ IRTCEnumParticipants **ppEnum) = 0;
  3976. };
  3977. #else /* C style interface */
  3978. typedef struct IRTCEnumParticipantsVtbl
  3979. {
  3980. BEGIN_INTERFACE
  3981. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3982. IRTCEnumParticipants * This,
  3983. /* [in] */ REFIID riid,
  3984. /* [iid_is][out] */ void **ppvObject);
  3985. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3986. IRTCEnumParticipants * This);
  3987. ULONG ( STDMETHODCALLTYPE *Release )(
  3988. IRTCEnumParticipants * This);
  3989. HRESULT ( STDMETHODCALLTYPE *Next )(
  3990. IRTCEnumParticipants * This,
  3991. /* [in] */ ULONG celt,
  3992. /* [size_is][out] */ IRTCParticipant **ppElements,
  3993. /* [full][out][in] */ ULONG *pceltFetched);
  3994. HRESULT ( STDMETHODCALLTYPE *Reset )(
  3995. IRTCEnumParticipants * This);
  3996. HRESULT ( STDMETHODCALLTYPE *Skip )(
  3997. IRTCEnumParticipants * This,
  3998. /* [in] */ ULONG celt);
  3999. HRESULT ( STDMETHODCALLTYPE *Clone )(
  4000. IRTCEnumParticipants * This,
  4001. /* [retval][out] */ IRTCEnumParticipants **ppEnum);
  4002. END_INTERFACE
  4003. } IRTCEnumParticipantsVtbl;
  4004. interface IRTCEnumParticipants
  4005. {
  4006. CONST_VTBL struct IRTCEnumParticipantsVtbl *lpVtbl;
  4007. };
  4008. #ifdef COBJMACROS
  4009. #define IRTCEnumParticipants_QueryInterface(This,riid,ppvObject) \
  4010. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4011. #define IRTCEnumParticipants_AddRef(This) \
  4012. (This)->lpVtbl -> AddRef(This)
  4013. #define IRTCEnumParticipants_Release(This) \
  4014. (This)->lpVtbl -> Release(This)
  4015. #define IRTCEnumParticipants_Next(This,celt,ppElements,pceltFetched) \
  4016. (This)->lpVtbl -> Next(This,celt,ppElements,pceltFetched)
  4017. #define IRTCEnumParticipants_Reset(This) \
  4018. (This)->lpVtbl -> Reset(This)
  4019. #define IRTCEnumParticipants_Skip(This,celt) \
  4020. (This)->lpVtbl -> Skip(This,celt)
  4021. #define IRTCEnumParticipants_Clone(This,ppEnum) \
  4022. (This)->lpVtbl -> Clone(This,ppEnum)
  4023. #endif /* COBJMACROS */
  4024. #endif /* C style interface */
  4025. HRESULT STDMETHODCALLTYPE IRTCEnumParticipants_Next_Proxy(
  4026. IRTCEnumParticipants * This,
  4027. /* [in] */ ULONG celt,
  4028. /* [size_is][out] */ IRTCParticipant **ppElements,
  4029. /* [full][out][in] */ ULONG *pceltFetched);
  4030. void __RPC_STUB IRTCEnumParticipants_Next_Stub(
  4031. IRpcStubBuffer *This,
  4032. IRpcChannelBuffer *_pRpcChannelBuffer,
  4033. PRPC_MESSAGE _pRpcMessage,
  4034. DWORD *_pdwStubPhase);
  4035. HRESULT STDMETHODCALLTYPE IRTCEnumParticipants_Reset_Proxy(
  4036. IRTCEnumParticipants * This);
  4037. void __RPC_STUB IRTCEnumParticipants_Reset_Stub(
  4038. IRpcStubBuffer *This,
  4039. IRpcChannelBuffer *_pRpcChannelBuffer,
  4040. PRPC_MESSAGE _pRpcMessage,
  4041. DWORD *_pdwStubPhase);
  4042. HRESULT STDMETHODCALLTYPE IRTCEnumParticipants_Skip_Proxy(
  4043. IRTCEnumParticipants * This,
  4044. /* [in] */ ULONG celt);
  4045. void __RPC_STUB IRTCEnumParticipants_Skip_Stub(
  4046. IRpcStubBuffer *This,
  4047. IRpcChannelBuffer *_pRpcChannelBuffer,
  4048. PRPC_MESSAGE _pRpcMessage,
  4049. DWORD *_pdwStubPhase);
  4050. HRESULT STDMETHODCALLTYPE IRTCEnumParticipants_Clone_Proxy(
  4051. IRTCEnumParticipants * This,
  4052. /* [retval][out] */ IRTCEnumParticipants **ppEnum);
  4053. void __RPC_STUB IRTCEnumParticipants_Clone_Stub(
  4054. IRpcStubBuffer *This,
  4055. IRpcChannelBuffer *_pRpcChannelBuffer,
  4056. PRPC_MESSAGE _pRpcMessage,
  4057. DWORD *_pdwStubPhase);
  4058. #endif /* __IRTCEnumParticipants_INTERFACE_DEFINED__ */
  4059. #ifndef __IRTCEnumProfiles_INTERFACE_DEFINED__
  4060. #define __IRTCEnumProfiles_INTERFACE_DEFINED__
  4061. /* interface IRTCEnumProfiles */
  4062. /* [unique][helpstring][hidden][uuid][object] */
  4063. EXTERN_C const IID IID_IRTCEnumProfiles;
  4064. #if defined(__cplusplus) && !defined(CINTERFACE)
  4065. MIDL_INTERFACE("29b7c41c-ed82-4bca-84ad-39d5101b58e3")
  4066. IRTCEnumProfiles : public IUnknown
  4067. {
  4068. public:
  4069. virtual HRESULT STDMETHODCALLTYPE Next(
  4070. /* [in] */ ULONG celt,
  4071. /* [size_is][out] */ IRTCProfile **ppElements,
  4072. /* [full][out][in] */ ULONG *pceltFetched) = 0;
  4073. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  4074. virtual HRESULT STDMETHODCALLTYPE Skip(
  4075. /* [in] */ ULONG celt) = 0;
  4076. virtual HRESULT STDMETHODCALLTYPE Clone(
  4077. /* [retval][out] */ IRTCEnumProfiles **ppEnum) = 0;
  4078. };
  4079. #else /* C style interface */
  4080. typedef struct IRTCEnumProfilesVtbl
  4081. {
  4082. BEGIN_INTERFACE
  4083. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4084. IRTCEnumProfiles * This,
  4085. /* [in] */ REFIID riid,
  4086. /* [iid_is][out] */ void **ppvObject);
  4087. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4088. IRTCEnumProfiles * This);
  4089. ULONG ( STDMETHODCALLTYPE *Release )(
  4090. IRTCEnumProfiles * This);
  4091. HRESULT ( STDMETHODCALLTYPE *Next )(
  4092. IRTCEnumProfiles * This,
  4093. /* [in] */ ULONG celt,
  4094. /* [size_is][out] */ IRTCProfile **ppElements,
  4095. /* [full][out][in] */ ULONG *pceltFetched);
  4096. HRESULT ( STDMETHODCALLTYPE *Reset )(
  4097. IRTCEnumProfiles * This);
  4098. HRESULT ( STDMETHODCALLTYPE *Skip )(
  4099. IRTCEnumProfiles * This,
  4100. /* [in] */ ULONG celt);
  4101. HRESULT ( STDMETHODCALLTYPE *Clone )(
  4102. IRTCEnumProfiles * This,
  4103. /* [retval][out] */ IRTCEnumProfiles **ppEnum);
  4104. END_INTERFACE
  4105. } IRTCEnumProfilesVtbl;
  4106. interface IRTCEnumProfiles
  4107. {
  4108. CONST_VTBL struct IRTCEnumProfilesVtbl *lpVtbl;
  4109. };
  4110. #ifdef COBJMACROS
  4111. #define IRTCEnumProfiles_QueryInterface(This,riid,ppvObject) \
  4112. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4113. #define IRTCEnumProfiles_AddRef(This) \
  4114. (This)->lpVtbl -> AddRef(This)
  4115. #define IRTCEnumProfiles_Release(This) \
  4116. (This)->lpVtbl -> Release(This)
  4117. #define IRTCEnumProfiles_Next(This,celt,ppElements,pceltFetched) \
  4118. (This)->lpVtbl -> Next(This,celt,ppElements,pceltFetched)
  4119. #define IRTCEnumProfiles_Reset(This) \
  4120. (This)->lpVtbl -> Reset(This)
  4121. #define IRTCEnumProfiles_Skip(This,celt) \
  4122. (This)->lpVtbl -> Skip(This,celt)
  4123. #define IRTCEnumProfiles_Clone(This,ppEnum) \
  4124. (This)->lpVtbl -> Clone(This,ppEnum)
  4125. #endif /* COBJMACROS */
  4126. #endif /* C style interface */
  4127. HRESULT STDMETHODCALLTYPE IRTCEnumProfiles_Next_Proxy(
  4128. IRTCEnumProfiles * This,
  4129. /* [in] */ ULONG celt,
  4130. /* [size_is][out] */ IRTCProfile **ppElements,
  4131. /* [full][out][in] */ ULONG *pceltFetched);
  4132. void __RPC_STUB IRTCEnumProfiles_Next_Stub(
  4133. IRpcStubBuffer *This,
  4134. IRpcChannelBuffer *_pRpcChannelBuffer,
  4135. PRPC_MESSAGE _pRpcMessage,
  4136. DWORD *_pdwStubPhase);
  4137. HRESULT STDMETHODCALLTYPE IRTCEnumProfiles_Reset_Proxy(
  4138. IRTCEnumProfiles * This);
  4139. void __RPC_STUB IRTCEnumProfiles_Reset_Stub(
  4140. IRpcStubBuffer *This,
  4141. IRpcChannelBuffer *_pRpcChannelBuffer,
  4142. PRPC_MESSAGE _pRpcMessage,
  4143. DWORD *_pdwStubPhase);
  4144. HRESULT STDMETHODCALLTYPE IRTCEnumProfiles_Skip_Proxy(
  4145. IRTCEnumProfiles * This,
  4146. /* [in] */ ULONG celt);
  4147. void __RPC_STUB IRTCEnumProfiles_Skip_Stub(
  4148. IRpcStubBuffer *This,
  4149. IRpcChannelBuffer *_pRpcChannelBuffer,
  4150. PRPC_MESSAGE _pRpcMessage,
  4151. DWORD *_pdwStubPhase);
  4152. HRESULT STDMETHODCALLTYPE IRTCEnumProfiles_Clone_Proxy(
  4153. IRTCEnumProfiles * This,
  4154. /* [retval][out] */ IRTCEnumProfiles **ppEnum);
  4155. void __RPC_STUB IRTCEnumProfiles_Clone_Stub(
  4156. IRpcStubBuffer *This,
  4157. IRpcChannelBuffer *_pRpcChannelBuffer,
  4158. PRPC_MESSAGE _pRpcMessage,
  4159. DWORD *_pdwStubPhase);
  4160. #endif /* __IRTCEnumProfiles_INTERFACE_DEFINED__ */
  4161. #ifndef __IRTCEnumBuddies_INTERFACE_DEFINED__
  4162. #define __IRTCEnumBuddies_INTERFACE_DEFINED__
  4163. /* interface IRTCEnumBuddies */
  4164. /* [unique][helpstring][hidden][uuid][object] */
  4165. EXTERN_C const IID IID_IRTCEnumBuddies;
  4166. #if defined(__cplusplus) && !defined(CINTERFACE)
  4167. MIDL_INTERFACE("f7296917-5569-4b3b-b3af-98d1144b2b87")
  4168. IRTCEnumBuddies : public IUnknown
  4169. {
  4170. public:
  4171. virtual HRESULT STDMETHODCALLTYPE Next(
  4172. /* [in] */ ULONG celt,
  4173. /* [size_is][out] */ IRTCBuddy **ppElements,
  4174. /* [full][out][in] */ ULONG *pceltFetched) = 0;
  4175. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  4176. virtual HRESULT STDMETHODCALLTYPE Skip(
  4177. /* [in] */ ULONG celt) = 0;
  4178. virtual HRESULT STDMETHODCALLTYPE Clone(
  4179. /* [retval][out] */ IRTCEnumBuddies **ppEnum) = 0;
  4180. };
  4181. #else /* C style interface */
  4182. typedef struct IRTCEnumBuddiesVtbl
  4183. {
  4184. BEGIN_INTERFACE
  4185. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4186. IRTCEnumBuddies * This,
  4187. /* [in] */ REFIID riid,
  4188. /* [iid_is][out] */ void **ppvObject);
  4189. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4190. IRTCEnumBuddies * This);
  4191. ULONG ( STDMETHODCALLTYPE *Release )(
  4192. IRTCEnumBuddies * This);
  4193. HRESULT ( STDMETHODCALLTYPE *Next )(
  4194. IRTCEnumBuddies * This,
  4195. /* [in] */ ULONG celt,
  4196. /* [size_is][out] */ IRTCBuddy **ppElements,
  4197. /* [full][out][in] */ ULONG *pceltFetched);
  4198. HRESULT ( STDMETHODCALLTYPE *Reset )(
  4199. IRTCEnumBuddies * This);
  4200. HRESULT ( STDMETHODCALLTYPE *Skip )(
  4201. IRTCEnumBuddies * This,
  4202. /* [in] */ ULONG celt);
  4203. HRESULT ( STDMETHODCALLTYPE *Clone )(
  4204. IRTCEnumBuddies * This,
  4205. /* [retval][out] */ IRTCEnumBuddies **ppEnum);
  4206. END_INTERFACE
  4207. } IRTCEnumBuddiesVtbl;
  4208. interface IRTCEnumBuddies
  4209. {
  4210. CONST_VTBL struct IRTCEnumBuddiesVtbl *lpVtbl;
  4211. };
  4212. #ifdef COBJMACROS
  4213. #define IRTCEnumBuddies_QueryInterface(This,riid,ppvObject) \
  4214. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4215. #define IRTCEnumBuddies_AddRef(This) \
  4216. (This)->lpVtbl -> AddRef(This)
  4217. #define IRTCEnumBuddies_Release(This) \
  4218. (This)->lpVtbl -> Release(This)
  4219. #define IRTCEnumBuddies_Next(This,celt,ppElements,pceltFetched) \
  4220. (This)->lpVtbl -> Next(This,celt,ppElements,pceltFetched)
  4221. #define IRTCEnumBuddies_Reset(This) \
  4222. (This)->lpVtbl -> Reset(This)
  4223. #define IRTCEnumBuddies_Skip(This,celt) \
  4224. (This)->lpVtbl -> Skip(This,celt)
  4225. #define IRTCEnumBuddies_Clone(This,ppEnum) \
  4226. (This)->lpVtbl -> Clone(This,ppEnum)
  4227. #endif /* COBJMACROS */
  4228. #endif /* C style interface */
  4229. HRESULT STDMETHODCALLTYPE IRTCEnumBuddies_Next_Proxy(
  4230. IRTCEnumBuddies * This,
  4231. /* [in] */ ULONG celt,
  4232. /* [size_is][out] */ IRTCBuddy **ppElements,
  4233. /* [full][out][in] */ ULONG *pceltFetched);
  4234. void __RPC_STUB IRTCEnumBuddies_Next_Stub(
  4235. IRpcStubBuffer *This,
  4236. IRpcChannelBuffer *_pRpcChannelBuffer,
  4237. PRPC_MESSAGE _pRpcMessage,
  4238. DWORD *_pdwStubPhase);
  4239. HRESULT STDMETHODCALLTYPE IRTCEnumBuddies_Reset_Proxy(
  4240. IRTCEnumBuddies * This);
  4241. void __RPC_STUB IRTCEnumBuddies_Reset_Stub(
  4242. IRpcStubBuffer *This,
  4243. IRpcChannelBuffer *_pRpcChannelBuffer,
  4244. PRPC_MESSAGE _pRpcMessage,
  4245. DWORD *_pdwStubPhase);
  4246. HRESULT STDMETHODCALLTYPE IRTCEnumBuddies_Skip_Proxy(
  4247. IRTCEnumBuddies * This,
  4248. /* [in] */ ULONG celt);
  4249. void __RPC_STUB IRTCEnumBuddies_Skip_Stub(
  4250. IRpcStubBuffer *This,
  4251. IRpcChannelBuffer *_pRpcChannelBuffer,
  4252. PRPC_MESSAGE _pRpcMessage,
  4253. DWORD *_pdwStubPhase);
  4254. HRESULT STDMETHODCALLTYPE IRTCEnumBuddies_Clone_Proxy(
  4255. IRTCEnumBuddies * This,
  4256. /* [retval][out] */ IRTCEnumBuddies **ppEnum);
  4257. void __RPC_STUB IRTCEnumBuddies_Clone_Stub(
  4258. IRpcStubBuffer *This,
  4259. IRpcChannelBuffer *_pRpcChannelBuffer,
  4260. PRPC_MESSAGE _pRpcMessage,
  4261. DWORD *_pdwStubPhase);
  4262. #endif /* __IRTCEnumBuddies_INTERFACE_DEFINED__ */
  4263. #ifndef __IRTCEnumWatchers_INTERFACE_DEFINED__
  4264. #define __IRTCEnumWatchers_INTERFACE_DEFINED__
  4265. /* interface IRTCEnumWatchers */
  4266. /* [unique][helpstring][hidden][uuid][object] */
  4267. EXTERN_C const IID IID_IRTCEnumWatchers;
  4268. #if defined(__cplusplus) && !defined(CINTERFACE)
  4269. MIDL_INTERFACE("a87d55d7-db74-4ed1-9ca4-77a0e41b413e")
  4270. IRTCEnumWatchers : public IUnknown
  4271. {
  4272. public:
  4273. virtual HRESULT STDMETHODCALLTYPE Next(
  4274. /* [in] */ ULONG celt,
  4275. /* [size_is][out] */ IRTCWatcher **ppElements,
  4276. /* [full][out][in] */ ULONG *pceltFetched) = 0;
  4277. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  4278. virtual HRESULT STDMETHODCALLTYPE Skip(
  4279. /* [in] */ ULONG celt) = 0;
  4280. virtual HRESULT STDMETHODCALLTYPE Clone(
  4281. /* [retval][out] */ IRTCEnumWatchers **ppEnum) = 0;
  4282. };
  4283. #else /* C style interface */
  4284. typedef struct IRTCEnumWatchersVtbl
  4285. {
  4286. BEGIN_INTERFACE
  4287. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4288. IRTCEnumWatchers * This,
  4289. /* [in] */ REFIID riid,
  4290. /* [iid_is][out] */ void **ppvObject);
  4291. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4292. IRTCEnumWatchers * This);
  4293. ULONG ( STDMETHODCALLTYPE *Release )(
  4294. IRTCEnumWatchers * This);
  4295. HRESULT ( STDMETHODCALLTYPE *Next )(
  4296. IRTCEnumWatchers * This,
  4297. /* [in] */ ULONG celt,
  4298. /* [size_is][out] */ IRTCWatcher **ppElements,
  4299. /* [full][out][in] */ ULONG *pceltFetched);
  4300. HRESULT ( STDMETHODCALLTYPE *Reset )(
  4301. IRTCEnumWatchers * This);
  4302. HRESULT ( STDMETHODCALLTYPE *Skip )(
  4303. IRTCEnumWatchers * This,
  4304. /* [in] */ ULONG celt);
  4305. HRESULT ( STDMETHODCALLTYPE *Clone )(
  4306. IRTCEnumWatchers * This,
  4307. /* [retval][out] */ IRTCEnumWatchers **ppEnum);
  4308. END_INTERFACE
  4309. } IRTCEnumWatchersVtbl;
  4310. interface IRTCEnumWatchers
  4311. {
  4312. CONST_VTBL struct IRTCEnumWatchersVtbl *lpVtbl;
  4313. };
  4314. #ifdef COBJMACROS
  4315. #define IRTCEnumWatchers_QueryInterface(This,riid,ppvObject) \
  4316. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4317. #define IRTCEnumWatchers_AddRef(This) \
  4318. (This)->lpVtbl -> AddRef(This)
  4319. #define IRTCEnumWatchers_Release(This) \
  4320. (This)->lpVtbl -> Release(This)
  4321. #define IRTCEnumWatchers_Next(This,celt,ppElements,pceltFetched) \
  4322. (This)->lpVtbl -> Next(This,celt,ppElements,pceltFetched)
  4323. #define IRTCEnumWatchers_Reset(This) \
  4324. (This)->lpVtbl -> Reset(This)
  4325. #define IRTCEnumWatchers_Skip(This,celt) \
  4326. (This)->lpVtbl -> Skip(This,celt)
  4327. #define IRTCEnumWatchers_Clone(This,ppEnum) \
  4328. (This)->lpVtbl -> Clone(This,ppEnum)
  4329. #endif /* COBJMACROS */
  4330. #endif /* C style interface */
  4331. HRESULT STDMETHODCALLTYPE IRTCEnumWatchers_Next_Proxy(
  4332. IRTCEnumWatchers * This,
  4333. /* [in] */ ULONG celt,
  4334. /* [size_is][out] */ IRTCWatcher **ppElements,
  4335. /* [full][out][in] */ ULONG *pceltFetched);
  4336. void __RPC_STUB IRTCEnumWatchers_Next_Stub(
  4337. IRpcStubBuffer *This,
  4338. IRpcChannelBuffer *_pRpcChannelBuffer,
  4339. PRPC_MESSAGE _pRpcMessage,
  4340. DWORD *_pdwStubPhase);
  4341. HRESULT STDMETHODCALLTYPE IRTCEnumWatchers_Reset_Proxy(
  4342. IRTCEnumWatchers * This);
  4343. void __RPC_STUB IRTCEnumWatchers_Reset_Stub(
  4344. IRpcStubBuffer *This,
  4345. IRpcChannelBuffer *_pRpcChannelBuffer,
  4346. PRPC_MESSAGE _pRpcMessage,
  4347. DWORD *_pdwStubPhase);
  4348. HRESULT STDMETHODCALLTYPE IRTCEnumWatchers_Skip_Proxy(
  4349. IRTCEnumWatchers * This,
  4350. /* [in] */ ULONG celt);
  4351. void __RPC_STUB IRTCEnumWatchers_Skip_Stub(
  4352. IRpcStubBuffer *This,
  4353. IRpcChannelBuffer *_pRpcChannelBuffer,
  4354. PRPC_MESSAGE _pRpcMessage,
  4355. DWORD *_pdwStubPhase);
  4356. HRESULT STDMETHODCALLTYPE IRTCEnumWatchers_Clone_Proxy(
  4357. IRTCEnumWatchers * This,
  4358. /* [retval][out] */ IRTCEnumWatchers **ppEnum);
  4359. void __RPC_STUB IRTCEnumWatchers_Clone_Stub(
  4360. IRpcStubBuffer *This,
  4361. IRpcChannelBuffer *_pRpcChannelBuffer,
  4362. PRPC_MESSAGE _pRpcMessage,
  4363. DWORD *_pdwStubPhase);
  4364. #endif /* __IRTCEnumWatchers_INTERFACE_DEFINED__ */
  4365. #ifndef __IRTCPresenceContact_INTERFACE_DEFINED__
  4366. #define __IRTCPresenceContact_INTERFACE_DEFINED__
  4367. /* interface IRTCPresenceContact */
  4368. /* [unique][helpstring][uuid][object] */
  4369. EXTERN_C const IID IID_IRTCPresenceContact;
  4370. #if defined(__cplusplus) && !defined(CINTERFACE)
  4371. MIDL_INTERFACE("8b22f92c-cd90-42db-a733-212205c3e3df")
  4372. IRTCPresenceContact : public IUnknown
  4373. {
  4374. public:
  4375. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PresentityURI(
  4376. /* [retval][out] */ BSTR *pbstrPresentityURI) = 0;
  4377. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_PresentityURI(
  4378. /* [in] */ BSTR bstrPresentityURI) = 0;
  4379. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Name(
  4380. /* [retval][out] */ BSTR *pbstrName) = 0;
  4381. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_Name(
  4382. /* [in] */ BSTR bstrName) = 0;
  4383. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Data(
  4384. /* [retval][out] */ BSTR *pbstrData) = 0;
  4385. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_Data(
  4386. /* [in] */ BSTR bstrData) = 0;
  4387. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Persistent(
  4388. /* [retval][out] */ VARIANT_BOOL *pfPersistent) = 0;
  4389. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_Persistent(
  4390. /* [in] */ VARIANT_BOOL fPersistent) = 0;
  4391. };
  4392. #else /* C style interface */
  4393. typedef struct IRTCPresenceContactVtbl
  4394. {
  4395. BEGIN_INTERFACE
  4396. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4397. IRTCPresenceContact * This,
  4398. /* [in] */ REFIID riid,
  4399. /* [iid_is][out] */ void **ppvObject);
  4400. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4401. IRTCPresenceContact * This);
  4402. ULONG ( STDMETHODCALLTYPE *Release )(
  4403. IRTCPresenceContact * This);
  4404. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PresentityURI )(
  4405. IRTCPresenceContact * This,
  4406. /* [retval][out] */ BSTR *pbstrPresentityURI);
  4407. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PresentityURI )(
  4408. IRTCPresenceContact * This,
  4409. /* [in] */ BSTR bstrPresentityURI);
  4410. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
  4411. IRTCPresenceContact * This,
  4412. /* [retval][out] */ BSTR *pbstrName);
  4413. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )(
  4414. IRTCPresenceContact * This,
  4415. /* [in] */ BSTR bstrName);
  4416. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Data )(
  4417. IRTCPresenceContact * This,
  4418. /* [retval][out] */ BSTR *pbstrData);
  4419. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Data )(
  4420. IRTCPresenceContact * This,
  4421. /* [in] */ BSTR bstrData);
  4422. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Persistent )(
  4423. IRTCPresenceContact * This,
  4424. /* [retval][out] */ VARIANT_BOOL *pfPersistent);
  4425. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Persistent )(
  4426. IRTCPresenceContact * This,
  4427. /* [in] */ VARIANT_BOOL fPersistent);
  4428. END_INTERFACE
  4429. } IRTCPresenceContactVtbl;
  4430. interface IRTCPresenceContact
  4431. {
  4432. CONST_VTBL struct IRTCPresenceContactVtbl *lpVtbl;
  4433. };
  4434. #ifdef COBJMACROS
  4435. #define IRTCPresenceContact_QueryInterface(This,riid,ppvObject) \
  4436. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4437. #define IRTCPresenceContact_AddRef(This) \
  4438. (This)->lpVtbl -> AddRef(This)
  4439. #define IRTCPresenceContact_Release(This) \
  4440. (This)->lpVtbl -> Release(This)
  4441. #define IRTCPresenceContact_get_PresentityURI(This,pbstrPresentityURI) \
  4442. (This)->lpVtbl -> get_PresentityURI(This,pbstrPresentityURI)
  4443. #define IRTCPresenceContact_put_PresentityURI(This,bstrPresentityURI) \
  4444. (This)->lpVtbl -> put_PresentityURI(This,bstrPresentityURI)
  4445. #define IRTCPresenceContact_get_Name(This,pbstrName) \
  4446. (This)->lpVtbl -> get_Name(This,pbstrName)
  4447. #define IRTCPresenceContact_put_Name(This,bstrName) \
  4448. (This)->lpVtbl -> put_Name(This,bstrName)
  4449. #define IRTCPresenceContact_get_Data(This,pbstrData) \
  4450. (This)->lpVtbl -> get_Data(This,pbstrData)
  4451. #define IRTCPresenceContact_put_Data(This,bstrData) \
  4452. (This)->lpVtbl -> put_Data(This,bstrData)
  4453. #define IRTCPresenceContact_get_Persistent(This,pfPersistent) \
  4454. (This)->lpVtbl -> get_Persistent(This,pfPersistent)
  4455. #define IRTCPresenceContact_put_Persistent(This,fPersistent) \
  4456. (This)->lpVtbl -> put_Persistent(This,fPersistent)
  4457. #endif /* COBJMACROS */
  4458. #endif /* C style interface */
  4459. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_get_PresentityURI_Proxy(
  4460. IRTCPresenceContact * This,
  4461. /* [retval][out] */ BSTR *pbstrPresentityURI);
  4462. void __RPC_STUB IRTCPresenceContact_get_PresentityURI_Stub(
  4463. IRpcStubBuffer *This,
  4464. IRpcChannelBuffer *_pRpcChannelBuffer,
  4465. PRPC_MESSAGE _pRpcMessage,
  4466. DWORD *_pdwStubPhase);
  4467. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_put_PresentityURI_Proxy(
  4468. IRTCPresenceContact * This,
  4469. /* [in] */ BSTR bstrPresentityURI);
  4470. void __RPC_STUB IRTCPresenceContact_put_PresentityURI_Stub(
  4471. IRpcStubBuffer *This,
  4472. IRpcChannelBuffer *_pRpcChannelBuffer,
  4473. PRPC_MESSAGE _pRpcMessage,
  4474. DWORD *_pdwStubPhase);
  4475. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_get_Name_Proxy(
  4476. IRTCPresenceContact * This,
  4477. /* [retval][out] */ BSTR *pbstrName);
  4478. void __RPC_STUB IRTCPresenceContact_get_Name_Stub(
  4479. IRpcStubBuffer *This,
  4480. IRpcChannelBuffer *_pRpcChannelBuffer,
  4481. PRPC_MESSAGE _pRpcMessage,
  4482. DWORD *_pdwStubPhase);
  4483. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_put_Name_Proxy(
  4484. IRTCPresenceContact * This,
  4485. /* [in] */ BSTR bstrName);
  4486. void __RPC_STUB IRTCPresenceContact_put_Name_Stub(
  4487. IRpcStubBuffer *This,
  4488. IRpcChannelBuffer *_pRpcChannelBuffer,
  4489. PRPC_MESSAGE _pRpcMessage,
  4490. DWORD *_pdwStubPhase);
  4491. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_get_Data_Proxy(
  4492. IRTCPresenceContact * This,
  4493. /* [retval][out] */ BSTR *pbstrData);
  4494. void __RPC_STUB IRTCPresenceContact_get_Data_Stub(
  4495. IRpcStubBuffer *This,
  4496. IRpcChannelBuffer *_pRpcChannelBuffer,
  4497. PRPC_MESSAGE _pRpcMessage,
  4498. DWORD *_pdwStubPhase);
  4499. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_put_Data_Proxy(
  4500. IRTCPresenceContact * This,
  4501. /* [in] */ BSTR bstrData);
  4502. void __RPC_STUB IRTCPresenceContact_put_Data_Stub(
  4503. IRpcStubBuffer *This,
  4504. IRpcChannelBuffer *_pRpcChannelBuffer,
  4505. PRPC_MESSAGE _pRpcMessage,
  4506. DWORD *_pdwStubPhase);
  4507. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_get_Persistent_Proxy(
  4508. IRTCPresenceContact * This,
  4509. /* [retval][out] */ VARIANT_BOOL *pfPersistent);
  4510. void __RPC_STUB IRTCPresenceContact_get_Persistent_Stub(
  4511. IRpcStubBuffer *This,
  4512. IRpcChannelBuffer *_pRpcChannelBuffer,
  4513. PRPC_MESSAGE _pRpcMessage,
  4514. DWORD *_pdwStubPhase);
  4515. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCPresenceContact_put_Persistent_Proxy(
  4516. IRTCPresenceContact * This,
  4517. /* [in] */ VARIANT_BOOL fPersistent);
  4518. void __RPC_STUB IRTCPresenceContact_put_Persistent_Stub(
  4519. IRpcStubBuffer *This,
  4520. IRpcChannelBuffer *_pRpcChannelBuffer,
  4521. PRPC_MESSAGE _pRpcMessage,
  4522. DWORD *_pdwStubPhase);
  4523. #endif /* __IRTCPresenceContact_INTERFACE_DEFINED__ */
  4524. #ifndef __IRTCBuddy_INTERFACE_DEFINED__
  4525. #define __IRTCBuddy_INTERFACE_DEFINED__
  4526. /* interface IRTCBuddy */
  4527. /* [unique][helpstring][uuid][object] */
  4528. EXTERN_C const IID IID_IRTCBuddy;
  4529. #if defined(__cplusplus) && !defined(CINTERFACE)
  4530. MIDL_INTERFACE("fcb136c8-7b90-4e0c-befe-56edf0ba6f1c")
  4531. IRTCBuddy : public IRTCPresenceContact
  4532. {
  4533. public:
  4534. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Status(
  4535. /* [retval][out] */ RTC_PRESENCE_STATUS *penStatus) = 0;
  4536. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Notes(
  4537. /* [retval][out] */ BSTR *pbstrNotes) = 0;
  4538. };
  4539. #else /* C style interface */
  4540. typedef struct IRTCBuddyVtbl
  4541. {
  4542. BEGIN_INTERFACE
  4543. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4544. IRTCBuddy * This,
  4545. /* [in] */ REFIID riid,
  4546. /* [iid_is][out] */ void **ppvObject);
  4547. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4548. IRTCBuddy * This);
  4549. ULONG ( STDMETHODCALLTYPE *Release )(
  4550. IRTCBuddy * This);
  4551. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PresentityURI )(
  4552. IRTCBuddy * This,
  4553. /* [retval][out] */ BSTR *pbstrPresentityURI);
  4554. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PresentityURI )(
  4555. IRTCBuddy * This,
  4556. /* [in] */ BSTR bstrPresentityURI);
  4557. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
  4558. IRTCBuddy * This,
  4559. /* [retval][out] */ BSTR *pbstrName);
  4560. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )(
  4561. IRTCBuddy * This,
  4562. /* [in] */ BSTR bstrName);
  4563. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Data )(
  4564. IRTCBuddy * This,
  4565. /* [retval][out] */ BSTR *pbstrData);
  4566. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Data )(
  4567. IRTCBuddy * This,
  4568. /* [in] */ BSTR bstrData);
  4569. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Persistent )(
  4570. IRTCBuddy * This,
  4571. /* [retval][out] */ VARIANT_BOOL *pfPersistent);
  4572. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Persistent )(
  4573. IRTCBuddy * This,
  4574. /* [in] */ VARIANT_BOOL fPersistent);
  4575. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )(
  4576. IRTCBuddy * This,
  4577. /* [retval][out] */ RTC_PRESENCE_STATUS *penStatus);
  4578. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Notes )(
  4579. IRTCBuddy * This,
  4580. /* [retval][out] */ BSTR *pbstrNotes);
  4581. END_INTERFACE
  4582. } IRTCBuddyVtbl;
  4583. interface IRTCBuddy
  4584. {
  4585. CONST_VTBL struct IRTCBuddyVtbl *lpVtbl;
  4586. };
  4587. #ifdef COBJMACROS
  4588. #define IRTCBuddy_QueryInterface(This,riid,ppvObject) \
  4589. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4590. #define IRTCBuddy_AddRef(This) \
  4591. (This)->lpVtbl -> AddRef(This)
  4592. #define IRTCBuddy_Release(This) \
  4593. (This)->lpVtbl -> Release(This)
  4594. #define IRTCBuddy_get_PresentityURI(This,pbstrPresentityURI) \
  4595. (This)->lpVtbl -> get_PresentityURI(This,pbstrPresentityURI)
  4596. #define IRTCBuddy_put_PresentityURI(This,bstrPresentityURI) \
  4597. (This)->lpVtbl -> put_PresentityURI(This,bstrPresentityURI)
  4598. #define IRTCBuddy_get_Name(This,pbstrName) \
  4599. (This)->lpVtbl -> get_Name(This,pbstrName)
  4600. #define IRTCBuddy_put_Name(This,bstrName) \
  4601. (This)->lpVtbl -> put_Name(This,bstrName)
  4602. #define IRTCBuddy_get_Data(This,pbstrData) \
  4603. (This)->lpVtbl -> get_Data(This,pbstrData)
  4604. #define IRTCBuddy_put_Data(This,bstrData) \
  4605. (This)->lpVtbl -> put_Data(This,bstrData)
  4606. #define IRTCBuddy_get_Persistent(This,pfPersistent) \
  4607. (This)->lpVtbl -> get_Persistent(This,pfPersistent)
  4608. #define IRTCBuddy_put_Persistent(This,fPersistent) \
  4609. (This)->lpVtbl -> put_Persistent(This,fPersistent)
  4610. #define IRTCBuddy_get_Status(This,penStatus) \
  4611. (This)->lpVtbl -> get_Status(This,penStatus)
  4612. #define IRTCBuddy_get_Notes(This,pbstrNotes) \
  4613. (This)->lpVtbl -> get_Notes(This,pbstrNotes)
  4614. #endif /* COBJMACROS */
  4615. #endif /* C style interface */
  4616. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCBuddy_get_Status_Proxy(
  4617. IRTCBuddy * This,
  4618. /* [retval][out] */ RTC_PRESENCE_STATUS *penStatus);
  4619. void __RPC_STUB IRTCBuddy_get_Status_Stub(
  4620. IRpcStubBuffer *This,
  4621. IRpcChannelBuffer *_pRpcChannelBuffer,
  4622. PRPC_MESSAGE _pRpcMessage,
  4623. DWORD *_pdwStubPhase);
  4624. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCBuddy_get_Notes_Proxy(
  4625. IRTCBuddy * This,
  4626. /* [retval][out] */ BSTR *pbstrNotes);
  4627. void __RPC_STUB IRTCBuddy_get_Notes_Stub(
  4628. IRpcStubBuffer *This,
  4629. IRpcChannelBuffer *_pRpcChannelBuffer,
  4630. PRPC_MESSAGE _pRpcMessage,
  4631. DWORD *_pdwStubPhase);
  4632. #endif /* __IRTCBuddy_INTERFACE_DEFINED__ */
  4633. #ifndef __IRTCWatcher_INTERFACE_DEFINED__
  4634. #define __IRTCWatcher_INTERFACE_DEFINED__
  4635. /* interface IRTCWatcher */
  4636. /* [unique][helpstring][uuid][object] */
  4637. EXTERN_C const IID IID_IRTCWatcher;
  4638. #if defined(__cplusplus) && !defined(CINTERFACE)
  4639. MIDL_INTERFACE("c7cedad8-346b-4d1b-ac02-a2088df9be4f")
  4640. IRTCWatcher : public IRTCPresenceContact
  4641. {
  4642. public:
  4643. virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_State(
  4644. /* [retval][out] */ RTC_WATCHER_STATE *penState) = 0;
  4645. virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_State(
  4646. /* [in] */ RTC_WATCHER_STATE enState) = 0;
  4647. };
  4648. #else /* C style interface */
  4649. typedef struct IRTCWatcherVtbl
  4650. {
  4651. BEGIN_INTERFACE
  4652. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4653. IRTCWatcher * This,
  4654. /* [in] */ REFIID riid,
  4655. /* [iid_is][out] */ void **ppvObject);
  4656. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4657. IRTCWatcher * This);
  4658. ULONG ( STDMETHODCALLTYPE *Release )(
  4659. IRTCWatcher * This);
  4660. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PresentityURI )(
  4661. IRTCWatcher * This,
  4662. /* [retval][out] */ BSTR *pbstrPresentityURI);
  4663. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PresentityURI )(
  4664. IRTCWatcher * This,
  4665. /* [in] */ BSTR bstrPresentityURI);
  4666. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
  4667. IRTCWatcher * This,
  4668. /* [retval][out] */ BSTR *pbstrName);
  4669. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )(
  4670. IRTCWatcher * This,
  4671. /* [in] */ BSTR bstrName);
  4672. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Data )(
  4673. IRTCWatcher * This,
  4674. /* [retval][out] */ BSTR *pbstrData);
  4675. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Data )(
  4676. IRTCWatcher * This,
  4677. /* [in] */ BSTR bstrData);
  4678. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Persistent )(
  4679. IRTCWatcher * This,
  4680. /* [retval][out] */ VARIANT_BOOL *pfPersistent);
  4681. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Persistent )(
  4682. IRTCWatcher * This,
  4683. /* [in] */ VARIANT_BOOL fPersistent);
  4684. /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )(
  4685. IRTCWatcher * This,
  4686. /* [retval][out] */ RTC_WATCHER_STATE *penState);
  4687. /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_State )(
  4688. IRTCWatcher * This,
  4689. /* [in] */ RTC_WATCHER_STATE enState);
  4690. END_INTERFACE
  4691. } IRTCWatcherVtbl;
  4692. interface IRTCWatcher
  4693. {
  4694. CONST_VTBL struct IRTCWatcherVtbl *lpVtbl;
  4695. };
  4696. #ifdef COBJMACROS
  4697. #define IRTCWatcher_QueryInterface(This,riid,ppvObject) \
  4698. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4699. #define IRTCWatcher_AddRef(This) \
  4700. (This)->lpVtbl -> AddRef(This)
  4701. #define IRTCWatcher_Release(This) \
  4702. (This)->lpVtbl -> Release(This)
  4703. #define IRTCWatcher_get_PresentityURI(This,pbstrPresentityURI) \
  4704. (This)->lpVtbl -> get_PresentityURI(This,pbstrPresentityURI)
  4705. #define IRTCWatcher_put_PresentityURI(This,bstrPresentityURI) \
  4706. (This)->lpVtbl -> put_PresentityURI(This,bstrPresentityURI)
  4707. #define IRTCWatcher_get_Name(This,pbstrName) \
  4708. (This)->lpVtbl -> get_Name(This,pbstrName)
  4709. #define IRTCWatcher_put_Name(This,bstrName) \
  4710. (This)->lpVtbl -> put_Name(This,bstrName)
  4711. #define IRTCWatcher_get_Data(This,pbstrData) \
  4712. (This)->lpVtbl -> get_Data(This,pbstrData)
  4713. #define IRTCWatcher_put_Data(This,bstrData) \
  4714. (This)->lpVtbl -> put_Data(This,bstrData)
  4715. #define IRTCWatcher_get_Persistent(This,pfPersistent) \
  4716. (This)->lpVtbl -> get_Persistent(This,pfPersistent)
  4717. #define IRTCWatcher_put_Persistent(This,fPersistent) \
  4718. (This)->lpVtbl -> put_Persistent(This,fPersistent)
  4719. #define IRTCWatcher_get_State(This,penState) \
  4720. (This)->lpVtbl -> get_State(This,penState)
  4721. #define IRTCWatcher_put_State(This,enState) \
  4722. (This)->lpVtbl -> put_State(This,enState)
  4723. #endif /* COBJMACROS */
  4724. #endif /* C style interface */
  4725. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IRTCWatcher_get_State_Proxy(
  4726. IRTCWatcher * This,
  4727. /* [retval][out] */ RTC_WATCHER_STATE *penState);
  4728. void __RPC_STUB IRTCWatcher_get_State_Stub(
  4729. IRpcStubBuffer *This,
  4730. IRpcChannelBuffer *_pRpcChannelBuffer,
  4731. PRPC_MESSAGE _pRpcMessage,
  4732. DWORD *_pdwStubPhase);
  4733. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE IRTCWatcher_put_State_Proxy(
  4734. IRTCWatcher * This,
  4735. /* [in] */ RTC_WATCHER_STATE enState);
  4736. void __RPC_STUB IRTCWatcher_put_State_Stub(
  4737. IRpcStubBuffer *This,
  4738. IRpcChannelBuffer *_pRpcChannelBuffer,
  4739. PRPC_MESSAGE _pRpcMessage,
  4740. DWORD *_pdwStubPhase);
  4741. #endif /* __IRTCWatcher_INTERFACE_DEFINED__ */
  4742. #ifndef __IRTCEventNotification_INTERFACE_DEFINED__
  4743. #define __IRTCEventNotification_INTERFACE_DEFINED__
  4744. /* interface IRTCEventNotification */
  4745. /* [unique][oleautomation][helpstring][uuid][object] */
  4746. EXTERN_C const IID IID_IRTCEventNotification;
  4747. #if defined(__cplusplus) && !defined(CINTERFACE)
  4748. MIDL_INTERFACE("13fa24c7-5748-4b21-91f5-7397609ce747")
  4749. IRTCEventNotification : public IUnknown
  4750. {
  4751. public:
  4752. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Event(
  4753. /* [in] */ RTC_EVENT RTCEvent,
  4754. /* [in] */ IDispatch *pEvent) = 0;
  4755. };
  4756. #else /* C style interface */
  4757. typedef struct IRTCEventNotificationVtbl
  4758. {
  4759. BEGIN_INTERFACE
  4760. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4761. IRTCEventNotification * This,
  4762. /* [in] */ REFIID riid,
  4763. /* [iid_is][out] */ void **ppvObject);
  4764. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4765. IRTCEventNotification * This);
  4766. ULONG ( STDMETHODCALLTYPE *Release )(
  4767. IRTCEventNotification * This);
  4768. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Event )(
  4769. IRTCEventNotification * This,
  4770. /* [in] */ RTC_EVENT RTCEvent,
  4771. /* [in] */ IDispatch *pEvent);
  4772. END_INTERFACE
  4773. } IRTCEventNotificationVtbl;
  4774. interface IRTCEventNotification
  4775. {
  4776. CONST_VTBL struct IRTCEventNotificationVtbl *lpVtbl;
  4777. };
  4778. #ifdef COBJMACROS
  4779. #define IRTCEventNotification_QueryInterface(This,riid,ppvObject) \
  4780. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4781. #define IRTCEventNotification_AddRef(This) \
  4782. (This)->lpVtbl -> AddRef(This)
  4783. #define IRTCEventNotification_Release(This) \
  4784. (This)->lpVtbl -> Release(This)
  4785. #define IRTCEventNotification_Event(This,RTCEvent,pEvent) \
  4786. (This)->lpVtbl -> Event(This,RTCEvent,pEvent)
  4787. #endif /* COBJMACROS */
  4788. #endif /* C style interface */
  4789. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRTCEventNotification_Event_Proxy(
  4790. IRTCEventNotification * This,
  4791. /* [in] */ RTC_EVENT RTCEvent,
  4792. /* [in] */ IDispatch *pEvent);
  4793. void __RPC_STUB IRTCEventNotification_Event_Stub(
  4794. IRpcStubBuffer *This,
  4795. IRpcChannelBuffer *_pRpcChannelBuffer,
  4796. PRPC_MESSAGE _pRpcMessage,
  4797. DWORD *_pdwStubPhase);
  4798. #endif /* __IRTCEventNotification_INTERFACE_DEFINED__ */
  4799. #ifndef __IRTCPortManager_INTERFACE_DEFINED__
  4800. #define __IRTCPortManager_INTERFACE_DEFINED__
  4801. /* interface IRTCPortManager */
  4802. /* [unique][oleautomation][helpstring][uuid][object] */
  4803. EXTERN_C const IID IID_IRTCPortManager;
  4804. #if defined(__cplusplus) && !defined(CINTERFACE)
  4805. MIDL_INTERFACE("DA77C14B-6208-43ca-8DDF-5B60A0A69FAC")
  4806. IRTCPortManager : public IUnknown
  4807. {
  4808. public:
  4809. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMapping(
  4810. /* [in] */ BSTR bstrRemoteAddress,
  4811. /* [in] */ RTC_PORT_TYPE enPortType,
  4812. /* [out][in] */ BSTR *pbstrInternalLocalAddress,
  4813. /* [out][in] */ long *plInternalLocalPort,
  4814. /* [out][in] */ BSTR *pbstrExternalLocalAddress,
  4815. /* [out][in] */ long *plExternalLocalPort) = 0;
  4816. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateRemoteAddress(
  4817. /* [in] */ BSTR bstrRemoteAddress,
  4818. /* [in] */ BSTR bstrInternalLocalAddress,
  4819. /* [in] */ long lInternalLocalPort,
  4820. /* [in] */ BSTR bstrExternalLocalAddress,
  4821. /* [in] */ long lExternalLocalPort) = 0;
  4822. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReleaseMapping(
  4823. /* [in] */ BSTR bstrInternalLocalAddress,
  4824. /* [in] */ long lInternalLocalPort,
  4825. /* [in] */ BSTR bstrExternalLocalAddress,
  4826. /* [in] */ long lExternalLocalAddress) = 0;
  4827. };
  4828. #else /* C style interface */
  4829. typedef struct IRTCPortManagerVtbl
  4830. {
  4831. BEGIN_INTERFACE
  4832. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4833. IRTCPortManager * This,
  4834. /* [in] */ REFIID riid,
  4835. /* [iid_is][out] */ void **ppvObject);
  4836. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4837. IRTCPortManager * This);
  4838. ULONG ( STDMETHODCALLTYPE *Release )(
  4839. IRTCPortManager * This);
  4840. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMapping )(
  4841. IRTCPortManager * This,
  4842. /* [in] */ BSTR bstrRemoteAddress,
  4843. /* [in] */ RTC_PORT_TYPE enPortType,
  4844. /* [out][in] */ BSTR *pbstrInternalLocalAddress,
  4845. /* [out][in] */ long *plInternalLocalPort,
  4846. /* [out][in] */ BSTR *pbstrExternalLocalAddress,
  4847. /* [out][in] */ long *plExternalLocalPort);
  4848. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateRemoteAddress )(
  4849. IRTCPortManager * This,
  4850. /* [in] */ BSTR bstrRemoteAddress,
  4851. /* [in] */ BSTR bstrInternalLocalAddress,
  4852. /* [in] */ long lInternalLocalPort,
  4853. /* [in] */ BSTR bstrExternalLocalAddress,
  4854. /* [in] */ long lExternalLocalPort);
  4855. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReleaseMapping )(
  4856. IRTCPortManager * This,
  4857. /* [in] */ BSTR bstrInternalLocalAddress,
  4858. /* [in] */ long lInternalLocalPort,
  4859. /* [in] */ BSTR bstrExternalLocalAddress,
  4860. /* [in] */ long lExternalLocalAddress);
  4861. END_INTERFACE
  4862. } IRTCPortManagerVtbl;
  4863. interface IRTCPortManager
  4864. {
  4865. CONST_VTBL struct IRTCPortManagerVtbl *lpVtbl;
  4866. };
  4867. #ifdef COBJMACROS
  4868. #define IRTCPortManager_QueryInterface(This,riid,ppvObject) \
  4869. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4870. #define IRTCPortManager_AddRef(This) \
  4871. (This)->lpVtbl -> AddRef(This)
  4872. #define IRTCPortManager_Release(This) \
  4873. (This)->lpVtbl -> Release(This)
  4874. #define IRTCPortManager_GetMapping(This,bstrRemoteAddress,enPortType,pbstrInternalLocalAddress,plInternalLocalPort,pbstrExternalLocalAddress,plExternalLocalPort) \
  4875. (This)->lpVtbl -> GetMapping(This,bstrRemoteAddress,enPortType,pbstrInternalLocalAddress,plInternalLocalPort,pbstrExternalLocalAddress,plExternalLocalPort)
  4876. #define IRTCPortManager_UpdateRemoteAddress(This,bstrRemoteAddress,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalPort) \
  4877. (This)->lpVtbl -> UpdateRemoteAddress(This,bstrRemoteAddress,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalPort)
  4878. #define IRTCPortManager_ReleaseMapping(This,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalAddress) \
  4879. (This)->lpVtbl -> ReleaseMapping(This,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalAddress)
  4880. #endif /* COBJMACROS */
  4881. #endif /* C style interface */
  4882. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRTCPortManager_GetMapping_Proxy(
  4883. IRTCPortManager * This,
  4884. /* [in] */ BSTR bstrRemoteAddress,
  4885. /* [in] */ RTC_PORT_TYPE enPortType,
  4886. /* [out][in] */ BSTR *pbstrInternalLocalAddress,
  4887. /* [out][in] */ long *plInternalLocalPort,
  4888. /* [out][in] */ BSTR *pbstrExternalLocalAddress,
  4889. /* [out][in] */ long *plExternalLocalPort);
  4890. void __RPC_STUB IRTCPortManager_GetMapping_Stub(
  4891. IRpcStubBuffer *This,
  4892. IRpcChannelBuffer *_pRpcChannelBuffer,
  4893. PRPC_MESSAGE _pRpcMessage,
  4894. DWORD *_pdwStubPhase);
  4895. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRTCPortManager_UpdateRemoteAddress_Proxy(
  4896. IRTCPortManager * This,
  4897. /* [in] */ BSTR bstrRemoteAddress,
  4898. /* [in] */ BSTR bstrInternalLocalAddress,
  4899. /* [in] */ long lInternalLocalPort,
  4900. /* [in] */ BSTR bstrExternalLocalAddress,
  4901. /* [in] */ long lExternalLocalPort);
  4902. void __RPC_STUB IRTCPortManager_UpdateRemoteAddress_Stub(
  4903. IRpcStubBuffer *This,
  4904. IRpcChannelBuffer *_pRpcChannelBuffer,
  4905. PRPC_MESSAGE _pRpcMessage,
  4906. DWORD *_pdwStubPhase);
  4907. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRTCPortManager_ReleaseMapping_Proxy(
  4908. IRTCPortManager * This,
  4909. /* [in] */ BSTR bstrInternalLocalAddress,
  4910. /* [in] */ long lInternalLocalPort,
  4911. /* [in] */ BSTR bstrExternalLocalAddress,
  4912. /* [in] */ long lExternalLocalAddress);
  4913. void __RPC_STUB IRTCPortManager_ReleaseMapping_Stub(
  4914. IRpcStubBuffer *This,
  4915. IRpcChannelBuffer *_pRpcChannelBuffer,
  4916. PRPC_MESSAGE _pRpcMessage,
  4917. DWORD *_pdwStubPhase);
  4918. #endif /* __IRTCPortManager_INTERFACE_DEFINED__ */
  4919. #ifndef __IRTCSessionPortManagement_INTERFACE_DEFINED__
  4920. #define __IRTCSessionPortManagement_INTERFACE_DEFINED__
  4921. /* interface IRTCSessionPortManagement */
  4922. /* [unique][helpstring][uuid][object] */
  4923. EXTERN_C const IID IID_IRTCSessionPortManagement;
  4924. #if defined(__cplusplus) && !defined(CINTERFACE)
  4925. MIDL_INTERFACE("a072f1d6-0286-4e1f-85f2-17a2948456ec")
  4926. IRTCSessionPortManagement : public IUnknown
  4927. {
  4928. public:
  4929. virtual HRESULT STDMETHODCALLTYPE SetPortManager(
  4930. /* [in] */ IRTCPortManager *pPortManager) = 0;
  4931. };
  4932. #else /* C style interface */
  4933. typedef struct IRTCSessionPortManagementVtbl
  4934. {
  4935. BEGIN_INTERFACE
  4936. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4937. IRTCSessionPortManagement * This,
  4938. /* [in] */ REFIID riid,
  4939. /* [iid_is][out] */ void **ppvObject);
  4940. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4941. IRTCSessionPortManagement * This);
  4942. ULONG ( STDMETHODCALLTYPE *Release )(
  4943. IRTCSessionPortManagement * This);
  4944. HRESULT ( STDMETHODCALLTYPE *SetPortManager )(
  4945. IRTCSessionPortManagement * This,
  4946. /* [in] */ IRTCPortManager *pPortManager);
  4947. END_INTERFACE
  4948. } IRTCSessionPortManagementVtbl;
  4949. interface IRTCSessionPortManagement
  4950. {
  4951. CONST_VTBL struct IRTCSessionPortManagementVtbl *lpVtbl;
  4952. };
  4953. #ifdef COBJMACROS
  4954. #define IRTCSessionPortManagement_QueryInterface(This,riid,ppvObject) \
  4955. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4956. #define IRTCSessionPortManagement_AddRef(This) \
  4957. (This)->lpVtbl -> AddRef(This)
  4958. #define IRTCSessionPortManagement_Release(This) \
  4959. (This)->lpVtbl -> Release(This)
  4960. #define IRTCSessionPortManagement_SetPortManager(This,pPortManager) \
  4961. (This)->lpVtbl -> SetPortManager(This,pPortManager)
  4962. #endif /* COBJMACROS */
  4963. #endif /* C style interface */
  4964. HRESULT STDMETHODCALLTYPE IRTCSessionPortManagement_SetPortManager_Proxy(
  4965. IRTCSessionPortManagement * This,
  4966. /* [in] */ IRTCPortManager *pPortManager);
  4967. void __RPC_STUB IRTCSessionPortManagement_SetPortManager_Stub(
  4968. IRpcStubBuffer *This,
  4969. IRpcChannelBuffer *_pRpcChannelBuffer,
  4970. PRPC_MESSAGE _pRpcMessage,
  4971. DWORD *_pdwStubPhase);
  4972. #endif /* __IRTCSessionPortManagement_INTERFACE_DEFINED__ */
  4973. #ifndef __RTCCORELib_LIBRARY_DEFINED__
  4974. #define __RTCCORELib_LIBRARY_DEFINED__
  4975. /* library RTCCORELib */
  4976. /* [helpstring][version][uuid] */
  4977. EXTERN_C const IID LIBID_RTCCORELib;
  4978. #ifndef __IRTCDispatchEventNotification_DISPINTERFACE_DEFINED__
  4979. #define __IRTCDispatchEventNotification_DISPINTERFACE_DEFINED__
  4980. /* dispinterface IRTCDispatchEventNotification */
  4981. /* [helpstring][uuid] */
  4982. EXTERN_C const IID DIID_IRTCDispatchEventNotification;
  4983. #if defined(__cplusplus) && !defined(CINTERFACE)
  4984. MIDL_INTERFACE("176ddfbe-fec0-4d55-bc87-84cff1ef7f91")
  4985. IRTCDispatchEventNotification : public IDispatch
  4986. {
  4987. };
  4988. #else /* C style interface */
  4989. typedef struct IRTCDispatchEventNotificationVtbl
  4990. {
  4991. BEGIN_INTERFACE
  4992. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4993. IRTCDispatchEventNotification * This,
  4994. /* [in] */ REFIID riid,
  4995. /* [iid_is][out] */ void **ppvObject);
  4996. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4997. IRTCDispatchEventNotification * This);
  4998. ULONG ( STDMETHODCALLTYPE *Release )(
  4999. IRTCDispatchEventNotification * This);
  5000. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  5001. IRTCDispatchEventNotification * This,
  5002. /* [out] */ UINT *pctinfo);
  5003. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  5004. IRTCDispatchEventNotification * This,
  5005. /* [in] */ UINT iTInfo,
  5006. /* [in] */ LCID lcid,
  5007. /* [out] */ ITypeInfo **ppTInfo);
  5008. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  5009. IRTCDispatchEventNotification * This,
  5010. /* [in] */ REFIID riid,
  5011. /* [size_is][in] */ LPOLESTR *rgszNames,
  5012. /* [in] */ UINT cNames,
  5013. /* [in] */ LCID lcid,
  5014. /* [size_is][out] */ DISPID *rgDispId);
  5015. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  5016. IRTCDispatchEventNotification * This,
  5017. /* [in] */ DISPID dispIdMember,
  5018. /* [in] */ REFIID riid,
  5019. /* [in] */ LCID lcid,
  5020. /* [in] */ WORD wFlags,
  5021. /* [out][in] */ DISPPARAMS *pDispParams,
  5022. /* [out] */ VARIANT *pVarResult,
  5023. /* [out] */ EXCEPINFO *pExcepInfo,
  5024. /* [out] */ UINT *puArgErr);
  5025. END_INTERFACE
  5026. } IRTCDispatchEventNotificationVtbl;
  5027. interface IRTCDispatchEventNotification
  5028. {
  5029. CONST_VTBL struct IRTCDispatchEventNotificationVtbl *lpVtbl;
  5030. };
  5031. #ifdef COBJMACROS
  5032. #define IRTCDispatchEventNotification_QueryInterface(This,riid,ppvObject) \
  5033. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5034. #define IRTCDispatchEventNotification_AddRef(This) \
  5035. (This)->lpVtbl -> AddRef(This)
  5036. #define IRTCDispatchEventNotification_Release(This) \
  5037. (This)->lpVtbl -> Release(This)
  5038. #define IRTCDispatchEventNotification_GetTypeInfoCount(This,pctinfo) \
  5039. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  5040. #define IRTCDispatchEventNotification_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  5041. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  5042. #define IRTCDispatchEventNotification_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  5043. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  5044. #define IRTCDispatchEventNotification_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  5045. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  5046. #endif /* COBJMACROS */
  5047. #endif /* C style interface */
  5048. #endif /* __IRTCDispatchEventNotification_DISPINTERFACE_DEFINED__ */
  5049. EXTERN_C const CLSID CLSID_RTCClient;
  5050. #ifdef __cplusplus
  5051. class DECLSPEC_UUID("7a42ea29-a2b7-40c4-b091-f6f024aa89be")
  5052. RTCClient;
  5053. #endif
  5054. #endif /* __RTCCORELib_LIBRARY_DEFINED__ */
  5055. /* Additional Prototypes for ALL interfaces */
  5056. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  5057. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  5058. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  5059. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  5060. unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
  5061. unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
  5062. unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
  5063. void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
  5064. /* end of Additional Prototypes */
  5065. #ifdef __cplusplus
  5066. }
  5067. #endif
  5068. #endif