Tapi3if.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:710k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for tapi3if.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext, robust
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  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 __tapi3if_h__
  27. #define __tapi3if_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */ 
  32. #ifndef __ITTAPI_FWD_DEFINED__
  33. #define __ITTAPI_FWD_DEFINED__
  34. typedef interface ITTAPI ITTAPI;
  35. #endif  /* __ITTAPI_FWD_DEFINED__ */
  36. #ifndef __ITTAPI2_FWD_DEFINED__
  37. #define __ITTAPI2_FWD_DEFINED__
  38. typedef interface ITTAPI2 ITTAPI2;
  39. #endif  /* __ITTAPI2_FWD_DEFINED__ */
  40. #ifndef __ITMediaSupport_FWD_DEFINED__
  41. #define __ITMediaSupport_FWD_DEFINED__
  42. typedef interface ITMediaSupport ITMediaSupport;
  43. #endif  /* __ITMediaSupport_FWD_DEFINED__ */
  44. #ifndef __ITPluggableTerminalClassInfo_FWD_DEFINED__
  45. #define __ITPluggableTerminalClassInfo_FWD_DEFINED__
  46. typedef interface ITPluggableTerminalClassInfo ITPluggableTerminalClassInfo;
  47. #endif  /* __ITPluggableTerminalClassInfo_FWD_DEFINED__ */
  48. #ifndef __ITPluggableTerminalSuperclassInfo_FWD_DEFINED__
  49. #define __ITPluggableTerminalSuperclassInfo_FWD_DEFINED__
  50. typedef interface ITPluggableTerminalSuperclassInfo ITPluggableTerminalSuperclassInfo;
  51. #endif  /* __ITPluggableTerminalSuperclassInfo_FWD_DEFINED__ */
  52. #ifndef __ITTerminalSupport_FWD_DEFINED__
  53. #define __ITTerminalSupport_FWD_DEFINED__
  54. typedef interface ITTerminalSupport ITTerminalSupport;
  55. #endif  /* __ITTerminalSupport_FWD_DEFINED__ */
  56. #ifndef __ITTerminalSupport2_FWD_DEFINED__
  57. #define __ITTerminalSupport2_FWD_DEFINED__
  58. typedef interface ITTerminalSupport2 ITTerminalSupport2;
  59. #endif  /* __ITTerminalSupport2_FWD_DEFINED__ */
  60. #ifndef __ITAddress_FWD_DEFINED__
  61. #define __ITAddress_FWD_DEFINED__
  62. typedef interface ITAddress ITAddress;
  63. #endif  /* __ITAddress_FWD_DEFINED__ */
  64. #ifndef __ITAddress2_FWD_DEFINED__
  65. #define __ITAddress2_FWD_DEFINED__
  66. typedef interface ITAddress2 ITAddress2;
  67. #endif  /* __ITAddress2_FWD_DEFINED__ */
  68. #ifndef __ITAddressCapabilities_FWD_DEFINED__
  69. #define __ITAddressCapabilities_FWD_DEFINED__
  70. typedef interface ITAddressCapabilities ITAddressCapabilities;
  71. #endif  /* __ITAddressCapabilities_FWD_DEFINED__ */
  72. #ifndef __ITPhone_FWD_DEFINED__
  73. #define __ITPhone_FWD_DEFINED__
  74. typedef interface ITPhone ITPhone;
  75. #endif  /* __ITPhone_FWD_DEFINED__ */
  76. #ifndef __ITAutomatedPhoneControl_FWD_DEFINED__
  77. #define __ITAutomatedPhoneControl_FWD_DEFINED__
  78. typedef interface ITAutomatedPhoneControl ITAutomatedPhoneControl;
  79. #endif  /* __ITAutomatedPhoneControl_FWD_DEFINED__ */
  80. #ifndef __ITBasicCallControl_FWD_DEFINED__
  81. #define __ITBasicCallControl_FWD_DEFINED__
  82. typedef interface ITBasicCallControl ITBasicCallControl;
  83. #endif  /* __ITBasicCallControl_FWD_DEFINED__ */
  84. #ifndef __ITCallInfo_FWD_DEFINED__
  85. #define __ITCallInfo_FWD_DEFINED__
  86. typedef interface ITCallInfo ITCallInfo;
  87. #endif  /* __ITCallInfo_FWD_DEFINED__ */
  88. #ifndef __ITCallInfo2_FWD_DEFINED__
  89. #define __ITCallInfo2_FWD_DEFINED__
  90. typedef interface ITCallInfo2 ITCallInfo2;
  91. #endif  /* __ITCallInfo2_FWD_DEFINED__ */
  92. #ifndef __ITTerminal_FWD_DEFINED__
  93. #define __ITTerminal_FWD_DEFINED__
  94. typedef interface ITTerminal ITTerminal;
  95. #endif  /* __ITTerminal_FWD_DEFINED__ */
  96. #ifndef __ITMultiTrackTerminal_FWD_DEFINED__
  97. #define __ITMultiTrackTerminal_FWD_DEFINED__
  98. typedef interface ITMultiTrackTerminal ITMultiTrackTerminal;
  99. #endif  /* __ITMultiTrackTerminal_FWD_DEFINED__ */
  100. #ifndef __ITFileTrack_FWD_DEFINED__
  101. #define __ITFileTrack_FWD_DEFINED__
  102. typedef interface ITFileTrack ITFileTrack;
  103. #endif  /* __ITFileTrack_FWD_DEFINED__ */
  104. #ifndef __ITMediaPlayback_FWD_DEFINED__
  105. #define __ITMediaPlayback_FWD_DEFINED__
  106. typedef interface ITMediaPlayback ITMediaPlayback;
  107. #endif  /* __ITMediaPlayback_FWD_DEFINED__ */
  108. #ifndef __ITMediaRecord_FWD_DEFINED__
  109. #define __ITMediaRecord_FWD_DEFINED__
  110. typedef interface ITMediaRecord ITMediaRecord;
  111. #endif  /* __ITMediaRecord_FWD_DEFINED__ */
  112. #ifndef __ITMediaControl_FWD_DEFINED__
  113. #define __ITMediaControl_FWD_DEFINED__
  114. typedef interface ITMediaControl ITMediaControl;
  115. #endif  /* __ITMediaControl_FWD_DEFINED__ */
  116. #ifndef __ITBasicAudioTerminal_FWD_DEFINED__
  117. #define __ITBasicAudioTerminal_FWD_DEFINED__
  118. typedef interface ITBasicAudioTerminal ITBasicAudioTerminal;
  119. #endif  /* __ITBasicAudioTerminal_FWD_DEFINED__ */
  120. #ifndef __ITStaticAudioTerminal_FWD_DEFINED__
  121. #define __ITStaticAudioTerminal_FWD_DEFINED__
  122. typedef interface ITStaticAudioTerminal ITStaticAudioTerminal;
  123. #endif  /* __ITStaticAudioTerminal_FWD_DEFINED__ */
  124. #ifndef __ITCallHub_FWD_DEFINED__
  125. #define __ITCallHub_FWD_DEFINED__
  126. typedef interface ITCallHub ITCallHub;
  127. #endif  /* __ITCallHub_FWD_DEFINED__ */
  128. #ifndef __ITLegacyAddressMediaControl_FWD_DEFINED__
  129. #define __ITLegacyAddressMediaControl_FWD_DEFINED__
  130. typedef interface ITLegacyAddressMediaControl ITLegacyAddressMediaControl;
  131. #endif  /* __ITLegacyAddressMediaControl_FWD_DEFINED__ */
  132. #ifndef __ITPrivateEvent_FWD_DEFINED__
  133. #define __ITPrivateEvent_FWD_DEFINED__
  134. typedef interface ITPrivateEvent ITPrivateEvent;
  135. #endif  /* __ITPrivateEvent_FWD_DEFINED__ */
  136. #ifndef __ITLegacyAddressMediaControl2_FWD_DEFINED__
  137. #define __ITLegacyAddressMediaControl2_FWD_DEFINED__
  138. typedef interface ITLegacyAddressMediaControl2 ITLegacyAddressMediaControl2;
  139. #endif  /* __ITLegacyAddressMediaControl2_FWD_DEFINED__ */
  140. #ifndef __ITLegacyCallMediaControl_FWD_DEFINED__
  141. #define __ITLegacyCallMediaControl_FWD_DEFINED__
  142. typedef interface ITLegacyCallMediaControl ITLegacyCallMediaControl;
  143. #endif  /* __ITLegacyCallMediaControl_FWD_DEFINED__ */
  144. #ifndef __ITLegacyCallMediaControl2_FWD_DEFINED__
  145. #define __ITLegacyCallMediaControl2_FWD_DEFINED__
  146. typedef interface ITLegacyCallMediaControl2 ITLegacyCallMediaControl2;
  147. #endif  /* __ITLegacyCallMediaControl2_FWD_DEFINED__ */
  148. #ifndef __ITDetectTone_FWD_DEFINED__
  149. #define __ITDetectTone_FWD_DEFINED__
  150. typedef interface ITDetectTone ITDetectTone;
  151. #endif  /* __ITDetectTone_FWD_DEFINED__ */
  152. #ifndef __ITCustomTone_FWD_DEFINED__
  153. #define __ITCustomTone_FWD_DEFINED__
  154. typedef interface ITCustomTone ITCustomTone;
  155. #endif  /* __ITCustomTone_FWD_DEFINED__ */
  156. #ifndef __IEnumPhone_FWD_DEFINED__
  157. #define __IEnumPhone_FWD_DEFINED__
  158. typedef interface IEnumPhone IEnumPhone;
  159. #endif  /* __IEnumPhone_FWD_DEFINED__ */
  160. #ifndef __IEnumTerminal_FWD_DEFINED__
  161. #define __IEnumTerminal_FWD_DEFINED__
  162. typedef interface IEnumTerminal IEnumTerminal;
  163. #endif  /* __IEnumTerminal_FWD_DEFINED__ */
  164. #ifndef __IEnumTerminalClass_FWD_DEFINED__
  165. #define __IEnumTerminalClass_FWD_DEFINED__
  166. typedef interface IEnumTerminalClass IEnumTerminalClass;
  167. #endif  /* __IEnumTerminalClass_FWD_DEFINED__ */
  168. #ifndef __IEnumCall_FWD_DEFINED__
  169. #define __IEnumCall_FWD_DEFINED__
  170. typedef interface IEnumCall IEnumCall;
  171. #endif  /* __IEnumCall_FWD_DEFINED__ */
  172. #ifndef __IEnumAddress_FWD_DEFINED__
  173. #define __IEnumAddress_FWD_DEFINED__
  174. typedef interface IEnumAddress IEnumAddress;
  175. #endif  /* __IEnumAddress_FWD_DEFINED__ */
  176. #ifndef __IEnumCallHub_FWD_DEFINED__
  177. #define __IEnumCallHub_FWD_DEFINED__
  178. typedef interface IEnumCallHub IEnumCallHub;
  179. #endif  /* __IEnumCallHub_FWD_DEFINED__ */
  180. #ifndef __IEnumBstr_FWD_DEFINED__
  181. #define __IEnumBstr_FWD_DEFINED__
  182. typedef interface IEnumBstr IEnumBstr;
  183. #endif  /* __IEnumBstr_FWD_DEFINED__ */
  184. #ifndef __IEnumPluggableTerminalClassInfo_FWD_DEFINED__
  185. #define __IEnumPluggableTerminalClassInfo_FWD_DEFINED__
  186. typedef interface IEnumPluggableTerminalClassInfo IEnumPluggableTerminalClassInfo;
  187. #endif  /* __IEnumPluggableTerminalClassInfo_FWD_DEFINED__ */
  188. #ifndef __IEnumPluggableSuperclassInfo_FWD_DEFINED__
  189. #define __IEnumPluggableSuperclassInfo_FWD_DEFINED__
  190. typedef interface IEnumPluggableSuperclassInfo IEnumPluggableSuperclassInfo;
  191. #endif  /* __IEnumPluggableSuperclassInfo_FWD_DEFINED__ */
  192. #ifndef __ITPhoneEvent_FWD_DEFINED__
  193. #define __ITPhoneEvent_FWD_DEFINED__
  194. typedef interface ITPhoneEvent ITPhoneEvent;
  195. #endif  /* __ITPhoneEvent_FWD_DEFINED__ */
  196. #ifndef __ITCallStateEvent_FWD_DEFINED__
  197. #define __ITCallStateEvent_FWD_DEFINED__
  198. typedef interface ITCallStateEvent ITCallStateEvent;
  199. #endif  /* __ITCallStateEvent_FWD_DEFINED__ */
  200. #ifndef __ITPhoneDeviceSpecificEvent_FWD_DEFINED__
  201. #define __ITPhoneDeviceSpecificEvent_FWD_DEFINED__
  202. typedef interface ITPhoneDeviceSpecificEvent ITPhoneDeviceSpecificEvent;
  203. #endif  /* __ITPhoneDeviceSpecificEvent_FWD_DEFINED__ */
  204. #ifndef __ITCallMediaEvent_FWD_DEFINED__
  205. #define __ITCallMediaEvent_FWD_DEFINED__
  206. typedef interface ITCallMediaEvent ITCallMediaEvent;
  207. #endif  /* __ITCallMediaEvent_FWD_DEFINED__ */
  208. #ifndef __ITDigitDetectionEvent_FWD_DEFINED__
  209. #define __ITDigitDetectionEvent_FWD_DEFINED__
  210. typedef interface ITDigitDetectionEvent ITDigitDetectionEvent;
  211. #endif  /* __ITDigitDetectionEvent_FWD_DEFINED__ */
  212. #ifndef __ITDigitGenerationEvent_FWD_DEFINED__
  213. #define __ITDigitGenerationEvent_FWD_DEFINED__
  214. typedef interface ITDigitGenerationEvent ITDigitGenerationEvent;
  215. #endif  /* __ITDigitGenerationEvent_FWD_DEFINED__ */
  216. #ifndef __ITDigitsGatheredEvent_FWD_DEFINED__
  217. #define __ITDigitsGatheredEvent_FWD_DEFINED__
  218. typedef interface ITDigitsGatheredEvent ITDigitsGatheredEvent;
  219. #endif  /* __ITDigitsGatheredEvent_FWD_DEFINED__ */
  220. #ifndef __ITToneDetectionEvent_FWD_DEFINED__
  221. #define __ITToneDetectionEvent_FWD_DEFINED__
  222. typedef interface ITToneDetectionEvent ITToneDetectionEvent;
  223. #endif  /* __ITToneDetectionEvent_FWD_DEFINED__ */
  224. #ifndef __ITTAPIObjectEvent_FWD_DEFINED__
  225. #define __ITTAPIObjectEvent_FWD_DEFINED__
  226. typedef interface ITTAPIObjectEvent ITTAPIObjectEvent;
  227. #endif  /* __ITTAPIObjectEvent_FWD_DEFINED__ */
  228. #ifndef __ITTAPIObjectEvent2_FWD_DEFINED__
  229. #define __ITTAPIObjectEvent2_FWD_DEFINED__
  230. typedef interface ITTAPIObjectEvent2 ITTAPIObjectEvent2;
  231. #endif  /* __ITTAPIObjectEvent2_FWD_DEFINED__ */
  232. #ifndef __ITTAPIEventNotification_FWD_DEFINED__
  233. #define __ITTAPIEventNotification_FWD_DEFINED__
  234. typedef interface ITTAPIEventNotification ITTAPIEventNotification;
  235. #endif  /* __ITTAPIEventNotification_FWD_DEFINED__ */
  236. #ifndef __ITCallHubEvent_FWD_DEFINED__
  237. #define __ITCallHubEvent_FWD_DEFINED__
  238. typedef interface ITCallHubEvent ITCallHubEvent;
  239. #endif  /* __ITCallHubEvent_FWD_DEFINED__ */
  240. #ifndef __ITAddressEvent_FWD_DEFINED__
  241. #define __ITAddressEvent_FWD_DEFINED__
  242. typedef interface ITAddressEvent ITAddressEvent;
  243. #endif  /* __ITAddressEvent_FWD_DEFINED__ */
  244. #ifndef __ITAddressDeviceSpecificEvent_FWD_DEFINED__
  245. #define __ITAddressDeviceSpecificEvent_FWD_DEFINED__
  246. typedef interface ITAddressDeviceSpecificEvent ITAddressDeviceSpecificEvent;
  247. #endif  /* __ITAddressDeviceSpecificEvent_FWD_DEFINED__ */
  248. #ifndef __ITFileTerminalEvent_FWD_DEFINED__
  249. #define __ITFileTerminalEvent_FWD_DEFINED__
  250. typedef interface ITFileTerminalEvent ITFileTerminalEvent;
  251. #endif  /* __ITFileTerminalEvent_FWD_DEFINED__ */
  252. #ifndef __ITTTSTerminalEvent_FWD_DEFINED__
  253. #define __ITTTSTerminalEvent_FWD_DEFINED__
  254. typedef interface ITTTSTerminalEvent ITTTSTerminalEvent;
  255. #endif  /* __ITTTSTerminalEvent_FWD_DEFINED__ */
  256. #ifndef __ITASRTerminalEvent_FWD_DEFINED__
  257. #define __ITASRTerminalEvent_FWD_DEFINED__
  258. typedef interface ITASRTerminalEvent ITASRTerminalEvent;
  259. #endif  /* __ITASRTerminalEvent_FWD_DEFINED__ */
  260. #ifndef __ITToneTerminalEvent_FWD_DEFINED__
  261. #define __ITToneTerminalEvent_FWD_DEFINED__
  262. typedef interface ITToneTerminalEvent ITToneTerminalEvent;
  263. #endif  /* __ITToneTerminalEvent_FWD_DEFINED__ */
  264. #ifndef __ITQOSEvent_FWD_DEFINED__
  265. #define __ITQOSEvent_FWD_DEFINED__
  266. typedef interface ITQOSEvent ITQOSEvent;
  267. #endif  /* __ITQOSEvent_FWD_DEFINED__ */
  268. #ifndef __ITCallInfoChangeEvent_FWD_DEFINED__
  269. #define __ITCallInfoChangeEvent_FWD_DEFINED__
  270. typedef interface ITCallInfoChangeEvent ITCallInfoChangeEvent;
  271. #endif  /* __ITCallInfoChangeEvent_FWD_DEFINED__ */
  272. #ifndef __ITRequest_FWD_DEFINED__
  273. #define __ITRequest_FWD_DEFINED__
  274. typedef interface ITRequest ITRequest;
  275. #endif  /* __ITRequest_FWD_DEFINED__ */
  276. #ifndef __ITRequestEvent_FWD_DEFINED__
  277. #define __ITRequestEvent_FWD_DEFINED__
  278. typedef interface ITRequestEvent ITRequestEvent;
  279. #endif  /* __ITRequestEvent_FWD_DEFINED__ */
  280. #ifndef __ITCollection_FWD_DEFINED__
  281. #define __ITCollection_FWD_DEFINED__
  282. typedef interface ITCollection ITCollection;
  283. #endif  /* __ITCollection_FWD_DEFINED__ */
  284. #ifndef __ITCollection2_FWD_DEFINED__
  285. #define __ITCollection2_FWD_DEFINED__
  286. typedef interface ITCollection2 ITCollection2;
  287. #endif  /* __ITCollection2_FWD_DEFINED__ */
  288. #ifndef __ITForwardInformation_FWD_DEFINED__
  289. #define __ITForwardInformation_FWD_DEFINED__
  290. typedef interface ITForwardInformation ITForwardInformation;
  291. #endif  /* __ITForwardInformation_FWD_DEFINED__ */
  292. #ifndef __ITForwardInformation2_FWD_DEFINED__
  293. #define __ITForwardInformation2_FWD_DEFINED__
  294. typedef interface ITForwardInformation2 ITForwardInformation2;
  295. #endif  /* __ITForwardInformation2_FWD_DEFINED__ */
  296. #ifndef __ITAddressTranslation_FWD_DEFINED__
  297. #define __ITAddressTranslation_FWD_DEFINED__
  298. typedef interface ITAddressTranslation ITAddressTranslation;
  299. #endif  /* __ITAddressTranslation_FWD_DEFINED__ */
  300. #ifndef __ITAddressTranslationInfo_FWD_DEFINED__
  301. #define __ITAddressTranslationInfo_FWD_DEFINED__
  302. typedef interface ITAddressTranslationInfo ITAddressTranslationInfo;
  303. #endif  /* __ITAddressTranslationInfo_FWD_DEFINED__ */
  304. #ifndef __ITLocationInfo_FWD_DEFINED__
  305. #define __ITLocationInfo_FWD_DEFINED__
  306. typedef interface ITLocationInfo ITLocationInfo;
  307. #endif  /* __ITLocationInfo_FWD_DEFINED__ */
  308. #ifndef __IEnumLocation_FWD_DEFINED__
  309. #define __IEnumLocation_FWD_DEFINED__
  310. typedef interface IEnumLocation IEnumLocation;
  311. #endif  /* __IEnumLocation_FWD_DEFINED__ */
  312. #ifndef __ITCallingCard_FWD_DEFINED__
  313. #define __ITCallingCard_FWD_DEFINED__
  314. typedef interface ITCallingCard ITCallingCard;
  315. #endif  /* __ITCallingCard_FWD_DEFINED__ */
  316. #ifndef __IEnumCallingCard_FWD_DEFINED__
  317. #define __IEnumCallingCard_FWD_DEFINED__
  318. typedef interface IEnumCallingCard IEnumCallingCard;
  319. #endif  /* __IEnumCallingCard_FWD_DEFINED__ */
  320. #ifndef __ITCallNotificationEvent_FWD_DEFINED__
  321. #define __ITCallNotificationEvent_FWD_DEFINED__
  322. typedef interface ITCallNotificationEvent ITCallNotificationEvent;
  323. #endif  /* __ITCallNotificationEvent_FWD_DEFINED__ */
  324. #ifndef __ITDispatchMapper_FWD_DEFINED__
  325. #define __ITDispatchMapper_FWD_DEFINED__
  326. typedef interface ITDispatchMapper ITDispatchMapper;
  327. #endif  /* __ITDispatchMapper_FWD_DEFINED__ */
  328. #ifndef __ITStreamControl_FWD_DEFINED__
  329. #define __ITStreamControl_FWD_DEFINED__
  330. typedef interface ITStreamControl ITStreamControl;
  331. #endif  /* __ITStreamControl_FWD_DEFINED__ */
  332. #ifndef __ITStream_FWD_DEFINED__
  333. #define __ITStream_FWD_DEFINED__
  334. typedef interface ITStream ITStream;
  335. #endif  /* __ITStream_FWD_DEFINED__ */
  336. #ifndef __IEnumStream_FWD_DEFINED__
  337. #define __IEnumStream_FWD_DEFINED__
  338. typedef interface IEnumStream IEnumStream;
  339. #endif  /* __IEnumStream_FWD_DEFINED__ */
  340. #ifndef __ITSubStreamControl_FWD_DEFINED__
  341. #define __ITSubStreamControl_FWD_DEFINED__
  342. typedef interface ITSubStreamControl ITSubStreamControl;
  343. #endif  /* __ITSubStreamControl_FWD_DEFINED__ */
  344. #ifndef __ITSubStream_FWD_DEFINED__
  345. #define __ITSubStream_FWD_DEFINED__
  346. typedef interface ITSubStream ITSubStream;
  347. #endif  /* __ITSubStream_FWD_DEFINED__ */
  348. #ifndef __IEnumSubStream_FWD_DEFINED__
  349. #define __IEnumSubStream_FWD_DEFINED__
  350. typedef interface IEnumSubStream IEnumSubStream;
  351. #endif  /* __IEnumSubStream_FWD_DEFINED__ */
  352. #ifndef __ITLegacyWaveSupport_FWD_DEFINED__
  353. #define __ITLegacyWaveSupport_FWD_DEFINED__
  354. typedef interface ITLegacyWaveSupport ITLegacyWaveSupport;
  355. #endif  /* __ITLegacyWaveSupport_FWD_DEFINED__ */
  356. #ifndef __ITBasicCallControl2_FWD_DEFINED__
  357. #define __ITBasicCallControl2_FWD_DEFINED__
  358. typedef interface ITBasicCallControl2 ITBasicCallControl2;
  359. #endif  /* __ITBasicCallControl2_FWD_DEFINED__ */
  360. #ifndef __ITScriptableAudioFormat_FWD_DEFINED__
  361. #define __ITScriptableAudioFormat_FWD_DEFINED__
  362. typedef interface ITScriptableAudioFormat ITScriptableAudioFormat;
  363. #endif  /* __ITScriptableAudioFormat_FWD_DEFINED__ */
  364. /* header files for imported files */
  365. #include "oaidl.h"
  366. #include "strmif.h"
  367. #ifdef __cplusplus
  368. extern "C"{
  369. #endif 
  370. void * __RPC_USER MIDL_user_allocate(size_t);
  371. void __RPC_USER MIDL_user_free( void * ); 
  372. /* interface __MIDL_itf_tapi3if_0000 */
  373. /* [local] */ 
  374. /* Copyright (c) Microsoft Corporation. All rights reserved. */
  375. #if 0
  376. typedef long TAPIHWND;
  377. #endif
  378. #ifdef _X86_
  379. typedef long TAPIHWND;
  380. #else
  381. typedef LONGLONG TAPIHWND;
  382. #endif
  383. typedef long TAPI_DIGITMODE;
  384. typedef 
  385. enum TAPI_TONEMODE
  386.     { TTM_RINGBACK = 0x2,
  387. TTM_BUSY = 0x4,
  388. TTM_BEEP = 0x8,
  389. TTM_BILLING = 0x10
  390.     }  TAPI_TONEMODE;
  391. typedef 
  392. enum TAPI_GATHERTERM
  393.     { TGT_BUFFERFULL = 0x1,
  394. TGT_TERMDIGIT = 0x2,
  395. TGT_FIRSTTIMEOUT = 0x4,
  396. TGT_INTERTIMEOUT = 0x8,
  397. TGT_CANCEL = 0x10
  398.     }  TAPI_GATHERTERM;
  399. typedef struct TAPI_CUSTOMTONE
  400.     {
  401.     DWORD dwFrequency;
  402.     DWORD dwCadenceOn;
  403.     DWORD dwCadenceOff;
  404.     DWORD dwVolume;
  405.     }  TAPI_CUSTOMTONE;
  406. typedef struct TAPI_CUSTOMTONE *LPTAPI_CUSTOMTONE;
  407. typedef struct TAPI_DETECTTONE
  408.     {
  409.     DWORD dwAppSpecific;
  410.     DWORD dwDuration;
  411.     DWORD dwFrequency1;
  412.     DWORD dwFrequency2;
  413.     DWORD dwFrequency3;
  414.     }  TAPI_DETECTTONE;
  415. typedef struct TAPI_DETECTTONE *LPTAPI_DETECTTONE;
  416. typedef 
  417. enum ADDRESS_EVENT
  418.     { AE_STATE = 0,
  419. AE_CAPSCHANGE = AE_STATE + 1,
  420. AE_RINGING = AE_CAPSCHANGE + 1,
  421. AE_CONFIGCHANGE = AE_RINGING + 1,
  422. AE_FORWARD = AE_CONFIGCHANGE + 1,
  423. AE_NEWTERMINAL = AE_FORWARD + 1,
  424. AE_REMOVETERMINAL = AE_NEWTERMINAL + 1,
  425. AE_MSGWAITON = AE_REMOVETERMINAL + 1,
  426. AE_MSGWAITOFF = AE_MSGWAITON + 1,
  427. AE_LASTITEM = AE_MSGWAITOFF
  428.     }  ADDRESS_EVENT;
  429. typedef 
  430. enum ADDRESS_STATE
  431.     { AS_INSERVICE = 0,
  432. AS_OUTOFSERVICE = AS_INSERVICE + 1
  433.     }  ADDRESS_STATE;
  434. typedef 
  435. enum CALL_STATE
  436.     { CS_IDLE = 0,
  437. CS_INPROGRESS = CS_IDLE + 1,
  438. CS_CONNECTED = CS_INPROGRESS + 1,
  439. CS_DISCONNECTED = CS_CONNECTED + 1,
  440. CS_OFFERING = CS_DISCONNECTED + 1,
  441. CS_HOLD = CS_OFFERING + 1,
  442. CS_QUEUED = CS_HOLD + 1,
  443. CS_LASTITEM = CS_QUEUED
  444.     }  CALL_STATE;
  445. typedef 
  446. enum CALL_STATE_EVENT_CAUSE
  447.     { CEC_NONE = 0,
  448. CEC_DISCONNECT_NORMAL = CEC_NONE + 1,
  449. CEC_DISCONNECT_BUSY = CEC_DISCONNECT_NORMAL + 1,
  450. CEC_DISCONNECT_BADADDRESS = CEC_DISCONNECT_BUSY + 1,
  451. CEC_DISCONNECT_NOANSWER = CEC_DISCONNECT_BADADDRESS + 1,
  452. CEC_DISCONNECT_CANCELLED = CEC_DISCONNECT_NOANSWER + 1,
  453. CEC_DISCONNECT_REJECTED = CEC_DISCONNECT_CANCELLED + 1,
  454. CEC_DISCONNECT_FAILED = CEC_DISCONNECT_REJECTED + 1,
  455. CEC_DISCONNECT_BLOCKED = CEC_DISCONNECT_FAILED + 1
  456.     }  CALL_STATE_EVENT_CAUSE;
  457. typedef 
  458. enum CALL_MEDIA_EVENT
  459.     { CME_NEW_STREAM = 0,
  460. CME_STREAM_FAIL = CME_NEW_STREAM + 1,
  461. CME_TERMINAL_FAIL = CME_STREAM_FAIL + 1,
  462. CME_STREAM_NOT_USED = CME_TERMINAL_FAIL + 1,
  463. CME_STREAM_ACTIVE = CME_STREAM_NOT_USED + 1,
  464. CME_STREAM_INACTIVE = CME_STREAM_ACTIVE + 1,
  465. CME_LASTITEM = CME_STREAM_INACTIVE
  466.     }  CALL_MEDIA_EVENT;
  467. typedef 
  468. enum CALL_MEDIA_EVENT_CAUSE
  469.     { CMC_UNKNOWN = 0,
  470. CMC_BAD_DEVICE = CMC_UNKNOWN + 1,
  471. CMC_CONNECT_FAIL = CMC_BAD_DEVICE + 1,
  472. CMC_LOCAL_REQUEST = CMC_CONNECT_FAIL + 1,
  473. CMC_REMOTE_REQUEST = CMC_LOCAL_REQUEST + 1,
  474. CMC_MEDIA_TIMEOUT = CMC_REMOTE_REQUEST + 1,
  475. CMC_MEDIA_RECOVERED = CMC_MEDIA_TIMEOUT + 1,
  476. CMC_QUALITY_OF_SERVICE = CMC_MEDIA_RECOVERED + 1
  477.     }  CALL_MEDIA_EVENT_CAUSE;
  478. typedef 
  479. enum DISCONNECT_CODE
  480.     { DC_NORMAL = 0,
  481. DC_NOANSWER = DC_NORMAL + 1,
  482. DC_REJECTED = DC_NOANSWER + 1
  483.     }  DISCONNECT_CODE;
  484. typedef 
  485. enum TERMINAL_STATE
  486.     { TS_INUSE = 0,
  487. TS_NOTINUSE = TS_INUSE + 1
  488.     }  TERMINAL_STATE;
  489. typedef 
  490. enum TERMINAL_DIRECTION
  491.     { TD_CAPTURE = 0,
  492. TD_RENDER = TD_CAPTURE + 1,
  493. TD_BIDIRECTIONAL = TD_RENDER + 1,
  494. TD_MULTITRACK_MIXED = TD_BIDIRECTIONAL + 1,
  495. TD_NONE = TD_MULTITRACK_MIXED + 1
  496.     }  TERMINAL_DIRECTION;
  497. typedef 
  498. enum TERMINAL_TYPE
  499.     { TT_STATIC = 0,
  500. TT_DYNAMIC = TT_STATIC + 1
  501.     }  TERMINAL_TYPE;
  502. typedef 
  503. enum CALL_PRIVILEGE
  504.     { CP_OWNER = 0,
  505. CP_MONITOR = CP_OWNER + 1
  506.     }  CALL_PRIVILEGE;
  507. typedef 
  508. enum TAPI_EVENT
  509.     { TE_TAPIOBJECT = 0x1,
  510. TE_ADDRESS = 0x2,
  511. TE_CALLNOTIFICATION = 0x4,
  512. TE_CALLSTATE = 0x8,
  513. TE_CALLMEDIA = 0x10,
  514. TE_CALLHUB = 0x20,
  515. TE_CALLINFOCHANGE = 0x40,
  516. TE_PRIVATE = 0x80,
  517. TE_REQUEST = 0x100,
  518. TE_AGENT = 0x200,
  519. TE_AGENTSESSION = 0x400,
  520. TE_QOSEVENT = 0x800,
  521. TE_AGENTHANDLER = 0x1000,
  522. TE_ACDGROUP = 0x2000,
  523. TE_QUEUE = 0x4000,
  524. TE_DIGITEVENT = 0x8000,
  525. TE_GENERATEEVENT = 0x10000,
  526. TE_ASRTERMINAL = 0x20000,
  527. TE_TTSTERMINAL = 0x40000,
  528. TE_FILETERMINAL = 0x80000,
  529. TE_TONETERMINAL = 0x100000,
  530. TE_PHONEEVENT = 0x200000,
  531. TE_TONEEVENT = 0x400000,
  532. TE_GATHERDIGITS = 0x800000,
  533. TE_ADDRESSDEVSPECIFIC = 0x1000000,
  534. TE_PHONEDEVSPECIFIC = 0x2000000
  535.     }  TAPI_EVENT;
  536. typedef 
  537. enum CALL_NOTIFICATION_EVENT
  538.     { CNE_OWNER = 0,
  539. CNE_MONITOR = CNE_OWNER + 1,
  540. CNE_LASTITEM = CNE_MONITOR
  541.     }  CALL_NOTIFICATION_EVENT;
  542. typedef 
  543. enum CALLHUB_EVENT
  544.     { CHE_CALLJOIN = 0,
  545. CHE_CALLLEAVE = CHE_CALLJOIN + 1,
  546. CHE_CALLHUBNEW = CHE_CALLLEAVE + 1,
  547. CHE_CALLHUBIDLE = CHE_CALLHUBNEW + 1,
  548. CHE_LASTITEM = CHE_CALLHUBIDLE
  549.     }  CALLHUB_EVENT;
  550. typedef 
  551. enum CALLHUB_STATE
  552.     { CHS_ACTIVE = 0,
  553. CHS_IDLE = CHS_ACTIVE + 1
  554.     }  CALLHUB_STATE;
  555. typedef 
  556. enum TAPIOBJECT_EVENT
  557.     { TE_ADDRESSCREATE = 0,
  558. TE_ADDRESSREMOVE = TE_ADDRESSCREATE + 1,
  559. TE_REINIT = TE_ADDRESSREMOVE + 1,
  560. TE_TRANSLATECHANGE = TE_REINIT + 1,
  561. TE_ADDRESSCLOSE = TE_TRANSLATECHANGE + 1,
  562. TE_PHONECREATE = TE_ADDRESSCLOSE + 1,
  563. TE_PHONEREMOVE = TE_PHONECREATE + 1
  564.     }  TAPIOBJECT_EVENT;
  565. typedef 
  566. enum TAPI_OBJECT_TYPE
  567.     { TOT_NONE = 0,
  568. TOT_TAPI = TOT_NONE + 1,
  569. TOT_ADDRESS = TOT_TAPI + 1,
  570. TOT_TERMINAL = TOT_ADDRESS + 1,
  571. TOT_CALL = TOT_TERMINAL + 1,
  572. TOT_CALLHUB = TOT_CALL + 1,
  573. TOT_PHONE = TOT_CALLHUB + 1
  574.     }  TAPI_OBJECT_TYPE;
  575. typedef 
  576. enum QOS_SERVICE_LEVEL
  577.     { QSL_NEEDED = 1,
  578. QSL_IF_AVAILABLE = 2,
  579. QSL_BEST_EFFORT = 3
  580.     }  QOS_SERVICE_LEVEL;
  581. typedef 
  582. enum QOS_EVENT
  583.     { QE_NOQOS = 1,
  584. QE_ADMISSIONFAILURE = 2,
  585. QE_POLICYFAILURE = 3,
  586. QE_GENERICERROR = 4,
  587. QE_LASTITEM = QE_GENERICERROR
  588.     }  QOS_EVENT;
  589. typedef 
  590. enum CALLINFOCHANGE_CAUSE
  591.     { CIC_OTHER = 0,
  592. CIC_DEVSPECIFIC = CIC_OTHER + 1,
  593. CIC_BEARERMODE = CIC_DEVSPECIFIC + 1,
  594. CIC_RATE = CIC_BEARERMODE + 1,
  595. CIC_APPSPECIFIC = CIC_RATE + 1,
  596. CIC_CALLID = CIC_APPSPECIFIC + 1,
  597. CIC_RELATEDCALLID = CIC_CALLID + 1,
  598. CIC_ORIGIN = CIC_RELATEDCALLID + 1,
  599. CIC_REASON = CIC_ORIGIN + 1,
  600. CIC_COMPLETIONID = CIC_REASON + 1,
  601. CIC_NUMOWNERINCR = CIC_COMPLETIONID + 1,
  602. CIC_NUMOWNERDECR = CIC_NUMOWNERINCR + 1,
  603. CIC_NUMMONITORS = CIC_NUMOWNERDECR + 1,
  604. CIC_TRUNK = CIC_NUMMONITORS + 1,
  605. CIC_CALLERID = CIC_TRUNK + 1,
  606. CIC_CALLEDID = CIC_CALLERID + 1,
  607. CIC_CONNECTEDID = CIC_CALLEDID + 1,
  608. CIC_REDIRECTIONID = CIC_CONNECTEDID + 1,
  609. CIC_REDIRECTINGID = CIC_REDIRECTIONID + 1,
  610. CIC_USERUSERINFO = CIC_REDIRECTINGID + 1,
  611. CIC_HIGHLEVELCOMP = CIC_USERUSERINFO + 1,
  612. CIC_LOWLEVELCOMP = CIC_HIGHLEVELCOMP + 1,
  613. CIC_CHARGINGINFO = CIC_LOWLEVELCOMP + 1,
  614. CIC_TREATMENT = CIC_CHARGINGINFO + 1,
  615. CIC_CALLDATA = CIC_TREATMENT + 1,
  616. CIC_PRIVILEGE = CIC_CALLDATA + 1,
  617. CIC_MEDIATYPE = CIC_PRIVILEGE + 1,
  618. CIC_LASTITEM = CIC_MEDIATYPE
  619.     }  CALLINFOCHANGE_CAUSE;
  620. typedef 
  621. enum CALLINFO_LONG
  622.     { CIL_MEDIATYPESAVAILABLE = 0,
  623. CIL_BEARERMODE = CIL_MEDIATYPESAVAILABLE + 1,
  624. CIL_CALLERIDADDRESSTYPE = CIL_BEARERMODE + 1,
  625. CIL_CALLEDIDADDRESSTYPE = CIL_CALLERIDADDRESSTYPE + 1,
  626. CIL_CONNECTEDIDADDRESSTYPE = CIL_CALLEDIDADDRESSTYPE + 1,
  627. CIL_REDIRECTIONIDADDRESSTYPE = CIL_CONNECTEDIDADDRESSTYPE + 1,
  628. CIL_REDIRECTINGIDADDRESSTYPE = CIL_REDIRECTIONIDADDRESSTYPE + 1,
  629. CIL_ORIGIN = CIL_REDIRECTINGIDADDRESSTYPE + 1,
  630. CIL_REASON = CIL_ORIGIN + 1,
  631. CIL_APPSPECIFIC = CIL_REASON + 1,
  632. CIL_CALLPARAMSFLAGS = CIL_APPSPECIFIC + 1,
  633. CIL_CALLTREATMENT = CIL_CALLPARAMSFLAGS + 1,
  634. CIL_MINRATE = CIL_CALLTREATMENT + 1,
  635. CIL_MAXRATE = CIL_MINRATE + 1,
  636. CIL_COUNTRYCODE = CIL_MAXRATE + 1,
  637. CIL_CALLID = CIL_COUNTRYCODE + 1,
  638. CIL_RELATEDCALLID = CIL_CALLID + 1,
  639. CIL_COMPLETIONID = CIL_RELATEDCALLID + 1,
  640. CIL_NUMBEROFOWNERS = CIL_COMPLETIONID + 1,
  641. CIL_NUMBEROFMONITORS = CIL_NUMBEROFOWNERS + 1,
  642. CIL_TRUNK = CIL_NUMBEROFMONITORS + 1,
  643. CIL_RATE = CIL_TRUNK + 1,
  644. CIL_GENERATEDIGITDURATION = CIL_RATE + 1,
  645. CIL_MONITORDIGITMODES = CIL_GENERATEDIGITDURATION + 1,
  646. CIL_MONITORMEDIAMODES = CIL_MONITORDIGITMODES + 1
  647.     }  CALLINFO_LONG;
  648. typedef 
  649. enum CALLINFO_STRING
  650.     { CIS_CALLERIDNAME = 0,
  651. CIS_CALLERIDNUMBER = CIS_CALLERIDNAME + 1,
  652. CIS_CALLEDIDNAME = CIS_CALLERIDNUMBER + 1,
  653. CIS_CALLEDIDNUMBER = CIS_CALLEDIDNAME + 1,
  654. CIS_CONNECTEDIDNAME = CIS_CALLEDIDNUMBER + 1,
  655. CIS_CONNECTEDIDNUMBER = CIS_CONNECTEDIDNAME + 1,
  656. CIS_REDIRECTIONIDNAME = CIS_CONNECTEDIDNUMBER + 1,
  657. CIS_REDIRECTIONIDNUMBER = CIS_REDIRECTIONIDNAME + 1,
  658. CIS_REDIRECTINGIDNAME = CIS_REDIRECTIONIDNUMBER + 1,
  659. CIS_REDIRECTINGIDNUMBER = CIS_REDIRECTINGIDNAME + 1,
  660. CIS_CALLEDPARTYFRIENDLYNAME = CIS_REDIRECTINGIDNUMBER + 1,
  661. CIS_COMMENT = CIS_CALLEDPARTYFRIENDLYNAME + 1,
  662. CIS_DISPLAYABLEADDRESS = CIS_COMMENT + 1,
  663. CIS_CALLINGPARTYID = CIS_DISPLAYABLEADDRESS + 1
  664.     }  CALLINFO_STRING;
  665. typedef 
  666. enum CALLINFO_BUFFER
  667.     { CIB_USERUSERINFO = 0,
  668. CIB_DEVSPECIFICBUFFER = CIB_USERUSERINFO + 1,
  669. CIB_CALLDATABUFFER = CIB_DEVSPECIFICBUFFER + 1,
  670. CIB_CHARGINGINFOBUFFER = CIB_CALLDATABUFFER + 1,
  671. CIB_HIGHLEVELCOMPATIBILITYBUFFER = CIB_CHARGINGINFOBUFFER + 1,
  672. CIB_LOWLEVELCOMPATIBILITYBUFFER = CIB_HIGHLEVELCOMPATIBILITYBUFFER + 1
  673.     }  CALLINFO_BUFFER;
  674. typedef 
  675. enum ADDRESS_CAPABILITY
  676.     { AC_ADDRESSTYPES = 0,
  677. AC_BEARERMODES = AC_ADDRESSTYPES + 1,
  678. AC_MAXACTIVECALLS = AC_BEARERMODES + 1,
  679. AC_MAXONHOLDCALLS = AC_MAXACTIVECALLS + 1,
  680. AC_MAXONHOLDPENDINGCALLS = AC_MAXONHOLDCALLS + 1,
  681. AC_MAXNUMCONFERENCE = AC_MAXONHOLDPENDINGCALLS + 1,
  682. AC_MAXNUMTRANSCONF = AC_MAXNUMCONFERENCE + 1,
  683. AC_MONITORDIGITSUPPORT = AC_MAXNUMTRANSCONF + 1,
  684. AC_GENERATEDIGITSUPPORT = AC_MONITORDIGITSUPPORT + 1,
  685. AC_GENERATETONEMODES = AC_GENERATEDIGITSUPPORT + 1,
  686. AC_GENERATETONEMAXNUMFREQ = AC_GENERATETONEMODES + 1,
  687. AC_MONITORTONEMAXNUMFREQ = AC_GENERATETONEMAXNUMFREQ + 1,
  688. AC_MONITORTONEMAXNUMENTRIES = AC_MONITORTONEMAXNUMFREQ + 1,
  689. AC_DEVCAPFLAGS = AC_MONITORTONEMAXNUMENTRIES + 1,
  690. AC_ANSWERMODES = AC_DEVCAPFLAGS + 1,
  691. AC_LINEFEATURES = AC_ANSWERMODES + 1,
  692. AC_SETTABLEDEVSTATUS = AC_LINEFEATURES + 1,
  693. AC_PARKSUPPORT = AC_SETTABLEDEVSTATUS + 1,
  694. AC_CALLERIDSUPPORT = AC_PARKSUPPORT + 1,
  695. AC_CALLEDIDSUPPORT = AC_CALLERIDSUPPORT + 1,
  696. AC_CONNECTEDIDSUPPORT = AC_CALLEDIDSUPPORT + 1,
  697. AC_REDIRECTIONIDSUPPORT = AC_CONNECTEDIDSUPPORT + 1,
  698. AC_REDIRECTINGIDSUPPORT = AC_REDIRECTIONIDSUPPORT + 1,
  699. AC_ADDRESSCAPFLAGS = AC_REDIRECTINGIDSUPPORT + 1,
  700. AC_CALLFEATURES1 = AC_ADDRESSCAPFLAGS + 1,
  701. AC_CALLFEATURES2 = AC_CALLFEATURES1 + 1,
  702. AC_REMOVEFROMCONFCAPS = AC_CALLFEATURES2 + 1,
  703. AC_REMOVEFROMCONFSTATE = AC_REMOVEFROMCONFCAPS + 1,
  704. AC_TRANSFERMODES = AC_REMOVEFROMCONFSTATE + 1,
  705. AC_ADDRESSFEATURES = AC_TRANSFERMODES + 1,
  706. AC_PREDICTIVEAUTOTRANSFERSTATES = AC_ADDRESSFEATURES + 1,
  707. AC_MAXCALLDATASIZE = AC_PREDICTIVEAUTOTRANSFERSTATES + 1,
  708. AC_LINEID = AC_MAXCALLDATASIZE + 1,
  709. AC_ADDRESSID = AC_LINEID + 1,
  710. AC_FORWARDMODES = AC_ADDRESSID + 1,
  711. AC_MAXFORWARDENTRIES = AC_FORWARDMODES + 1,
  712. AC_MAXSPECIFICENTRIES = AC_MAXFORWARDENTRIES + 1,
  713. AC_MINFWDNUMRINGS = AC_MAXSPECIFICENTRIES + 1,
  714. AC_MAXFWDNUMRINGS = AC_MINFWDNUMRINGS + 1,
  715. AC_MAXCALLCOMPLETIONS = AC_MAXFWDNUMRINGS + 1,
  716. AC_CALLCOMPLETIONCONDITIONS = AC_MAXCALLCOMPLETIONS + 1,
  717. AC_CALLCOMPLETIONMODES = AC_CALLCOMPLETIONCONDITIONS + 1,
  718. AC_PERMANENTDEVICEID = AC_CALLCOMPLETIONMODES + 1,
  719. AC_GATHERDIGITSMINTIMEOUT = AC_PERMANENTDEVICEID + 1,
  720. AC_GATHERDIGITSMAXTIMEOUT = AC_GATHERDIGITSMINTIMEOUT + 1,
  721. AC_GENERATEDIGITMINDURATION = AC_GATHERDIGITSMAXTIMEOUT + 1,
  722. AC_GENERATEDIGITMAXDURATION = AC_GENERATEDIGITMINDURATION + 1,
  723. AC_GENERATEDIGITDEFAULTDURATION = AC_GENERATEDIGITMAXDURATION + 1
  724.     }  ADDRESS_CAPABILITY;
  725. typedef 
  726. enum ADDRESS_CAPABILITY_STRING
  727.     { ACS_PROTOCOL = 0,
  728. ACS_ADDRESSDEVICESPECIFIC = ACS_PROTOCOL + 1,
  729. ACS_LINEDEVICESPECIFIC = ACS_ADDRESSDEVICESPECIFIC + 1,
  730. ACS_PROVIDERSPECIFIC = ACS_LINEDEVICESPECIFIC + 1,
  731. ACS_SWITCHSPECIFIC = ACS_PROVIDERSPECIFIC + 1,
  732. ACS_PERMANENTDEVICEGUID = ACS_SWITCHSPECIFIC + 1
  733.     }  ADDRESS_CAPABILITY_STRING;
  734. typedef 
  735. enum FULLDUPLEX_SUPPORT
  736.     { FDS_SUPPORTED = 0,
  737. FDS_NOTSUPPORTED = FDS_SUPPORTED + 1,
  738. FDS_UNKNOWN = FDS_NOTSUPPORTED + 1
  739.     }  FULLDUPLEX_SUPPORT;
  740. typedef 
  741. enum FINISH_MODE
  742.     { FM_ASTRANSFER = 0,
  743. FM_ASCONFERENCE = FM_ASTRANSFER + 1
  744.     }  FINISH_MODE;
  745. typedef 
  746. enum PHONE_PRIVILEGE
  747.     { PP_OWNER = 0,
  748. PP_MONITOR = PP_OWNER + 1
  749.     }  PHONE_PRIVILEGE;
  750. typedef 
  751. enum PHONE_HOOK_SWITCH_DEVICE
  752.     { PHSD_HANDSET = 0x1,
  753. PHSD_SPEAKERPHONE = 0x2,
  754. PHSD_HEADSET = 0x4
  755.     }  PHONE_HOOK_SWITCH_DEVICE;
  756. typedef 
  757. enum PHONE_HOOK_SWITCH_STATE
  758.     { PHSS_ONHOOK = 0x1,
  759. PHSS_OFFHOOK_MIC_ONLY = 0x2,
  760. PHSS_OFFHOOK_SPEAKER_ONLY = 0x4,
  761. PHSS_OFFHOOK = 0x8
  762.     }  PHONE_HOOK_SWITCH_STATE;
  763. typedef 
  764. enum PHONE_LAMP_MODE
  765.     { LM_DUMMY = 0x1,
  766. LM_OFF = 0x2,
  767. LM_STEADY = 0x4,
  768. LM_WINK = 0x8,
  769. LM_FLASH = 0x10,
  770. LM_FLUTTER = 0x20,
  771. LM_BROKENFLUTTER = 0x40,
  772. LM_UNKNOWN = 0x80
  773.     }  PHONE_LAMP_MODE;
  774. typedef 
  775. enum PHONECAPS_LONG
  776.     { PCL_HOOKSWITCHES = 0,
  777. PCL_HANDSETHOOKSWITCHMODES = PCL_HOOKSWITCHES + 1,
  778. PCL_HEADSETHOOKSWITCHMODES = PCL_HANDSETHOOKSWITCHMODES + 1,
  779. PCL_SPEAKERPHONEHOOKSWITCHMODES = PCL_HEADSETHOOKSWITCHMODES + 1,
  780. PCL_DISPLAYNUMROWS = PCL_SPEAKERPHONEHOOKSWITCHMODES + 1,
  781. PCL_DISPLAYNUMCOLUMNS = PCL_DISPLAYNUMROWS + 1,
  782. PCL_NUMRINGMODES = PCL_DISPLAYNUMCOLUMNS + 1,
  783. PCL_NUMBUTTONLAMPS = PCL_NUMRINGMODES + 1,
  784. PCL_GENERICPHONE = PCL_NUMBUTTONLAMPS + 1
  785.     }  PHONECAPS_LONG;
  786. typedef 
  787. enum PHONECAPS_STRING
  788.     { PCS_PHONENAME = 0,
  789. PCS_PHONEINFO = PCS_PHONENAME + 1,
  790. PCS_PROVIDERINFO = PCS_PHONEINFO + 1
  791.     }  PHONECAPS_STRING;
  792. typedef 
  793. enum PHONECAPS_BUFFER
  794.     { PCB_DEVSPECIFICBUFFER = 0
  795.     }  PHONECAPS_BUFFER;
  796. typedef 
  797. enum PHONE_BUTTON_STATE
  798.     { PBS_UP = 0x1,
  799. PBS_DOWN = 0x2,
  800. PBS_UNKNOWN = 0x4,
  801. PBS_UNAVAIL = 0x8
  802.     }  PHONE_BUTTON_STATE;
  803. typedef 
  804. enum PHONE_BUTTON_MODE
  805.     { PBM_DUMMY = 0,
  806. PBM_CALL = PBM_DUMMY + 1,
  807. PBM_FEATURE = PBM_CALL + 1,
  808. PBM_KEYPAD = PBM_FEATURE + 1,
  809. PBM_LOCAL = PBM_KEYPAD + 1,
  810. PBM_DISPLAY = PBM_LOCAL + 1
  811.     }  PHONE_BUTTON_MODE;
  812. typedef 
  813. enum PHONE_BUTTON_FUNCTION
  814.     { PBF_UNKNOWN = 0,
  815. PBF_CONFERENCE = PBF_UNKNOWN + 1,
  816. PBF_TRANSFER = PBF_CONFERENCE + 1,
  817. PBF_DROP = PBF_TRANSFER + 1,
  818. PBF_HOLD = PBF_DROP + 1,
  819. PBF_RECALL = PBF_HOLD + 1,
  820. PBF_DISCONNECT = PBF_RECALL + 1,
  821. PBF_CONNECT = PBF_DISCONNECT + 1,
  822. PBF_MSGWAITON = PBF_CONNECT + 1,
  823. PBF_MSGWAITOFF = PBF_MSGWAITON + 1,
  824. PBF_SELECTRING = PBF_MSGWAITOFF + 1,
  825. PBF_ABBREVDIAL = PBF_SELECTRING + 1,
  826. PBF_FORWARD = PBF_ABBREVDIAL + 1,
  827. PBF_PICKUP = PBF_FORWARD + 1,
  828. PBF_RINGAGAIN = PBF_PICKUP + 1,
  829. PBF_PARK = PBF_RINGAGAIN + 1,
  830. PBF_REJECT = PBF_PARK + 1,
  831. PBF_REDIRECT = PBF_REJECT + 1,
  832. PBF_MUTE = PBF_REDIRECT + 1,
  833. PBF_VOLUMEUP = PBF_MUTE + 1,
  834. PBF_VOLUMEDOWN = PBF_VOLUMEUP + 1,
  835. PBF_SPEAKERON = PBF_VOLUMEDOWN + 1,
  836. PBF_SPEAKEROFF = PBF_SPEAKERON + 1,
  837. PBF_FLASH = PBF_SPEAKEROFF + 1,
  838. PBF_DATAON = PBF_FLASH + 1,
  839. PBF_DATAOFF = PBF_DATAON + 1,
  840. PBF_DONOTDISTURB = PBF_DATAOFF + 1,
  841. PBF_INTERCOM = PBF_DONOTDISTURB + 1,
  842. PBF_BRIDGEDAPP = PBF_INTERCOM + 1,
  843. PBF_BUSY = PBF_BRIDGEDAPP + 1,
  844. PBF_CALLAPP = PBF_BUSY + 1,
  845. PBF_DATETIME = PBF_CALLAPP + 1,
  846. PBF_DIRECTORY = PBF_DATETIME + 1,
  847. PBF_COVER = PBF_DIRECTORY + 1,
  848. PBF_CALLID = PBF_COVER + 1,
  849. PBF_LASTNUM = PBF_CALLID + 1,
  850. PBF_NIGHTSRV = PBF_LASTNUM + 1,
  851. PBF_SENDCALLS = PBF_NIGHTSRV + 1,
  852. PBF_MSGINDICATOR = PBF_SENDCALLS + 1,
  853. PBF_REPDIAL = PBF_MSGINDICATOR + 1,
  854. PBF_SETREPDIAL = PBF_REPDIAL + 1,
  855. PBF_SYSTEMSPEED = PBF_SETREPDIAL + 1,
  856. PBF_STATIONSPEED = PBF_SYSTEMSPEED + 1,
  857. PBF_CAMPON = PBF_STATIONSPEED + 1,
  858. PBF_SAVEREPEAT = PBF_CAMPON + 1,
  859. PBF_QUEUECALL = PBF_SAVEREPEAT + 1,
  860. PBF_NONE = PBF_QUEUECALL + 1,
  861. PBF_SEND = PBF_NONE + 1
  862.     }  PHONE_BUTTON_FUNCTION;
  863. typedef 
  864. enum PHONE_TONE
  865.     { PT_KEYPADZERO = 0,
  866. PT_KEYPADONE = PT_KEYPADZERO + 1,
  867. PT_KEYPADTWO = PT_KEYPADONE + 1,
  868. PT_KEYPADTHREE = PT_KEYPADTWO + 1,
  869. PT_KEYPADFOUR = PT_KEYPADTHREE + 1,
  870. PT_KEYPADFIVE = PT_KEYPADFOUR + 1,
  871. PT_KEYPADSIX = PT_KEYPADFIVE + 1,
  872. PT_KEYPADSEVEN = PT_KEYPADSIX + 1,
  873. PT_KEYPADEIGHT = PT_KEYPADSEVEN + 1,
  874. PT_KEYPADNINE = PT_KEYPADEIGHT + 1,
  875. PT_KEYPADSTAR = PT_KEYPADNINE + 1,
  876. PT_KEYPADPOUND = PT_KEYPADSTAR + 1,
  877. PT_KEYPADA = PT_KEYPADPOUND + 1,
  878. PT_KEYPADB = PT_KEYPADA + 1,
  879. PT_KEYPADC = PT_KEYPADB + 1,
  880. PT_KEYPADD = PT_KEYPADC + 1,
  881. PT_NORMALDIALTONE = PT_KEYPADD + 1,
  882. PT_EXTERNALDIALTONE = PT_NORMALDIALTONE + 1,
  883. PT_BUSY = PT_EXTERNALDIALTONE + 1,
  884. PT_RINGBACK = PT_BUSY + 1,
  885. PT_ERRORTONE = PT_RINGBACK + 1,
  886. PT_SILENCE = PT_ERRORTONE + 1
  887.     }  PHONE_TONE;
  888. typedef 
  889. enum PHONE_EVENT
  890.     { PE_DISPLAY = 0,
  891. PE_LAMPMODE = PE_DISPLAY + 1,
  892. PE_RINGMODE = PE_LAMPMODE + 1,
  893. PE_RINGVOLUME = PE_RINGMODE + 1,
  894. PE_HOOKSWITCH = PE_RINGVOLUME + 1,
  895. PE_CAPSCHANGE = PE_HOOKSWITCH + 1,
  896. PE_BUTTON = PE_CAPSCHANGE + 1,
  897. PE_CLOSE = PE_BUTTON + 1,
  898. PE_NUMBERGATHERED = PE_CLOSE + 1,
  899. PE_DIALING = PE_NUMBERGATHERED + 1,
  900. PE_ANSWER = PE_DIALING + 1,
  901. PE_DISCONNECT = PE_ANSWER + 1,
  902. PE_LASTITEM = PE_DISCONNECT
  903.     }  PHONE_EVENT;
  904. #define INTERFACEMASK ( 0xff0000 )
  905. #define DISPIDMASK ( 0xffff )
  906. #define IDISPTAPI ( 0x10000 )
  907. #define IDISPTAPICALLCENTER ( 0x20000 )
  908. #define IDISPCALLINFO ( 0x10000 )
  909. #define IDISPBASICCALLCONTROL ( 0x20000 )
  910. #define IDISPLEGACYCALLMEDIACONTROL ( 0x30000 )
  911. #define IDISPAGGREGATEDMSPCALLOBJ ( 0x40000 )
  912. #define IDISPADDRESS ( 0x10000 )
  913. #define IDISPADDRESSCAPABILITIES ( 0x20000 )
  914. #define IDISPMEDIASUPPORT ( 0x30000 )
  915. #define IDISPADDRESSTRANSLATION ( 0x40000 )
  916. #define IDISPLEGACYADDRESSMEDIACONTROL ( 0x50000 )
  917. #define IDISPAGGREGATEDMSPADDRESSOBJ ( 0x60000 )
  918. #define IDISPPHONE ( 0x10000 )
  919. #define IDISPAPC ( 0x20000 )
  920. #define IDISPMULTITRACK ( 0x10000 )
  921. #define IDISPMEDIACONTROL ( 0x20000 )
  922. #define IDISPMEDIARECORD ( 0x30000 )
  923. #define IDISPMEDIAPLAYBACK ( 0x40000 )
  924. #define IDISPFILETRACK ( 0x10000 )
  925. extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0000_v0_0_c_ifspec;
  926. extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0000_v0_0_s_ifspec;
  927. #ifndef __ITTAPI_INTERFACE_DEFINED__
  928. #define __ITTAPI_INTERFACE_DEFINED__
  929. /* interface ITTAPI */
  930. /* [object][dual][unique][helpstring][uuid] */ 
  931. EXTERN_C const IID IID_ITTAPI;
  932. #if defined(__cplusplus) && !defined(CINTERFACE)
  933.     
  934.     MIDL_INTERFACE("B1EFC382-9355-11d0-835C-00AA003CCABD")
  935.     ITTAPI : public IDispatch
  936.     {
  937.     public:
  938.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Initialize( void) = 0;
  939.         
  940.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Shutdown( void) = 0;
  941.         
  942.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Addresses( 
  943.             /* [retval][out] */ VARIANT *pVariant) = 0;
  944.         
  945.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumerateAddresses( 
  946.             /* [retval][out] */ IEnumAddress **ppEnumAddress) = 0;
  947.         
  948.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RegisterCallNotifications( 
  949.             /* [in] */ ITAddress *pAddress,
  950.             /* [in] */ VARIANT_BOOL fMonitor,
  951.             /* [in] */ VARIANT_BOOL fOwner,
  952.             /* [in] */ long lMediaTypes,
  953.             /* [in] */ long lCallbackInstance,
  954.             /* [retval][out] */ long *plRegister) = 0;
  955.         
  956.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnregisterNotifications( 
  957.             /* [in] */ long lRegister) = 0;
  958.         
  959.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CallHubs( 
  960.             /* [retval][out] */ VARIANT *pVariant) = 0;
  961.         
  962.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumerateCallHubs( 
  963.             /* [retval][out] */ IEnumCallHub **ppEnumCallHub) = 0;
  964.         
  965.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCallHubTracking( 
  966.             /* [in] */ VARIANT pAddresses,
  967.             /* [in] */ VARIANT_BOOL bTracking) = 0;
  968.         
  969.         virtual /* [hidden][id] */ HRESULT STDMETHODCALLTYPE EnumeratePrivateTAPIObjects( 
  970.             /* [out] */ IEnumUnknown **ppEnumUnknown) = 0;
  971.         
  972.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrivateTAPIObjects( 
  973.             /* [retval][out] */ VARIANT *pVariant) = 0;
  974.         
  975.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RegisterRequestRecipient( 
  976.             /* [in] */ long lRegistrationInstance,
  977.             /* [in] */ long lRequestMode,
  978.             /* [in] */ VARIANT_BOOL fEnable) = 0;
  979.         
  980.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAssistedTelephonyPriority( 
  981.             /* [in] */ BSTR pAppFilename,
  982.             /* [in] */ VARIANT_BOOL fPriority) = 0;
  983.         
  984.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetApplicationPriority( 
  985.             /* [in] */ BSTR pAppFilename,
  986.             /* [in] */ long lMediaType,
  987.             /* [in] */ VARIANT_BOOL fPriority) = 0;
  988.         
  989.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EventFilter( 
  990.             /* [in] */ long lFilterMask) = 0;
  991.         
  992.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EventFilter( 
  993.             /* [retval][out] */ long *plFilterMask) = 0;
  994.         
  995.     };
  996.     
  997. #else  /* C style interface */
  998.     typedef struct ITTAPIVtbl
  999.     {
  1000.         BEGIN_INTERFACE
  1001.         
  1002.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1003.             ITTAPI * This,
  1004.             /* [in] */ REFIID riid,
  1005.             /* [iid_is][out] */ void **ppvObject);
  1006.         
  1007.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1008.             ITTAPI * This);
  1009.         
  1010.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1011.             ITTAPI * This);
  1012.         
  1013.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1014.             ITTAPI * This,
  1015.             /* [out] */ UINT *pctinfo);
  1016.         
  1017.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1018.             ITTAPI * This,
  1019.             /* [in] */ UINT iTInfo,
  1020.             /* [in] */ LCID lcid,
  1021.             /* [out] */ ITypeInfo **ppTInfo);
  1022.         
  1023.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1024.             ITTAPI * This,
  1025.             /* [in] */ REFIID riid,
  1026.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1027.             /* [in] */ UINT cNames,
  1028.             /* [in] */ LCID lcid,
  1029.             /* [size_is][out] */ DISPID *rgDispId);
  1030.         
  1031.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1032.             ITTAPI * This,
  1033.             /* [in] */ DISPID dispIdMember,
  1034.             /* [in] */ REFIID riid,
  1035.             /* [in] */ LCID lcid,
  1036.             /* [in] */ WORD wFlags,
  1037.             /* [out][in] */ DISPPARAMS *pDispParams,
  1038.             /* [out] */ VARIANT *pVarResult,
  1039.             /* [out] */ EXCEPINFO *pExcepInfo,
  1040.             /* [out] */ UINT *puArgErr);
  1041.         
  1042.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Initialize )( 
  1043.             ITTAPI * This);
  1044.         
  1045.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Shutdown )( 
  1046.             ITTAPI * This);
  1047.         
  1048.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Addresses )( 
  1049.             ITTAPI * This,
  1050.             /* [retval][out] */ VARIANT *pVariant);
  1051.         
  1052.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateAddresses )( 
  1053.             ITTAPI * This,
  1054.             /* [retval][out] */ IEnumAddress **ppEnumAddress);
  1055.         
  1056.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RegisterCallNotifications )( 
  1057.             ITTAPI * This,
  1058.             /* [in] */ ITAddress *pAddress,
  1059.             /* [in] */ VARIANT_BOOL fMonitor,
  1060.             /* [in] */ VARIANT_BOOL fOwner,
  1061.             /* [in] */ long lMediaTypes,
  1062.             /* [in] */ long lCallbackInstance,
  1063.             /* [retval][out] */ long *plRegister);
  1064.         
  1065.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnregisterNotifications )( 
  1066.             ITTAPI * This,
  1067.             /* [in] */ long lRegister);
  1068.         
  1069.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CallHubs )( 
  1070.             ITTAPI * This,
  1071.             /* [retval][out] */ VARIANT *pVariant);
  1072.         
  1073.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateCallHubs )( 
  1074.             ITTAPI * This,
  1075.             /* [retval][out] */ IEnumCallHub **ppEnumCallHub);
  1076.         
  1077.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCallHubTracking )( 
  1078.             ITTAPI * This,
  1079.             /* [in] */ VARIANT pAddresses,
  1080.             /* [in] */ VARIANT_BOOL bTracking);
  1081.         
  1082.         /* [hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumeratePrivateTAPIObjects )( 
  1083.             ITTAPI * This,
  1084.             /* [out] */ IEnumUnknown **ppEnumUnknown);
  1085.         
  1086.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrivateTAPIObjects )( 
  1087.             ITTAPI * This,
  1088.             /* [retval][out] */ VARIANT *pVariant);
  1089.         
  1090.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RegisterRequestRecipient )( 
  1091.             ITTAPI * This,
  1092.             /* [in] */ long lRegistrationInstance,
  1093.             /* [in] */ long lRequestMode,
  1094.             /* [in] */ VARIANT_BOOL fEnable);
  1095.         
  1096.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAssistedTelephonyPriority )( 
  1097.             ITTAPI * This,
  1098.             /* [in] */ BSTR pAppFilename,
  1099.             /* [in] */ VARIANT_BOOL fPriority);
  1100.         
  1101.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetApplicationPriority )( 
  1102.             ITTAPI * This,
  1103.             /* [in] */ BSTR pAppFilename,
  1104.             /* [in] */ long lMediaType,
  1105.             /* [in] */ VARIANT_BOOL fPriority);
  1106.         
  1107.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EventFilter )( 
  1108.             ITTAPI * This,
  1109.             /* [in] */ long lFilterMask);
  1110.         
  1111.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventFilter )( 
  1112.             ITTAPI * This,
  1113.             /* [retval][out] */ long *plFilterMask);
  1114.         
  1115.         END_INTERFACE
  1116.     } ITTAPIVtbl;
  1117.     interface ITTAPI
  1118.     {
  1119.         CONST_VTBL struct ITTAPIVtbl *lpVtbl;
  1120.     };
  1121.     
  1122. #ifdef COBJMACROS
  1123. #define ITTAPI_QueryInterface(This,riid,ppvObject)
  1124.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1125. #define ITTAPI_AddRef(This)
  1126.     (This)->lpVtbl -> AddRef(This)
  1127. #define ITTAPI_Release(This)
  1128.     (This)->lpVtbl -> Release(This)
  1129. #define ITTAPI_GetTypeInfoCount(This,pctinfo)
  1130.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1131. #define ITTAPI_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1132.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1133. #define ITTAPI_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1134.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1135. #define ITTAPI_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1136.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1137. #define ITTAPI_Initialize(This)
  1138.     (This)->lpVtbl -> Initialize(This)
  1139. #define ITTAPI_Shutdown(This)
  1140.     (This)->lpVtbl -> Shutdown(This)
  1141. #define ITTAPI_get_Addresses(This,pVariant)
  1142.     (This)->lpVtbl -> get_Addresses(This,pVariant)
  1143. #define ITTAPI_EnumerateAddresses(This,ppEnumAddress)
  1144.     (This)->lpVtbl -> EnumerateAddresses(This,ppEnumAddress)
  1145. #define ITTAPI_RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister)
  1146.     (This)->lpVtbl -> RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister)
  1147. #define ITTAPI_UnregisterNotifications(This,lRegister)
  1148.     (This)->lpVtbl -> UnregisterNotifications(This,lRegister)
  1149. #define ITTAPI_get_CallHubs(This,pVariant)
  1150.     (This)->lpVtbl -> get_CallHubs(This,pVariant)
  1151. #define ITTAPI_EnumerateCallHubs(This,ppEnumCallHub)
  1152.     (This)->lpVtbl -> EnumerateCallHubs(This,ppEnumCallHub)
  1153. #define ITTAPI_SetCallHubTracking(This,pAddresses,bTracking)
  1154.     (This)->lpVtbl -> SetCallHubTracking(This,pAddresses,bTracking)
  1155. #define ITTAPI_EnumeratePrivateTAPIObjects(This,ppEnumUnknown)
  1156.     (This)->lpVtbl -> EnumeratePrivateTAPIObjects(This,ppEnumUnknown)
  1157. #define ITTAPI_get_PrivateTAPIObjects(This,pVariant)
  1158.     (This)->lpVtbl -> get_PrivateTAPIObjects(This,pVariant)
  1159. #define ITTAPI_RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable)
  1160.     (This)->lpVtbl -> RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable)
  1161. #define ITTAPI_SetAssistedTelephonyPriority(This,pAppFilename,fPriority)
  1162.     (This)->lpVtbl -> SetAssistedTelephonyPriority(This,pAppFilename,fPriority)
  1163. #define ITTAPI_SetApplicationPriority(This,pAppFilename,lMediaType,fPriority)
  1164.     (This)->lpVtbl -> SetApplicationPriority(This,pAppFilename,lMediaType,fPriority)
  1165. #define ITTAPI_put_EventFilter(This,lFilterMask)
  1166.     (This)->lpVtbl -> put_EventFilter(This,lFilterMask)
  1167. #define ITTAPI_get_EventFilter(This,plFilterMask)
  1168.     (This)->lpVtbl -> get_EventFilter(This,plFilterMask)
  1169. #endif /* COBJMACROS */
  1170. #endif  /* C style interface */
  1171. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_Initialize_Proxy( 
  1172.     ITTAPI * This);
  1173. void __RPC_STUB ITTAPI_Initialize_Stub(
  1174.     IRpcStubBuffer *This,
  1175.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1176.     PRPC_MESSAGE _pRpcMessage,
  1177.     DWORD *_pdwStubPhase);
  1178. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_Shutdown_Proxy( 
  1179.     ITTAPI * This);
  1180. void __RPC_STUB ITTAPI_Shutdown_Stub(
  1181.     IRpcStubBuffer *This,
  1182.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1183.     PRPC_MESSAGE _pRpcMessage,
  1184.     DWORD *_pdwStubPhase);
  1185. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTAPI_get_Addresses_Proxy( 
  1186.     ITTAPI * This,
  1187.     /* [retval][out] */ VARIANT *pVariant);
  1188. void __RPC_STUB ITTAPI_get_Addresses_Stub(
  1189.     IRpcStubBuffer *This,
  1190.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1191.     PRPC_MESSAGE _pRpcMessage,
  1192.     DWORD *_pdwStubPhase);
  1193. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_EnumerateAddresses_Proxy( 
  1194.     ITTAPI * This,
  1195.     /* [retval][out] */ IEnumAddress **ppEnumAddress);
  1196. void __RPC_STUB ITTAPI_EnumerateAddresses_Stub(
  1197.     IRpcStubBuffer *This,
  1198.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1199.     PRPC_MESSAGE _pRpcMessage,
  1200.     DWORD *_pdwStubPhase);
  1201. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_RegisterCallNotifications_Proxy( 
  1202.     ITTAPI * This,
  1203.     /* [in] */ ITAddress *pAddress,
  1204.     /* [in] */ VARIANT_BOOL fMonitor,
  1205.     /* [in] */ VARIANT_BOOL fOwner,
  1206.     /* [in] */ long lMediaTypes,
  1207.     /* [in] */ long lCallbackInstance,
  1208.     /* [retval][out] */ long *plRegister);
  1209. void __RPC_STUB ITTAPI_RegisterCallNotifications_Stub(
  1210.     IRpcStubBuffer *This,
  1211.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1212.     PRPC_MESSAGE _pRpcMessage,
  1213.     DWORD *_pdwStubPhase);
  1214. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_UnregisterNotifications_Proxy( 
  1215.     ITTAPI * This,
  1216.     /* [in] */ long lRegister);
  1217. void __RPC_STUB ITTAPI_UnregisterNotifications_Stub(
  1218.     IRpcStubBuffer *This,
  1219.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1220.     PRPC_MESSAGE _pRpcMessage,
  1221.     DWORD *_pdwStubPhase);
  1222. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTAPI_get_CallHubs_Proxy( 
  1223.     ITTAPI * This,
  1224.     /* [retval][out] */ VARIANT *pVariant);
  1225. void __RPC_STUB ITTAPI_get_CallHubs_Stub(
  1226.     IRpcStubBuffer *This,
  1227.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1228.     PRPC_MESSAGE _pRpcMessage,
  1229.     DWORD *_pdwStubPhase);
  1230. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_EnumerateCallHubs_Proxy( 
  1231.     ITTAPI * This,
  1232.     /* [retval][out] */ IEnumCallHub **ppEnumCallHub);
  1233. void __RPC_STUB ITTAPI_EnumerateCallHubs_Stub(
  1234.     IRpcStubBuffer *This,
  1235.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1236.     PRPC_MESSAGE _pRpcMessage,
  1237.     DWORD *_pdwStubPhase);
  1238. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_SetCallHubTracking_Proxy( 
  1239.     ITTAPI * This,
  1240.     /* [in] */ VARIANT pAddresses,
  1241.     /* [in] */ VARIANT_BOOL bTracking);
  1242. void __RPC_STUB ITTAPI_SetCallHubTracking_Stub(
  1243.     IRpcStubBuffer *This,
  1244.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1245.     PRPC_MESSAGE _pRpcMessage,
  1246.     DWORD *_pdwStubPhase);
  1247. /* [hidden][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_EnumeratePrivateTAPIObjects_Proxy( 
  1248.     ITTAPI * This,
  1249.     /* [out] */ IEnumUnknown **ppEnumUnknown);
  1250. void __RPC_STUB ITTAPI_EnumeratePrivateTAPIObjects_Stub(
  1251.     IRpcStubBuffer *This,
  1252.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1253.     PRPC_MESSAGE _pRpcMessage,
  1254.     DWORD *_pdwStubPhase);
  1255. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTAPI_get_PrivateTAPIObjects_Proxy( 
  1256.     ITTAPI * This,
  1257.     /* [retval][out] */ VARIANT *pVariant);
  1258. void __RPC_STUB ITTAPI_get_PrivateTAPIObjects_Stub(
  1259.     IRpcStubBuffer *This,
  1260.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1261.     PRPC_MESSAGE _pRpcMessage,
  1262.     DWORD *_pdwStubPhase);
  1263. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_RegisterRequestRecipient_Proxy( 
  1264.     ITTAPI * This,
  1265.     /* [in] */ long lRegistrationInstance,
  1266.     /* [in] */ long lRequestMode,
  1267.     /* [in] */ VARIANT_BOOL fEnable);
  1268. void __RPC_STUB ITTAPI_RegisterRequestRecipient_Stub(
  1269.     IRpcStubBuffer *This,
  1270.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1271.     PRPC_MESSAGE _pRpcMessage,
  1272.     DWORD *_pdwStubPhase);
  1273. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_SetAssistedTelephonyPriority_Proxy( 
  1274.     ITTAPI * This,
  1275.     /* [in] */ BSTR pAppFilename,
  1276.     /* [in] */ VARIANT_BOOL fPriority);
  1277. void __RPC_STUB ITTAPI_SetAssistedTelephonyPriority_Stub(
  1278.     IRpcStubBuffer *This,
  1279.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1280.     PRPC_MESSAGE _pRpcMessage,
  1281.     DWORD *_pdwStubPhase);
  1282. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI_SetApplicationPriority_Proxy( 
  1283.     ITTAPI * This,
  1284.     /* [in] */ BSTR pAppFilename,
  1285.     /* [in] */ long lMediaType,
  1286.     /* [in] */ VARIANT_BOOL fPriority);
  1287. void __RPC_STUB ITTAPI_SetApplicationPriority_Stub(
  1288.     IRpcStubBuffer *This,
  1289.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1290.     PRPC_MESSAGE _pRpcMessage,
  1291.     DWORD *_pdwStubPhase);
  1292. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITTAPI_put_EventFilter_Proxy( 
  1293.     ITTAPI * This,
  1294.     /* [in] */ long lFilterMask);
  1295. void __RPC_STUB ITTAPI_put_EventFilter_Stub(
  1296.     IRpcStubBuffer *This,
  1297.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1298.     PRPC_MESSAGE _pRpcMessage,
  1299.     DWORD *_pdwStubPhase);
  1300. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTAPI_get_EventFilter_Proxy( 
  1301.     ITTAPI * This,
  1302.     /* [retval][out] */ long *plFilterMask);
  1303. void __RPC_STUB ITTAPI_get_EventFilter_Stub(
  1304.     IRpcStubBuffer *This,
  1305.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1306.     PRPC_MESSAGE _pRpcMessage,
  1307.     DWORD *_pdwStubPhase);
  1308. #endif  /* __ITTAPI_INTERFACE_DEFINED__ */
  1309. #ifndef __ITTAPI2_INTERFACE_DEFINED__
  1310. #define __ITTAPI2_INTERFACE_DEFINED__
  1311. /* interface ITTAPI2 */
  1312. /* [object][dual][helpstring][uuid] */ 
  1313. EXTERN_C const IID IID_ITTAPI2;
  1314. #if defined(__cplusplus) && !defined(CINTERFACE)
  1315.     
  1316.     MIDL_INTERFACE("54FBDC8C-D90F-4dad-9695-B373097F094B")
  1317.     ITTAPI2 : public ITTAPI
  1318.     {
  1319.     public:
  1320.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Phones( 
  1321.             /* [retval][out] */ VARIANT *pPhones) = 0;
  1322.         
  1323.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumeratePhones( 
  1324.             /* [retval][out] */ IEnumPhone **ppEnumPhone) = 0;
  1325.         
  1326.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateEmptyCollectionObject( 
  1327.             /* [retval][out] */ ITCollection2 **ppCollection) = 0;
  1328.         
  1329.     };
  1330.     
  1331. #else  /* C style interface */
  1332.     typedef struct ITTAPI2Vtbl
  1333.     {
  1334.         BEGIN_INTERFACE
  1335.         
  1336.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1337.             ITTAPI2 * This,
  1338.             /* [in] */ REFIID riid,
  1339.             /* [iid_is][out] */ void **ppvObject);
  1340.         
  1341.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1342.             ITTAPI2 * This);
  1343.         
  1344.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1345.             ITTAPI2 * This);
  1346.         
  1347.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1348.             ITTAPI2 * This,
  1349.             /* [out] */ UINT *pctinfo);
  1350.         
  1351.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1352.             ITTAPI2 * This,
  1353.             /* [in] */ UINT iTInfo,
  1354.             /* [in] */ LCID lcid,
  1355.             /* [out] */ ITypeInfo **ppTInfo);
  1356.         
  1357.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1358.             ITTAPI2 * This,
  1359.             /* [in] */ REFIID riid,
  1360.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1361.             /* [in] */ UINT cNames,
  1362.             /* [in] */ LCID lcid,
  1363.             /* [size_is][out] */ DISPID *rgDispId);
  1364.         
  1365.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1366.             ITTAPI2 * This,
  1367.             /* [in] */ DISPID dispIdMember,
  1368.             /* [in] */ REFIID riid,
  1369.             /* [in] */ LCID lcid,
  1370.             /* [in] */ WORD wFlags,
  1371.             /* [out][in] */ DISPPARAMS *pDispParams,
  1372.             /* [out] */ VARIANT *pVarResult,
  1373.             /* [out] */ EXCEPINFO *pExcepInfo,
  1374.             /* [out] */ UINT *puArgErr);
  1375.         
  1376.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Initialize )( 
  1377.             ITTAPI2 * This);
  1378.         
  1379.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Shutdown )( 
  1380.             ITTAPI2 * This);
  1381.         
  1382.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Addresses )( 
  1383.             ITTAPI2 * This,
  1384.             /* [retval][out] */ VARIANT *pVariant);
  1385.         
  1386.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateAddresses )( 
  1387.             ITTAPI2 * This,
  1388.             /* [retval][out] */ IEnumAddress **ppEnumAddress);
  1389.         
  1390.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RegisterCallNotifications )( 
  1391.             ITTAPI2 * This,
  1392.             /* [in] */ ITAddress *pAddress,
  1393.             /* [in] */ VARIANT_BOOL fMonitor,
  1394.             /* [in] */ VARIANT_BOOL fOwner,
  1395.             /* [in] */ long lMediaTypes,
  1396.             /* [in] */ long lCallbackInstance,
  1397.             /* [retval][out] */ long *plRegister);
  1398.         
  1399.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnregisterNotifications )( 
  1400.             ITTAPI2 * This,
  1401.             /* [in] */ long lRegister);
  1402.         
  1403.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CallHubs )( 
  1404.             ITTAPI2 * This,
  1405.             /* [retval][out] */ VARIANT *pVariant);
  1406.         
  1407.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateCallHubs )( 
  1408.             ITTAPI2 * This,
  1409.             /* [retval][out] */ IEnumCallHub **ppEnumCallHub);
  1410.         
  1411.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCallHubTracking )( 
  1412.             ITTAPI2 * This,
  1413.             /* [in] */ VARIANT pAddresses,
  1414.             /* [in] */ VARIANT_BOOL bTracking);
  1415.         
  1416.         /* [hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumeratePrivateTAPIObjects )( 
  1417.             ITTAPI2 * This,
  1418.             /* [out] */ IEnumUnknown **ppEnumUnknown);
  1419.         
  1420.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PrivateTAPIObjects )( 
  1421.             ITTAPI2 * This,
  1422.             /* [retval][out] */ VARIANT *pVariant);
  1423.         
  1424.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RegisterRequestRecipient )( 
  1425.             ITTAPI2 * This,
  1426.             /* [in] */ long lRegistrationInstance,
  1427.             /* [in] */ long lRequestMode,
  1428.             /* [in] */ VARIANT_BOOL fEnable);
  1429.         
  1430.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAssistedTelephonyPriority )( 
  1431.             ITTAPI2 * This,
  1432.             /* [in] */ BSTR pAppFilename,
  1433.             /* [in] */ VARIANT_BOOL fPriority);
  1434.         
  1435.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetApplicationPriority )( 
  1436.             ITTAPI2 * This,
  1437.             /* [in] */ BSTR pAppFilename,
  1438.             /* [in] */ long lMediaType,
  1439.             /* [in] */ VARIANT_BOOL fPriority);
  1440.         
  1441.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EventFilter )( 
  1442.             ITTAPI2 * This,
  1443.             /* [in] */ long lFilterMask);
  1444.         
  1445.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventFilter )( 
  1446.             ITTAPI2 * This,
  1447.             /* [retval][out] */ long *plFilterMask);
  1448.         
  1449.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Phones )( 
  1450.             ITTAPI2 * This,
  1451.             /* [retval][out] */ VARIANT *pPhones);
  1452.         
  1453.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumeratePhones )( 
  1454.             ITTAPI2 * This,
  1455.             /* [retval][out] */ IEnumPhone **ppEnumPhone);
  1456.         
  1457.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateEmptyCollectionObject )( 
  1458.             ITTAPI2 * This,
  1459.             /* [retval][out] */ ITCollection2 **ppCollection);
  1460.         
  1461.         END_INTERFACE
  1462.     } ITTAPI2Vtbl;
  1463.     interface ITTAPI2
  1464.     {
  1465.         CONST_VTBL struct ITTAPI2Vtbl *lpVtbl;
  1466.     };
  1467.     
  1468. #ifdef COBJMACROS
  1469. #define ITTAPI2_QueryInterface(This,riid,ppvObject)
  1470.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1471. #define ITTAPI2_AddRef(This)
  1472.     (This)->lpVtbl -> AddRef(This)
  1473. #define ITTAPI2_Release(This)
  1474.     (This)->lpVtbl -> Release(This)
  1475. #define ITTAPI2_GetTypeInfoCount(This,pctinfo)
  1476.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1477. #define ITTAPI2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1478.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1479. #define ITTAPI2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1480.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1481. #define ITTAPI2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1482.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1483. #define ITTAPI2_Initialize(This)
  1484.     (This)->lpVtbl -> Initialize(This)
  1485. #define ITTAPI2_Shutdown(This)
  1486.     (This)->lpVtbl -> Shutdown(This)
  1487. #define ITTAPI2_get_Addresses(This,pVariant)
  1488.     (This)->lpVtbl -> get_Addresses(This,pVariant)
  1489. #define ITTAPI2_EnumerateAddresses(This,ppEnumAddress)
  1490.     (This)->lpVtbl -> EnumerateAddresses(This,ppEnumAddress)
  1491. #define ITTAPI2_RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister)
  1492.     (This)->lpVtbl -> RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister)
  1493. #define ITTAPI2_UnregisterNotifications(This,lRegister)
  1494.     (This)->lpVtbl -> UnregisterNotifications(This,lRegister)
  1495. #define ITTAPI2_get_CallHubs(This,pVariant)
  1496.     (This)->lpVtbl -> get_CallHubs(This,pVariant)
  1497. #define ITTAPI2_EnumerateCallHubs(This,ppEnumCallHub)
  1498.     (This)->lpVtbl -> EnumerateCallHubs(This,ppEnumCallHub)
  1499. #define ITTAPI2_SetCallHubTracking(This,pAddresses,bTracking)
  1500.     (This)->lpVtbl -> SetCallHubTracking(This,pAddresses,bTracking)
  1501. #define ITTAPI2_EnumeratePrivateTAPIObjects(This,ppEnumUnknown)
  1502.     (This)->lpVtbl -> EnumeratePrivateTAPIObjects(This,ppEnumUnknown)
  1503. #define ITTAPI2_get_PrivateTAPIObjects(This,pVariant)
  1504.     (This)->lpVtbl -> get_PrivateTAPIObjects(This,pVariant)
  1505. #define ITTAPI2_RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable)
  1506.     (This)->lpVtbl -> RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable)
  1507. #define ITTAPI2_SetAssistedTelephonyPriority(This,pAppFilename,fPriority)
  1508.     (This)->lpVtbl -> SetAssistedTelephonyPriority(This,pAppFilename,fPriority)
  1509. #define ITTAPI2_SetApplicationPriority(This,pAppFilename,lMediaType,fPriority)
  1510.     (This)->lpVtbl -> SetApplicationPriority(This,pAppFilename,lMediaType,fPriority)
  1511. #define ITTAPI2_put_EventFilter(This,lFilterMask)
  1512.     (This)->lpVtbl -> put_EventFilter(This,lFilterMask)
  1513. #define ITTAPI2_get_EventFilter(This,plFilterMask)
  1514.     (This)->lpVtbl -> get_EventFilter(This,plFilterMask)
  1515. #define ITTAPI2_get_Phones(This,pPhones)
  1516.     (This)->lpVtbl -> get_Phones(This,pPhones)
  1517. #define ITTAPI2_EnumeratePhones(This,ppEnumPhone)
  1518.     (This)->lpVtbl -> EnumeratePhones(This,ppEnumPhone)
  1519. #define ITTAPI2_CreateEmptyCollectionObject(This,ppCollection)
  1520.     (This)->lpVtbl -> CreateEmptyCollectionObject(This,ppCollection)
  1521. #endif /* COBJMACROS */
  1522. #endif  /* C style interface */
  1523. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTAPI2_get_Phones_Proxy( 
  1524.     ITTAPI2 * This,
  1525.     /* [retval][out] */ VARIANT *pPhones);
  1526. void __RPC_STUB ITTAPI2_get_Phones_Stub(
  1527.     IRpcStubBuffer *This,
  1528.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1529.     PRPC_MESSAGE _pRpcMessage,
  1530.     DWORD *_pdwStubPhase);
  1531. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITTAPI2_EnumeratePhones_Proxy( 
  1532.     ITTAPI2 * This,
  1533.     /* [retval][out] */ IEnumPhone **ppEnumPhone);
  1534. void __RPC_STUB ITTAPI2_EnumeratePhones_Stub(
  1535.     IRpcStubBuffer *This,
  1536.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1537.     PRPC_MESSAGE _pRpcMessage,
  1538.     DWORD *_pdwStubPhase);
  1539. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTAPI2_CreateEmptyCollectionObject_Proxy( 
  1540.     ITTAPI2 * This,
  1541.     /* [retval][out] */ ITCollection2 **ppCollection);
  1542. void __RPC_STUB ITTAPI2_CreateEmptyCollectionObject_Stub(
  1543.     IRpcStubBuffer *This,
  1544.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1545.     PRPC_MESSAGE _pRpcMessage,
  1546.     DWORD *_pdwStubPhase);
  1547. #endif  /* __ITTAPI2_INTERFACE_DEFINED__ */
  1548. #ifndef __ITMediaSupport_INTERFACE_DEFINED__
  1549. #define __ITMediaSupport_INTERFACE_DEFINED__
  1550. /* interface ITMediaSupport */
  1551. /* [object][dual][helpstring][uuid] */ 
  1552. EXTERN_C const IID IID_ITMediaSupport;
  1553. #if defined(__cplusplus) && !defined(CINTERFACE)
  1554.     
  1555.     MIDL_INTERFACE("B1EFC384-9355-11d0-835C-00AA003CCABD")
  1556.     ITMediaSupport : public IDispatch
  1557.     {
  1558.     public:
  1559.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaTypes( 
  1560.             /* [retval][out] */ long *plMediaTypes) = 0;
  1561.         
  1562.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE QueryMediaType( 
  1563.             /* [in] */ long lMediaType,
  1564.             /* [retval][out] */ VARIANT_BOOL *pfSupport) = 0;
  1565.         
  1566.     };
  1567.     
  1568. #else  /* C style interface */
  1569.     typedef struct ITMediaSupportVtbl
  1570.     {
  1571.         BEGIN_INTERFACE
  1572.         
  1573.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1574.             ITMediaSupport * This,
  1575.             /* [in] */ REFIID riid,
  1576.             /* [iid_is][out] */ void **ppvObject);
  1577.         
  1578.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1579.             ITMediaSupport * This);
  1580.         
  1581.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1582.             ITMediaSupport * This);
  1583.         
  1584.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1585.             ITMediaSupport * This,
  1586.             /* [out] */ UINT *pctinfo);
  1587.         
  1588.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1589.             ITMediaSupport * This,
  1590.             /* [in] */ UINT iTInfo,
  1591.             /* [in] */ LCID lcid,
  1592.             /* [out] */ ITypeInfo **ppTInfo);
  1593.         
  1594.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1595.             ITMediaSupport * This,
  1596.             /* [in] */ REFIID riid,
  1597.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1598.             /* [in] */ UINT cNames,
  1599.             /* [in] */ LCID lcid,
  1600.             /* [size_is][out] */ DISPID *rgDispId);
  1601.         
  1602.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1603.             ITMediaSupport * This,
  1604.             /* [in] */ DISPID dispIdMember,
  1605.             /* [in] */ REFIID riid,
  1606.             /* [in] */ LCID lcid,
  1607.             /* [in] */ WORD wFlags,
  1608.             /* [out][in] */ DISPPARAMS *pDispParams,
  1609.             /* [out] */ VARIANT *pVarResult,
  1610.             /* [out] */ EXCEPINFO *pExcepInfo,
  1611.             /* [out] */ UINT *puArgErr);
  1612.         
  1613.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaTypes )( 
  1614.             ITMediaSupport * This,
  1615.             /* [retval][out] */ long *plMediaTypes);
  1616.         
  1617.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *QueryMediaType )( 
  1618.             ITMediaSupport * This,
  1619.             /* [in] */ long lMediaType,
  1620.             /* [retval][out] */ VARIANT_BOOL *pfSupport);
  1621.         
  1622.         END_INTERFACE
  1623.     } ITMediaSupportVtbl;
  1624.     interface ITMediaSupport
  1625.     {
  1626.         CONST_VTBL struct ITMediaSupportVtbl *lpVtbl;
  1627.     };
  1628.     
  1629. #ifdef COBJMACROS
  1630. #define ITMediaSupport_QueryInterface(This,riid,ppvObject)
  1631.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1632. #define ITMediaSupport_AddRef(This)
  1633.     (This)->lpVtbl -> AddRef(This)
  1634. #define ITMediaSupport_Release(This)
  1635.     (This)->lpVtbl -> Release(This)
  1636. #define ITMediaSupport_GetTypeInfoCount(This,pctinfo)
  1637.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1638. #define ITMediaSupport_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1639.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1640. #define ITMediaSupport_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1641.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1642. #define ITMediaSupport_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1643.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1644. #define ITMediaSupport_get_MediaTypes(This,plMediaTypes)
  1645.     (This)->lpVtbl -> get_MediaTypes(This,plMediaTypes)
  1646. #define ITMediaSupport_QueryMediaType(This,lMediaType,pfSupport)
  1647.     (This)->lpVtbl -> QueryMediaType(This,lMediaType,pfSupport)
  1648. #endif /* COBJMACROS */
  1649. #endif  /* C style interface */
  1650. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITMediaSupport_get_MediaTypes_Proxy( 
  1651.     ITMediaSupport * This,
  1652.     /* [retval][out] */ long *plMediaTypes);
  1653. void __RPC_STUB ITMediaSupport_get_MediaTypes_Stub(
  1654.     IRpcStubBuffer *This,
  1655.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1656.     PRPC_MESSAGE _pRpcMessage,
  1657.     DWORD *_pdwStubPhase);
  1658. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITMediaSupport_QueryMediaType_Proxy( 
  1659.     ITMediaSupport * This,
  1660.     /* [in] */ long lMediaType,
  1661.     /* [retval][out] */ VARIANT_BOOL *pfSupport);
  1662. void __RPC_STUB ITMediaSupport_QueryMediaType_Stub(
  1663.     IRpcStubBuffer *This,
  1664.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1665.     PRPC_MESSAGE _pRpcMessage,
  1666.     DWORD *_pdwStubPhase);
  1667. #endif  /* __ITMediaSupport_INTERFACE_DEFINED__ */
  1668. #ifndef __ITPluggableTerminalClassInfo_INTERFACE_DEFINED__
  1669. #define __ITPluggableTerminalClassInfo_INTERFACE_DEFINED__
  1670. /* interface ITPluggableTerminalClassInfo */
  1671. /* [object][dual][helpstring][uuid] */ 
  1672. EXTERN_C const IID IID_ITPluggableTerminalClassInfo;
  1673. #if defined(__cplusplus) && !defined(CINTERFACE)
  1674.     
  1675.     MIDL_INTERFACE("41757F4A-CF09-4b34-BC96-0A79D2390076")
  1676.     ITPluggableTerminalClassInfo : public IDispatch
  1677.     {
  1678.     public:
  1679.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1680.             /* [retval][out] */ BSTR *pName) = 0;
  1681.         
  1682.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Company( 
  1683.             /* [retval][out] */ BSTR *pCompany) = 0;
  1684.         
  1685.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Version( 
  1686.             /* [retval][out] */ BSTR *pVersion) = 0;
  1687.         
  1688.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_TerminalClass( 
  1689.             /* [retval][out] */ BSTR *pTerminalClass) = 0;
  1690.         
  1691.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_CLSID( 
  1692.             /* [retval][out] */ BSTR *pCLSID) = 0;
  1693.         
  1694.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Direction( 
  1695.             /* [retval][out] */ TERMINAL_DIRECTION *pDirection) = 0;
  1696.         
  1697.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_MediaTypes( 
  1698.             /* [retval][out] */ long *pMediaTypes) = 0;
  1699.         
  1700.     };
  1701.     
  1702. #else  /* C style interface */
  1703.     typedef struct ITPluggableTerminalClassInfoVtbl
  1704.     {
  1705.         BEGIN_INTERFACE
  1706.         
  1707.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1708.             ITPluggableTerminalClassInfo * This,
  1709.             /* [in] */ REFIID riid,
  1710.             /* [iid_is][out] */ void **ppvObject);
  1711.         
  1712.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1713.             ITPluggableTerminalClassInfo * This);
  1714.         
  1715.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1716.             ITPluggableTerminalClassInfo * This);
  1717.         
  1718.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1719.             ITPluggableTerminalClassInfo * This,
  1720.             /* [out] */ UINT *pctinfo);
  1721.         
  1722.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1723.             ITPluggableTerminalClassInfo * This,
  1724.             /* [in] */ UINT iTInfo,
  1725.             /* [in] */ LCID lcid,
  1726.             /* [out] */ ITypeInfo **ppTInfo);
  1727.         
  1728.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1729.             ITPluggableTerminalClassInfo * This,
  1730.             /* [in] */ REFIID riid,
  1731.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1732.             /* [in] */ UINT cNames,
  1733.             /* [in] */ LCID lcid,
  1734.             /* [size_is][out] */ DISPID *rgDispId);
  1735.         
  1736.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1737.             ITPluggableTerminalClassInfo * This,
  1738.             /* [in] */ DISPID dispIdMember,
  1739.             /* [in] */ REFIID riid,
  1740.             /* [in] */ LCID lcid,
  1741.             /* [in] */ WORD wFlags,
  1742.             /* [out][in] */ DISPPARAMS *pDispParams,
  1743.             /* [out] */ VARIANT *pVarResult,
  1744.             /* [out] */ EXCEPINFO *pExcepInfo,
  1745.             /* [out] */ UINT *puArgErr);
  1746.         
  1747.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  1748.             ITPluggableTerminalClassInfo * This,
  1749.             /* [retval][out] */ BSTR *pName);
  1750.         
  1751.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Company )( 
  1752.             ITPluggableTerminalClassInfo * This,
  1753.             /* [retval][out] */ BSTR *pCompany);
  1754.         
  1755.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( 
  1756.             ITPluggableTerminalClassInfo * This,
  1757.             /* [retval][out] */ BSTR *pVersion);
  1758.         
  1759.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TerminalClass )( 
  1760.             ITPluggableTerminalClassInfo * This,
  1761.             /* [retval][out] */ BSTR *pTerminalClass);
  1762.         
  1763.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CLSID )( 
  1764.             ITPluggableTerminalClassInfo * This,
  1765.             /* [retval][out] */ BSTR *pCLSID);
  1766.         
  1767.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
  1768.             ITPluggableTerminalClassInfo * This,
  1769.             /* [retval][out] */ TERMINAL_DIRECTION *pDirection);
  1770.         
  1771.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MediaTypes )( 
  1772.             ITPluggableTerminalClassInfo * This,
  1773.             /* [retval][out] */ long *pMediaTypes);
  1774.         
  1775.         END_INTERFACE
  1776.     } ITPluggableTerminalClassInfoVtbl;
  1777.     interface ITPluggableTerminalClassInfo
  1778.     {
  1779.         CONST_VTBL struct ITPluggableTerminalClassInfoVtbl *lpVtbl;
  1780.     };
  1781.     
  1782. #ifdef COBJMACROS
  1783. #define ITPluggableTerminalClassInfo_QueryInterface(This,riid,ppvObject)
  1784.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1785. #define ITPluggableTerminalClassInfo_AddRef(This)
  1786.     (This)->lpVtbl -> AddRef(This)
  1787. #define ITPluggableTerminalClassInfo_Release(This)
  1788.     (This)->lpVtbl -> Release(This)
  1789. #define ITPluggableTerminalClassInfo_GetTypeInfoCount(This,pctinfo)
  1790.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1791. #define ITPluggableTerminalClassInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1792.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1793. #define ITPluggableTerminalClassInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1794.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1795. #define ITPluggableTerminalClassInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1796.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1797. #define ITPluggableTerminalClassInfo_get_Name(This,pName)
  1798.     (This)->lpVtbl -> get_Name(This,pName)
  1799. #define ITPluggableTerminalClassInfo_get_Company(This,pCompany)
  1800.     (This)->lpVtbl -> get_Company(This,pCompany)
  1801. #define ITPluggableTerminalClassInfo_get_Version(This,pVersion)
  1802.     (This)->lpVtbl -> get_Version(This,pVersion)
  1803. #define ITPluggableTerminalClassInfo_get_TerminalClass(This,pTerminalClass)
  1804.     (This)->lpVtbl -> get_TerminalClass(This,pTerminalClass)
  1805. #define ITPluggableTerminalClassInfo_get_CLSID(This,pCLSID)
  1806.     (This)->lpVtbl -> get_CLSID(This,pCLSID)
  1807. #define ITPluggableTerminalClassInfo_get_Direction(This,pDirection)
  1808.     (This)->lpVtbl -> get_Direction(This,pDirection)
  1809. #define ITPluggableTerminalClassInfo_get_MediaTypes(This,pMediaTypes)
  1810.     (This)->lpVtbl -> get_MediaTypes(This,pMediaTypes)
  1811. #endif /* COBJMACROS */
  1812. #endif  /* C style interface */
  1813. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalClassInfo_get_Name_Proxy( 
  1814.     ITPluggableTerminalClassInfo * This,
  1815.     /* [retval][out] */ BSTR *pName);
  1816. void __RPC_STUB ITPluggableTerminalClassInfo_get_Name_Stub(
  1817.     IRpcStubBuffer *This,
  1818.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1819.     PRPC_MESSAGE _pRpcMessage,
  1820.     DWORD *_pdwStubPhase);
  1821. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalClassInfo_get_Company_Proxy( 
  1822.     ITPluggableTerminalClassInfo * This,
  1823.     /* [retval][out] */ BSTR *pCompany);
  1824. void __RPC_STUB ITPluggableTerminalClassInfo_get_Company_Stub(
  1825.     IRpcStubBuffer *This,
  1826.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1827.     PRPC_MESSAGE _pRpcMessage,
  1828.     DWORD *_pdwStubPhase);
  1829. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalClassInfo_get_Version_Proxy( 
  1830.     ITPluggableTerminalClassInfo * This,
  1831.     /* [retval][out] */ BSTR *pVersion);
  1832. void __RPC_STUB ITPluggableTerminalClassInfo_get_Version_Stub(
  1833.     IRpcStubBuffer *This,
  1834.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1835.     PRPC_MESSAGE _pRpcMessage,
  1836.     DWORD *_pdwStubPhase);
  1837. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalClassInfo_get_TerminalClass_Proxy( 
  1838.     ITPluggableTerminalClassInfo * This,
  1839.     /* [retval][out] */ BSTR *pTerminalClass);
  1840. void __RPC_STUB ITPluggableTerminalClassInfo_get_TerminalClass_Stub(
  1841.     IRpcStubBuffer *This,
  1842.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1843.     PRPC_MESSAGE _pRpcMessage,
  1844.     DWORD *_pdwStubPhase);
  1845. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalClassInfo_get_CLSID_Proxy( 
  1846.     ITPluggableTerminalClassInfo * This,
  1847.     /* [retval][out] */ BSTR *pCLSID);
  1848. void __RPC_STUB ITPluggableTerminalClassInfo_get_CLSID_Stub(
  1849.     IRpcStubBuffer *This,
  1850.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1851.     PRPC_MESSAGE _pRpcMessage,
  1852.     DWORD *_pdwStubPhase);
  1853. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalClassInfo_get_Direction_Proxy( 
  1854.     ITPluggableTerminalClassInfo * This,
  1855.     /* [retval][out] */ TERMINAL_DIRECTION *pDirection);
  1856. void __RPC_STUB ITPluggableTerminalClassInfo_get_Direction_Stub(
  1857.     IRpcStubBuffer *This,
  1858.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1859.     PRPC_MESSAGE _pRpcMessage,
  1860.     DWORD *_pdwStubPhase);
  1861. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalClassInfo_get_MediaTypes_Proxy( 
  1862.     ITPluggableTerminalClassInfo * This,
  1863.     /* [retval][out] */ long *pMediaTypes);
  1864. void __RPC_STUB ITPluggableTerminalClassInfo_get_MediaTypes_Stub(
  1865.     IRpcStubBuffer *This,
  1866.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1867.     PRPC_MESSAGE _pRpcMessage,
  1868.     DWORD *_pdwStubPhase);
  1869. #endif  /* __ITPluggableTerminalClassInfo_INTERFACE_DEFINED__ */
  1870. #ifndef __ITPluggableTerminalSuperclassInfo_INTERFACE_DEFINED__
  1871. #define __ITPluggableTerminalSuperclassInfo_INTERFACE_DEFINED__
  1872. /* interface ITPluggableTerminalSuperclassInfo */
  1873. /* [object][dual][helpstring][uuid] */ 
  1874. EXTERN_C const IID IID_ITPluggableTerminalSuperclassInfo;
  1875. #if defined(__cplusplus) && !defined(CINTERFACE)
  1876.     
  1877.     MIDL_INTERFACE("6D54E42C-4625-4359-A6F7-631999107E05")
  1878.     ITPluggableTerminalSuperclassInfo : public IDispatch
  1879.     {
  1880.     public:
  1881.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1882.             /* [retval][out] */ BSTR *pName) = 0;
  1883.         
  1884.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_CLSID( 
  1885.             /* [retval][out] */ BSTR *pCLSID) = 0;
  1886.         
  1887.     };
  1888.     
  1889. #else  /* C style interface */
  1890.     typedef struct ITPluggableTerminalSuperclassInfoVtbl
  1891.     {
  1892.         BEGIN_INTERFACE
  1893.         
  1894.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1895.             ITPluggableTerminalSuperclassInfo * This,
  1896.             /* [in] */ REFIID riid,
  1897.             /* [iid_is][out] */ void **ppvObject);
  1898.         
  1899.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1900.             ITPluggableTerminalSuperclassInfo * This);
  1901.         
  1902.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1903.             ITPluggableTerminalSuperclassInfo * This);
  1904.         
  1905.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1906.             ITPluggableTerminalSuperclassInfo * This,
  1907.             /* [out] */ UINT *pctinfo);
  1908.         
  1909.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1910.             ITPluggableTerminalSuperclassInfo * This,
  1911.             /* [in] */ UINT iTInfo,
  1912.             /* [in] */ LCID lcid,
  1913.             /* [out] */ ITypeInfo **ppTInfo);
  1914.         
  1915.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1916.             ITPluggableTerminalSuperclassInfo * This,
  1917.             /* [in] */ REFIID riid,
  1918.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1919.             /* [in] */ UINT cNames,
  1920.             /* [in] */ LCID lcid,
  1921.             /* [size_is][out] */ DISPID *rgDispId);
  1922.         
  1923.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1924.             ITPluggableTerminalSuperclassInfo * This,
  1925.             /* [in] */ DISPID dispIdMember,
  1926.             /* [in] */ REFIID riid,
  1927.             /* [in] */ LCID lcid,
  1928.             /* [in] */ WORD wFlags,
  1929.             /* [out][in] */ DISPPARAMS *pDispParams,
  1930.             /* [out] */ VARIANT *pVarResult,
  1931.             /* [out] */ EXCEPINFO *pExcepInfo,
  1932.             /* [out] */ UINT *puArgErr);
  1933.         
  1934.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  1935.             ITPluggableTerminalSuperclassInfo * This,
  1936.             /* [retval][out] */ BSTR *pName);
  1937.         
  1938.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CLSID )( 
  1939.             ITPluggableTerminalSuperclassInfo * This,
  1940.             /* [retval][out] */ BSTR *pCLSID);
  1941.         
  1942.         END_INTERFACE
  1943.     } ITPluggableTerminalSuperclassInfoVtbl;
  1944.     interface ITPluggableTerminalSuperclassInfo
  1945.     {
  1946.         CONST_VTBL struct ITPluggableTerminalSuperclassInfoVtbl *lpVtbl;
  1947.     };
  1948.     
  1949. #ifdef COBJMACROS
  1950. #define ITPluggableTerminalSuperclassInfo_QueryInterface(This,riid,ppvObject)
  1951.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1952. #define ITPluggableTerminalSuperclassInfo_AddRef(This)
  1953.     (This)->lpVtbl -> AddRef(This)
  1954. #define ITPluggableTerminalSuperclassInfo_Release(This)
  1955.     (This)->lpVtbl -> Release(This)
  1956. #define ITPluggableTerminalSuperclassInfo_GetTypeInfoCount(This,pctinfo)
  1957.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1958. #define ITPluggableTerminalSuperclassInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1959.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1960. #define ITPluggableTerminalSuperclassInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1961.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1962. #define ITPluggableTerminalSuperclassInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1963.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1964. #define ITPluggableTerminalSuperclassInfo_get_Name(This,pName)
  1965.     (This)->lpVtbl -> get_Name(This,pName)
  1966. #define ITPluggableTerminalSuperclassInfo_get_CLSID(This,pCLSID)
  1967.     (This)->lpVtbl -> get_CLSID(This,pCLSID)
  1968. #endif /* COBJMACROS */
  1969. #endif  /* C style interface */
  1970. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalSuperclassInfo_get_Name_Proxy( 
  1971.     ITPluggableTerminalSuperclassInfo * This,
  1972.     /* [retval][out] */ BSTR *pName);
  1973. void __RPC_STUB ITPluggableTerminalSuperclassInfo_get_Name_Stub(
  1974.     IRpcStubBuffer *This,
  1975.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1976.     PRPC_MESSAGE _pRpcMessage,
  1977.     DWORD *_pdwStubPhase);
  1978. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ITPluggableTerminalSuperclassInfo_get_CLSID_Proxy( 
  1979.     ITPluggableTerminalSuperclassInfo * This,
  1980.     /* [retval][out] */ BSTR *pCLSID);
  1981. void __RPC_STUB ITPluggableTerminalSuperclassInfo_get_CLSID_Stub(
  1982.     IRpcStubBuffer *This,
  1983.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1984.     PRPC_MESSAGE _pRpcMessage,
  1985.     DWORD *_pdwStubPhase);
  1986. #endif  /* __ITPluggableTerminalSuperclassInfo_INTERFACE_DEFINED__ */
  1987. #ifndef __ITTerminalSupport_INTERFACE_DEFINED__
  1988. #define __ITTerminalSupport_INTERFACE_DEFINED__
  1989. /* interface ITTerminalSupport */
  1990. /* [object][dual][helpstring][uuid] */ 
  1991. EXTERN_C const IID IID_ITTerminalSupport;
  1992. #if defined(__cplusplus) && !defined(CINTERFACE)
  1993.     
  1994.     MIDL_INTERFACE("B1EFC385-9355-11d0-835C-00AA003CCABD")
  1995.     ITTerminalSupport : public IDispatch
  1996.     {
  1997.     public:
  1998.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StaticTerminals( 
  1999.             /* [retval][out] */ VARIANT *pVariant) = 0;
  2000.         
  2001.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumerateStaticTerminals( 
  2002.             /* [retval][out] */ IEnumTerminal **ppTerminalEnumerator) = 0;
  2003.         
  2004.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DynamicTerminalClasses( 
  2005.             /* [retval][out] */ VARIANT *pVariant) = 0;
  2006.         
  2007.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumerateDynamicTerminalClasses( 
  2008.             /* [retval][out] */ IEnumTerminalClass **ppTerminalClassEnumerator) = 0;
  2009.         
  2010.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateTerminal( 
  2011.             /* [in] */ BSTR pTerminalClass,
  2012.             /* [in] */ long lMediaType,
  2013.             /* [in] */ TERMINAL_DIRECTION Direction,
  2014.             /* [retval][out] */ ITTerminal **ppTerminal) = 0;
  2015.         
  2016.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDefaultStaticTerminal( 
  2017.             /* [in] */ long lMediaType,
  2018.             /* [in] */ TERMINAL_DIRECTION Direction,
  2019.             /* [retval][out] */ ITTerminal **ppTerminal) = 0;
  2020.         
  2021.     };
  2022.     
  2023. #else  /* C style interface */
  2024.     typedef struct ITTerminalSupportVtbl
  2025.     {
  2026.         BEGIN_INTERFACE
  2027.         
  2028.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2029.             ITTerminalSupport * This,
  2030.             /* [in] */ REFIID riid,
  2031.             /* [iid_is][out] */ void **ppvObject);
  2032.         
  2033.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2034.             ITTerminalSupport * This);
  2035.         
  2036.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2037.             ITTerminalSupport * This);
  2038.         
  2039.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2040.             ITTerminalSupport * This,
  2041.             /* [out] */ UINT *pctinfo);
  2042.         
  2043.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2044.             ITTerminalSupport * This,
  2045.             /* [in] */ UINT iTInfo,
  2046.             /* [in] */ LCID lcid,
  2047.             /* [out] */ ITypeInfo **ppTInfo);
  2048.         
  2049.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2050.             ITTerminalSupport * This,
  2051.             /* [in] */ REFIID riid,
  2052.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2053.             /* [in] */ UINT cNames,
  2054.             /* [in] */ LCID lcid,
  2055.             /* [size_is][out] */ DISPID *rgDispId);
  2056.         
  2057.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2058.             ITTerminalSupport * This,
  2059.             /* [in] */ DISPID dispIdMember,
  2060.             /* [in] */ REFIID riid,
  2061.             /* [in] */ LCID lcid,
  2062.             /* [in] */ WORD wFlags,
  2063.             /* [out][in] */ DISPPARAMS *pDispParams,
  2064.             /* [out] */ VARIANT *pVarResult,
  2065.             /* [out] */ EXCEPINFO *pExcepInfo,
  2066.             /* [out] */ UINT *puArgErr);
  2067.         
  2068.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StaticTerminals )( 
  2069.             ITTerminalSupport * This,
  2070.             /* [retval][out] */ VARIANT *pVariant);
  2071.         
  2072.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateStaticTerminals )( 
  2073.             ITTerminalSupport * This,
  2074.             /* [retval][out] */ IEnumTerminal **ppTerminalEnumerator);
  2075.         
  2076.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DynamicTerminalClasses )( 
  2077.             ITTerminalSupport * This,
  2078.             /* [retval][out] */ VARIANT *pVariant);
  2079.         
  2080.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateDynamicTerminalClasses )( 
  2081.             ITTerminalSupport * This,
  2082.             /* [retval][out] */ IEnumTerminalClass **ppTerminalClassEnumerator);
  2083.         
  2084.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateTerminal )( 
  2085.             ITTerminalSupport * This,
  2086.             /* [in] */ BSTR pTerminalClass,
  2087.             /* [in] */ long lMediaType,
  2088.             /* [in] */ TERMINAL_DIRECTION Direction,
  2089.             /* [retval][out] */ ITTerminal **ppTerminal);
  2090.         
  2091.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDefaultStaticTerminal )( 
  2092.             ITTerminalSupport * This,
  2093.             /* [in] */ long lMediaType,
  2094.             /* [in] */ TERMINAL_DIRECTION Direction,
  2095.             /* [retval][out] */ ITTerminal **ppTerminal);
  2096.         
  2097.         END_INTERFACE
  2098.     } ITTerminalSupportVtbl;
  2099.     interface ITTerminalSupport
  2100.     {
  2101.         CONST_VTBL struct ITTerminalSupportVtbl *lpVtbl;
  2102.     };
  2103.     
  2104. #ifdef COBJMACROS
  2105. #define ITTerminalSupport_QueryInterface(This,riid,ppvObject)
  2106.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2107. #define ITTerminalSupport_AddRef(This)
  2108.     (This)->lpVtbl -> AddRef(This)
  2109. #define ITTerminalSupport_Release(This)
  2110.     (This)->lpVtbl -> Release(This)
  2111. #define ITTerminalSupport_GetTypeInfoCount(This,pctinfo)
  2112.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2113. #define ITTerminalSupport_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2114.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2115. #define ITTerminalSupport_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2116.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2117. #define ITTerminalSupport_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2118.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2119. #define ITTerminalSupport_get_StaticTerminals(This,pVariant)
  2120.     (This)->lpVtbl -> get_StaticTerminals(This,pVariant)
  2121. #define ITTerminalSupport_EnumerateStaticTerminals(This,ppTerminalEnumerator)
  2122.     (This)->lpVtbl -> EnumerateStaticTerminals(This,ppTerminalEnumerator)
  2123. #define ITTerminalSupport_get_DynamicTerminalClasses(This,pVariant)
  2124.     (This)->lpVtbl -> get_DynamicTerminalClasses(This,pVariant)
  2125. #define ITTerminalSupport_EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator)
  2126.     (This)->lpVtbl -> EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator)
  2127. #define ITTerminalSupport_CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal)
  2128.     (This)->lpVtbl -> CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal)
  2129. #define ITTerminalSupport_GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal)
  2130.     (This)->lpVtbl -> GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal)
  2131. #endif /* COBJMACROS */
  2132. #endif  /* C style interface */
  2133. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport_get_StaticTerminals_Proxy( 
  2134.     ITTerminalSupport * This,
  2135.     /* [retval][out] */ VARIANT *pVariant);
  2136. void __RPC_STUB ITTerminalSupport_get_StaticTerminals_Stub(
  2137.     IRpcStubBuffer *This,
  2138.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2139.     PRPC_MESSAGE _pRpcMessage,
  2140.     DWORD *_pdwStubPhase);
  2141. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport_EnumerateStaticTerminals_Proxy( 
  2142.     ITTerminalSupport * This,
  2143.     /* [retval][out] */ IEnumTerminal **ppTerminalEnumerator);
  2144. void __RPC_STUB ITTerminalSupport_EnumerateStaticTerminals_Stub(
  2145.     IRpcStubBuffer *This,
  2146.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2147.     PRPC_MESSAGE _pRpcMessage,
  2148.     DWORD *_pdwStubPhase);
  2149. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport_get_DynamicTerminalClasses_Proxy( 
  2150.     ITTerminalSupport * This,
  2151.     /* [retval][out] */ VARIANT *pVariant);
  2152. void __RPC_STUB ITTerminalSupport_get_DynamicTerminalClasses_Stub(
  2153.     IRpcStubBuffer *This,
  2154.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2155.     PRPC_MESSAGE _pRpcMessage,
  2156.     DWORD *_pdwStubPhase);
  2157. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport_EnumerateDynamicTerminalClasses_Proxy( 
  2158.     ITTerminalSupport * This,
  2159.     /* [retval][out] */ IEnumTerminalClass **ppTerminalClassEnumerator);
  2160. void __RPC_STUB ITTerminalSupport_EnumerateDynamicTerminalClasses_Stub(
  2161.     IRpcStubBuffer *This,
  2162.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2163.     PRPC_MESSAGE _pRpcMessage,
  2164.     DWORD *_pdwStubPhase);
  2165. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport_CreateTerminal_Proxy( 
  2166.     ITTerminalSupport * This,
  2167.     /* [in] */ BSTR pTerminalClass,
  2168.     /* [in] */ long lMediaType,
  2169.     /* [in] */ TERMINAL_DIRECTION Direction,
  2170.     /* [retval][out] */ ITTerminal **ppTerminal);
  2171. void __RPC_STUB ITTerminalSupport_CreateTerminal_Stub(
  2172.     IRpcStubBuffer *This,
  2173.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2174.     PRPC_MESSAGE _pRpcMessage,
  2175.     DWORD *_pdwStubPhase);
  2176. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport_GetDefaultStaticTerminal_Proxy( 
  2177.     ITTerminalSupport * This,
  2178.     /* [in] */ long lMediaType,
  2179.     /* [in] */ TERMINAL_DIRECTION Direction,
  2180.     /* [retval][out] */ ITTerminal **ppTerminal);
  2181. void __RPC_STUB ITTerminalSupport_GetDefaultStaticTerminal_Stub(
  2182.     IRpcStubBuffer *This,
  2183.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2184.     PRPC_MESSAGE _pRpcMessage,
  2185.     DWORD *_pdwStubPhase);
  2186. #endif  /* __ITTerminalSupport_INTERFACE_DEFINED__ */
  2187. #ifndef __ITTerminalSupport2_INTERFACE_DEFINED__
  2188. #define __ITTerminalSupport2_INTERFACE_DEFINED__
  2189. /* interface ITTerminalSupport2 */
  2190. /* [object][dual][helpstring][uuid] */ 
  2191. EXTERN_C const IID IID_ITTerminalSupport2;
  2192. #if defined(__cplusplus) && !defined(CINTERFACE)
  2193.     
  2194.     MIDL_INTERFACE("F3EB39BC-1B1F-4e99-A0C0-56305C4DD591")
  2195.     ITTerminalSupport2 : public ITTerminalSupport
  2196.     {
  2197.     public:
  2198.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PluggableSuperclasses( 
  2199.             /* [retval][out] */ VARIANT *pVariant) = 0;
  2200.         
  2201.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumeratePluggableSuperclasses( 
  2202.             /* [retval][out] */ IEnumPluggableSuperclassInfo **ppSuperclassEnumerator) = 0;
  2203.         
  2204.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PluggableTerminalClasses( 
  2205.             /* [in] */ BSTR bstrTerminalSuperclass,
  2206.             /* [in] */ long lMediaType,
  2207.             /* [retval][out] */ VARIANT *pVariant) = 0;
  2208.         
  2209.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumeratePluggableTerminalClasses( 
  2210.             /* [in] */ CLSID iidTerminalSuperclass,
  2211.             /* [in] */ long lMediaType,
  2212.             /* [retval][out] */ IEnumPluggableTerminalClassInfo **ppClassEnumerator) = 0;
  2213.         
  2214.     };
  2215.     
  2216. #else  /* C style interface */
  2217.     typedef struct ITTerminalSupport2Vtbl
  2218.     {
  2219.         BEGIN_INTERFACE
  2220.         
  2221.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2222.             ITTerminalSupport2 * This,
  2223.             /* [in] */ REFIID riid,
  2224.             /* [iid_is][out] */ void **ppvObject);
  2225.         
  2226.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2227.             ITTerminalSupport2 * This);
  2228.         
  2229.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2230.             ITTerminalSupport2 * This);
  2231.         
  2232.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2233.             ITTerminalSupport2 * This,
  2234.             /* [out] */ UINT *pctinfo);
  2235.         
  2236.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2237.             ITTerminalSupport2 * This,
  2238.             /* [in] */ UINT iTInfo,
  2239.             /* [in] */ LCID lcid,
  2240.             /* [out] */ ITypeInfo **ppTInfo);
  2241.         
  2242.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2243.             ITTerminalSupport2 * This,
  2244.             /* [in] */ REFIID riid,
  2245.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2246.             /* [in] */ UINT cNames,
  2247.             /* [in] */ LCID lcid,
  2248.             /* [size_is][out] */ DISPID *rgDispId);
  2249.         
  2250.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2251.             ITTerminalSupport2 * This,
  2252.             /* [in] */ DISPID dispIdMember,
  2253.             /* [in] */ REFIID riid,
  2254.             /* [in] */ LCID lcid,
  2255.             /* [in] */ WORD wFlags,
  2256.             /* [out][in] */ DISPPARAMS *pDispParams,
  2257.             /* [out] */ VARIANT *pVarResult,
  2258.             /* [out] */ EXCEPINFO *pExcepInfo,
  2259.             /* [out] */ UINT *puArgErr);
  2260.         
  2261.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StaticTerminals )( 
  2262.             ITTerminalSupport2 * This,
  2263.             /* [retval][out] */ VARIANT *pVariant);
  2264.         
  2265.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateStaticTerminals )( 
  2266.             ITTerminalSupport2 * This,
  2267.             /* [retval][out] */ IEnumTerminal **ppTerminalEnumerator);
  2268.         
  2269.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DynamicTerminalClasses )( 
  2270.             ITTerminalSupport2 * This,
  2271.             /* [retval][out] */ VARIANT *pVariant);
  2272.         
  2273.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateDynamicTerminalClasses )( 
  2274.             ITTerminalSupport2 * This,
  2275.             /* [retval][out] */ IEnumTerminalClass **ppTerminalClassEnumerator);
  2276.         
  2277.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateTerminal )( 
  2278.             ITTerminalSupport2 * This,
  2279.             /* [in] */ BSTR pTerminalClass,
  2280.             /* [in] */ long lMediaType,
  2281.             /* [in] */ TERMINAL_DIRECTION Direction,
  2282.             /* [retval][out] */ ITTerminal **ppTerminal);
  2283.         
  2284.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDefaultStaticTerminal )( 
  2285.             ITTerminalSupport2 * This,
  2286.             /* [in] */ long lMediaType,
  2287.             /* [in] */ TERMINAL_DIRECTION Direction,
  2288.             /* [retval][out] */ ITTerminal **ppTerminal);
  2289.         
  2290.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PluggableSuperclasses )( 
  2291.             ITTerminalSupport2 * This,
  2292.             /* [retval][out] */ VARIANT *pVariant);
  2293.         
  2294.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumeratePluggableSuperclasses )( 
  2295.             ITTerminalSupport2 * This,
  2296.             /* [retval][out] */ IEnumPluggableSuperclassInfo **ppSuperclassEnumerator);
  2297.         
  2298.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PluggableTerminalClasses )( 
  2299.             ITTerminalSupport2 * This,
  2300.             /* [in] */ BSTR bstrTerminalSuperclass,
  2301.             /* [in] */ long lMediaType,
  2302.             /* [retval][out] */ VARIANT *pVariant);
  2303.         
  2304.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumeratePluggableTerminalClasses )( 
  2305.             ITTerminalSupport2 * This,
  2306.             /* [in] */ CLSID iidTerminalSuperclass,
  2307.             /* [in] */ long lMediaType,
  2308.             /* [retval][out] */ IEnumPluggableTerminalClassInfo **ppClassEnumerator);
  2309.         
  2310.         END_INTERFACE
  2311.     } ITTerminalSupport2Vtbl;
  2312.     interface ITTerminalSupport2
  2313.     {
  2314.         CONST_VTBL struct ITTerminalSupport2Vtbl *lpVtbl;
  2315.     };
  2316.     
  2317. #ifdef COBJMACROS
  2318. #define ITTerminalSupport2_QueryInterface(This,riid,ppvObject)
  2319.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2320. #define ITTerminalSupport2_AddRef(This)
  2321.     (This)->lpVtbl -> AddRef(This)
  2322. #define ITTerminalSupport2_Release(This)
  2323.     (This)->lpVtbl -> Release(This)
  2324. #define ITTerminalSupport2_GetTypeInfoCount(This,pctinfo)
  2325.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2326. #define ITTerminalSupport2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2327.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2328. #define ITTerminalSupport2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2329.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2330. #define ITTerminalSupport2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2331.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2332. #define ITTerminalSupport2_get_StaticTerminals(This,pVariant)
  2333.     (This)->lpVtbl -> get_StaticTerminals(This,pVariant)
  2334. #define ITTerminalSupport2_EnumerateStaticTerminals(This,ppTerminalEnumerator)
  2335.     (This)->lpVtbl -> EnumerateStaticTerminals(This,ppTerminalEnumerator)
  2336. #define ITTerminalSupport2_get_DynamicTerminalClasses(This,pVariant)
  2337.     (This)->lpVtbl -> get_DynamicTerminalClasses(This,pVariant)
  2338. #define ITTerminalSupport2_EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator)
  2339.     (This)->lpVtbl -> EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator)
  2340. #define ITTerminalSupport2_CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal)
  2341.     (This)->lpVtbl -> CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal)
  2342. #define ITTerminalSupport2_GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal)
  2343.     (This)->lpVtbl -> GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal)
  2344. #define ITTerminalSupport2_get_PluggableSuperclasses(This,pVariant)
  2345.     (This)->lpVtbl -> get_PluggableSuperclasses(This,pVariant)
  2346. #define ITTerminalSupport2_EnumeratePluggableSuperclasses(This,ppSuperclassEnumerator)
  2347.     (This)->lpVtbl -> EnumeratePluggableSuperclasses(This,ppSuperclassEnumerator)
  2348. #define ITTerminalSupport2_get_PluggableTerminalClasses(This,bstrTerminalSuperclass,lMediaType,pVariant)
  2349.     (This)->lpVtbl -> get_PluggableTerminalClasses(This,bstrTerminalSuperclass,lMediaType,pVariant)
  2350. #define ITTerminalSupport2_EnumeratePluggableTerminalClasses(This,iidTerminalSuperclass,lMediaType,ppClassEnumerator)
  2351.     (This)->lpVtbl -> EnumeratePluggableTerminalClasses(This,iidTerminalSuperclass,lMediaType,ppClassEnumerator)
  2352. #endif /* COBJMACROS */
  2353. #endif  /* C style interface */
  2354. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport2_get_PluggableSuperclasses_Proxy( 
  2355.     ITTerminalSupport2 * This,
  2356.     /* [retval][out] */ VARIANT *pVariant);
  2357. void __RPC_STUB ITTerminalSupport2_get_PluggableSuperclasses_Stub(
  2358.     IRpcStubBuffer *This,
  2359.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2360.     PRPC_MESSAGE _pRpcMessage,
  2361.     DWORD *_pdwStubPhase);
  2362. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport2_EnumeratePluggableSuperclasses_Proxy( 
  2363.     ITTerminalSupport2 * This,
  2364.     /* [retval][out] */ IEnumPluggableSuperclassInfo **ppSuperclassEnumerator);
  2365. void __RPC_STUB ITTerminalSupport2_EnumeratePluggableSuperclasses_Stub(
  2366.     IRpcStubBuffer *This,
  2367.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2368.     PRPC_MESSAGE _pRpcMessage,
  2369.     DWORD *_pdwStubPhase);
  2370. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport2_get_PluggableTerminalClasses_Proxy( 
  2371.     ITTerminalSupport2 * This,
  2372.     /* [in] */ BSTR bstrTerminalSuperclass,
  2373.     /* [in] */ long lMediaType,
  2374.     /* [retval][out] */ VARIANT *pVariant);
  2375. void __RPC_STUB ITTerminalSupport2_get_PluggableTerminalClasses_Stub(
  2376.     IRpcStubBuffer *This,
  2377.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2378.     PRPC_MESSAGE _pRpcMessage,
  2379.     DWORD *_pdwStubPhase);
  2380. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITTerminalSupport2_EnumeratePluggableTerminalClasses_Proxy( 
  2381.     ITTerminalSupport2 * This,
  2382.     /* [in] */ CLSID iidTerminalSuperclass,
  2383.     /* [in] */ long lMediaType,
  2384.     /* [retval][out] */ IEnumPluggableTerminalClassInfo **ppClassEnumerator);
  2385. void __RPC_STUB ITTerminalSupport2_EnumeratePluggableTerminalClasses_Stub(
  2386.     IRpcStubBuffer *This,
  2387.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2388.     PRPC_MESSAGE _pRpcMessage,
  2389.     DWORD *_pdwStubPhase);
  2390. #endif  /* __ITTerminalSupport2_INTERFACE_DEFINED__ */
  2391. #ifndef __ITAddress_INTERFACE_DEFINED__
  2392. #define __ITAddress_INTERFACE_DEFINED__
  2393. /* interface ITAddress */
  2394. /* [object][dual][helpstring][uuid] */ 
  2395. EXTERN_C const IID IID_ITAddress;
  2396. #if defined(__cplusplus) && !defined(CINTERFACE)
  2397.     
  2398.     MIDL_INTERFACE("B1EFC386-9355-11d0-835C-00AA003CCABD")
  2399.     ITAddress : public IDispatch
  2400.     {
  2401.     public:
  2402.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_State( 
  2403.             /* [retval][out] */ ADDRESS_STATE *pAddressState) = 0;
  2404.         
  2405.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AddressName( 
  2406.             /* [retval][out] */ BSTR *ppName) = 0;
  2407.         
  2408.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ServiceProviderName( 
  2409.             /* [retval][out] */ BSTR *ppName) = 0;
  2410.         
  2411.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TAPIObject( 
  2412.             /* [retval][out] */ ITTAPI **ppTapiObject) = 0;
  2413.         
  2414.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateCall( 
  2415.             /* [in] */ BSTR pDestAddress,
  2416.             /* [in] */ long lAddressType,
  2417.             /* [in] */ long lMediaTypes,
  2418.             /* [retval][out] */ ITBasicCallControl **ppCall) = 0;
  2419.         
  2420.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Calls( 
  2421.             /* [retval][out] */ VARIANT *pVariant) = 0;
  2422.         
  2423.         virtual /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE EnumerateCalls( 
  2424.             /* [retval][out] */ IEnumCall **ppCallEnum) = 0;
  2425.         
  2426.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DialableAddress( 
  2427.             /* [retval][out] */ BSTR *pDialableAddress) = 0;
  2428.         
  2429.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateForwardInfoObject( 
  2430.             /* [retval][out] */ ITForwardInformation **ppForwardInfo) = 0;
  2431.         
  2432.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Forward( 
  2433.             /* [in] */ ITForwardInformation *pForwardInfo,
  2434.             /* [in] */ ITBasicCallControl *pCall) = 0;
  2435.         
  2436.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentForwardInfo( 
  2437.             /* [retval][out] */ ITForwardInformation **ppForwardInfo) = 0;
  2438.         
  2439.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MessageWaiting( 
  2440.             /* [in] */ VARIANT_BOOL fMessageWaiting) = 0;
  2441.         
  2442.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MessageWaiting( 
  2443.             /* [retval][out] */ VARIANT_BOOL *pfMessageWaiting) = 0;
  2444.         
  2445.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DoNotDisturb( 
  2446.             /* [in] */ VARIANT_BOOL fDoNotDisturb) = 0;
  2447.         
  2448.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DoNotDisturb( 
  2449.             /* [retval][out] */ VARIANT_BOOL *pfDoNotDisturb) = 0;
  2450.         
  2451.     };
  2452.     
  2453. #else  /* C style interface */
  2454.     typedef struct ITAddressVtbl
  2455.     {
  2456.         BEGIN_INTERFACE
  2457.         
  2458.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2459.             ITAddress * This,
  2460.             /* [in] */ REFIID riid,
  2461.             /* [iid_is][out] */ void **ppvObject);
  2462.         
  2463.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2464.             ITAddress * This);
  2465.         
  2466.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2467.             ITAddress * This);
  2468.         
  2469.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2470.             ITAddress * This,
  2471.             /* [out] */ UINT *pctinfo);
  2472.         
  2473.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2474.             ITAddress * This,
  2475.             /* [in] */ UINT iTInfo,
  2476.             /* [in] */ LCID lcid,
  2477.             /* [out] */ ITypeInfo **ppTInfo);
  2478.         
  2479.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2480.             ITAddress * This,
  2481.             /* [in] */ REFIID riid,
  2482.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2483.             /* [in] */ UINT cNames,
  2484.             /* [in] */ LCID lcid,
  2485.             /* [size_is][out] */ DISPID *rgDispId);
  2486.         
  2487.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2488.             ITAddress * This,
  2489.             /* [in] */ DISPID dispIdMember,
  2490.             /* [in] */ REFIID riid,
  2491.             /* [in] */ LCID lcid,
  2492.             /* [in] */ WORD wFlags,
  2493.             /* [out][in] */ DISPPARAMS *pDispParams,
  2494.             /* [out] */ VARIANT *pVarResult,
  2495.             /* [out] */ EXCEPINFO *pExcepInfo,
  2496.             /* [out] */ UINT *puArgErr);
  2497.         
  2498.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
  2499.             ITAddress * This,
  2500.             /* [retval][out] */ ADDRESS_STATE *pAddressState);
  2501.         
  2502.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AddressName )( 
  2503.             ITAddress * This,
  2504.             /* [retval][out] */ BSTR *ppName);
  2505.         
  2506.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ServiceProviderName )( 
  2507.             ITAddress * This,
  2508.             /* [retval][out] */ BSTR *ppName);
  2509.         
  2510.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TAPIObject )( 
  2511.             ITAddress * This,
  2512.             /* [retval][out] */ ITTAPI **ppTapiObject);
  2513.         
  2514.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateCall )( 
  2515.             ITAddress * This,
  2516.             /* [in] */ BSTR pDestAddress,
  2517.             /* [in] */ long lAddressType,
  2518.             /* [in] */ long lMediaTypes,
  2519.             /* [retval][out] */ ITBasicCallControl **ppCall);
  2520.         
  2521.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Calls )( 
  2522.             ITAddress * This,
  2523.             /* [retval][out] */ VARIANT *pVariant);
  2524.         
  2525.         /* [helpstring][hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateCalls )( 
  2526.             ITAddress * This,
  2527.             /* [retval][out] */ IEnumCall **ppCallEnum);
  2528.         
  2529.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DialableAddress )( 
  2530.             ITAddress * This,
  2531.             /* [retval][out] */ BSTR *pDialableAddress);
  2532.         
  2533.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateForwardInfoObject )( 
  2534.             ITAddress * This,
  2535.             /* [retval][out] */ ITForwardInformation **ppForwardInfo);
  2536.         
  2537.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Forward )( 
  2538.             ITAddress * This,
  2539.             /* [in] */ ITForwardInformation *pForwardInfo,
  2540.             /* [in] */ ITBasicCallControl *pCall);
  2541.         
  2542.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentForwardInfo )( 
  2543.             ITAddress * This,
  2544.             /* [retval][out] */ ITForwardInformation **ppForwardInfo);
  2545.         
  2546.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MessageWaiting )( 
  2547.             ITAddress * This,
  2548.             /* [in] */ VARIANT_BOOL fMessageWaiting);
  2549.         
  2550.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MessageWaiting )( 
  2551.             ITAddress * This,
  2552.             /* [retval][out] */ VARIANT_BOOL *pfMessageWaiting);
  2553.         
  2554.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DoNotDisturb )( 
  2555.             ITAddress * This,
  2556.             /* [in] */ VARIANT_BOOL fDoNotDisturb);
  2557.         
  2558.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DoNotDisturb )( 
  2559.             ITAddress * This,
  2560.             /* [retval][out] */ VARIANT_BOOL *pfDoNotDisturb);
  2561.         
  2562.         END_INTERFACE
  2563.     } ITAddressVtbl;
  2564.     interface ITAddress
  2565.     {
  2566.         CONST_VTBL struct ITAddressVtbl *lpVtbl;
  2567.     };
  2568.     
  2569. #ifdef COBJMACROS
  2570. #define ITAddress_QueryInterface(This,riid,ppvObject)
  2571.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2572. #define ITAddress_AddRef(This)
  2573.     (This)->lpVtbl -> AddRef(This)
  2574. #define ITAddress_Release(This)
  2575.     (This)->lpVtbl -> Release(This)
  2576. #define ITAddress_GetTypeInfoCount(This,pctinfo)
  2577.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2578. #define ITAddress_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2579.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2580. #define ITAddress_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2581.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2582. #define ITAddress_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2583.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2584. #define ITAddress_get_State(This,pAddressState)
  2585.     (This)->lpVtbl -> get_State(This,pAddressState)
  2586. #define ITAddress_get_AddressName(This,ppName)
  2587.     (This)->lpVtbl -> get_AddressName(This,ppName)
  2588. #define ITAddress_get_ServiceProviderName(This,ppName)
  2589.     (This)->lpVtbl -> get_ServiceProviderName(This,ppName)
  2590. #define ITAddress_get_TAPIObject(This,ppTapiObject)
  2591.     (This)->lpVtbl -> get_TAPIObject(This,ppTapiObject)
  2592. #define ITAddress_CreateCall(This,pDestAddress,lAddressType,lMediaTypes,ppCall)
  2593.     (This)->lpVtbl -> CreateCall(This,pDestAddress,lAddressType,lMediaTypes,ppCall)
  2594. #define ITAddress_get_Calls(This,pVariant)
  2595.     (This)->lpVtbl -> get_Calls(This,pVariant)
  2596. #define ITAddress_EnumerateCalls(This,ppCallEnum)
  2597.     (This)->lpVtbl -> EnumerateCalls(This,ppCallEnum)
  2598. #define ITAddress_get_DialableAddress(This,pDialableAddress)
  2599.     (This)->lpVtbl -> get_DialableAddress(This,pDialableAddress)
  2600. #define ITAddress_CreateForwardInfoObject(This,ppForwardInfo)
  2601.     (This)->lpVtbl -> CreateForwardInfoObject(This,ppForwardInfo)
  2602. #define ITAddress_Forward(This,pForwardInfo,pCall)
  2603.     (This)->lpVtbl -> Forward(This,pForwardInfo,pCall)
  2604. #define ITAddress_get_CurrentForwardInfo(This,ppForwardInfo)
  2605.     (This)->lpVtbl -> get_CurrentForwardInfo(This,ppForwardInfo)
  2606. #define ITAddress_put_MessageWaiting(This,fMessageWaiting)
  2607.     (This)->lpVtbl -> put_MessageWaiting(This,fMessageWaiting)
  2608. #define ITAddress_get_MessageWaiting(This,pfMessageWaiting)
  2609.     (This)->lpVtbl -> get_MessageWaiting(This,pfMessageWaiting)
  2610. #define ITAddress_put_DoNotDisturb(This,fDoNotDisturb)
  2611.     (This)->lpVtbl -> put_DoNotDisturb(This,fDoNotDisturb)
  2612. #define ITAddress_get_DoNotDisturb(This,pfDoNotDisturb)
  2613.     (This)->lpVtbl -> get_DoNotDisturb(This,pfDoNotDisturb)
  2614. #endif /* COBJMACROS */
  2615. #endif  /* C style interface */
  2616. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_State_Proxy( 
  2617.     ITAddress * This,
  2618.     /* [retval][out] */ ADDRESS_STATE *pAddressState);
  2619. void __RPC_STUB ITAddress_get_State_Stub(
  2620.     IRpcStubBuffer *This,
  2621.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2622.     PRPC_MESSAGE _pRpcMessage,
  2623.     DWORD *_pdwStubPhase);
  2624. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_AddressName_Proxy( 
  2625.     ITAddress * This,
  2626.     /* [retval][out] */ BSTR *ppName);
  2627. void __RPC_STUB ITAddress_get_AddressName_Stub(
  2628.     IRpcStubBuffer *This,
  2629.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2630.     PRPC_MESSAGE _pRpcMessage,
  2631.     DWORD *_pdwStubPhase);
  2632. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_ServiceProviderName_Proxy( 
  2633.     ITAddress * This,
  2634.     /* [retval][out] */ BSTR *ppName);
  2635. void __RPC_STUB ITAddress_get_ServiceProviderName_Stub(
  2636.     IRpcStubBuffer *This,
  2637.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2638.     PRPC_MESSAGE _pRpcMessage,
  2639.     DWORD *_pdwStubPhase);
  2640. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_TAPIObject_Proxy( 
  2641.     ITAddress * This,
  2642.     /* [retval][out] */ ITTAPI **ppTapiObject);
  2643. void __RPC_STUB ITAddress_get_TAPIObject_Stub(
  2644.     IRpcStubBuffer *This,
  2645.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2646.     PRPC_MESSAGE _pRpcMessage,
  2647.     DWORD *_pdwStubPhase);
  2648. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITAddress_CreateCall_Proxy( 
  2649.     ITAddress * This,
  2650.     /* [in] */ BSTR pDestAddress,
  2651.     /* [in] */ long lAddressType,
  2652.     /* [in] */ long lMediaTypes,
  2653.     /* [retval][out] */ ITBasicCallControl **ppCall);
  2654. void __RPC_STUB ITAddress_CreateCall_Stub(
  2655.     IRpcStubBuffer *This,
  2656.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2657.     PRPC_MESSAGE _pRpcMessage,
  2658.     DWORD *_pdwStubPhase);
  2659. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_Calls_Proxy( 
  2660.     ITAddress * This,
  2661.     /* [retval][out] */ VARIANT *pVariant);
  2662. void __RPC_STUB ITAddress_get_Calls_Stub(
  2663.     IRpcStubBuffer *This,
  2664.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2665.     PRPC_MESSAGE _pRpcMessage,
  2666.     DWORD *_pdwStubPhase);
  2667. /* [helpstring][hidden][id] */ HRESULT STDMETHODCALLTYPE ITAddress_EnumerateCalls_Proxy( 
  2668.     ITAddress * This,
  2669.     /* [retval][out] */ IEnumCall **ppCallEnum);
  2670. void __RPC_STUB ITAddress_EnumerateCalls_Stub(
  2671.     IRpcStubBuffer *This,
  2672.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2673.     PRPC_MESSAGE _pRpcMessage,
  2674.     DWORD *_pdwStubPhase);
  2675. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_DialableAddress_Proxy( 
  2676.     ITAddress * This,
  2677.     /* [retval][out] */ BSTR *pDialableAddress);
  2678. void __RPC_STUB ITAddress_get_DialableAddress_Stub(
  2679.     IRpcStubBuffer *This,
  2680.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2681.     PRPC_MESSAGE _pRpcMessage,
  2682.     DWORD *_pdwStubPhase);
  2683. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITAddress_CreateForwardInfoObject_Proxy( 
  2684.     ITAddress * This,
  2685.     /* [retval][out] */ ITForwardInformation **ppForwardInfo);
  2686. void __RPC_STUB ITAddress_CreateForwardInfoObject_Stub(
  2687.     IRpcStubBuffer *This,
  2688.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2689.     PRPC_MESSAGE _pRpcMessage,
  2690.     DWORD *_pdwStubPhase);
  2691. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ITAddress_Forward_Proxy( 
  2692.     ITAddress * This,
  2693.     /* [in] */ ITForwardInformation *pForwardInfo,
  2694.     /* [in] */ ITBasicCallControl *pCall);
  2695. void __RPC_STUB ITAddress_Forward_Stub(
  2696.     IRpcStubBuffer *This,
  2697.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2698.     PRPC_MESSAGE _pRpcMessage,
  2699.     DWORD *_pdwStubPhase);
  2700. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_CurrentForwardInfo_Proxy( 
  2701.     ITAddress * This,
  2702.     /* [retval][out] */ ITForwardInformation **ppForwardInfo);
  2703. void __RPC_STUB ITAddress_get_CurrentForwardInfo_Stub(
  2704.     IRpcStubBuffer *This,
  2705.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2706.     PRPC_MESSAGE _pRpcMessage,
  2707.     DWORD *_pdwStubPhase);
  2708. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITAddress_put_MessageWaiting_Proxy( 
  2709.     ITAddress * This,
  2710.     /* [in] */ VARIANT_BOOL fMessageWaiting);
  2711. void __RPC_STUB ITAddress_put_MessageWaiting_Stub(
  2712.     IRpcStubBuffer *This,
  2713.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2714.     PRPC_MESSAGE _pRpcMessage,
  2715.     DWORD *_pdwStubPhase);
  2716. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_MessageWaiting_Proxy( 
  2717.     ITAddress * This,
  2718.     /* [retval][out] */ VARIANT_BOOL *pfMessageWaiting);
  2719. void __RPC_STUB ITAddress_get_MessageWaiting_Stub(
  2720.     IRpcStubBuffer *This,
  2721.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2722.     PRPC_MESSAGE _pRpcMessage,
  2723.     DWORD *_pdwStubPhase);
  2724. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITAddress_put_DoNotDisturb_Proxy( 
  2725.     ITAddress * This,
  2726.     /* [in] */ VARIANT_BOOL fDoNotDisturb);
  2727. void __RPC_STUB ITAddress_put_DoNotDisturb_Stub(
  2728.     IRpcStubBuffer *This,
  2729.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2730.     PRPC_MESSAGE _pRpcMessage,
  2731.     DWORD *_pdwStubPhase);
  2732. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITAddress_get_DoNotDisturb_Proxy( 
  2733.     ITAddress * This,
  2734.     /* [retval][out] */ VARIANT_BOOL *pfDoNotDisturb);
  2735. void __RPC_STUB ITAddress_get_DoNotDisturb_Stub(
  2736.     IRpcStubBuffer *This,
  2737.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2738.     PRPC_MESSAGE _pRpcMessage,
  2739.     DWORD *_pdwStubPhase);
  2740. #endif  /* __ITAddress_INTERFACE_DEFINED__ */