1 /**
2  * This file has no copyright assigned and is placed in the Public Domain.
3  * This file is part of the mingw-w64 runtime package.
4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5  */
6 #ifndef __REQUIRED_RPCNDR_H_VERSION__
7 #define __REQUIRED_RPCNDR_H_VERSION__ 475
8 #endif
9 
10 #include "rpc.h"
11 #include "rpcndr.h"
12 
13 #ifndef __RPCNDR_H_VERSION__
14 #error This stub requires an updated version of <rpcndr.h>
15 #endif
16 
17 #ifndef COM_NO_WINDOWS_H
18 #include "windows.h"
19 #include "ole2.h"
20 #endif
21 
22 #ifndef __tapi3if_h__
23 #define __tapi3if_h__
24 
25 #ifndef __ITTAPI_FWD_DEFINED__
26 #define __ITTAPI_FWD_DEFINED__
27 typedef struct ITTAPI ITTAPI;
28 #endif
29 
30 #ifndef __ITTAPI2_FWD_DEFINED__
31 #define __ITTAPI2_FWD_DEFINED__
32 typedef struct ITTAPI2 ITTAPI2;
33 #endif
34 
35 #ifndef __ITMediaSupport_FWD_DEFINED__
36 #define __ITMediaSupport_FWD_DEFINED__
37 typedef struct ITMediaSupport ITMediaSupport;
38 #endif
39 
40 #ifndef __ITPluggableTerminalClassInfo_FWD_DEFINED__
41 #define __ITPluggableTerminalClassInfo_FWD_DEFINED__
42 typedef struct ITPluggableTerminalClassInfo ITPluggableTerminalClassInfo;
43 #endif
44 
45 #ifndef __ITPluggableTerminalSuperclassInfo_FWD_DEFINED__
46 #define __ITPluggableTerminalSuperclassInfo_FWD_DEFINED__
47 typedef struct ITPluggableTerminalSuperclassInfo ITPluggableTerminalSuperclassInfo;
48 #endif
49 
50 #ifndef __ITTerminalSupport_FWD_DEFINED__
51 #define __ITTerminalSupport_FWD_DEFINED__
52 typedef struct ITTerminalSupport ITTerminalSupport;
53 #endif
54 
55 #ifndef __ITTerminalSupport2_FWD_DEFINED__
56 #define __ITTerminalSupport2_FWD_DEFINED__
57 typedef struct ITTerminalSupport2 ITTerminalSupport2;
58 #endif
59 
60 #ifndef __ITAddress_FWD_DEFINED__
61 #define __ITAddress_FWD_DEFINED__
62 typedef struct ITAddress ITAddress;
63 #endif
64 
65 #ifndef __ITAddress2_FWD_DEFINED__
66 #define __ITAddress2_FWD_DEFINED__
67 typedef struct ITAddress2 ITAddress2;
68 #endif
69 
70 #ifndef __ITAddressCapabilities_FWD_DEFINED__
71 #define __ITAddressCapabilities_FWD_DEFINED__
72 typedef struct ITAddressCapabilities ITAddressCapabilities;
73 #endif
74 
75 #ifndef __ITPhone_FWD_DEFINED__
76 #define __ITPhone_FWD_DEFINED__
77 typedef struct ITPhone ITPhone;
78 #endif
79 
80 #ifndef __ITAutomatedPhoneControl_FWD_DEFINED__
81 #define __ITAutomatedPhoneControl_FWD_DEFINED__
82 typedef struct ITAutomatedPhoneControl ITAutomatedPhoneControl;
83 #endif
84 
85 #ifndef __ITBasicCallControl_FWD_DEFINED__
86 #define __ITBasicCallControl_FWD_DEFINED__
87 typedef struct ITBasicCallControl ITBasicCallControl;
88 #endif
89 
90 #ifndef __ITCallInfo_FWD_DEFINED__
91 #define __ITCallInfo_FWD_DEFINED__
92 typedef struct ITCallInfo ITCallInfo;
93 #endif
94 
95 #ifndef __ITCallInfo2_FWD_DEFINED__
96 #define __ITCallInfo2_FWD_DEFINED__
97 typedef struct ITCallInfo2 ITCallInfo2;
98 #endif
99 
100 #ifndef __ITTerminal_FWD_DEFINED__
101 #define __ITTerminal_FWD_DEFINED__
102 typedef struct ITTerminal ITTerminal;
103 #endif
104 
105 #ifndef __ITMultiTrackTerminal_FWD_DEFINED__
106 #define __ITMultiTrackTerminal_FWD_DEFINED__
107 typedef struct ITMultiTrackTerminal ITMultiTrackTerminal;
108 #endif
109 
110 #ifndef __ITFileTrack_FWD_DEFINED__
111 #define __ITFileTrack_FWD_DEFINED__
112 typedef struct ITFileTrack ITFileTrack;
113 #endif
114 
115 #ifndef __ITMediaPlayback_FWD_DEFINED__
116 #define __ITMediaPlayback_FWD_DEFINED__
117 typedef struct ITMediaPlayback ITMediaPlayback;
118 #endif
119 
120 #ifndef __ITMediaRecord_FWD_DEFINED__
121 #define __ITMediaRecord_FWD_DEFINED__
122 typedef struct ITMediaRecord ITMediaRecord;
123 #endif
124 
125 #ifndef __ITMediaControl_FWD_DEFINED__
126 #define __ITMediaControl_FWD_DEFINED__
127 typedef struct ITMediaControl ITMediaControl;
128 #endif
129 
130 #ifndef __ITBasicAudioTerminal_FWD_DEFINED__
131 #define __ITBasicAudioTerminal_FWD_DEFINED__
132 typedef struct ITBasicAudioTerminal ITBasicAudioTerminal;
133 #endif
134 
135 #ifndef __ITStaticAudioTerminal_FWD_DEFINED__
136 #define __ITStaticAudioTerminal_FWD_DEFINED__
137 typedef struct ITStaticAudioTerminal ITStaticAudioTerminal;
138 #endif
139 
140 #ifndef __ITCallHub_FWD_DEFINED__
141 #define __ITCallHub_FWD_DEFINED__
142 typedef struct ITCallHub ITCallHub;
143 #endif
144 
145 #ifndef __ITLegacyAddressMediaControl_FWD_DEFINED__
146 #define __ITLegacyAddressMediaControl_FWD_DEFINED__
147 typedef struct ITLegacyAddressMediaControl ITLegacyAddressMediaControl;
148 #endif
149 
150 #ifndef __ITPrivateEvent_FWD_DEFINED__
151 #define __ITPrivateEvent_FWD_DEFINED__
152 typedef struct ITPrivateEvent ITPrivateEvent;
153 #endif
154 
155 #ifndef __ITLegacyAddressMediaControl2_FWD_DEFINED__
156 #define __ITLegacyAddressMediaControl2_FWD_DEFINED__
157 typedef struct ITLegacyAddressMediaControl2 ITLegacyAddressMediaControl2;
158 #endif
159 
160 #ifndef __ITLegacyCallMediaControl_FWD_DEFINED__
161 #define __ITLegacyCallMediaControl_FWD_DEFINED__
162 typedef struct ITLegacyCallMediaControl ITLegacyCallMediaControl;
163 #endif
164 
165 #ifndef __ITLegacyCallMediaControl2_FWD_DEFINED__
166 #define __ITLegacyCallMediaControl2_FWD_DEFINED__
167 typedef struct ITLegacyCallMediaControl2 ITLegacyCallMediaControl2;
168 #endif
169 
170 #ifndef __ITDetectTone_FWD_DEFINED__
171 #define __ITDetectTone_FWD_DEFINED__
172 typedef struct ITDetectTone ITDetectTone;
173 #endif
174 
175 #ifndef __ITCustomTone_FWD_DEFINED__
176 #define __ITCustomTone_FWD_DEFINED__
177 typedef struct ITCustomTone ITCustomTone;
178 #endif
179 
180 #ifndef __IEnumPhone_FWD_DEFINED__
181 #define __IEnumPhone_FWD_DEFINED__
182 typedef struct IEnumPhone IEnumPhone;
183 #endif
184 
185 #ifndef __IEnumTerminal_FWD_DEFINED__
186 #define __IEnumTerminal_FWD_DEFINED__
187 typedef struct IEnumTerminal IEnumTerminal;
188 #endif
189 
190 #ifndef __IEnumTerminalClass_FWD_DEFINED__
191 #define __IEnumTerminalClass_FWD_DEFINED__
192 typedef struct IEnumTerminalClass IEnumTerminalClass;
193 #endif
194 
195 #ifndef __IEnumCall_FWD_DEFINED__
196 #define __IEnumCall_FWD_DEFINED__
197 typedef struct IEnumCall IEnumCall;
198 #endif
199 
200 #ifndef __IEnumAddress_FWD_DEFINED__
201 #define __IEnumAddress_FWD_DEFINED__
202 typedef struct IEnumAddress IEnumAddress;
203 #endif
204 
205 #ifndef __IEnumCallHub_FWD_DEFINED__
206 #define __IEnumCallHub_FWD_DEFINED__
207 typedef struct IEnumCallHub IEnumCallHub;
208 #endif
209 
210 #ifndef __IEnumBstr_FWD_DEFINED__
211 #define __IEnumBstr_FWD_DEFINED__
212 typedef struct IEnumBstr IEnumBstr;
213 #endif
214 
215 #ifndef __IEnumPluggableTerminalClassInfo_FWD_DEFINED__
216 #define __IEnumPluggableTerminalClassInfo_FWD_DEFINED__
217 typedef struct IEnumPluggableTerminalClassInfo IEnumPluggableTerminalClassInfo;
218 #endif
219 
220 #ifndef __IEnumPluggableSuperclassInfo_FWD_DEFINED__
221 #define __IEnumPluggableSuperclassInfo_FWD_DEFINED__
222 typedef struct IEnumPluggableSuperclassInfo IEnumPluggableSuperclassInfo;
223 #endif
224 
225 #ifndef __ITPhoneEvent_FWD_DEFINED__
226 #define __ITPhoneEvent_FWD_DEFINED__
227 typedef struct ITPhoneEvent ITPhoneEvent;
228 #endif
229 
230 #ifndef __ITCallStateEvent_FWD_DEFINED__
231 #define __ITCallStateEvent_FWD_DEFINED__
232 typedef struct ITCallStateEvent ITCallStateEvent;
233 #endif
234 
235 #ifndef __ITPhoneDeviceSpecificEvent_FWD_DEFINED__
236 #define __ITPhoneDeviceSpecificEvent_FWD_DEFINED__
237 typedef struct ITPhoneDeviceSpecificEvent ITPhoneDeviceSpecificEvent;
238 #endif
239 
240 #ifndef __ITCallMediaEvent_FWD_DEFINED__
241 #define __ITCallMediaEvent_FWD_DEFINED__
242 typedef struct ITCallMediaEvent ITCallMediaEvent;
243 #endif
244 
245 #ifndef __ITDigitDetectionEvent_FWD_DEFINED__
246 #define __ITDigitDetectionEvent_FWD_DEFINED__
247 typedef struct ITDigitDetectionEvent ITDigitDetectionEvent;
248 #endif
249 
250 #ifndef __ITDigitGenerationEvent_FWD_DEFINED__
251 #define __ITDigitGenerationEvent_FWD_DEFINED__
252 typedef struct ITDigitGenerationEvent ITDigitGenerationEvent;
253 #endif
254 
255 #ifndef __ITDigitsGatheredEvent_FWD_DEFINED__
256 #define __ITDigitsGatheredEvent_FWD_DEFINED__
257 typedef struct ITDigitsGatheredEvent ITDigitsGatheredEvent;
258 #endif
259 
260 #ifndef __ITToneDetectionEvent_FWD_DEFINED__
261 #define __ITToneDetectionEvent_FWD_DEFINED__
262 typedef struct ITToneDetectionEvent ITToneDetectionEvent;
263 #endif
264 
265 #ifndef __ITTAPIObjectEvent_FWD_DEFINED__
266 #define __ITTAPIObjectEvent_FWD_DEFINED__
267 typedef struct ITTAPIObjectEvent ITTAPIObjectEvent;
268 #endif
269 
270 #ifndef __ITTAPIObjectEvent2_FWD_DEFINED__
271 #define __ITTAPIObjectEvent2_FWD_DEFINED__
272 typedef struct ITTAPIObjectEvent2 ITTAPIObjectEvent2;
273 #endif
274 
275 #ifndef __ITTAPIEventNotification_FWD_DEFINED__
276 #define __ITTAPIEventNotification_FWD_DEFINED__
277 typedef struct ITTAPIEventNotification ITTAPIEventNotification;
278 #endif
279 
280 #ifndef __ITCallHubEvent_FWD_DEFINED__
281 #define __ITCallHubEvent_FWD_DEFINED__
282 typedef struct ITCallHubEvent ITCallHubEvent;
283 #endif
284 
285 #ifndef __ITAddressEvent_FWD_DEFINED__
286 #define __ITAddressEvent_FWD_DEFINED__
287 typedef struct ITAddressEvent ITAddressEvent;
288 #endif
289 
290 #ifndef __ITAddressDeviceSpecificEvent_FWD_DEFINED__
291 #define __ITAddressDeviceSpecificEvent_FWD_DEFINED__
292 typedef struct ITAddressDeviceSpecificEvent ITAddressDeviceSpecificEvent;
293 #endif
294 
295 #ifndef __ITFileTerminalEvent_FWD_DEFINED__
296 #define __ITFileTerminalEvent_FWD_DEFINED__
297 typedef struct ITFileTerminalEvent ITFileTerminalEvent;
298 #endif
299 
300 #ifndef __ITTTSTerminalEvent_FWD_DEFINED__
301 #define __ITTTSTerminalEvent_FWD_DEFINED__
302 typedef struct ITTTSTerminalEvent ITTTSTerminalEvent;
303 #endif
304 
305 #ifndef __ITASRTerminalEvent_FWD_DEFINED__
306 #define __ITASRTerminalEvent_FWD_DEFINED__
307 typedef struct ITASRTerminalEvent ITASRTerminalEvent;
308 #endif
309 
310 #ifndef __ITToneTerminalEvent_FWD_DEFINED__
311 #define __ITToneTerminalEvent_FWD_DEFINED__
312 typedef struct ITToneTerminalEvent ITToneTerminalEvent;
313 #endif
314 
315 #ifndef __ITQOSEvent_FWD_DEFINED__
316 #define __ITQOSEvent_FWD_DEFINED__
317 typedef struct ITQOSEvent ITQOSEvent;
318 #endif
319 
320 #ifndef __ITCallInfoChangeEvent_FWD_DEFINED__
321 #define __ITCallInfoChangeEvent_FWD_DEFINED__
322 typedef struct ITCallInfoChangeEvent ITCallInfoChangeEvent;
323 #endif
324 
325 #ifndef __ITRequest_FWD_DEFINED__
326 #define __ITRequest_FWD_DEFINED__
327 typedef struct ITRequest ITRequest;
328 #endif
329 
330 #ifndef __ITRequestEvent_FWD_DEFINED__
331 #define __ITRequestEvent_FWD_DEFINED__
332 typedef struct ITRequestEvent ITRequestEvent;
333 #endif
334 
335 #ifndef __ITCollection_FWD_DEFINED__
336 #define __ITCollection_FWD_DEFINED__
337 typedef struct ITCollection ITCollection;
338 #endif
339 
340 #ifndef __ITCollection2_FWD_DEFINED__
341 #define __ITCollection2_FWD_DEFINED__
342 typedef struct ITCollection2 ITCollection2;
343 #endif
344 
345 #ifndef __ITForwardInformation_FWD_DEFINED__
346 #define __ITForwardInformation_FWD_DEFINED__
347 typedef struct ITForwardInformation ITForwardInformation;
348 #endif
349 
350 #ifndef __ITForwardInformation2_FWD_DEFINED__
351 #define __ITForwardInformation2_FWD_DEFINED__
352 typedef struct ITForwardInformation2 ITForwardInformation2;
353 #endif
354 
355 #ifndef __ITAddressTranslation_FWD_DEFINED__
356 #define __ITAddressTranslation_FWD_DEFINED__
357 typedef struct ITAddressTranslation ITAddressTranslation;
358 #endif
359 
360 #ifndef __ITAddressTranslationInfo_FWD_DEFINED__
361 #define __ITAddressTranslationInfo_FWD_DEFINED__
362 typedef struct ITAddressTranslationInfo ITAddressTranslationInfo;
363 #endif
364 
365 #ifndef __ITLocationInfo_FWD_DEFINED__
366 #define __ITLocationInfo_FWD_DEFINED__
367 typedef struct ITLocationInfo ITLocationInfo;
368 #endif
369 
370 #ifndef __IEnumLocation_FWD_DEFINED__
371 #define __IEnumLocation_FWD_DEFINED__
372 typedef struct IEnumLocation IEnumLocation;
373 #endif
374 
375 #ifndef __ITCallingCard_FWD_DEFINED__
376 #define __ITCallingCard_FWD_DEFINED__
377 typedef struct ITCallingCard ITCallingCard;
378 #endif
379 
380 #ifndef __IEnumCallingCard_FWD_DEFINED__
381 #define __IEnumCallingCard_FWD_DEFINED__
382 typedef struct IEnumCallingCard IEnumCallingCard;
383 #endif
384 
385 #ifndef __ITCallNotificationEvent_FWD_DEFINED__
386 #define __ITCallNotificationEvent_FWD_DEFINED__
387 typedef struct ITCallNotificationEvent ITCallNotificationEvent;
388 #endif
389 
390 #ifndef __ITDispatchMapper_FWD_DEFINED__
391 #define __ITDispatchMapper_FWD_DEFINED__
392 typedef struct ITDispatchMapper ITDispatchMapper;
393 #endif
394 
395 #ifndef __ITStreamControl_FWD_DEFINED__
396 #define __ITStreamControl_FWD_DEFINED__
397 typedef struct ITStreamControl ITStreamControl;
398 #endif
399 
400 #ifndef __ITStream_FWD_DEFINED__
401 #define __ITStream_FWD_DEFINED__
402 typedef struct ITStream ITStream;
403 #endif
404 
405 #ifndef __IEnumStream_FWD_DEFINED__
406 #define __IEnumStream_FWD_DEFINED__
407 typedef struct IEnumStream IEnumStream;
408 #endif
409 
410 #ifndef __ITSubStreamControl_FWD_DEFINED__
411 #define __ITSubStreamControl_FWD_DEFINED__
412 typedef struct ITSubStreamControl ITSubStreamControl;
413 #endif
414 
415 #ifndef __ITSubStream_FWD_DEFINED__
416 #define __ITSubStream_FWD_DEFINED__
417 typedef struct ITSubStream ITSubStream;
418 #endif
419 
420 #ifndef __IEnumSubStream_FWD_DEFINED__
421 #define __IEnumSubStream_FWD_DEFINED__
422 typedef struct IEnumSubStream IEnumSubStream;
423 #endif
424 
425 #ifndef __ITLegacyWaveSupport_FWD_DEFINED__
426 #define __ITLegacyWaveSupport_FWD_DEFINED__
427 typedef struct ITLegacyWaveSupport ITLegacyWaveSupport;
428 #endif
429 
430 #ifndef __ITBasicCallControl2_FWD_DEFINED__
431 #define __ITBasicCallControl2_FWD_DEFINED__
432 typedef struct ITBasicCallControl2 ITBasicCallControl2;
433 #endif
434 
435 #ifndef __ITScriptableAudioFormat_FWD_DEFINED__
436 #define __ITScriptableAudioFormat_FWD_DEFINED__
437 typedef struct ITScriptableAudioFormat ITScriptableAudioFormat;
438 #endif
439 
440 #include "oaidl.h"
441 #include "strmif.h"
442 
443 #ifdef __cplusplus
444 extern "C" {
445 #endif
446 
447 #ifndef __MIDL_user_allocate_free_DEFINED__
448 #define __MIDL_user_allocate_free_DEFINED__
449   void *__RPC_API MIDL_user_allocate(size_t);
450   void __RPC_API MIDL_user_free(void *);
451 #endif
452 
453 #ifdef _X86_
454   typedef __LONG32 TAPIHWND;
455 #else
456   typedef LONGLONG TAPIHWND;
457 #endif
458   typedef __LONG32 TAPI_DIGITMODE;
459 
460   typedef enum TAPI_TONEMODE {
461     TTM_RINGBACK = 0x2,TTM_BUSY = 0x4,TTM_BEEP = 0x8,TTM_BILLING = 0x10
462   } TAPI_TONEMODE;
463 
464   typedef enum TAPI_GATHERTERM {
465     TGT_BUFFERFULL = 0x1,TGT_TERMDIGIT = 0x2,TGT_FIRSTTIMEOUT = 0x4,TGT_INTERTIMEOUT = 0x8,TGT_CANCEL = 0x10
466   } TAPI_GATHERTERM;
467 
468   typedef struct TAPI_CUSTOMTONE {
469     DWORD dwFrequency;
470     DWORD dwCadenceOn;
471     DWORD dwCadenceOff;
472     DWORD dwVolume;
473   } TAPI_CUSTOMTONE;
474 
475   typedef struct TAPI_CUSTOMTONE *LPTAPI_CUSTOMTONE;
476 
477   typedef struct TAPI_DETECTTONE {
478     DWORD dwAppSpecific;
479     DWORD dwDuration;
480     DWORD dwFrequency1;
481     DWORD dwFrequency2;
482     DWORD dwFrequency3;
483   } TAPI_DETECTTONE;
484 
485   typedef struct TAPI_DETECTTONE *LPTAPI_DETECTTONE;
486 
487   typedef enum ADDRESS_EVENT {
488     AE_STATE = 0,
489     AE_CAPSCHANGE,AE_RINGING,AE_CONFIGCHANGE,AE_FORWARD,AE_NEWTERMINAL,
490     AE_REMOVETERMINAL,AE_MSGWAITON,AE_MSGWAITOFF,
491     AE_LASTITEM = AE_MSGWAITOFF
492   } ADDRESS_EVENT;
493 
494   typedef enum ADDRESS_STATE {
495     AS_INSERVICE = 0,
496     AS_OUTOFSERVICE
497   } ADDRESS_STATE;
498 
499   typedef enum CALL_STATE {
500     CS_IDLE = 0,
501     CS_INPROGRESS,CS_CONNECTED,CS_DISCONNECTED,CS_OFFERING,CS_HOLD,CS_QUEUED,
502     CS_LASTITEM = CS_QUEUED
503   } CALL_STATE;
504 
505   typedef enum CALL_STATE_EVENT_CAUSE {
506     CEC_NONE = 0,
507     CEC_DISCONNECT_NORMAL,CEC_DISCONNECT_BUSY,CEC_DISCONNECT_BADADDRESS,
508     CEC_DISCONNECT_NOANSWER,CEC_DISCONNECT_CANCELLED,CEC_DISCONNECT_REJECTED,
509     CEC_DISCONNECT_FAILED,CEC_DISCONNECT_BLOCKED
510   } CALL_STATE_EVENT_CAUSE;
511 
512   typedef enum CALL_MEDIA_EVENT {
513     CME_NEW_STREAM = 0,
514     CME_STREAM_FAIL,CME_TERMINAL_FAIL,CME_STREAM_NOT_USED,CME_STREAM_ACTIVE,
515     CME_STREAM_INACTIVE,
516     CME_LASTITEM = CME_STREAM_INACTIVE
517   } CALL_MEDIA_EVENT;
518 
519   typedef enum CALL_MEDIA_EVENT_CAUSE {
520     CMC_UNKNOWN = 0,
521     CMC_BAD_DEVICE,CMC_CONNECT_FAIL,CMC_LOCAL_REQUEST,CMC_REMOTE_REQUEST,
522     CMC_MEDIA_TIMEOUT,CMC_MEDIA_RECOVERED,CMC_QUALITY_OF_SERVICE
523   } CALL_MEDIA_EVENT_CAUSE;
524 
525   typedef enum DISCONNECT_CODE {
526     DC_NORMAL = 0,
527     DC_NOANSWER,DC_REJECTED
528   } DISCONNECT_CODE;
529 
530   typedef enum TERMINAL_STATE {
531     TS_INUSE = 0,
532     TS_NOTINUSE
533   } TERMINAL_STATE;
534 
535   typedef enum TERMINAL_DIRECTION {
536     TD_CAPTURE = 0,
537     TD_RENDER,TD_BIDIRECTIONAL,TD_MULTITRACK_MIXED,TD_NONE
538   } TERMINAL_DIRECTION;
539 
540   typedef enum TERMINAL_TYPE {
541     TT_STATIC = 0,
542     TT_DYNAMIC
543   } TERMINAL_TYPE;
544 
545   typedef enum CALL_PRIVILEGE {
546     CP_OWNER = 0,
547     CP_MONITOR
548   } CALL_PRIVILEGE;
549 
550   typedef enum TAPI_EVENT {
551     TE_TAPIOBJECT = 0x1,TE_ADDRESS = 0x2,TE_CALLNOTIFICATION = 0x4,TE_CALLSTATE = 0x8,
552     TE_CALLMEDIA = 0x10,TE_CALLHUB = 0x20,TE_CALLINFOCHANGE = 0x40,TE_PRIVATE = 0x80,
553     TE_REQUEST = 0x100,TE_AGENT = 0x200,TE_AGENTSESSION = 0x400,TE_QOSEVENT = 0x800,
554     TE_AGENTHANDLER = 0x1000,TE_ACDGROUP = 0x2000,TE_QUEUE = 0x4000,TE_DIGITEVENT = 0x8000,
555     TE_GENERATEEVENT = 0x10000,TE_ASRTERMINAL = 0x20000,TE_TTSTERMINAL = 0x40000,TE_FILETERMINAL = 0x80000,
556     TE_TONETERMINAL = 0x100000,TE_PHONEEVENT = 0x200000,TE_TONEEVENT = 0x400000,TE_GATHERDIGITS = 0x800000,
557     TE_ADDRESSDEVSPECIFIC = 0x1000000,TE_PHONEDEVSPECIFIC = 0x2000000
558   } TAPI_EVENT;
559 
560   typedef enum CALL_NOTIFICATION_EVENT {
561     CNE_OWNER = 0,CNE_MONITOR,
562     CNE_LASTITEM = CNE_MONITOR
563   } CALL_NOTIFICATION_EVENT;
564 
565   typedef enum CALLHUB_EVENT {
566     CHE_CALLJOIN = 0,
567     CHE_CALLLEAVE,CHE_CALLHUBNEW,CHE_CALLHUBIDLE,
568     CHE_LASTITEM = CHE_CALLHUBIDLE
569   } CALLHUB_EVENT;
570 
571   typedef enum CALLHUB_STATE {
572     CHS_ACTIVE = 0,
573     CHS_IDLE
574   } CALLHUB_STATE;
575 
576   typedef enum TAPIOBJECT_EVENT {
577     TE_ADDRESSCREATE = 0,
578     TE_ADDRESSREMOVE,TE_REINIT,TE_TRANSLATECHANGE,TE_ADDRESSCLOSE,TE_PHONECREATE,
579     TE_PHONEREMOVE
580   } TAPIOBJECT_EVENT;
581 
582   typedef enum TAPI_OBJECT_TYPE {
583     TOT_NONE = 0,
584     TOT_TAPI,TOT_ADDRESS,TOT_TERMINAL,TOT_CALL,TOT_CALLHUB,TOT_PHONE
585   } TAPI_OBJECT_TYPE;
586 
587   typedef enum QOS_SERVICE_LEVEL {
588     QSL_NEEDED = 1,
589     QSL_IF_AVAILABLE = 2,
590     QSL_BEST_EFFORT = 3
591   } QOS_SERVICE_LEVEL;
592 
593   typedef enum QOS_EVENT {
594     QE_NOQOS = 1,QE_ADMISSIONFAILURE = 2,QE_POLICYFAILURE = 3,QE_GENERICERROR = 4,
595     QE_LASTITEM = QE_GENERICERROR
596   } QOS_EVENT;
597 
598   typedef enum CALLINFOCHANGE_CAUSE {
599     CIC_OTHER = 0,
600     CIC_DEVSPECIFIC,CIC_BEARERMODE,CIC_RATE,CIC_APPSPECIFIC,CIC_CALLID,
601     CIC_RELATEDCALLID,CIC_ORIGIN,CIC_REASON,CIC_COMPLETIONID,CIC_NUMOWNERINCR,
602     CIC_NUMOWNERDECR,CIC_NUMMONITORS,CIC_TRUNK,CIC_CALLERID,CIC_CALLEDID,
603     CIC_CONNECTEDID,CIC_REDIRECTIONID,CIC_REDIRECTINGID,CIC_USERUSERINFO,
604     CIC_HIGHLEVELCOMP,CIC_LOWLEVELCOMP,CIC_CHARGINGINFO,CIC_TREATMENT,
605     CIC_CALLDATA,CIC_PRIVILEGE,CIC_MEDIATYPE,
606     CIC_LASTITEM = CIC_MEDIATYPE
607   } CALLINFOCHANGE_CAUSE;
608 
609   typedef enum CALLINFO_LONG {
610     CIL_MEDIATYPESAVAILABLE = 0,
611     CIL_BEARERMODE,CIL_CALLERIDADDRESSTYPE,CIL_CALLEDIDADDRESSTYPE,CIL_CONNECTEDIDADDRESSTYPE,
612     CIL_REDIRECTIONIDADDRESSTYPE,CIL_REDIRECTINGIDADDRESSTYPE,CIL_ORIGIN,
613     CIL_REASON,CIL_APPSPECIFIC,CIL_CALLPARAMSFLAGS,CIL_CALLTREATMENT,CIL_MINRATE,
614     CIL_MAXRATE,CIL_COUNTRYCODE,CIL_CALLID,CIL_RELATEDCALLID,CIL_COMPLETIONID,
615     CIL_NUMBEROFOWNERS,CIL_NUMBEROFMONITORS,CIL_TRUNK,CIL_RATE,CIL_GENERATEDIGITDURATION,
616     CIL_MONITORDIGITMODES,CIL_MONITORMEDIAMODES
617   } CALLINFO_LONG;
618 
619   typedef enum CALLINFO_STRING {
620     CIS_CALLERIDNAME = 0,
621     CIS_CALLERIDNUMBER,CIS_CALLEDIDNAME,CIS_CALLEDIDNUMBER,CIS_CONNECTEDIDNAME,
622     CIS_CONNECTEDIDNUMBER,CIS_REDIRECTIONIDNAME,CIS_REDIRECTIONIDNUMBER,
623     CIS_REDIRECTINGIDNAME,CIS_REDIRECTINGIDNUMBER,CIS_CALLEDPARTYFRIENDLYNAME,
624     CIS_COMMENT,CIS_DISPLAYABLEADDRESS,CIS_CALLINGPARTYID
625   } CALLINFO_STRING;
626 
627   typedef enum CALLINFO_BUFFER {
628     CIB_USERUSERINFO = 0,
629     CIB_DEVSPECIFICBUFFER,CIB_CALLDATABUFFER,CIB_CHARGINGINFOBUFFER,
630     CIB_HIGHLEVELCOMPATIBILITYBUFFER,CIB_LOWLEVELCOMPATIBILITYBUFFER
631   } CALLINFO_BUFFER;
632 
633   typedef enum ADDRESS_CAPABILITY {
634     AC_ADDRESSTYPES = 0,
635     AC_BEARERMODES,AC_MAXACTIVECALLS,AC_MAXONHOLDCALLS,
636     AC_MAXONHOLDPENDINGCALLS,AC_MAXNUMCONFERENCE,AC_MAXNUMTRANSCONF,
637     AC_MONITORDIGITSUPPORT,AC_GENERATEDIGITSUPPORT,AC_GENERATETONEMODES,
638     AC_GENERATETONEMAXNUMFREQ,AC_MONITORTONEMAXNUMFREQ,AC_MONITORTONEMAXNUMENTRIES,
639     AC_DEVCAPFLAGS,AC_ANSWERMODES,AC_LINEFEATURES,AC_SETTABLEDEVSTATUS,
640     AC_PARKSUPPORT,AC_CALLERIDSUPPORT,AC_CALLEDIDSUPPORT,AC_CONNECTEDIDSUPPORT,
641     AC_REDIRECTIONIDSUPPORT,AC_REDIRECTINGIDSUPPORT,AC_ADDRESSCAPFLAGS,
642     AC_CALLFEATURES1,AC_CALLFEATURES2,AC_REMOVEFROMCONFCAPS,AC_REMOVEFROMCONFSTATE,
643     AC_TRANSFERMODES,AC_ADDRESSFEATURES,AC_PREDICTIVEAUTOTRANSFERSTATES,
644     AC_MAXCALLDATASIZE,AC_LINEID,AC_ADDRESSID,AC_FORWARDMODES,AC_MAXFORWARDENTRIES,
645     AC_MAXSPECIFICENTRIES,AC_MINFWDNUMRINGS,AC_MAXFWDNUMRINGS,AC_MAXCALLCOMPLETIONS,
646     AC_CALLCOMPLETIONCONDITIONS,AC_CALLCOMPLETIONMODES,AC_PERMANENTDEVICEID,
647     AC_GATHERDIGITSMINTIMEOUT,AC_GATHERDIGITSMAXTIMEOUT,AC_GENERATEDIGITMINDURATION,
648     AC_GENERATEDIGITMAXDURATION,AC_GENERATEDIGITDEFAULTDURATION
649   } ADDRESS_CAPABILITY;
650 
651   typedef enum ADDRESS_CAPABILITY_STRING {
652     ACS_PROTOCOL = 0,
653     ACS_ADDRESSDEVICESPECIFIC,ACS_LINEDEVICESPECIFIC,
654     ACS_PROVIDERSPECIFIC,ACS_SWITCHSPECIFIC,ACS_PERMANENTDEVICEGUID
655   } ADDRESS_CAPABILITY_STRING;
656 
657   typedef enum FULLDUPLEX_SUPPORT {
658     FDS_SUPPORTED = 0,
659     FDS_NOTSUPPORTED,FDS_UNKNOWN
660   } FULLDUPLEX_SUPPORT;
661 
662   typedef enum FINISH_MODE {
663     FM_ASTRANSFER = 0,
664     FM_ASCONFERENCE
665   } FINISH_MODE;
666 
667   typedef enum PHONE_PRIVILEGE {
668     PP_OWNER = 0,
669     PP_MONITOR
670   } PHONE_PRIVILEGE;
671 
672   typedef enum PHONE_HOOK_SWITCH_DEVICE {
673     PHSD_HANDSET = 0x1,PHSD_SPEAKERPHONE = 0x2,PHSD_HEADSET = 0x4
674   } PHONE_HOOK_SWITCH_DEVICE;
675 
676   typedef enum PHONE_HOOK_SWITCH_STATE {
677     PHSS_ONHOOK = 0x1,PHSS_OFFHOOK_MIC_ONLY = 0x2,PHSS_OFFHOOK_SPEAKER_ONLY = 0x4,PHSS_OFFHOOK = 0x8
678   } PHONE_HOOK_SWITCH_STATE;
679 
680   typedef enum PHONE_LAMP_MODE {
681     LM_DUMMY = 0x1,LM_OFF = 0x2,LM_STEADY = 0x4,LM_WINK = 0x8,
682     LM_FLASH = 0x10,LM_FLUTTER = 0x20,LM_BROKENFLUTTER = 0x40,LM_UNKNOWN = 0x80
683   } PHONE_LAMP_MODE;
684 
685   typedef enum PHONECAPS_LONG {
686     PCL_HOOKSWITCHES = 0,
687     PCL_HANDSETHOOKSWITCHMODES,PCL_HEADSETHOOKSWITCHMODES,PCL_SPEAKERPHONEHOOKSWITCHMODES,
688     PCL_DISPLAYNUMROWS,PCL_DISPLAYNUMCOLUMNS,PCL_NUMRINGMODES,PCL_NUMBUTTONLAMPS,
689     PCL_GENERICPHONE
690   } PHONECAPS_LONG;
691 
692   typedef enum PHONECAPS_STRING {
693     PCS_PHONENAME = 0,
694     PCS_PHONEINFO,PCS_PROVIDERINFO
695   } PHONECAPS_STRING;
696 
697   typedef enum PHONECAPS_BUFFER {
698     PCB_DEVSPECIFICBUFFER = 0
699   } PHONECAPS_BUFFER;
700 
701   typedef enum PHONE_BUTTON_STATE {
702     PBS_UP = 0x1,PBS_DOWN = 0x2,PBS_UNKNOWN = 0x4,PBS_UNAVAIL = 0x8
703   } PHONE_BUTTON_STATE;
704 
705   typedef enum PHONE_BUTTON_MODE {
706     PBM_DUMMY = 0,
707     PBM_CALL,PBM_FEATURE,PBM_KEYPAD,PBM_LOCAL,PBM_DISPLAY
708   } PHONE_BUTTON_MODE;
709 
710   typedef enum PHONE_BUTTON_FUNCTION {
711     PBF_UNKNOWN = 0,
712     PBF_CONFERENCE,PBF_TRANSFER,PBF_DROP,PBF_HOLD,PBF_RECALL,PBF_DISCONNECT,PBF_CONNECT,
713     PBF_MSGWAITON,PBF_MSGWAITOFF,PBF_SELECTRING,PBF_ABBREVDIAL,PBF_FORWARD,
714     PBF_PICKUP,PBF_RINGAGAIN,PBF_PARK,PBF_REJECT,PBF_REDIRECT,PBF_MUTE,
715     PBF_VOLUMEUP,PBF_VOLUMEDOWN,PBF_SPEAKERON,PBF_SPEAKEROFF,PBF_FLASH,
716     PBF_DATAON,PBF_DATAOFF,PBF_DONOTDISTURB,PBF_INTERCOM,PBF_BRIDGEDAPP,
717     PBF_BUSY,PBF_CALLAPP,PBF_DATETIME,PBF_DIRECTORY,PBF_COVER,PBF_CALLID,
718     PBF_LASTNUM,PBF_NIGHTSRV,PBF_SENDCALLS,PBF_MSGINDICATOR,PBF_REPDIAL,
719     PBF_SETREPDIAL,PBF_SYSTEMSPEED,PBF_STATIONSPEED,PBF_CAMPON,PBF_SAVEREPEAT,
720     PBF_QUEUECALL,PBF_NONE,PBF_SEND
721   } PHONE_BUTTON_FUNCTION;
722 
723   typedef enum PHONE_TONE {
724     PT_KEYPADZERO = 0,
725     PT_KEYPADONE,PT_KEYPADTWO,PT_KEYPADTHREE,PT_KEYPADFOUR,PT_KEYPADFIVE,PT_KEYPADSIX,
726     PT_KEYPADSEVEN,PT_KEYPADEIGHT,PT_KEYPADNINE,PT_KEYPADSTAR,PT_KEYPADPOUND,PT_KEYPADA,
727     PT_KEYPADB,PT_KEYPADC,PT_KEYPADD,PT_NORMALDIALTONE,PT_EXTERNALDIALTONE,PT_BUSY,
728     PT_RINGBACK,PT_ERRORTONE,PT_SILENCE
729   } PHONE_TONE;
730 
731   typedef enum PHONE_EVENT {
732     PE_DISPLAY = 0,
733     PE_LAMPMODE,PE_RINGMODE,PE_RINGVOLUME,PE_HOOKSWITCH,PE_CAPSCHANGE,PE_BUTTON,
734     PE_CLOSE,PE_NUMBERGATHERED,PE_DIALING,PE_ANSWER,PE_DISCONNECT,
735     PE_LASTITEM = PE_DISCONNECT
736   } PHONE_EVENT;
737 
738 #define INTERFACEMASK (0xff0000)
739 
740 #define DISPIDMASK (0xffff)
741 
742 #define IDISPTAPI (0x10000)
743 #define IDISPTAPICALLCENTER (0x20000)
744 #define IDISPCALLINFO (0x10000)
745 #define IDISPBASICCALLCONTROL (0x20000)
746 #define IDISPLEGACYCALLMEDIACONTROL (0x30000)
747 #define IDISPAGGREGATEDMSPCALLOBJ (0x40000)
748 #define IDISPADDRESS (0x10000)
749 #define IDISPADDRESSCAPABILITIES (0x20000)
750 #define IDISPMEDIASUPPORT (0x30000)
751 #define IDISPADDRESSTRANSLATION (0x40000)
752 #define IDISPLEGACYADDRESSMEDIACONTROL (0x50000)
753 #define IDISPAGGREGATEDMSPADDRESSOBJ (0x60000)
754 #define IDISPPHONE (0x10000)
755 #define IDISPAPC (0x20000)
756 #define IDISPMULTITRACK (0x10000)
757 #define IDISPMEDIACONTROL (0x20000)
758 #define IDISPMEDIARECORD (0x30000)
759 #define IDISPMEDIAPLAYBACK (0x40000)
760 #define IDISPFILETRACK (0x10000)
761 
762   extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0000_v0_0_c_ifspec;
763   extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0000_v0_0_s_ifspec;
764 #ifndef __ITTAPI_INTERFACE_DEFINED__
765 #define __ITTAPI_INTERFACE_DEFINED__
766   EXTERN_C const IID IID_ITTAPI;
767 #if defined(__cplusplus) && !defined(CINTERFACE)
768   struct ITTAPI : public IDispatch {
769   public:
770     virtual HRESULT WINAPI Initialize(void) = 0;
771     virtual HRESULT WINAPI Shutdown(void) = 0;
772     virtual HRESULT WINAPI get_Addresses(VARIANT *pVariant) = 0;
773     virtual HRESULT WINAPI EnumerateAddresses(IEnumAddress **ppEnumAddress) = 0;
774     virtual HRESULT WINAPI RegisterCallNotifications(ITAddress *pAddress,VARIANT_BOOL fMonitor,VARIANT_BOOL fOwner,__LONG32 lMediaTypes,__LONG32 lCallbackInstance,__LONG32 *plRegister) = 0;
775     virtual HRESULT WINAPI UnregisterNotifications(__LONG32 lRegister) = 0;
776     virtual HRESULT WINAPI get_CallHubs(VARIANT *pVariant) = 0;
777     virtual HRESULT WINAPI EnumerateCallHubs(IEnumCallHub **ppEnumCallHub) = 0;
778     virtual HRESULT WINAPI SetCallHubTracking(VARIANT pAddresses,VARIANT_BOOL bTracking) = 0;
779     virtual HRESULT WINAPI EnumeratePrivateTAPIObjects(IEnumUnknown **ppEnumUnknown) = 0;
780     virtual HRESULT WINAPI get_PrivateTAPIObjects(VARIANT *pVariant) = 0;
781     virtual HRESULT WINAPI RegisterRequestRecipient(__LONG32 lRegistrationInstance,__LONG32 lRequestMode,VARIANT_BOOL fEnable) = 0;
782     virtual HRESULT WINAPI SetAssistedTelephonyPriority(BSTR pAppFilename,VARIANT_BOOL fPriority) = 0;
783     virtual HRESULT WINAPI SetApplicationPriority(BSTR pAppFilename,__LONG32 lMediaType,VARIANT_BOOL fPriority) = 0;
784     virtual HRESULT WINAPI put_EventFilter(__LONG32 lFilterMask) = 0;
785     virtual HRESULT WINAPI get_EventFilter(__LONG32 *plFilterMask) = 0;
786   };
787 #else
788   typedef struct ITTAPIVtbl {
789     BEGIN_INTERFACE
790       HRESULT (WINAPI *QueryInterface)(ITTAPI *This,REFIID riid,void **ppvObject);
791       ULONG (WINAPI *AddRef)(ITTAPI *This);
792       ULONG (WINAPI *Release)(ITTAPI *This);
793       HRESULT (WINAPI *GetTypeInfoCount)(ITTAPI *This,UINT *pctinfo);
794       HRESULT (WINAPI *GetTypeInfo)(ITTAPI *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
795       HRESULT (WINAPI *GetIDsOfNames)(ITTAPI *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
796       HRESULT (WINAPI *Invoke)(ITTAPI *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
797       HRESULT (WINAPI *Initialize)(ITTAPI *This);
798       HRESULT (WINAPI *Shutdown)(ITTAPI *This);
799       HRESULT (WINAPI *get_Addresses)(ITTAPI *This,VARIANT *pVariant);
800       HRESULT (WINAPI *EnumerateAddresses)(ITTAPI *This,IEnumAddress **ppEnumAddress);
801       HRESULT (WINAPI *RegisterCallNotifications)(ITTAPI *This,ITAddress *pAddress,VARIANT_BOOL fMonitor,VARIANT_BOOL fOwner,__LONG32 lMediaTypes,__LONG32 lCallbackInstance,__LONG32 *plRegister);
802       HRESULT (WINAPI *UnregisterNotifications)(ITTAPI *This,__LONG32 lRegister);
803       HRESULT (WINAPI *get_CallHubs)(ITTAPI *This,VARIANT *pVariant);
804       HRESULT (WINAPI *EnumerateCallHubs)(ITTAPI *This,IEnumCallHub **ppEnumCallHub);
805       HRESULT (WINAPI *SetCallHubTracking)(ITTAPI *This,VARIANT pAddresses,VARIANT_BOOL bTracking);
806       HRESULT (WINAPI *EnumeratePrivateTAPIObjects)(ITTAPI *This,IEnumUnknown **ppEnumUnknown);
807       HRESULT (WINAPI *get_PrivateTAPIObjects)(ITTAPI *This,VARIANT *pVariant);
808       HRESULT (WINAPI *RegisterRequestRecipient)(ITTAPI *This,__LONG32 lRegistrationInstance,__LONG32 lRequestMode,VARIANT_BOOL fEnable);
809       HRESULT (WINAPI *SetAssistedTelephonyPriority)(ITTAPI *This,BSTR pAppFilename,VARIANT_BOOL fPriority);
810       HRESULT (WINAPI *SetApplicationPriority)(ITTAPI *This,BSTR pAppFilename,__LONG32 lMediaType,VARIANT_BOOL fPriority);
811       HRESULT (WINAPI *put_EventFilter)(ITTAPI *This,__LONG32 lFilterMask);
812       HRESULT (WINAPI *get_EventFilter)(ITTAPI *This,__LONG32 *plFilterMask);
813     END_INTERFACE
814   } ITTAPIVtbl;
815   struct ITTAPI {
816     CONST_VTBL struct ITTAPIVtbl *lpVtbl;
817   };
818 #ifdef COBJMACROS
819 #define ITTAPI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
820 #define ITTAPI_AddRef(This) (This)->lpVtbl->AddRef(This)
821 #define ITTAPI_Release(This) (This)->lpVtbl->Release(This)
822 #define ITTAPI_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
823 #define ITTAPI_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
824 #define ITTAPI_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
825 #define ITTAPI_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
826 #define ITTAPI_Initialize(This) (This)->lpVtbl->Initialize(This)
827 #define ITTAPI_Shutdown(This) (This)->lpVtbl->Shutdown(This)
828 #define ITTAPI_get_Addresses(This,pVariant) (This)->lpVtbl->get_Addresses(This,pVariant)
829 #define ITTAPI_EnumerateAddresses(This,ppEnumAddress) (This)->lpVtbl->EnumerateAddresses(This,ppEnumAddress)
830 #define ITTAPI_RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister) (This)->lpVtbl->RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister)
831 #define ITTAPI_UnregisterNotifications(This,lRegister) (This)->lpVtbl->UnregisterNotifications(This,lRegister)
832 #define ITTAPI_get_CallHubs(This,pVariant) (This)->lpVtbl->get_CallHubs(This,pVariant)
833 #define ITTAPI_EnumerateCallHubs(This,ppEnumCallHub) (This)->lpVtbl->EnumerateCallHubs(This,ppEnumCallHub)
834 #define ITTAPI_SetCallHubTracking(This,pAddresses,bTracking) (This)->lpVtbl->SetCallHubTracking(This,pAddresses,bTracking)
835 #define ITTAPI_EnumeratePrivateTAPIObjects(This,ppEnumUnknown) (This)->lpVtbl->EnumeratePrivateTAPIObjects(This,ppEnumUnknown)
836 #define ITTAPI_get_PrivateTAPIObjects(This,pVariant) (This)->lpVtbl->get_PrivateTAPIObjects(This,pVariant)
837 #define ITTAPI_RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable) (This)->lpVtbl->RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable)
838 #define ITTAPI_SetAssistedTelephonyPriority(This,pAppFilename,fPriority) (This)->lpVtbl->SetAssistedTelephonyPriority(This,pAppFilename,fPriority)
839 #define ITTAPI_SetApplicationPriority(This,pAppFilename,lMediaType,fPriority) (This)->lpVtbl->SetApplicationPriority(This,pAppFilename,lMediaType,fPriority)
840 #define ITTAPI_put_EventFilter(This,lFilterMask) (This)->lpVtbl->put_EventFilter(This,lFilterMask)
841 #define ITTAPI_get_EventFilter(This,plFilterMask) (This)->lpVtbl->get_EventFilter(This,plFilterMask)
842 #endif
843 #endif
844   HRESULT WINAPI ITTAPI_Initialize_Proxy(ITTAPI *This);
845   void __RPC_STUB ITTAPI_Initialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
846   HRESULT WINAPI ITTAPI_Shutdown_Proxy(ITTAPI *This);
847   void __RPC_STUB ITTAPI_Shutdown_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
848   HRESULT WINAPI ITTAPI_get_Addresses_Proxy(ITTAPI *This,VARIANT *pVariant);
849   void __RPC_STUB ITTAPI_get_Addresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
850   HRESULT WINAPI ITTAPI_EnumerateAddresses_Proxy(ITTAPI *This,IEnumAddress **ppEnumAddress);
851   void __RPC_STUB ITTAPI_EnumerateAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
852   HRESULT WINAPI ITTAPI_RegisterCallNotifications_Proxy(ITTAPI *This,ITAddress *pAddress,VARIANT_BOOL fMonitor,VARIANT_BOOL fOwner,__LONG32 lMediaTypes,__LONG32 lCallbackInstance,__LONG32 *plRegister);
853   void __RPC_STUB ITTAPI_RegisterCallNotifications_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
854   HRESULT WINAPI ITTAPI_UnregisterNotifications_Proxy(ITTAPI *This,__LONG32 lRegister);
855   void __RPC_STUB ITTAPI_UnregisterNotifications_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
856   HRESULT WINAPI ITTAPI_get_CallHubs_Proxy(ITTAPI *This,VARIANT *pVariant);
857   void __RPC_STUB ITTAPI_get_CallHubs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
858   HRESULT WINAPI ITTAPI_EnumerateCallHubs_Proxy(ITTAPI *This,IEnumCallHub **ppEnumCallHub);
859   void __RPC_STUB ITTAPI_EnumerateCallHubs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
860   HRESULT WINAPI ITTAPI_SetCallHubTracking_Proxy(ITTAPI *This,VARIANT pAddresses,VARIANT_BOOL bTracking);
861   void __RPC_STUB ITTAPI_SetCallHubTracking_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
862   HRESULT WINAPI ITTAPI_EnumeratePrivateTAPIObjects_Proxy(ITTAPI *This,IEnumUnknown **ppEnumUnknown);
863   void __RPC_STUB ITTAPI_EnumeratePrivateTAPIObjects_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
864   HRESULT WINAPI ITTAPI_get_PrivateTAPIObjects_Proxy(ITTAPI *This,VARIANT *pVariant);
865   void __RPC_STUB ITTAPI_get_PrivateTAPIObjects_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
866   HRESULT WINAPI ITTAPI_RegisterRequestRecipient_Proxy(ITTAPI *This,__LONG32 lRegistrationInstance,__LONG32 lRequestMode,VARIANT_BOOL fEnable);
867   void __RPC_STUB ITTAPI_RegisterRequestRecipient_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
868   HRESULT WINAPI ITTAPI_SetAssistedTelephonyPriority_Proxy(ITTAPI *This,BSTR pAppFilename,VARIANT_BOOL fPriority);
869   void __RPC_STUB ITTAPI_SetAssistedTelephonyPriority_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
870   HRESULT WINAPI ITTAPI_SetApplicationPriority_Proxy(ITTAPI *This,BSTR pAppFilename,__LONG32 lMediaType,VARIANT_BOOL fPriority);
871   void __RPC_STUB ITTAPI_SetApplicationPriority_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
872   HRESULT WINAPI ITTAPI_put_EventFilter_Proxy(ITTAPI *This,__LONG32 lFilterMask);
873   void __RPC_STUB ITTAPI_put_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
874   HRESULT WINAPI ITTAPI_get_EventFilter_Proxy(ITTAPI *This,__LONG32 *plFilterMask);
875   void __RPC_STUB ITTAPI_get_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
876 #endif
877 
878 #ifndef __ITTAPI2_INTERFACE_DEFINED__
879 #define __ITTAPI2_INTERFACE_DEFINED__
880   EXTERN_C const IID IID_ITTAPI2;
881 #if defined(__cplusplus) && !defined(CINTERFACE)
882   struct ITTAPI2 : public ITTAPI {
883   public:
884     virtual HRESULT WINAPI get_Phones(VARIANT *pPhones) = 0;
885     virtual HRESULT WINAPI EnumeratePhones(IEnumPhone **ppEnumPhone) = 0;
886     virtual HRESULT WINAPI CreateEmptyCollectionObject(ITCollection2 **ppCollection) = 0;
887   };
888 #else
889   typedef struct ITTAPI2Vtbl {
890     BEGIN_INTERFACE
891       HRESULT (WINAPI *QueryInterface)(ITTAPI2 *This,REFIID riid,void **ppvObject);
892       ULONG (WINAPI *AddRef)(ITTAPI2 *This);
893       ULONG (WINAPI *Release)(ITTAPI2 *This);
894       HRESULT (WINAPI *GetTypeInfoCount)(ITTAPI2 *This,UINT *pctinfo);
895       HRESULT (WINAPI *GetTypeInfo)(ITTAPI2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
896       HRESULT (WINAPI *GetIDsOfNames)(ITTAPI2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
897       HRESULT (WINAPI *Invoke)(ITTAPI2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
898       HRESULT (WINAPI *Initialize)(ITTAPI2 *This);
899       HRESULT (WINAPI *Shutdown)(ITTAPI2 *This);
900       HRESULT (WINAPI *get_Addresses)(ITTAPI2 *This,VARIANT *pVariant);
901       HRESULT (WINAPI *EnumerateAddresses)(ITTAPI2 *This,IEnumAddress **ppEnumAddress);
902       HRESULT (WINAPI *RegisterCallNotifications)(ITTAPI2 *This,ITAddress *pAddress,VARIANT_BOOL fMonitor,VARIANT_BOOL fOwner,__LONG32 lMediaTypes,__LONG32 lCallbackInstance,__LONG32 *plRegister);
903       HRESULT (WINAPI *UnregisterNotifications)(ITTAPI2 *This,__LONG32 lRegister);
904       HRESULT (WINAPI *get_CallHubs)(ITTAPI2 *This,VARIANT *pVariant);
905       HRESULT (WINAPI *EnumerateCallHubs)(ITTAPI2 *This,IEnumCallHub **ppEnumCallHub);
906       HRESULT (WINAPI *SetCallHubTracking)(ITTAPI2 *This,VARIANT pAddresses,VARIANT_BOOL bTracking);
907       HRESULT (WINAPI *EnumeratePrivateTAPIObjects)(ITTAPI2 *This,IEnumUnknown **ppEnumUnknown);
908       HRESULT (WINAPI *get_PrivateTAPIObjects)(ITTAPI2 *This,VARIANT *pVariant);
909       HRESULT (WINAPI *RegisterRequestRecipient)(ITTAPI2 *This,__LONG32 lRegistrationInstance,__LONG32 lRequestMode,VARIANT_BOOL fEnable);
910       HRESULT (WINAPI *SetAssistedTelephonyPriority)(ITTAPI2 *This,BSTR pAppFilename,VARIANT_BOOL fPriority);
911       HRESULT (WINAPI *SetApplicationPriority)(ITTAPI2 *This,BSTR pAppFilename,__LONG32 lMediaType,VARIANT_BOOL fPriority);
912       HRESULT (WINAPI *put_EventFilter)(ITTAPI2 *This,__LONG32 lFilterMask);
913       HRESULT (WINAPI *get_EventFilter)(ITTAPI2 *This,__LONG32 *plFilterMask);
914       HRESULT (WINAPI *get_Phones)(ITTAPI2 *This,VARIANT *pPhones);
915       HRESULT (WINAPI *EnumeratePhones)(ITTAPI2 *This,IEnumPhone **ppEnumPhone);
916       HRESULT (WINAPI *CreateEmptyCollectionObject)(ITTAPI2 *This,ITCollection2 **ppCollection);
917     END_INTERFACE
918   } ITTAPI2Vtbl;
919   struct ITTAPI2 {
920     CONST_VTBL struct ITTAPI2Vtbl *lpVtbl;
921   };
922 #ifdef COBJMACROS
923 #define ITTAPI2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
924 #define ITTAPI2_AddRef(This) (This)->lpVtbl->AddRef(This)
925 #define ITTAPI2_Release(This) (This)->lpVtbl->Release(This)
926 #define ITTAPI2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
927 #define ITTAPI2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
928 #define ITTAPI2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
929 #define ITTAPI2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
930 #define ITTAPI2_Initialize(This) (This)->lpVtbl->Initialize(This)
931 #define ITTAPI2_Shutdown(This) (This)->lpVtbl->Shutdown(This)
932 #define ITTAPI2_get_Addresses(This,pVariant) (This)->lpVtbl->get_Addresses(This,pVariant)
933 #define ITTAPI2_EnumerateAddresses(This,ppEnumAddress) (This)->lpVtbl->EnumerateAddresses(This,ppEnumAddress)
934 #define ITTAPI2_RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister) (This)->lpVtbl->RegisterCallNotifications(This,pAddress,fMonitor,fOwner,lMediaTypes,lCallbackInstance,plRegister)
935 #define ITTAPI2_UnregisterNotifications(This,lRegister) (This)->lpVtbl->UnregisterNotifications(This,lRegister)
936 #define ITTAPI2_get_CallHubs(This,pVariant) (This)->lpVtbl->get_CallHubs(This,pVariant)
937 #define ITTAPI2_EnumerateCallHubs(This,ppEnumCallHub) (This)->lpVtbl->EnumerateCallHubs(This,ppEnumCallHub)
938 #define ITTAPI2_SetCallHubTracking(This,pAddresses,bTracking) (This)->lpVtbl->SetCallHubTracking(This,pAddresses,bTracking)
939 #define ITTAPI2_EnumeratePrivateTAPIObjects(This,ppEnumUnknown) (This)->lpVtbl->EnumeratePrivateTAPIObjects(This,ppEnumUnknown)
940 #define ITTAPI2_get_PrivateTAPIObjects(This,pVariant) (This)->lpVtbl->get_PrivateTAPIObjects(This,pVariant)
941 #define ITTAPI2_RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable) (This)->lpVtbl->RegisterRequestRecipient(This,lRegistrationInstance,lRequestMode,fEnable)
942 #define ITTAPI2_SetAssistedTelephonyPriority(This,pAppFilename,fPriority) (This)->lpVtbl->SetAssistedTelephonyPriority(This,pAppFilename,fPriority)
943 #define ITTAPI2_SetApplicationPriority(This,pAppFilename,lMediaType,fPriority) (This)->lpVtbl->SetApplicationPriority(This,pAppFilename,lMediaType,fPriority)
944 #define ITTAPI2_put_EventFilter(This,lFilterMask) (This)->lpVtbl->put_EventFilter(This,lFilterMask)
945 #define ITTAPI2_get_EventFilter(This,plFilterMask) (This)->lpVtbl->get_EventFilter(This,plFilterMask)
946 #define ITTAPI2_get_Phones(This,pPhones) (This)->lpVtbl->get_Phones(This,pPhones)
947 #define ITTAPI2_EnumeratePhones(This,ppEnumPhone) (This)->lpVtbl->EnumeratePhones(This,ppEnumPhone)
948 #define ITTAPI2_CreateEmptyCollectionObject(This,ppCollection) (This)->lpVtbl->CreateEmptyCollectionObject(This,ppCollection)
949 #endif
950 #endif
951   HRESULT WINAPI ITTAPI2_get_Phones_Proxy(ITTAPI2 *This,VARIANT *pPhones);
952   void __RPC_STUB ITTAPI2_get_Phones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
953   HRESULT WINAPI ITTAPI2_EnumeratePhones_Proxy(ITTAPI2 *This,IEnumPhone **ppEnumPhone);
954   void __RPC_STUB ITTAPI2_EnumeratePhones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
955   HRESULT WINAPI ITTAPI2_CreateEmptyCollectionObject_Proxy(ITTAPI2 *This,ITCollection2 **ppCollection);
956   void __RPC_STUB ITTAPI2_CreateEmptyCollectionObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
957 #endif
958 
959 #ifndef __ITMediaSupport_INTERFACE_DEFINED__
960 #define __ITMediaSupport_INTERFACE_DEFINED__
961   EXTERN_C const IID IID_ITMediaSupport;
962 #if defined(__cplusplus) && !defined(CINTERFACE)
963   struct ITMediaSupport : public IDispatch {
964   public:
965     virtual HRESULT WINAPI get_MediaTypes(__LONG32 *plMediaTypes) = 0;
966     virtual HRESULT WINAPI QueryMediaType(__LONG32 lMediaType,VARIANT_BOOL *pfSupport) = 0;
967   };
968 #else
969   typedef struct ITMediaSupportVtbl {
970     BEGIN_INTERFACE
971       HRESULT (WINAPI *QueryInterface)(ITMediaSupport *This,REFIID riid,void **ppvObject);
972       ULONG (WINAPI *AddRef)(ITMediaSupport *This);
973       ULONG (WINAPI *Release)(ITMediaSupport *This);
974       HRESULT (WINAPI *GetTypeInfoCount)(ITMediaSupport *This,UINT *pctinfo);
975       HRESULT (WINAPI *GetTypeInfo)(ITMediaSupport *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
976       HRESULT (WINAPI *GetIDsOfNames)(ITMediaSupport *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
977       HRESULT (WINAPI *Invoke)(ITMediaSupport *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
978       HRESULT (WINAPI *get_MediaTypes)(ITMediaSupport *This,__LONG32 *plMediaTypes);
979       HRESULT (WINAPI *QueryMediaType)(ITMediaSupport *This,__LONG32 lMediaType,VARIANT_BOOL *pfSupport);
980     END_INTERFACE
981   } ITMediaSupportVtbl;
982   struct ITMediaSupport {
983     CONST_VTBL struct ITMediaSupportVtbl *lpVtbl;
984   };
985 #ifdef COBJMACROS
986 #define ITMediaSupport_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
987 #define ITMediaSupport_AddRef(This) (This)->lpVtbl->AddRef(This)
988 #define ITMediaSupport_Release(This) (This)->lpVtbl->Release(This)
989 #define ITMediaSupport_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
990 #define ITMediaSupport_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
991 #define ITMediaSupport_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
992 #define ITMediaSupport_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
993 #define ITMediaSupport_get_MediaTypes(This,plMediaTypes) (This)->lpVtbl->get_MediaTypes(This,plMediaTypes)
994 #define ITMediaSupport_QueryMediaType(This,lMediaType,pfSupport) (This)->lpVtbl->QueryMediaType(This,lMediaType,pfSupport)
995 #endif
996 #endif
997   HRESULT WINAPI ITMediaSupport_get_MediaTypes_Proxy(ITMediaSupport *This,__LONG32 *plMediaTypes);
998   void __RPC_STUB ITMediaSupport_get_MediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
999   HRESULT WINAPI ITMediaSupport_QueryMediaType_Proxy(ITMediaSupport *This,__LONG32 lMediaType,VARIANT_BOOL *pfSupport);
1000   void __RPC_STUB ITMediaSupport_QueryMediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1001 #endif
1002 
1003 #ifndef __ITPluggableTerminalClassInfo_INTERFACE_DEFINED__
1004 #define __ITPluggableTerminalClassInfo_INTERFACE_DEFINED__
1005   EXTERN_C const IID IID_ITPluggableTerminalClassInfo;
1006 #if defined(__cplusplus) && !defined(CINTERFACE)
1007   struct ITPluggableTerminalClassInfo : public IDispatch {
1008   public:
1009     virtual HRESULT WINAPI get_Name(BSTR *pName) = 0;
1010     virtual HRESULT WINAPI get_Company(BSTR *pCompany) = 0;
1011     virtual HRESULT WINAPI get_Version(BSTR *pVersion) = 0;
1012     virtual HRESULT WINAPI get_TerminalClass(BSTR *pTerminalClass) = 0;
1013     virtual HRESULT WINAPI get_CLSID(BSTR *pCLSID) = 0;
1014     virtual HRESULT WINAPI get_Direction(TERMINAL_DIRECTION *pDirection) = 0;
1015     virtual HRESULT WINAPI get_MediaTypes(__LONG32 *pMediaTypes) = 0;
1016   };
1017 #else
1018   typedef struct ITPluggableTerminalClassInfoVtbl {
1019     BEGIN_INTERFACE
1020       HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalClassInfo *This,REFIID riid,void **ppvObject);
1021       ULONG (WINAPI *AddRef)(ITPluggableTerminalClassInfo *This);
1022       ULONG (WINAPI *Release)(ITPluggableTerminalClassInfo *This);
1023       HRESULT (WINAPI *GetTypeInfoCount)(ITPluggableTerminalClassInfo *This,UINT *pctinfo);
1024       HRESULT (WINAPI *GetTypeInfo)(ITPluggableTerminalClassInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1025       HRESULT (WINAPI *GetIDsOfNames)(ITPluggableTerminalClassInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1026       HRESULT (WINAPI *Invoke)(ITPluggableTerminalClassInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1027       HRESULT (WINAPI *get_Name)(ITPluggableTerminalClassInfo *This,BSTR *pName);
1028       HRESULT (WINAPI *get_Company)(ITPluggableTerminalClassInfo *This,BSTR *pCompany);
1029       HRESULT (WINAPI *get_Version)(ITPluggableTerminalClassInfo *This,BSTR *pVersion);
1030       HRESULT (WINAPI *get_TerminalClass)(ITPluggableTerminalClassInfo *This,BSTR *pTerminalClass);
1031       HRESULT (WINAPI *get_CLSID)(ITPluggableTerminalClassInfo *This,BSTR *pCLSID);
1032       HRESULT (WINAPI *get_Direction)(ITPluggableTerminalClassInfo *This,TERMINAL_DIRECTION *pDirection);
1033       HRESULT (WINAPI *get_MediaTypes)(ITPluggableTerminalClassInfo *This,__LONG32 *pMediaTypes);
1034     END_INTERFACE
1035   } ITPluggableTerminalClassInfoVtbl;
1036   struct ITPluggableTerminalClassInfo {
1037     CONST_VTBL struct ITPluggableTerminalClassInfoVtbl *lpVtbl;
1038   };
1039 #ifdef COBJMACROS
1040 #define ITPluggableTerminalClassInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1041 #define ITPluggableTerminalClassInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1042 #define ITPluggableTerminalClassInfo_Release(This) (This)->lpVtbl->Release(This)
1043 #define ITPluggableTerminalClassInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1044 #define ITPluggableTerminalClassInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1045 #define ITPluggableTerminalClassInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1046 #define ITPluggableTerminalClassInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1047 #define ITPluggableTerminalClassInfo_get_Name(This,pName) (This)->lpVtbl->get_Name(This,pName)
1048 #define ITPluggableTerminalClassInfo_get_Company(This,pCompany) (This)->lpVtbl->get_Company(This,pCompany)
1049 #define ITPluggableTerminalClassInfo_get_Version(This,pVersion) (This)->lpVtbl->get_Version(This,pVersion)
1050 #define ITPluggableTerminalClassInfo_get_TerminalClass(This,pTerminalClass) (This)->lpVtbl->get_TerminalClass(This,pTerminalClass)
1051 #define ITPluggableTerminalClassInfo_get_CLSID(This,pCLSID) (This)->lpVtbl->get_CLSID(This,pCLSID)
1052 #define ITPluggableTerminalClassInfo_get_Direction(This,pDirection) (This)->lpVtbl->get_Direction(This,pDirection)
1053 #define ITPluggableTerminalClassInfo_get_MediaTypes(This,pMediaTypes) (This)->lpVtbl->get_MediaTypes(This,pMediaTypes)
1054 #endif
1055 #endif
1056   HRESULT WINAPI ITPluggableTerminalClassInfo_get_Name_Proxy(ITPluggableTerminalClassInfo *This,BSTR *pName);
1057   void __RPC_STUB ITPluggableTerminalClassInfo_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1058   HRESULT WINAPI ITPluggableTerminalClassInfo_get_Company_Proxy(ITPluggableTerminalClassInfo *This,BSTR *pCompany);
1059   void __RPC_STUB ITPluggableTerminalClassInfo_get_Company_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1060   HRESULT WINAPI ITPluggableTerminalClassInfo_get_Version_Proxy(ITPluggableTerminalClassInfo *This,BSTR *pVersion);
1061   void __RPC_STUB ITPluggableTerminalClassInfo_get_Version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1062   HRESULT WINAPI ITPluggableTerminalClassInfo_get_TerminalClass_Proxy(ITPluggableTerminalClassInfo *This,BSTR *pTerminalClass);
1063   void __RPC_STUB ITPluggableTerminalClassInfo_get_TerminalClass_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1064   HRESULT WINAPI ITPluggableTerminalClassInfo_get_CLSID_Proxy(ITPluggableTerminalClassInfo *This,BSTR *pCLSID);
1065   void __RPC_STUB ITPluggableTerminalClassInfo_get_CLSID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1066   HRESULT WINAPI ITPluggableTerminalClassInfo_get_Direction_Proxy(ITPluggableTerminalClassInfo *This,TERMINAL_DIRECTION *pDirection);
1067   void __RPC_STUB ITPluggableTerminalClassInfo_get_Direction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1068   HRESULT WINAPI ITPluggableTerminalClassInfo_get_MediaTypes_Proxy(ITPluggableTerminalClassInfo *This,__LONG32 *pMediaTypes);
1069   void __RPC_STUB ITPluggableTerminalClassInfo_get_MediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1070 #endif
1071 
1072 #ifndef __ITPluggableTerminalSuperclassInfo_INTERFACE_DEFINED__
1073 #define __ITPluggableTerminalSuperclassInfo_INTERFACE_DEFINED__
1074   EXTERN_C const IID IID_ITPluggableTerminalSuperclassInfo;
1075 #if defined(__cplusplus) && !defined(CINTERFACE)
1076   struct ITPluggableTerminalSuperclassInfo : public IDispatch {
1077   public:
1078     virtual HRESULT WINAPI get_Name(BSTR *pName) = 0;
1079     virtual HRESULT WINAPI get_CLSID(BSTR *pCLSID) = 0;
1080   };
1081 #else
1082   typedef struct ITPluggableTerminalSuperclassInfoVtbl {
1083     BEGIN_INTERFACE
1084       HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalSuperclassInfo *This,REFIID riid,void **ppvObject);
1085       ULONG (WINAPI *AddRef)(ITPluggableTerminalSuperclassInfo *This);
1086       ULONG (WINAPI *Release)(ITPluggableTerminalSuperclassInfo *This);
1087       HRESULT (WINAPI *GetTypeInfoCount)(ITPluggableTerminalSuperclassInfo *This,UINT *pctinfo);
1088       HRESULT (WINAPI *GetTypeInfo)(ITPluggableTerminalSuperclassInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1089       HRESULT (WINAPI *GetIDsOfNames)(ITPluggableTerminalSuperclassInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1090       HRESULT (WINAPI *Invoke)(ITPluggableTerminalSuperclassInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1091       HRESULT (WINAPI *get_Name)(ITPluggableTerminalSuperclassInfo *This,BSTR *pName);
1092       HRESULT (WINAPI *get_CLSID)(ITPluggableTerminalSuperclassInfo *This,BSTR *pCLSID);
1093     END_INTERFACE
1094   } ITPluggableTerminalSuperclassInfoVtbl;
1095   struct ITPluggableTerminalSuperclassInfo {
1096     CONST_VTBL struct ITPluggableTerminalSuperclassInfoVtbl *lpVtbl;
1097   };
1098 #ifdef COBJMACROS
1099 #define ITPluggableTerminalSuperclassInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1100 #define ITPluggableTerminalSuperclassInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1101 #define ITPluggableTerminalSuperclassInfo_Release(This) (This)->lpVtbl->Release(This)
1102 #define ITPluggableTerminalSuperclassInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1103 #define ITPluggableTerminalSuperclassInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1104 #define ITPluggableTerminalSuperclassInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1105 #define ITPluggableTerminalSuperclassInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1106 #define ITPluggableTerminalSuperclassInfo_get_Name(This,pName) (This)->lpVtbl->get_Name(This,pName)
1107 #define ITPluggableTerminalSuperclassInfo_get_CLSID(This,pCLSID) (This)->lpVtbl->get_CLSID(This,pCLSID)
1108 #endif
1109 #endif
1110   HRESULT WINAPI ITPluggableTerminalSuperclassInfo_get_Name_Proxy(ITPluggableTerminalSuperclassInfo *This,BSTR *pName);
1111   void __RPC_STUB ITPluggableTerminalSuperclassInfo_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1112   HRESULT WINAPI ITPluggableTerminalSuperclassInfo_get_CLSID_Proxy(ITPluggableTerminalSuperclassInfo *This,BSTR *pCLSID);
1113   void __RPC_STUB ITPluggableTerminalSuperclassInfo_get_CLSID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1114 #endif
1115 
1116 #ifndef __ITTerminalSupport_INTERFACE_DEFINED__
1117 #define __ITTerminalSupport_INTERFACE_DEFINED__
1118   EXTERN_C const IID IID_ITTerminalSupport;
1119 #if defined(__cplusplus) && !defined(CINTERFACE)
1120   struct ITTerminalSupport : public IDispatch {
1121   public:
1122     virtual HRESULT WINAPI get_StaticTerminals(VARIANT *pVariant) = 0;
1123     virtual HRESULT WINAPI EnumerateStaticTerminals(IEnumTerminal **ppTerminalEnumerator) = 0;
1124     virtual HRESULT WINAPI get_DynamicTerminalClasses(VARIANT *pVariant) = 0;
1125     virtual HRESULT WINAPI EnumerateDynamicTerminalClasses(IEnumTerminalClass **ppTerminalClassEnumerator) = 0;
1126     virtual HRESULT WINAPI CreateTerminal(BSTR pTerminalClass,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal) = 0;
1127     virtual HRESULT WINAPI GetDefaultStaticTerminal(__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal) = 0;
1128   };
1129 #else
1130   typedef struct ITTerminalSupportVtbl {
1131     BEGIN_INTERFACE
1132       HRESULT (WINAPI *QueryInterface)(ITTerminalSupport *This,REFIID riid,void **ppvObject);
1133       ULONG (WINAPI *AddRef)(ITTerminalSupport *This);
1134       ULONG (WINAPI *Release)(ITTerminalSupport *This);
1135       HRESULT (WINAPI *GetTypeInfoCount)(ITTerminalSupport *This,UINT *pctinfo);
1136       HRESULT (WINAPI *GetTypeInfo)(ITTerminalSupport *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1137       HRESULT (WINAPI *GetIDsOfNames)(ITTerminalSupport *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1138       HRESULT (WINAPI *Invoke)(ITTerminalSupport *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1139       HRESULT (WINAPI *get_StaticTerminals)(ITTerminalSupport *This,VARIANT *pVariant);
1140       HRESULT (WINAPI *EnumerateStaticTerminals)(ITTerminalSupport *This,IEnumTerminal **ppTerminalEnumerator);
1141       HRESULT (WINAPI *get_DynamicTerminalClasses)(ITTerminalSupport *This,VARIANT *pVariant);
1142       HRESULT (WINAPI *EnumerateDynamicTerminalClasses)(ITTerminalSupport *This,IEnumTerminalClass **ppTerminalClassEnumerator);
1143       HRESULT (WINAPI *CreateTerminal)(ITTerminalSupport *This,BSTR pTerminalClass,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
1144       HRESULT (WINAPI *GetDefaultStaticTerminal)(ITTerminalSupport *This,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
1145     END_INTERFACE
1146   } ITTerminalSupportVtbl;
1147   struct ITTerminalSupport {
1148     CONST_VTBL struct ITTerminalSupportVtbl *lpVtbl;
1149   };
1150 #ifdef COBJMACROS
1151 #define ITTerminalSupport_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1152 #define ITTerminalSupport_AddRef(This) (This)->lpVtbl->AddRef(This)
1153 #define ITTerminalSupport_Release(This) (This)->lpVtbl->Release(This)
1154 #define ITTerminalSupport_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1155 #define ITTerminalSupport_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1156 #define ITTerminalSupport_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1157 #define ITTerminalSupport_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1158 #define ITTerminalSupport_get_StaticTerminals(This,pVariant) (This)->lpVtbl->get_StaticTerminals(This,pVariant)
1159 #define ITTerminalSupport_EnumerateStaticTerminals(This,ppTerminalEnumerator) (This)->lpVtbl->EnumerateStaticTerminals(This,ppTerminalEnumerator)
1160 #define ITTerminalSupport_get_DynamicTerminalClasses(This,pVariant) (This)->lpVtbl->get_DynamicTerminalClasses(This,pVariant)
1161 #define ITTerminalSupport_EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator) (This)->lpVtbl->EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator)
1162 #define ITTerminalSupport_CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal) (This)->lpVtbl->CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal)
1163 #define ITTerminalSupport_GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal) (This)->lpVtbl->GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal)
1164 #endif
1165 #endif
1166   HRESULT WINAPI ITTerminalSupport_get_StaticTerminals_Proxy(ITTerminalSupport *This,VARIANT *pVariant);
1167   void __RPC_STUB ITTerminalSupport_get_StaticTerminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1168   HRESULT WINAPI ITTerminalSupport_EnumerateStaticTerminals_Proxy(ITTerminalSupport *This,IEnumTerminal **ppTerminalEnumerator);
1169   void __RPC_STUB ITTerminalSupport_EnumerateStaticTerminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1170   HRESULT WINAPI ITTerminalSupport_get_DynamicTerminalClasses_Proxy(ITTerminalSupport *This,VARIANT *pVariant);
1171   void __RPC_STUB ITTerminalSupport_get_DynamicTerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1172   HRESULT WINAPI ITTerminalSupport_EnumerateDynamicTerminalClasses_Proxy(ITTerminalSupport *This,IEnumTerminalClass **ppTerminalClassEnumerator);
1173   void __RPC_STUB ITTerminalSupport_EnumerateDynamicTerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1174   HRESULT WINAPI ITTerminalSupport_CreateTerminal_Proxy(ITTerminalSupport *This,BSTR pTerminalClass,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
1175   void __RPC_STUB ITTerminalSupport_CreateTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1176   HRESULT WINAPI ITTerminalSupport_GetDefaultStaticTerminal_Proxy(ITTerminalSupport *This,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
1177   void __RPC_STUB ITTerminalSupport_GetDefaultStaticTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1178 #endif
1179 
1180 #ifndef __ITTerminalSupport2_INTERFACE_DEFINED__
1181 #define __ITTerminalSupport2_INTERFACE_DEFINED__
1182   EXTERN_C const IID IID_ITTerminalSupport2;
1183 #if defined(__cplusplus) && !defined(CINTERFACE)
1184   struct ITTerminalSupport2 : public ITTerminalSupport {
1185   public:
1186     virtual HRESULT WINAPI get_PluggableSuperclasses(VARIANT *pVariant) = 0;
1187     virtual HRESULT WINAPI EnumeratePluggableSuperclasses(IEnumPluggableSuperclassInfo **ppSuperclassEnumerator) = 0;
1188     virtual HRESULT WINAPI get_PluggableTerminalClasses(BSTR bstrTerminalSuperclass,__LONG32 lMediaType,VARIANT *pVariant) = 0;
1189     virtual HRESULT WINAPI EnumeratePluggableTerminalClasses(CLSID iidTerminalSuperclass,__LONG32 lMediaType,IEnumPluggableTerminalClassInfo **ppClassEnumerator) = 0;
1190   };
1191 #else
1192   typedef struct ITTerminalSupport2Vtbl {
1193     BEGIN_INTERFACE
1194       HRESULT (WINAPI *QueryInterface)(ITTerminalSupport2 *This,REFIID riid,void **ppvObject);
1195       ULONG (WINAPI *AddRef)(ITTerminalSupport2 *This);
1196       ULONG (WINAPI *Release)(ITTerminalSupport2 *This);
1197       HRESULT (WINAPI *GetTypeInfoCount)(ITTerminalSupport2 *This,UINT *pctinfo);
1198       HRESULT (WINAPI *GetTypeInfo)(ITTerminalSupport2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1199       HRESULT (WINAPI *GetIDsOfNames)(ITTerminalSupport2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1200       HRESULT (WINAPI *Invoke)(ITTerminalSupport2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1201       HRESULT (WINAPI *get_StaticTerminals)(ITTerminalSupport2 *This,VARIANT *pVariant);
1202       HRESULT (WINAPI *EnumerateStaticTerminals)(ITTerminalSupport2 *This,IEnumTerminal **ppTerminalEnumerator);
1203       HRESULT (WINAPI *get_DynamicTerminalClasses)(ITTerminalSupport2 *This,VARIANT *pVariant);
1204       HRESULT (WINAPI *EnumerateDynamicTerminalClasses)(ITTerminalSupport2 *This,IEnumTerminalClass **ppTerminalClassEnumerator);
1205       HRESULT (WINAPI *CreateTerminal)(ITTerminalSupport2 *This,BSTR pTerminalClass,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
1206       HRESULT (WINAPI *GetDefaultStaticTerminal)(ITTerminalSupport2 *This,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
1207       HRESULT (WINAPI *get_PluggableSuperclasses)(ITTerminalSupport2 *This,VARIANT *pVariant);
1208       HRESULT (WINAPI *EnumeratePluggableSuperclasses)(ITTerminalSupport2 *This,IEnumPluggableSuperclassInfo **ppSuperclassEnumerator);
1209       HRESULT (WINAPI *get_PluggableTerminalClasses)(ITTerminalSupport2 *This,BSTR bstrTerminalSuperclass,__LONG32 lMediaType,VARIANT *pVariant);
1210       HRESULT (WINAPI *EnumeratePluggableTerminalClasses)(ITTerminalSupport2 *This,CLSID iidTerminalSuperclass,__LONG32 lMediaType,IEnumPluggableTerminalClassInfo **ppClassEnumerator);
1211     END_INTERFACE
1212   } ITTerminalSupport2Vtbl;
1213   struct ITTerminalSupport2 {
1214     CONST_VTBL struct ITTerminalSupport2Vtbl *lpVtbl;
1215   };
1216 #ifdef COBJMACROS
1217 #define ITTerminalSupport2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1218 #define ITTerminalSupport2_AddRef(This) (This)->lpVtbl->AddRef(This)
1219 #define ITTerminalSupport2_Release(This) (This)->lpVtbl->Release(This)
1220 #define ITTerminalSupport2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1221 #define ITTerminalSupport2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1222 #define ITTerminalSupport2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1223 #define ITTerminalSupport2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1224 #define ITTerminalSupport2_get_StaticTerminals(This,pVariant) (This)->lpVtbl->get_StaticTerminals(This,pVariant)
1225 #define ITTerminalSupport2_EnumerateStaticTerminals(This,ppTerminalEnumerator) (This)->lpVtbl->EnumerateStaticTerminals(This,ppTerminalEnumerator)
1226 #define ITTerminalSupport2_get_DynamicTerminalClasses(This,pVariant) (This)->lpVtbl->get_DynamicTerminalClasses(This,pVariant)
1227 #define ITTerminalSupport2_EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator) (This)->lpVtbl->EnumerateDynamicTerminalClasses(This,ppTerminalClassEnumerator)
1228 #define ITTerminalSupport2_CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal) (This)->lpVtbl->CreateTerminal(This,pTerminalClass,lMediaType,Direction,ppTerminal)
1229 #define ITTerminalSupport2_GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal) (This)->lpVtbl->GetDefaultStaticTerminal(This,lMediaType,Direction,ppTerminal)
1230 #define ITTerminalSupport2_get_PluggableSuperclasses(This,pVariant) (This)->lpVtbl->get_PluggableSuperclasses(This,pVariant)
1231 #define ITTerminalSupport2_EnumeratePluggableSuperclasses(This,ppSuperclassEnumerator) (This)->lpVtbl->EnumeratePluggableSuperclasses(This,ppSuperclassEnumerator)
1232 #define ITTerminalSupport2_get_PluggableTerminalClasses(This,bstrTerminalSuperclass,lMediaType,pVariant) (This)->lpVtbl->get_PluggableTerminalClasses(This,bstrTerminalSuperclass,lMediaType,pVariant)
1233 #define ITTerminalSupport2_EnumeratePluggableTerminalClasses(This,iidTerminalSuperclass,lMediaType,ppClassEnumerator) (This)->lpVtbl->EnumeratePluggableTerminalClasses(This,iidTerminalSuperclass,lMediaType,ppClassEnumerator)
1234 #endif
1235 #endif
1236   HRESULT WINAPI ITTerminalSupport2_get_PluggableSuperclasses_Proxy(ITTerminalSupport2 *This,VARIANT *pVariant);
1237   void __RPC_STUB ITTerminalSupport2_get_PluggableSuperclasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1238   HRESULT WINAPI ITTerminalSupport2_EnumeratePluggableSuperclasses_Proxy(ITTerminalSupport2 *This,IEnumPluggableSuperclassInfo **ppSuperclassEnumerator);
1239   void __RPC_STUB ITTerminalSupport2_EnumeratePluggableSuperclasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1240   HRESULT WINAPI ITTerminalSupport2_get_PluggableTerminalClasses_Proxy(ITTerminalSupport2 *This,BSTR bstrTerminalSuperclass,__LONG32 lMediaType,VARIANT *pVariant);
1241   void __RPC_STUB ITTerminalSupport2_get_PluggableTerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1242   HRESULT WINAPI ITTerminalSupport2_EnumeratePluggableTerminalClasses_Proxy(ITTerminalSupport2 *This,CLSID iidTerminalSuperclass,__LONG32 lMediaType,IEnumPluggableTerminalClassInfo **ppClassEnumerator);
1243   void __RPC_STUB ITTerminalSupport2_EnumeratePluggableTerminalClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1244 #endif
1245 
1246 #ifndef __ITAddress_INTERFACE_DEFINED__
1247 #define __ITAddress_INTERFACE_DEFINED__
1248   EXTERN_C const IID IID_ITAddress;
1249 #if defined(__cplusplus) && !defined(CINTERFACE)
1250   struct ITAddress : public IDispatch {
1251   public:
1252     virtual HRESULT WINAPI get_State(ADDRESS_STATE *pAddressState) = 0;
1253     virtual HRESULT WINAPI get_AddressName(BSTR *ppName) = 0;
1254     virtual HRESULT WINAPI get_ServiceProviderName(BSTR *ppName) = 0;
1255     virtual HRESULT WINAPI get_TAPIObject(ITTAPI **ppTapiObject) = 0;
1256     virtual HRESULT WINAPI CreateCall(BSTR pDestAddress,__LONG32 lAddressType,__LONG32 lMediaTypes,ITBasicCallControl **ppCall) = 0;
1257     virtual HRESULT WINAPI get_Calls(VARIANT *pVariant) = 0;
1258     virtual HRESULT WINAPI EnumerateCalls(IEnumCall **ppCallEnum) = 0;
1259     virtual HRESULT WINAPI get_DialableAddress(BSTR *pDialableAddress) = 0;
1260     virtual HRESULT WINAPI CreateForwardInfoObject(ITForwardInformation **ppForwardInfo) = 0;
1261     virtual HRESULT WINAPI Forward(ITForwardInformation *pForwardInfo,ITBasicCallControl *pCall) = 0;
1262     virtual HRESULT WINAPI get_CurrentForwardInfo(ITForwardInformation **ppForwardInfo) = 0;
1263     virtual HRESULT WINAPI put_MessageWaiting(VARIANT_BOOL fMessageWaiting) = 0;
1264     virtual HRESULT WINAPI get_MessageWaiting(VARIANT_BOOL *pfMessageWaiting) = 0;
1265     virtual HRESULT WINAPI put_DoNotDisturb(VARIANT_BOOL fDoNotDisturb) = 0;
1266     virtual HRESULT WINAPI get_DoNotDisturb(VARIANT_BOOL *pfDoNotDisturb) = 0;
1267   };
1268 #else
1269   typedef struct ITAddressVtbl {
1270     BEGIN_INTERFACE
1271       HRESULT (WINAPI *QueryInterface)(ITAddress *This,REFIID riid,void **ppvObject);
1272       ULONG (WINAPI *AddRef)(ITAddress *This);
1273       ULONG (WINAPI *Release)(ITAddress *This);
1274       HRESULT (WINAPI *GetTypeInfoCount)(ITAddress *This,UINT *pctinfo);
1275       HRESULT (WINAPI *GetTypeInfo)(ITAddress *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1276       HRESULT (WINAPI *GetIDsOfNames)(ITAddress *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1277       HRESULT (WINAPI *Invoke)(ITAddress *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1278       HRESULT (WINAPI *get_State)(ITAddress *This,ADDRESS_STATE *pAddressState);
1279       HRESULT (WINAPI *get_AddressName)(ITAddress *This,BSTR *ppName);
1280       HRESULT (WINAPI *get_ServiceProviderName)(ITAddress *This,BSTR *ppName);
1281       HRESULT (WINAPI *get_TAPIObject)(ITAddress *This,ITTAPI **ppTapiObject);
1282       HRESULT (WINAPI *CreateCall)(ITAddress *This,BSTR pDestAddress,__LONG32 lAddressType,__LONG32 lMediaTypes,ITBasicCallControl **ppCall);
1283       HRESULT (WINAPI *get_Calls)(ITAddress *This,VARIANT *pVariant);
1284       HRESULT (WINAPI *EnumerateCalls)(ITAddress *This,IEnumCall **ppCallEnum);
1285       HRESULT (WINAPI *get_DialableAddress)(ITAddress *This,BSTR *pDialableAddress);
1286       HRESULT (WINAPI *CreateForwardInfoObject)(ITAddress *This,ITForwardInformation **ppForwardInfo);
1287       HRESULT (WINAPI *Forward)(ITAddress *This,ITForwardInformation *pForwardInfo,ITBasicCallControl *pCall);
1288       HRESULT (WINAPI *get_CurrentForwardInfo)(ITAddress *This,ITForwardInformation **ppForwardInfo);
1289       HRESULT (WINAPI *put_MessageWaiting)(ITAddress *This,VARIANT_BOOL fMessageWaiting);
1290       HRESULT (WINAPI *get_MessageWaiting)(ITAddress *This,VARIANT_BOOL *pfMessageWaiting);
1291       HRESULT (WINAPI *put_DoNotDisturb)(ITAddress *This,VARIANT_BOOL fDoNotDisturb);
1292       HRESULT (WINAPI *get_DoNotDisturb)(ITAddress *This,VARIANT_BOOL *pfDoNotDisturb);
1293     END_INTERFACE
1294   } ITAddressVtbl;
1295   struct ITAddress {
1296     CONST_VTBL struct ITAddressVtbl *lpVtbl;
1297   };
1298 #ifdef COBJMACROS
1299 #define ITAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1300 #define ITAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
1301 #define ITAddress_Release(This) (This)->lpVtbl->Release(This)
1302 #define ITAddress_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1303 #define ITAddress_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1304 #define ITAddress_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1305 #define ITAddress_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1306 #define ITAddress_get_State(This,pAddressState) (This)->lpVtbl->get_State(This,pAddressState)
1307 #define ITAddress_get_AddressName(This,ppName) (This)->lpVtbl->get_AddressName(This,ppName)
1308 #define ITAddress_get_ServiceProviderName(This,ppName) (This)->lpVtbl->get_ServiceProviderName(This,ppName)
1309 #define ITAddress_get_TAPIObject(This,ppTapiObject) (This)->lpVtbl->get_TAPIObject(This,ppTapiObject)
1310 #define ITAddress_CreateCall(This,pDestAddress,lAddressType,lMediaTypes,ppCall) (This)->lpVtbl->CreateCall(This,pDestAddress,lAddressType,lMediaTypes,ppCall)
1311 #define ITAddress_get_Calls(This,pVariant) (This)->lpVtbl->get_Calls(This,pVariant)
1312 #define ITAddress_EnumerateCalls(This,ppCallEnum) (This)->lpVtbl->EnumerateCalls(This,ppCallEnum)
1313 #define ITAddress_get_DialableAddress(This,pDialableAddress) (This)->lpVtbl->get_DialableAddress(This,pDialableAddress)
1314 #define ITAddress_CreateForwardInfoObject(This,ppForwardInfo) (This)->lpVtbl->CreateForwardInfoObject(This,ppForwardInfo)
1315 #define ITAddress_Forward(This,pForwardInfo,pCall) (This)->lpVtbl->Forward(This,pForwardInfo,pCall)
1316 #define ITAddress_get_CurrentForwardInfo(This,ppForwardInfo) (This)->lpVtbl->get_CurrentForwardInfo(This,ppForwardInfo)
1317 #define ITAddress_put_MessageWaiting(This,fMessageWaiting) (This)->lpVtbl->put_MessageWaiting(This,fMessageWaiting)
1318 #define ITAddress_get_MessageWaiting(This,pfMessageWaiting) (This)->lpVtbl->get_MessageWaiting(This,pfMessageWaiting)
1319 #define ITAddress_put_DoNotDisturb(This,fDoNotDisturb) (This)->lpVtbl->put_DoNotDisturb(This,fDoNotDisturb)
1320 #define ITAddress_get_DoNotDisturb(This,pfDoNotDisturb) (This)->lpVtbl->get_DoNotDisturb(This,pfDoNotDisturb)
1321 #endif
1322 #endif
1323   HRESULT WINAPI ITAddress_get_State_Proxy(ITAddress *This,ADDRESS_STATE *pAddressState);
1324   void __RPC_STUB ITAddress_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1325   HRESULT WINAPI ITAddress_get_AddressName_Proxy(ITAddress *This,BSTR *ppName);
1326   void __RPC_STUB ITAddress_get_AddressName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1327   HRESULT WINAPI ITAddress_get_ServiceProviderName_Proxy(ITAddress *This,BSTR *ppName);
1328   void __RPC_STUB ITAddress_get_ServiceProviderName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1329   HRESULT WINAPI ITAddress_get_TAPIObject_Proxy(ITAddress *This,ITTAPI **ppTapiObject);
1330   void __RPC_STUB ITAddress_get_TAPIObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1331   HRESULT WINAPI ITAddress_CreateCall_Proxy(ITAddress *This,BSTR pDestAddress,__LONG32 lAddressType,__LONG32 lMediaTypes,ITBasicCallControl **ppCall);
1332   void __RPC_STUB ITAddress_CreateCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1333   HRESULT WINAPI ITAddress_get_Calls_Proxy(ITAddress *This,VARIANT *pVariant);
1334   void __RPC_STUB ITAddress_get_Calls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1335   HRESULT WINAPI ITAddress_EnumerateCalls_Proxy(ITAddress *This,IEnumCall **ppCallEnum);
1336   void __RPC_STUB ITAddress_EnumerateCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1337   HRESULT WINAPI ITAddress_get_DialableAddress_Proxy(ITAddress *This,BSTR *pDialableAddress);
1338   void __RPC_STUB ITAddress_get_DialableAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1339   HRESULT WINAPI ITAddress_CreateForwardInfoObject_Proxy(ITAddress *This,ITForwardInformation **ppForwardInfo);
1340   void __RPC_STUB ITAddress_CreateForwardInfoObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1341   HRESULT WINAPI ITAddress_Forward_Proxy(ITAddress *This,ITForwardInformation *pForwardInfo,ITBasicCallControl *pCall);
1342   void __RPC_STUB ITAddress_Forward_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1343   HRESULT WINAPI ITAddress_get_CurrentForwardInfo_Proxy(ITAddress *This,ITForwardInformation **ppForwardInfo);
1344   void __RPC_STUB ITAddress_get_CurrentForwardInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1345   HRESULT WINAPI ITAddress_put_MessageWaiting_Proxy(ITAddress *This,VARIANT_BOOL fMessageWaiting);
1346   void __RPC_STUB ITAddress_put_MessageWaiting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1347   HRESULT WINAPI ITAddress_get_MessageWaiting_Proxy(ITAddress *This,VARIANT_BOOL *pfMessageWaiting);
1348   void __RPC_STUB ITAddress_get_MessageWaiting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1349   HRESULT WINAPI ITAddress_put_DoNotDisturb_Proxy(ITAddress *This,VARIANT_BOOL fDoNotDisturb);
1350   void __RPC_STUB ITAddress_put_DoNotDisturb_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1351   HRESULT WINAPI ITAddress_get_DoNotDisturb_Proxy(ITAddress *This,VARIANT_BOOL *pfDoNotDisturb);
1352   void __RPC_STUB ITAddress_get_DoNotDisturb_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1353 #endif
1354 
1355 #ifndef __ITAddress2_INTERFACE_DEFINED__
1356 #define __ITAddress2_INTERFACE_DEFINED__
1357   EXTERN_C const IID IID_ITAddress2;
1358 #if defined(__cplusplus) && !defined(CINTERFACE)
1359   struct ITAddress2 : public ITAddress {
1360   public:
1361     virtual HRESULT WINAPI get_Phones(VARIANT *pPhones) = 0;
1362     virtual HRESULT WINAPI EnumeratePhones(IEnumPhone **ppEnumPhone) = 0;
1363     virtual HRESULT WINAPI GetPhoneFromTerminal(ITTerminal *pTerminal,ITPhone **ppPhone) = 0;
1364     virtual HRESULT WINAPI get_PreferredPhones(VARIANT *pPhones) = 0;
1365     virtual HRESULT WINAPI EnumeratePreferredPhones(IEnumPhone **ppEnumPhone) = 0;
1366     virtual HRESULT WINAPI get_EventFilter(TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL *pEnable) = 0;
1367     virtual HRESULT WINAPI put_EventFilter(TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL bEnable) = 0;
1368     virtual HRESULT WINAPI DeviceSpecific(ITCallInfo *pCall,BYTE *pParams,DWORD dwSize) = 0;
1369     virtual HRESULT WINAPI DeviceSpecificVariant(ITCallInfo *pCall,VARIANT varDevSpecificByteArray) = 0;
1370     virtual HRESULT WINAPI NegotiateExtVersion(__LONG32 lLowVersion,__LONG32 lHighVersion,__LONG32 *plExtVersion) = 0;
1371   };
1372 #else
1373   typedef struct ITAddress2Vtbl {
1374     BEGIN_INTERFACE
1375       HRESULT (WINAPI *QueryInterface)(ITAddress2 *This,REFIID riid,void **ppvObject);
1376       ULONG (WINAPI *AddRef)(ITAddress2 *This);
1377       ULONG (WINAPI *Release)(ITAddress2 *This);
1378       HRESULT (WINAPI *GetTypeInfoCount)(ITAddress2 *This,UINT *pctinfo);
1379       HRESULT (WINAPI *GetTypeInfo)(ITAddress2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1380       HRESULT (WINAPI *GetIDsOfNames)(ITAddress2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1381       HRESULT (WINAPI *Invoke)(ITAddress2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1382       HRESULT (WINAPI *get_State)(ITAddress2 *This,ADDRESS_STATE *pAddressState);
1383       HRESULT (WINAPI *get_AddressName)(ITAddress2 *This,BSTR *ppName);
1384       HRESULT (WINAPI *get_ServiceProviderName)(ITAddress2 *This,BSTR *ppName);
1385       HRESULT (WINAPI *get_TAPIObject)(ITAddress2 *This,ITTAPI **ppTapiObject);
1386       HRESULT (WINAPI *CreateCall)(ITAddress2 *This,BSTR pDestAddress,__LONG32 lAddressType,__LONG32 lMediaTypes,ITBasicCallControl **ppCall);
1387       HRESULT (WINAPI *get_Calls)(ITAddress2 *This,VARIANT *pVariant);
1388       HRESULT (WINAPI *EnumerateCalls)(ITAddress2 *This,IEnumCall **ppCallEnum);
1389       HRESULT (WINAPI *get_DialableAddress)(ITAddress2 *This,BSTR *pDialableAddress);
1390       HRESULT (WINAPI *CreateForwardInfoObject)(ITAddress2 *This,ITForwardInformation **ppForwardInfo);
1391       HRESULT (WINAPI *Forward)(ITAddress2 *This,ITForwardInformation *pForwardInfo,ITBasicCallControl *pCall);
1392       HRESULT (WINAPI *get_CurrentForwardInfo)(ITAddress2 *This,ITForwardInformation **ppForwardInfo);
1393       HRESULT (WINAPI *put_MessageWaiting)(ITAddress2 *This,VARIANT_BOOL fMessageWaiting);
1394       HRESULT (WINAPI *get_MessageWaiting)(ITAddress2 *This,VARIANT_BOOL *pfMessageWaiting);
1395       HRESULT (WINAPI *put_DoNotDisturb)(ITAddress2 *This,VARIANT_BOOL fDoNotDisturb);
1396       HRESULT (WINAPI *get_DoNotDisturb)(ITAddress2 *This,VARIANT_BOOL *pfDoNotDisturb);
1397       HRESULT (WINAPI *get_Phones)(ITAddress2 *This,VARIANT *pPhones);
1398       HRESULT (WINAPI *EnumeratePhones)(ITAddress2 *This,IEnumPhone **ppEnumPhone);
1399       HRESULT (WINAPI *GetPhoneFromTerminal)(ITAddress2 *This,ITTerminal *pTerminal,ITPhone **ppPhone);
1400       HRESULT (WINAPI *get_PreferredPhones)(ITAddress2 *This,VARIANT *pPhones);
1401       HRESULT (WINAPI *EnumeratePreferredPhones)(ITAddress2 *This,IEnumPhone **ppEnumPhone);
1402       HRESULT (WINAPI *get_EventFilter)(ITAddress2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL *pEnable);
1403       HRESULT (WINAPI *put_EventFilter)(ITAddress2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL bEnable);
1404       HRESULT (WINAPI *DeviceSpecific)(ITAddress2 *This,ITCallInfo *pCall,BYTE *pParams,DWORD dwSize);
1405       HRESULT (WINAPI *DeviceSpecificVariant)(ITAddress2 *This,ITCallInfo *pCall,VARIANT varDevSpecificByteArray);
1406       HRESULT (WINAPI *NegotiateExtVersion)(ITAddress2 *This,__LONG32 lLowVersion,__LONG32 lHighVersion,__LONG32 *plExtVersion);
1407     END_INTERFACE
1408   } ITAddress2Vtbl;
1409   struct ITAddress2 {
1410     CONST_VTBL struct ITAddress2Vtbl *lpVtbl;
1411   };
1412 #ifdef COBJMACROS
1413 #define ITAddress2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1414 #define ITAddress2_AddRef(This) (This)->lpVtbl->AddRef(This)
1415 #define ITAddress2_Release(This) (This)->lpVtbl->Release(This)
1416 #define ITAddress2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1417 #define ITAddress2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1418 #define ITAddress2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1419 #define ITAddress2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1420 #define ITAddress2_get_State(This,pAddressState) (This)->lpVtbl->get_State(This,pAddressState)
1421 #define ITAddress2_get_AddressName(This,ppName) (This)->lpVtbl->get_AddressName(This,ppName)
1422 #define ITAddress2_get_ServiceProviderName(This,ppName) (This)->lpVtbl->get_ServiceProviderName(This,ppName)
1423 #define ITAddress2_get_TAPIObject(This,ppTapiObject) (This)->lpVtbl->get_TAPIObject(This,ppTapiObject)
1424 #define ITAddress2_CreateCall(This,pDestAddress,lAddressType,lMediaTypes,ppCall) (This)->lpVtbl->CreateCall(This,pDestAddress,lAddressType,lMediaTypes,ppCall)
1425 #define ITAddress2_get_Calls(This,pVariant) (This)->lpVtbl->get_Calls(This,pVariant)
1426 #define ITAddress2_EnumerateCalls(This,ppCallEnum) (This)->lpVtbl->EnumerateCalls(This,ppCallEnum)
1427 #define ITAddress2_get_DialableAddress(This,pDialableAddress) (This)->lpVtbl->get_DialableAddress(This,pDialableAddress)
1428 #define ITAddress2_CreateForwardInfoObject(This,ppForwardInfo) (This)->lpVtbl->CreateForwardInfoObject(This,ppForwardInfo)
1429 #define ITAddress2_Forward(This,pForwardInfo,pCall) (This)->lpVtbl->Forward(This,pForwardInfo,pCall)
1430 #define ITAddress2_get_CurrentForwardInfo(This,ppForwardInfo) (This)->lpVtbl->get_CurrentForwardInfo(This,ppForwardInfo)
1431 #define ITAddress2_put_MessageWaiting(This,fMessageWaiting) (This)->lpVtbl->put_MessageWaiting(This,fMessageWaiting)
1432 #define ITAddress2_get_MessageWaiting(This,pfMessageWaiting) (This)->lpVtbl->get_MessageWaiting(This,pfMessageWaiting)
1433 #define ITAddress2_put_DoNotDisturb(This,fDoNotDisturb) (This)->lpVtbl->put_DoNotDisturb(This,fDoNotDisturb)
1434 #define ITAddress2_get_DoNotDisturb(This,pfDoNotDisturb) (This)->lpVtbl->get_DoNotDisturb(This,pfDoNotDisturb)
1435 #define ITAddress2_get_Phones(This,pPhones) (This)->lpVtbl->get_Phones(This,pPhones)
1436 #define ITAddress2_EnumeratePhones(This,ppEnumPhone) (This)->lpVtbl->EnumeratePhones(This,ppEnumPhone)
1437 #define ITAddress2_GetPhoneFromTerminal(This,pTerminal,ppPhone) (This)->lpVtbl->GetPhoneFromTerminal(This,pTerminal,ppPhone)
1438 #define ITAddress2_get_PreferredPhones(This,pPhones) (This)->lpVtbl->get_PreferredPhones(This,pPhones)
1439 #define ITAddress2_EnumeratePreferredPhones(This,ppEnumPhone) (This)->lpVtbl->EnumeratePreferredPhones(This,ppEnumPhone)
1440 #define ITAddress2_get_EventFilter(This,TapiEvent,lSubEvent,pEnable) (This)->lpVtbl->get_EventFilter(This,TapiEvent,lSubEvent,pEnable)
1441 #define ITAddress2_put_EventFilter(This,TapiEvent,lSubEvent,bEnable) (This)->lpVtbl->put_EventFilter(This,TapiEvent,lSubEvent,bEnable)
1442 #define ITAddress2_DeviceSpecific(This,pCall,pParams,dwSize) (This)->lpVtbl->DeviceSpecific(This,pCall,pParams,dwSize)
1443 #define ITAddress2_DeviceSpecificVariant(This,pCall,varDevSpecificByteArray) (This)->lpVtbl->DeviceSpecificVariant(This,pCall,varDevSpecificByteArray)
1444 #define ITAddress2_NegotiateExtVersion(This,lLowVersion,lHighVersion,plExtVersion) (This)->lpVtbl->NegotiateExtVersion(This,lLowVersion,lHighVersion,plExtVersion)
1445 #endif
1446 #endif
1447   HRESULT WINAPI ITAddress2_get_Phones_Proxy(ITAddress2 *This,VARIANT *pPhones);
1448   void __RPC_STUB ITAddress2_get_Phones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1449   HRESULT WINAPI ITAddress2_EnumeratePhones_Proxy(ITAddress2 *This,IEnumPhone **ppEnumPhone);
1450   void __RPC_STUB ITAddress2_EnumeratePhones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1451   HRESULT WINAPI ITAddress2_GetPhoneFromTerminal_Proxy(ITAddress2 *This,ITTerminal *pTerminal,ITPhone **ppPhone);
1452   void __RPC_STUB ITAddress2_GetPhoneFromTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1453   HRESULT WINAPI ITAddress2_get_PreferredPhones_Proxy(ITAddress2 *This,VARIANT *pPhones);
1454   void __RPC_STUB ITAddress2_get_PreferredPhones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1455   HRESULT WINAPI ITAddress2_EnumeratePreferredPhones_Proxy(ITAddress2 *This,IEnumPhone **ppEnumPhone);
1456   void __RPC_STUB ITAddress2_EnumeratePreferredPhones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1457   HRESULT WINAPI ITAddress2_get_EventFilter_Proxy(ITAddress2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL *pEnable);
1458   void __RPC_STUB ITAddress2_get_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1459   HRESULT WINAPI ITAddress2_put_EventFilter_Proxy(ITAddress2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL bEnable);
1460   void __RPC_STUB ITAddress2_put_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1461   HRESULT WINAPI ITAddress2_DeviceSpecific_Proxy(ITAddress2 *This,ITCallInfo *pCall,BYTE *pParams,DWORD dwSize);
1462   void __RPC_STUB ITAddress2_DeviceSpecific_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1463   HRESULT WINAPI ITAddress2_DeviceSpecificVariant_Proxy(ITAddress2 *This,ITCallInfo *pCall,VARIANT varDevSpecificByteArray);
1464   void __RPC_STUB ITAddress2_DeviceSpecificVariant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1465   HRESULT WINAPI ITAddress2_NegotiateExtVersion_Proxy(ITAddress2 *This,__LONG32 lLowVersion,__LONG32 lHighVersion,__LONG32 *plExtVersion);
1466   void __RPC_STUB ITAddress2_NegotiateExtVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1467 #endif
1468 
1469 #ifndef __ITAddressCapabilities_INTERFACE_DEFINED__
1470 #define __ITAddressCapabilities_INTERFACE_DEFINED__
1471   EXTERN_C const IID IID_ITAddressCapabilities;
1472 #if defined(__cplusplus) && !defined(CINTERFACE)
1473   struct ITAddressCapabilities : public IDispatch {
1474   public:
1475     virtual HRESULT WINAPI get_AddressCapability(ADDRESS_CAPABILITY AddressCap,__LONG32 *plCapability) = 0;
1476     virtual HRESULT WINAPI get_AddressCapabilityString(ADDRESS_CAPABILITY_STRING AddressCapString,BSTR *ppCapabilityString) = 0;
1477     virtual HRESULT WINAPI get_CallTreatments(VARIANT *pVariant) = 0;
1478     virtual HRESULT WINAPI EnumerateCallTreatments(IEnumBstr **ppEnumCallTreatment) = 0;
1479     virtual HRESULT WINAPI get_CompletionMessages(VARIANT *pVariant) = 0;
1480     virtual HRESULT WINAPI EnumerateCompletionMessages(IEnumBstr **ppEnumCompletionMessage) = 0;
1481     virtual HRESULT WINAPI get_DeviceClasses(VARIANT *pVariant) = 0;
1482     virtual HRESULT WINAPI EnumerateDeviceClasses(IEnumBstr **ppEnumDeviceClass) = 0;
1483   };
1484 #else
1485   typedef struct ITAddressCapabilitiesVtbl {
1486     BEGIN_INTERFACE
1487       HRESULT (WINAPI *QueryInterface)(ITAddressCapabilities *This,REFIID riid,void **ppvObject);
1488       ULONG (WINAPI *AddRef)(ITAddressCapabilities *This);
1489       ULONG (WINAPI *Release)(ITAddressCapabilities *This);
1490       HRESULT (WINAPI *GetTypeInfoCount)(ITAddressCapabilities *This,UINT *pctinfo);
1491       HRESULT (WINAPI *GetTypeInfo)(ITAddressCapabilities *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1492       HRESULT (WINAPI *GetIDsOfNames)(ITAddressCapabilities *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1493       HRESULT (WINAPI *Invoke)(ITAddressCapabilities *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1494       HRESULT (WINAPI *get_AddressCapability)(ITAddressCapabilities *This,ADDRESS_CAPABILITY AddressCap,__LONG32 *plCapability);
1495       HRESULT (WINAPI *get_AddressCapabilityString)(ITAddressCapabilities *This,ADDRESS_CAPABILITY_STRING AddressCapString,BSTR *ppCapabilityString);
1496       HRESULT (WINAPI *get_CallTreatments)(ITAddressCapabilities *This,VARIANT *pVariant);
1497       HRESULT (WINAPI *EnumerateCallTreatments)(ITAddressCapabilities *This,IEnumBstr **ppEnumCallTreatment);
1498       HRESULT (WINAPI *get_CompletionMessages)(ITAddressCapabilities *This,VARIANT *pVariant);
1499       HRESULT (WINAPI *EnumerateCompletionMessages)(ITAddressCapabilities *This,IEnumBstr **ppEnumCompletionMessage);
1500       HRESULT (WINAPI *get_DeviceClasses)(ITAddressCapabilities *This,VARIANT *pVariant);
1501       HRESULT (WINAPI *EnumerateDeviceClasses)(ITAddressCapabilities *This,IEnumBstr **ppEnumDeviceClass);
1502     END_INTERFACE
1503   } ITAddressCapabilitiesVtbl;
1504   struct ITAddressCapabilities {
1505     CONST_VTBL struct ITAddressCapabilitiesVtbl *lpVtbl;
1506   };
1507 #ifdef COBJMACROS
1508 #define ITAddressCapabilities_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1509 #define ITAddressCapabilities_AddRef(This) (This)->lpVtbl->AddRef(This)
1510 #define ITAddressCapabilities_Release(This) (This)->lpVtbl->Release(This)
1511 #define ITAddressCapabilities_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1512 #define ITAddressCapabilities_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1513 #define ITAddressCapabilities_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1514 #define ITAddressCapabilities_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1515 #define ITAddressCapabilities_get_AddressCapability(This,AddressCap,plCapability) (This)->lpVtbl->get_AddressCapability(This,AddressCap,plCapability)
1516 #define ITAddressCapabilities_get_AddressCapabilityString(This,AddressCapString,ppCapabilityString) (This)->lpVtbl->get_AddressCapabilityString(This,AddressCapString,ppCapabilityString)
1517 #define ITAddressCapabilities_get_CallTreatments(This,pVariant) (This)->lpVtbl->get_CallTreatments(This,pVariant)
1518 #define ITAddressCapabilities_EnumerateCallTreatments(This,ppEnumCallTreatment) (This)->lpVtbl->EnumerateCallTreatments(This,ppEnumCallTreatment)
1519 #define ITAddressCapabilities_get_CompletionMessages(This,pVariant) (This)->lpVtbl->get_CompletionMessages(This,pVariant)
1520 #define ITAddressCapabilities_EnumerateCompletionMessages(This,ppEnumCompletionMessage) (This)->lpVtbl->EnumerateCompletionMessages(This,ppEnumCompletionMessage)
1521 #define ITAddressCapabilities_get_DeviceClasses(This,pVariant) (This)->lpVtbl->get_DeviceClasses(This,pVariant)
1522 #define ITAddressCapabilities_EnumerateDeviceClasses(This,ppEnumDeviceClass) (This)->lpVtbl->EnumerateDeviceClasses(This,ppEnumDeviceClass)
1523 #endif
1524 #endif
1525   HRESULT WINAPI ITAddressCapabilities_get_AddressCapability_Proxy(ITAddressCapabilities *This,ADDRESS_CAPABILITY AddressCap,__LONG32 *plCapability);
1526   void __RPC_STUB ITAddressCapabilities_get_AddressCapability_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1527   HRESULT WINAPI ITAddressCapabilities_get_AddressCapabilityString_Proxy(ITAddressCapabilities *This,ADDRESS_CAPABILITY_STRING AddressCapString,BSTR *ppCapabilityString);
1528   void __RPC_STUB ITAddressCapabilities_get_AddressCapabilityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1529   HRESULT WINAPI ITAddressCapabilities_get_CallTreatments_Proxy(ITAddressCapabilities *This,VARIANT *pVariant);
1530   void __RPC_STUB ITAddressCapabilities_get_CallTreatments_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1531   HRESULT WINAPI ITAddressCapabilities_EnumerateCallTreatments_Proxy(ITAddressCapabilities *This,IEnumBstr **ppEnumCallTreatment);
1532   void __RPC_STUB ITAddressCapabilities_EnumerateCallTreatments_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1533   HRESULT WINAPI ITAddressCapabilities_get_CompletionMessages_Proxy(ITAddressCapabilities *This,VARIANT *pVariant);
1534   void __RPC_STUB ITAddressCapabilities_get_CompletionMessages_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1535   HRESULT WINAPI ITAddressCapabilities_EnumerateCompletionMessages_Proxy(ITAddressCapabilities *This,IEnumBstr **ppEnumCompletionMessage);
1536   void __RPC_STUB ITAddressCapabilities_EnumerateCompletionMessages_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1537   HRESULT WINAPI ITAddressCapabilities_get_DeviceClasses_Proxy(ITAddressCapabilities *This,VARIANT *pVariant);
1538   void __RPC_STUB ITAddressCapabilities_get_DeviceClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1539   HRESULT WINAPI ITAddressCapabilities_EnumerateDeviceClasses_Proxy(ITAddressCapabilities *This,IEnumBstr **ppEnumDeviceClass);
1540   void __RPC_STUB ITAddressCapabilities_EnumerateDeviceClasses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1541 #endif
1542 
1543 #ifndef __ITPhone_INTERFACE_DEFINED__
1544 #define __ITPhone_INTERFACE_DEFINED__
1545   EXTERN_C const IID IID_ITPhone;
1546 #if defined(__cplusplus) && !defined(CINTERFACE)
1547   struct ITPhone : public IDispatch {
1548   public:
1549     virtual HRESULT WINAPI Open(PHONE_PRIVILEGE Privilege) = 0;
1550     virtual HRESULT WINAPI Close(void) = 0;
1551     virtual HRESULT WINAPI get_Addresses(VARIANT *pAddresses) = 0;
1552     virtual HRESULT WINAPI EnumerateAddresses(IEnumAddress **ppEnumAddress) = 0;
1553     virtual HRESULT WINAPI get_PhoneCapsLong(PHONECAPS_LONG pclCap,__LONG32 *plCapability) = 0;
1554     virtual HRESULT WINAPI get_PhoneCapsString(PHONECAPS_STRING pcsCap,BSTR *ppCapability) = 0;
1555     virtual HRESULT WINAPI get_Terminals(ITAddress *pAddress,VARIANT *pTerminals) = 0;
1556     virtual HRESULT WINAPI EnumerateTerminals(ITAddress *pAddress,IEnumTerminal **ppEnumTerminal) = 0;
1557     virtual HRESULT WINAPI get_ButtonMode(__LONG32 lButtonID,PHONE_BUTTON_MODE *pButtonMode) = 0;
1558     virtual HRESULT WINAPI put_ButtonMode(__LONG32 lButtonID,PHONE_BUTTON_MODE ButtonMode) = 0;
1559     virtual HRESULT WINAPI get_ButtonFunction(__LONG32 lButtonID,PHONE_BUTTON_FUNCTION *pButtonFunction) = 0;
1560     virtual HRESULT WINAPI put_ButtonFunction(__LONG32 lButtonID,PHONE_BUTTON_FUNCTION ButtonFunction) = 0;
1561     virtual HRESULT WINAPI get_ButtonText(__LONG32 lButtonID,BSTR *ppButtonText) = 0;
1562     virtual HRESULT WINAPI put_ButtonText(__LONG32 lButtonID,BSTR bstrButtonText) = 0;
1563     virtual HRESULT WINAPI get_ButtonState(__LONG32 lButtonID,PHONE_BUTTON_STATE *pButtonState) = 0;
1564     virtual HRESULT WINAPI get_HookSwitchState(PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,PHONE_HOOK_SWITCH_STATE *pHookSwitchState) = 0;
1565     virtual HRESULT WINAPI put_HookSwitchState(PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,PHONE_HOOK_SWITCH_STATE HookSwitchState) = 0;
1566     virtual HRESULT WINAPI put_RingMode(__LONG32 lRingMode) = 0;
1567     virtual HRESULT WINAPI get_RingMode(__LONG32 *plRingMode) = 0;
1568     virtual HRESULT WINAPI put_RingVolume(__LONG32 lRingVolume) = 0;
1569     virtual HRESULT WINAPI get_RingVolume(__LONG32 *plRingVolume) = 0;
1570     virtual HRESULT WINAPI get_Privilege(PHONE_PRIVILEGE *pPrivilege) = 0;
1571     virtual HRESULT WINAPI GetPhoneCapsBuffer(PHONECAPS_BUFFER pcbCaps,DWORD *pdwSize,BYTE **ppPhoneCapsBuffer) = 0;
1572     virtual HRESULT WINAPI get_PhoneCapsBuffer(PHONECAPS_BUFFER pcbCaps,VARIANT *pVarBuffer) = 0;
1573     virtual HRESULT WINAPI get_LampMode(__LONG32 lLampID,PHONE_LAMP_MODE *pLampMode) = 0;
1574     virtual HRESULT WINAPI put_LampMode(__LONG32 lLampID,PHONE_LAMP_MODE LampMode) = 0;
1575     virtual HRESULT WINAPI get_Display(BSTR *pbstrDisplay) = 0;
1576     virtual HRESULT WINAPI SetDisplay(__LONG32 lRow,__LONG32 lColumn,BSTR bstrDisplay) = 0;
1577     virtual HRESULT WINAPI get_PreferredAddresses(VARIANT *pAddresses) = 0;
1578     virtual HRESULT WINAPI EnumeratePreferredAddresses(IEnumAddress **ppEnumAddress) = 0;
1579     virtual HRESULT WINAPI DeviceSpecific(BYTE *pParams,DWORD dwSize) = 0;
1580     virtual HRESULT WINAPI DeviceSpecificVariant(VARIANT varDevSpecificByteArray) = 0;
1581     virtual HRESULT WINAPI NegotiateExtVersion(__LONG32 lLowVersion,__LONG32 lHighVersion,__LONG32 *plExtVersion) = 0;
1582   };
1583 #else
1584   typedef struct ITPhoneVtbl {
1585     BEGIN_INTERFACE
1586       HRESULT (WINAPI *QueryInterface)(ITPhone *This,REFIID riid,void **ppvObject);
1587       ULONG (WINAPI *AddRef)(ITPhone *This);
1588       ULONG (WINAPI *Release)(ITPhone *This);
1589       HRESULT (WINAPI *GetTypeInfoCount)(ITPhone *This,UINT *pctinfo);
1590       HRESULT (WINAPI *GetTypeInfo)(ITPhone *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1591       HRESULT (WINAPI *GetIDsOfNames)(ITPhone *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1592       HRESULT (WINAPI *Invoke)(ITPhone *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1593       HRESULT (WINAPI *Open)(ITPhone *This,PHONE_PRIVILEGE Privilege);
1594       HRESULT (WINAPI *Close)(ITPhone *This);
1595       HRESULT (WINAPI *get_Addresses)(ITPhone *This,VARIANT *pAddresses);
1596       HRESULT (WINAPI *EnumerateAddresses)(ITPhone *This,IEnumAddress **ppEnumAddress);
1597       HRESULT (WINAPI *get_PhoneCapsLong)(ITPhone *This,PHONECAPS_LONG pclCap,__LONG32 *plCapability);
1598       HRESULT (WINAPI *get_PhoneCapsString)(ITPhone *This,PHONECAPS_STRING pcsCap,BSTR *ppCapability);
1599       HRESULT (WINAPI *get_Terminals)(ITPhone *This,ITAddress *pAddress,VARIANT *pTerminals);
1600       HRESULT (WINAPI *EnumerateTerminals)(ITPhone *This,ITAddress *pAddress,IEnumTerminal **ppEnumTerminal);
1601       HRESULT (WINAPI *get_ButtonMode)(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_MODE *pButtonMode);
1602       HRESULT (WINAPI *put_ButtonMode)(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_MODE ButtonMode);
1603       HRESULT (WINAPI *get_ButtonFunction)(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_FUNCTION *pButtonFunction);
1604       HRESULT (WINAPI *put_ButtonFunction)(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_FUNCTION ButtonFunction);
1605       HRESULT (WINAPI *get_ButtonText)(ITPhone *This,__LONG32 lButtonID,BSTR *ppButtonText);
1606       HRESULT (WINAPI *put_ButtonText)(ITPhone *This,__LONG32 lButtonID,BSTR bstrButtonText);
1607       HRESULT (WINAPI *get_ButtonState)(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_STATE *pButtonState);
1608       HRESULT (WINAPI *get_HookSwitchState)(ITPhone *This,PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,PHONE_HOOK_SWITCH_STATE *pHookSwitchState);
1609       HRESULT (WINAPI *put_HookSwitchState)(ITPhone *This,PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,PHONE_HOOK_SWITCH_STATE HookSwitchState);
1610       HRESULT (WINAPI *put_RingMode)(ITPhone *This,__LONG32 lRingMode);
1611       HRESULT (WINAPI *get_RingMode)(ITPhone *This,__LONG32 *plRingMode);
1612       HRESULT (WINAPI *put_RingVolume)(ITPhone *This,__LONG32 lRingVolume);
1613       HRESULT (WINAPI *get_RingVolume)(ITPhone *This,__LONG32 *plRingVolume);
1614       HRESULT (WINAPI *get_Privilege)(ITPhone *This,PHONE_PRIVILEGE *pPrivilege);
1615       HRESULT (WINAPI *GetPhoneCapsBuffer)(ITPhone *This,PHONECAPS_BUFFER pcbCaps,DWORD *pdwSize,BYTE **ppPhoneCapsBuffer);
1616       HRESULT (WINAPI *get_PhoneCapsBuffer)(ITPhone *This,PHONECAPS_BUFFER pcbCaps,VARIANT *pVarBuffer);
1617       HRESULT (WINAPI *get_LampMode)(ITPhone *This,__LONG32 lLampID,PHONE_LAMP_MODE *pLampMode);
1618       HRESULT (WINAPI *put_LampMode)(ITPhone *This,__LONG32 lLampID,PHONE_LAMP_MODE LampMode);
1619       HRESULT (WINAPI *get_Display)(ITPhone *This,BSTR *pbstrDisplay);
1620       HRESULT (WINAPI *SetDisplay)(ITPhone *This,__LONG32 lRow,__LONG32 lColumn,BSTR bstrDisplay);
1621       HRESULT (WINAPI *get_PreferredAddresses)(ITPhone *This,VARIANT *pAddresses);
1622       HRESULT (WINAPI *EnumeratePreferredAddresses)(ITPhone *This,IEnumAddress **ppEnumAddress);
1623       HRESULT (WINAPI *DeviceSpecific)(ITPhone *This,BYTE *pParams,DWORD dwSize);
1624       HRESULT (WINAPI *DeviceSpecificVariant)(ITPhone *This,VARIANT varDevSpecificByteArray);
1625       HRESULT (WINAPI *NegotiateExtVersion)(ITPhone *This,__LONG32 lLowVersion,__LONG32 lHighVersion,__LONG32 *plExtVersion);
1626     END_INTERFACE
1627   } ITPhoneVtbl;
1628   struct ITPhone {
1629     CONST_VTBL struct ITPhoneVtbl *lpVtbl;
1630   };
1631 #ifdef COBJMACROS
1632 #define ITPhone_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1633 #define ITPhone_AddRef(This) (This)->lpVtbl->AddRef(This)
1634 #define ITPhone_Release(This) (This)->lpVtbl->Release(This)
1635 #define ITPhone_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1636 #define ITPhone_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1637 #define ITPhone_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1638 #define ITPhone_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1639 #define ITPhone_Open(This,Privilege) (This)->lpVtbl->Open(This,Privilege)
1640 #define ITPhone_Close(This) (This)->lpVtbl->Close(This)
1641 #define ITPhone_get_Addresses(This,pAddresses) (This)->lpVtbl->get_Addresses(This,pAddresses)
1642 #define ITPhone_EnumerateAddresses(This,ppEnumAddress) (This)->lpVtbl->EnumerateAddresses(This,ppEnumAddress)
1643 #define ITPhone_get_PhoneCapsLong(This,pclCap,plCapability) (This)->lpVtbl->get_PhoneCapsLong(This,pclCap,plCapability)
1644 #define ITPhone_get_PhoneCapsString(This,pcsCap,ppCapability) (This)->lpVtbl->get_PhoneCapsString(This,pcsCap,ppCapability)
1645 #define ITPhone_get_Terminals(This,pAddress,pTerminals) (This)->lpVtbl->get_Terminals(This,pAddress,pTerminals)
1646 #define ITPhone_EnumerateTerminals(This,pAddress,ppEnumTerminal) (This)->lpVtbl->EnumerateTerminals(This,pAddress,ppEnumTerminal)
1647 #define ITPhone_get_ButtonMode(This,lButtonID,pButtonMode) (This)->lpVtbl->get_ButtonMode(This,lButtonID,pButtonMode)
1648 #define ITPhone_put_ButtonMode(This,lButtonID,ButtonMode) (This)->lpVtbl->put_ButtonMode(This,lButtonID,ButtonMode)
1649 #define ITPhone_get_ButtonFunction(This,lButtonID,pButtonFunction) (This)->lpVtbl->get_ButtonFunction(This,lButtonID,pButtonFunction)
1650 #define ITPhone_put_ButtonFunction(This,lButtonID,ButtonFunction) (This)->lpVtbl->put_ButtonFunction(This,lButtonID,ButtonFunction)
1651 #define ITPhone_get_ButtonText(This,lButtonID,ppButtonText) (This)->lpVtbl->get_ButtonText(This,lButtonID,ppButtonText)
1652 #define ITPhone_put_ButtonText(This,lButtonID,bstrButtonText) (This)->lpVtbl->put_ButtonText(This,lButtonID,bstrButtonText)
1653 #define ITPhone_get_ButtonState(This,lButtonID,pButtonState) (This)->lpVtbl->get_ButtonState(This,lButtonID,pButtonState)
1654 #define ITPhone_get_HookSwitchState(This,HookSwitchDevice,pHookSwitchState) (This)->lpVtbl->get_HookSwitchState(This,HookSwitchDevice,pHookSwitchState)
1655 #define ITPhone_put_HookSwitchState(This,HookSwitchDevice,HookSwitchState) (This)->lpVtbl->put_HookSwitchState(This,HookSwitchDevice,HookSwitchState)
1656 #define ITPhone_put_RingMode(This,lRingMode) (This)->lpVtbl->put_RingMode(This,lRingMode)
1657 #define ITPhone_get_RingMode(This,plRingMode) (This)->lpVtbl->get_RingMode(This,plRingMode)
1658 #define ITPhone_put_RingVolume(This,lRingVolume) (This)->lpVtbl->put_RingVolume(This,lRingVolume)
1659 #define ITPhone_get_RingVolume(This,plRingVolume) (This)->lpVtbl->get_RingVolume(This,plRingVolume)
1660 #define ITPhone_get_Privilege(This,pPrivilege) (This)->lpVtbl->get_Privilege(This,pPrivilege)
1661 #define ITPhone_GetPhoneCapsBuffer(This,pcbCaps,pdwSize,ppPhoneCapsBuffer) (This)->lpVtbl->GetPhoneCapsBuffer(This,pcbCaps,pdwSize,ppPhoneCapsBuffer)
1662 #define ITPhone_get_PhoneCapsBuffer(This,pcbCaps,pVarBuffer) (This)->lpVtbl->get_PhoneCapsBuffer(This,pcbCaps,pVarBuffer)
1663 #define ITPhone_get_LampMode(This,lLampID,pLampMode) (This)->lpVtbl->get_LampMode(This,lLampID,pLampMode)
1664 #define ITPhone_put_LampMode(This,lLampID,LampMode) (This)->lpVtbl->put_LampMode(This,lLampID,LampMode)
1665 #define ITPhone_get_Display(This,pbstrDisplay) (This)->lpVtbl->get_Display(This,pbstrDisplay)
1666 #define ITPhone_SetDisplay(This,lRow,lColumn,bstrDisplay) (This)->lpVtbl->SetDisplay(This,lRow,lColumn,bstrDisplay)
1667 #define ITPhone_get_PreferredAddresses(This,pAddresses) (This)->lpVtbl->get_PreferredAddresses(This,pAddresses)
1668 #define ITPhone_EnumeratePreferredAddresses(This,ppEnumAddress) (This)->lpVtbl->EnumeratePreferredAddresses(This,ppEnumAddress)
1669 #define ITPhone_DeviceSpecific(This,pParams,dwSize) (This)->lpVtbl->DeviceSpecific(This,pParams,dwSize)
1670 #define ITPhone_DeviceSpecificVariant(This,varDevSpecificByteArray) (This)->lpVtbl->DeviceSpecificVariant(This,varDevSpecificByteArray)
1671 #define ITPhone_NegotiateExtVersion(This,lLowVersion,lHighVersion,plExtVersion) (This)->lpVtbl->NegotiateExtVersion(This,lLowVersion,lHighVersion,plExtVersion)
1672 #endif
1673 #endif
1674   HRESULT WINAPI ITPhone_Open_Proxy(ITPhone *This,PHONE_PRIVILEGE Privilege);
1675   void __RPC_STUB ITPhone_Open_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1676   HRESULT WINAPI ITPhone_Close_Proxy(ITPhone *This);
1677   void __RPC_STUB ITPhone_Close_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1678   HRESULT WINAPI ITPhone_get_Addresses_Proxy(ITPhone *This,VARIANT *pAddresses);
1679   void __RPC_STUB ITPhone_get_Addresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1680   HRESULT WINAPI ITPhone_EnumerateAddresses_Proxy(ITPhone *This,IEnumAddress **ppEnumAddress);
1681   void __RPC_STUB ITPhone_EnumerateAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1682   HRESULT WINAPI ITPhone_get_PhoneCapsLong_Proxy(ITPhone *This,PHONECAPS_LONG pclCap,__LONG32 *plCapability);
1683   void __RPC_STUB ITPhone_get_PhoneCapsLong_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1684   HRESULT WINAPI ITPhone_get_PhoneCapsString_Proxy(ITPhone *This,PHONECAPS_STRING pcsCap,BSTR *ppCapability);
1685   void __RPC_STUB ITPhone_get_PhoneCapsString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1686   HRESULT WINAPI ITPhone_get_Terminals_Proxy(ITPhone *This,ITAddress *pAddress,VARIANT *pTerminals);
1687   void __RPC_STUB ITPhone_get_Terminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1688   HRESULT WINAPI ITPhone_EnumerateTerminals_Proxy(ITPhone *This,ITAddress *pAddress,IEnumTerminal **ppEnumTerminal);
1689   void __RPC_STUB ITPhone_EnumerateTerminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1690   HRESULT WINAPI ITPhone_get_ButtonMode_Proxy(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_MODE *pButtonMode);
1691   void __RPC_STUB ITPhone_get_ButtonMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1692   HRESULT WINAPI ITPhone_put_ButtonMode_Proxy(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_MODE ButtonMode);
1693   void __RPC_STUB ITPhone_put_ButtonMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1694   HRESULT WINAPI ITPhone_get_ButtonFunction_Proxy(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_FUNCTION *pButtonFunction);
1695   void __RPC_STUB ITPhone_get_ButtonFunction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1696   HRESULT WINAPI ITPhone_put_ButtonFunction_Proxy(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_FUNCTION ButtonFunction);
1697   void __RPC_STUB ITPhone_put_ButtonFunction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1698   HRESULT WINAPI ITPhone_get_ButtonText_Proxy(ITPhone *This,__LONG32 lButtonID,BSTR *ppButtonText);
1699   void __RPC_STUB ITPhone_get_ButtonText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1700   HRESULT WINAPI ITPhone_put_ButtonText_Proxy(ITPhone *This,__LONG32 lButtonID,BSTR bstrButtonText);
1701   void __RPC_STUB ITPhone_put_ButtonText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1702   HRESULT WINAPI ITPhone_get_ButtonState_Proxy(ITPhone *This,__LONG32 lButtonID,PHONE_BUTTON_STATE *pButtonState);
1703   void __RPC_STUB ITPhone_get_ButtonState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1704   HRESULT WINAPI ITPhone_get_HookSwitchState_Proxy(ITPhone *This,PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,PHONE_HOOK_SWITCH_STATE *pHookSwitchState);
1705   void __RPC_STUB ITPhone_get_HookSwitchState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1706   HRESULT WINAPI ITPhone_put_HookSwitchState_Proxy(ITPhone *This,PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,PHONE_HOOK_SWITCH_STATE HookSwitchState);
1707   void __RPC_STUB ITPhone_put_HookSwitchState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1708   HRESULT WINAPI ITPhone_put_RingMode_Proxy(ITPhone *This,__LONG32 lRingMode);
1709   void __RPC_STUB ITPhone_put_RingMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1710   HRESULT WINAPI ITPhone_get_RingMode_Proxy(ITPhone *This,__LONG32 *plRingMode);
1711   void __RPC_STUB ITPhone_get_RingMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1712   HRESULT WINAPI ITPhone_put_RingVolume_Proxy(ITPhone *This,__LONG32 lRingVolume);
1713   void __RPC_STUB ITPhone_put_RingVolume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1714   HRESULT WINAPI ITPhone_get_RingVolume_Proxy(ITPhone *This,__LONG32 *plRingVolume);
1715   void __RPC_STUB ITPhone_get_RingVolume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1716   HRESULT WINAPI ITPhone_get_Privilege_Proxy(ITPhone *This,PHONE_PRIVILEGE *pPrivilege);
1717   void __RPC_STUB ITPhone_get_Privilege_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1718   HRESULT WINAPI ITPhone_GetPhoneCapsBuffer_Proxy(ITPhone *This,PHONECAPS_BUFFER pcbCaps,DWORD *pdwSize,BYTE **ppPhoneCapsBuffer);
1719   void __RPC_STUB ITPhone_GetPhoneCapsBuffer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1720   HRESULT WINAPI ITPhone_get_PhoneCapsBuffer_Proxy(ITPhone *This,PHONECAPS_BUFFER pcbCaps,VARIANT *pVarBuffer);
1721   void __RPC_STUB ITPhone_get_PhoneCapsBuffer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1722   HRESULT WINAPI ITPhone_get_LampMode_Proxy(ITPhone *This,__LONG32 lLampID,PHONE_LAMP_MODE *pLampMode);
1723   void __RPC_STUB ITPhone_get_LampMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1724   HRESULT WINAPI ITPhone_put_LampMode_Proxy(ITPhone *This,__LONG32 lLampID,PHONE_LAMP_MODE LampMode);
1725   void __RPC_STUB ITPhone_put_LampMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1726   HRESULT WINAPI ITPhone_get_Display_Proxy(ITPhone *This,BSTR *pbstrDisplay);
1727   void __RPC_STUB ITPhone_get_Display_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1728   HRESULT WINAPI ITPhone_SetDisplay_Proxy(ITPhone *This,__LONG32 lRow,__LONG32 lColumn,BSTR bstrDisplay);
1729   void __RPC_STUB ITPhone_SetDisplay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1730   HRESULT WINAPI ITPhone_get_PreferredAddresses_Proxy(ITPhone *This,VARIANT *pAddresses);
1731   void __RPC_STUB ITPhone_get_PreferredAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1732   HRESULT WINAPI ITPhone_EnumeratePreferredAddresses_Proxy(ITPhone *This,IEnumAddress **ppEnumAddress);
1733   void __RPC_STUB ITPhone_EnumeratePreferredAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1734   HRESULT WINAPI ITPhone_DeviceSpecific_Proxy(ITPhone *This,BYTE *pParams,DWORD dwSize);
1735   void __RPC_STUB ITPhone_DeviceSpecific_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1736   HRESULT WINAPI ITPhone_DeviceSpecificVariant_Proxy(ITPhone *This,VARIANT varDevSpecificByteArray);
1737   void __RPC_STUB ITPhone_DeviceSpecificVariant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1738   HRESULT WINAPI ITPhone_NegotiateExtVersion_Proxy(ITPhone *This,__LONG32 lLowVersion,__LONG32 lHighVersion,__LONG32 *plExtVersion);
1739   void __RPC_STUB ITPhone_NegotiateExtVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1740 #endif
1741 
1742 #ifndef __ITAutomatedPhoneControl_INTERFACE_DEFINED__
1743 #define __ITAutomatedPhoneControl_INTERFACE_DEFINED__
1744   EXTERN_C const IID IID_ITAutomatedPhoneControl;
1745 #if defined(__cplusplus) && !defined(CINTERFACE)
1746   struct ITAutomatedPhoneControl : public IDispatch {
1747   public:
1748     virtual HRESULT WINAPI StartTone(PHONE_TONE Tone,__LONG32 lDuration) = 0;
1749     virtual HRESULT WINAPI StopTone(void) = 0;
1750     virtual HRESULT WINAPI get_Tone(PHONE_TONE *pTone) = 0;
1751     virtual HRESULT WINAPI StartRinger(__LONG32 lRingMode,__LONG32 lDuration) = 0;
1752     virtual HRESULT WINAPI StopRinger(void) = 0;
1753     virtual HRESULT WINAPI get_Ringer(VARIANT_BOOL *pfRinging) = 0;
1754     virtual HRESULT WINAPI put_PhoneHandlingEnabled(VARIANT_BOOL fEnabled) = 0;
1755     virtual HRESULT WINAPI get_PhoneHandlingEnabled(VARIANT_BOOL *pfEnabled) = 0;
1756     virtual HRESULT WINAPI put_AutoEndOfNumberTimeout(__LONG32 lTimeout) = 0;
1757     virtual HRESULT WINAPI get_AutoEndOfNumberTimeout(__LONG32 *plTimeout) = 0;
1758     virtual HRESULT WINAPI put_AutoDialtone(VARIANT_BOOL fEnabled) = 0;
1759     virtual HRESULT WINAPI get_AutoDialtone(VARIANT_BOOL *pfEnabled) = 0;
1760     virtual HRESULT WINAPI put_AutoStopTonesOnOnHook(VARIANT_BOOL fEnabled) = 0;
1761     virtual HRESULT WINAPI get_AutoStopTonesOnOnHook(VARIANT_BOOL *pfEnabled) = 0;
1762     virtual HRESULT WINAPI put_AutoStopRingOnOffHook(VARIANT_BOOL fEnabled) = 0;
1763     virtual HRESULT WINAPI get_AutoStopRingOnOffHook(VARIANT_BOOL *pfEnabled) = 0;
1764     virtual HRESULT WINAPI put_AutoKeypadTones(VARIANT_BOOL fEnabled) = 0;
1765     virtual HRESULT WINAPI get_AutoKeypadTones(VARIANT_BOOL *pfEnabled) = 0;
1766     virtual HRESULT WINAPI put_AutoKeypadTonesMinimumDuration(__LONG32 lDuration) = 0;
1767     virtual HRESULT WINAPI get_AutoKeypadTonesMinimumDuration(__LONG32 *plDuration) = 0;
1768     virtual HRESULT WINAPI put_AutoVolumeControl(VARIANT_BOOL fEnabled) = 0;
1769     virtual HRESULT WINAPI get_AutoVolumeControl(VARIANT_BOOL *fEnabled) = 0;
1770     virtual HRESULT WINAPI put_AutoVolumeControlStep(__LONG32 lStepSize) = 0;
1771     virtual HRESULT WINAPI get_AutoVolumeControlStep(__LONG32 *plStepSize) = 0;
1772     virtual HRESULT WINAPI put_AutoVolumeControlRepeatDelay(__LONG32 lDelay) = 0;
1773     virtual HRESULT WINAPI get_AutoVolumeControlRepeatDelay(__LONG32 *plDelay) = 0;
1774     virtual HRESULT WINAPI put_AutoVolumeControlRepeatPeriod(__LONG32 lPeriod) = 0;
1775     virtual HRESULT WINAPI get_AutoVolumeControlRepeatPeriod(__LONG32 *plPeriod) = 0;
1776     virtual HRESULT WINAPI SelectCall(ITCallInfo *pCall,VARIANT_BOOL fSelectDefaultTerminals) = 0;
1777     virtual HRESULT WINAPI UnselectCall(ITCallInfo *pCall) = 0;
1778     virtual HRESULT WINAPI EnumerateSelectedCalls(IEnumCall **ppCallEnum) = 0;
1779     virtual HRESULT WINAPI get_SelectedCalls(VARIANT *pVariant) = 0;
1780   };
1781 #else
1782   typedef struct ITAutomatedPhoneControlVtbl {
1783     BEGIN_INTERFACE
1784       HRESULT (WINAPI *QueryInterface)(ITAutomatedPhoneControl *This,REFIID riid,void **ppvObject);
1785       ULONG (WINAPI *AddRef)(ITAutomatedPhoneControl *This);
1786       ULONG (WINAPI *Release)(ITAutomatedPhoneControl *This);
1787       HRESULT (WINAPI *GetTypeInfoCount)(ITAutomatedPhoneControl *This,UINT *pctinfo);
1788       HRESULT (WINAPI *GetTypeInfo)(ITAutomatedPhoneControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1789       HRESULT (WINAPI *GetIDsOfNames)(ITAutomatedPhoneControl *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1790       HRESULT (WINAPI *Invoke)(ITAutomatedPhoneControl *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1791       HRESULT (WINAPI *StartTone)(ITAutomatedPhoneControl *This,PHONE_TONE Tone,__LONG32 lDuration);
1792       HRESULT (WINAPI *StopTone)(ITAutomatedPhoneControl *This);
1793       HRESULT (WINAPI *get_Tone)(ITAutomatedPhoneControl *This,PHONE_TONE *pTone);
1794       HRESULT (WINAPI *StartRinger)(ITAutomatedPhoneControl *This,__LONG32 lRingMode,__LONG32 lDuration);
1795       HRESULT (WINAPI *StopRinger)(ITAutomatedPhoneControl *This);
1796       HRESULT (WINAPI *get_Ringer)(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfRinging);
1797       HRESULT (WINAPI *put_PhoneHandlingEnabled)(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1798       HRESULT (WINAPI *get_PhoneHandlingEnabled)(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1799       HRESULT (WINAPI *put_AutoEndOfNumberTimeout)(ITAutomatedPhoneControl *This,__LONG32 lTimeout);
1800       HRESULT (WINAPI *get_AutoEndOfNumberTimeout)(ITAutomatedPhoneControl *This,__LONG32 *plTimeout);
1801       HRESULT (WINAPI *put_AutoDialtone)(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1802       HRESULT (WINAPI *get_AutoDialtone)(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1803       HRESULT (WINAPI *put_AutoStopTonesOnOnHook)(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1804       HRESULT (WINAPI *get_AutoStopTonesOnOnHook)(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1805       HRESULT (WINAPI *put_AutoStopRingOnOffHook)(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1806       HRESULT (WINAPI *get_AutoStopRingOnOffHook)(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1807       HRESULT (WINAPI *put_AutoKeypadTones)(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1808       HRESULT (WINAPI *get_AutoKeypadTones)(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1809       HRESULT (WINAPI *put_AutoKeypadTonesMinimumDuration)(ITAutomatedPhoneControl *This,__LONG32 lDuration);
1810       HRESULT (WINAPI *get_AutoKeypadTonesMinimumDuration)(ITAutomatedPhoneControl *This,__LONG32 *plDuration);
1811       HRESULT (WINAPI *put_AutoVolumeControl)(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1812       HRESULT (WINAPI *get_AutoVolumeControl)(ITAutomatedPhoneControl *This,VARIANT_BOOL *fEnabled);
1813       HRESULT (WINAPI *put_AutoVolumeControlStep)(ITAutomatedPhoneControl *This,__LONG32 lStepSize);
1814       HRESULT (WINAPI *get_AutoVolumeControlStep)(ITAutomatedPhoneControl *This,__LONG32 *plStepSize);
1815       HRESULT (WINAPI *put_AutoVolumeControlRepeatDelay)(ITAutomatedPhoneControl *This,__LONG32 lDelay);
1816       HRESULT (WINAPI *get_AutoVolumeControlRepeatDelay)(ITAutomatedPhoneControl *This,__LONG32 *plDelay);
1817       HRESULT (WINAPI *put_AutoVolumeControlRepeatPeriod)(ITAutomatedPhoneControl *This,__LONG32 lPeriod);
1818       HRESULT (WINAPI *get_AutoVolumeControlRepeatPeriod)(ITAutomatedPhoneControl *This,__LONG32 *plPeriod);
1819       HRESULT (WINAPI *SelectCall)(ITAutomatedPhoneControl *This,ITCallInfo *pCall,VARIANT_BOOL fSelectDefaultTerminals);
1820       HRESULT (WINAPI *UnselectCall)(ITAutomatedPhoneControl *This,ITCallInfo *pCall);
1821       HRESULT (WINAPI *EnumerateSelectedCalls)(ITAutomatedPhoneControl *This,IEnumCall **ppCallEnum);
1822       HRESULT (WINAPI *get_SelectedCalls)(ITAutomatedPhoneControl *This,VARIANT *pVariant);
1823     END_INTERFACE
1824   } ITAutomatedPhoneControlVtbl;
1825   struct ITAutomatedPhoneControl {
1826     CONST_VTBL struct ITAutomatedPhoneControlVtbl *lpVtbl;
1827   };
1828 #ifdef COBJMACROS
1829 #define ITAutomatedPhoneControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1830 #define ITAutomatedPhoneControl_AddRef(This) (This)->lpVtbl->AddRef(This)
1831 #define ITAutomatedPhoneControl_Release(This) (This)->lpVtbl->Release(This)
1832 #define ITAutomatedPhoneControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1833 #define ITAutomatedPhoneControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1834 #define ITAutomatedPhoneControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1835 #define ITAutomatedPhoneControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1836 #define ITAutomatedPhoneControl_StartTone(This,Tone,lDuration) (This)->lpVtbl->StartTone(This,Tone,lDuration)
1837 #define ITAutomatedPhoneControl_StopTone(This) (This)->lpVtbl->StopTone(This)
1838 #define ITAutomatedPhoneControl_get_Tone(This,pTone) (This)->lpVtbl->get_Tone(This,pTone)
1839 #define ITAutomatedPhoneControl_StartRinger(This,lRingMode,lDuration) (This)->lpVtbl->StartRinger(This,lRingMode,lDuration)
1840 #define ITAutomatedPhoneControl_StopRinger(This) (This)->lpVtbl->StopRinger(This)
1841 #define ITAutomatedPhoneControl_get_Ringer(This,pfRinging) (This)->lpVtbl->get_Ringer(This,pfRinging)
1842 #define ITAutomatedPhoneControl_put_PhoneHandlingEnabled(This,fEnabled) (This)->lpVtbl->put_PhoneHandlingEnabled(This,fEnabled)
1843 #define ITAutomatedPhoneControl_get_PhoneHandlingEnabled(This,pfEnabled) (This)->lpVtbl->get_PhoneHandlingEnabled(This,pfEnabled)
1844 #define ITAutomatedPhoneControl_put_AutoEndOfNumberTimeout(This,lTimeout) (This)->lpVtbl->put_AutoEndOfNumberTimeout(This,lTimeout)
1845 #define ITAutomatedPhoneControl_get_AutoEndOfNumberTimeout(This,plTimeout) (This)->lpVtbl->get_AutoEndOfNumberTimeout(This,plTimeout)
1846 #define ITAutomatedPhoneControl_put_AutoDialtone(This,fEnabled) (This)->lpVtbl->put_AutoDialtone(This,fEnabled)
1847 #define ITAutomatedPhoneControl_get_AutoDialtone(This,pfEnabled) (This)->lpVtbl->get_AutoDialtone(This,pfEnabled)
1848 #define ITAutomatedPhoneControl_put_AutoStopTonesOnOnHook(This,fEnabled) (This)->lpVtbl->put_AutoStopTonesOnOnHook(This,fEnabled)
1849 #define ITAutomatedPhoneControl_get_AutoStopTonesOnOnHook(This,pfEnabled) (This)->lpVtbl->get_AutoStopTonesOnOnHook(This,pfEnabled)
1850 #define ITAutomatedPhoneControl_put_AutoStopRingOnOffHook(This,fEnabled) (This)->lpVtbl->put_AutoStopRingOnOffHook(This,fEnabled)
1851 #define ITAutomatedPhoneControl_get_AutoStopRingOnOffHook(This,pfEnabled) (This)->lpVtbl->get_AutoStopRingOnOffHook(This,pfEnabled)
1852 #define ITAutomatedPhoneControl_put_AutoKeypadTones(This,fEnabled) (This)->lpVtbl->put_AutoKeypadTones(This,fEnabled)
1853 #define ITAutomatedPhoneControl_get_AutoKeypadTones(This,pfEnabled) (This)->lpVtbl->get_AutoKeypadTones(This,pfEnabled)
1854 #define ITAutomatedPhoneControl_put_AutoKeypadTonesMinimumDuration(This,lDuration) (This)->lpVtbl->put_AutoKeypadTonesMinimumDuration(This,lDuration)
1855 #define ITAutomatedPhoneControl_get_AutoKeypadTonesMinimumDuration(This,plDuration) (This)->lpVtbl->get_AutoKeypadTonesMinimumDuration(This,plDuration)
1856 #define ITAutomatedPhoneControl_put_AutoVolumeControl(This,fEnabled) (This)->lpVtbl->put_AutoVolumeControl(This,fEnabled)
1857 #define ITAutomatedPhoneControl_get_AutoVolumeControl(This,fEnabled) (This)->lpVtbl->get_AutoVolumeControl(This,fEnabled)
1858 #define ITAutomatedPhoneControl_put_AutoVolumeControlStep(This,lStepSize) (This)->lpVtbl->put_AutoVolumeControlStep(This,lStepSize)
1859 #define ITAutomatedPhoneControl_get_AutoVolumeControlStep(This,plStepSize) (This)->lpVtbl->get_AutoVolumeControlStep(This,plStepSize)
1860 #define ITAutomatedPhoneControl_put_AutoVolumeControlRepeatDelay(This,lDelay) (This)->lpVtbl->put_AutoVolumeControlRepeatDelay(This,lDelay)
1861 #define ITAutomatedPhoneControl_get_AutoVolumeControlRepeatDelay(This,plDelay) (This)->lpVtbl->get_AutoVolumeControlRepeatDelay(This,plDelay)
1862 #define ITAutomatedPhoneControl_put_AutoVolumeControlRepeatPeriod(This,lPeriod) (This)->lpVtbl->put_AutoVolumeControlRepeatPeriod(This,lPeriod)
1863 #define ITAutomatedPhoneControl_get_AutoVolumeControlRepeatPeriod(This,plPeriod) (This)->lpVtbl->get_AutoVolumeControlRepeatPeriod(This,plPeriod)
1864 #define ITAutomatedPhoneControl_SelectCall(This,pCall,fSelectDefaultTerminals) (This)->lpVtbl->SelectCall(This,pCall,fSelectDefaultTerminals)
1865 #define ITAutomatedPhoneControl_UnselectCall(This,pCall) (This)->lpVtbl->UnselectCall(This,pCall)
1866 #define ITAutomatedPhoneControl_EnumerateSelectedCalls(This,ppCallEnum) (This)->lpVtbl->EnumerateSelectedCalls(This,ppCallEnum)
1867 #define ITAutomatedPhoneControl_get_SelectedCalls(This,pVariant) (This)->lpVtbl->get_SelectedCalls(This,pVariant)
1868 #endif
1869 #endif
1870   HRESULT WINAPI ITAutomatedPhoneControl_StartTone_Proxy(ITAutomatedPhoneControl *This,PHONE_TONE Tone,__LONG32 lDuration);
1871   void __RPC_STUB ITAutomatedPhoneControl_StartTone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1872   HRESULT WINAPI ITAutomatedPhoneControl_StopTone_Proxy(ITAutomatedPhoneControl *This);
1873   void __RPC_STUB ITAutomatedPhoneControl_StopTone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1874   HRESULT WINAPI ITAutomatedPhoneControl_get_Tone_Proxy(ITAutomatedPhoneControl *This,PHONE_TONE *pTone);
1875   void __RPC_STUB ITAutomatedPhoneControl_get_Tone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1876   HRESULT WINAPI ITAutomatedPhoneControl_StartRinger_Proxy(ITAutomatedPhoneControl *This,__LONG32 lRingMode,__LONG32 lDuration);
1877   void __RPC_STUB ITAutomatedPhoneControl_StartRinger_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1878   HRESULT WINAPI ITAutomatedPhoneControl_StopRinger_Proxy(ITAutomatedPhoneControl *This);
1879   void __RPC_STUB ITAutomatedPhoneControl_StopRinger_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1880   HRESULT WINAPI ITAutomatedPhoneControl_get_Ringer_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfRinging);
1881   void __RPC_STUB ITAutomatedPhoneControl_get_Ringer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1882   HRESULT WINAPI ITAutomatedPhoneControl_put_PhoneHandlingEnabled_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1883   void __RPC_STUB ITAutomatedPhoneControl_put_PhoneHandlingEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1884   HRESULT WINAPI ITAutomatedPhoneControl_get_PhoneHandlingEnabled_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1885   void __RPC_STUB ITAutomatedPhoneControl_get_PhoneHandlingEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1886   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoEndOfNumberTimeout_Proxy(ITAutomatedPhoneControl *This,__LONG32 lTimeout);
1887   void __RPC_STUB ITAutomatedPhoneControl_put_AutoEndOfNumberTimeout_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1888   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoEndOfNumberTimeout_Proxy(ITAutomatedPhoneControl *This,__LONG32 *plTimeout);
1889   void __RPC_STUB ITAutomatedPhoneControl_get_AutoEndOfNumberTimeout_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1890   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoDialtone_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1891   void __RPC_STUB ITAutomatedPhoneControl_put_AutoDialtone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1892   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoDialtone_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1893   void __RPC_STUB ITAutomatedPhoneControl_get_AutoDialtone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1894   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoStopTonesOnOnHook_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1895   void __RPC_STUB ITAutomatedPhoneControl_put_AutoStopTonesOnOnHook_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1896   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoStopTonesOnOnHook_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1897   void __RPC_STUB ITAutomatedPhoneControl_get_AutoStopTonesOnOnHook_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1898   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoStopRingOnOffHook_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1899   void __RPC_STUB ITAutomatedPhoneControl_put_AutoStopRingOnOffHook_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1900   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoStopRingOnOffHook_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1901   void __RPC_STUB ITAutomatedPhoneControl_get_AutoStopRingOnOffHook_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1902   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoKeypadTones_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1903   void __RPC_STUB ITAutomatedPhoneControl_put_AutoKeypadTones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1904   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoKeypadTones_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL *pfEnabled);
1905   void __RPC_STUB ITAutomatedPhoneControl_get_AutoKeypadTones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1906   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoKeypadTonesMinimumDuration_Proxy(ITAutomatedPhoneControl *This,__LONG32 lDuration);
1907   void __RPC_STUB ITAutomatedPhoneControl_put_AutoKeypadTonesMinimumDuration_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1908   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoKeypadTonesMinimumDuration_Proxy(ITAutomatedPhoneControl *This,__LONG32 *plDuration);
1909   void __RPC_STUB ITAutomatedPhoneControl_get_AutoKeypadTonesMinimumDuration_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1910   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoVolumeControl_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL fEnabled);
1911   void __RPC_STUB ITAutomatedPhoneControl_put_AutoVolumeControl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1912   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoVolumeControl_Proxy(ITAutomatedPhoneControl *This,VARIANT_BOOL *fEnabled);
1913   void __RPC_STUB ITAutomatedPhoneControl_get_AutoVolumeControl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1914   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoVolumeControlStep_Proxy(ITAutomatedPhoneControl *This,__LONG32 lStepSize);
1915   void __RPC_STUB ITAutomatedPhoneControl_put_AutoVolumeControlStep_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1916   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoVolumeControlStep_Proxy(ITAutomatedPhoneControl *This,__LONG32 *plStepSize);
1917   void __RPC_STUB ITAutomatedPhoneControl_get_AutoVolumeControlStep_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1918   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoVolumeControlRepeatDelay_Proxy(ITAutomatedPhoneControl *This,__LONG32 lDelay);
1919   void __RPC_STUB ITAutomatedPhoneControl_put_AutoVolumeControlRepeatDelay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1920   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoVolumeControlRepeatDelay_Proxy(ITAutomatedPhoneControl *This,__LONG32 *plDelay);
1921   void __RPC_STUB ITAutomatedPhoneControl_get_AutoVolumeControlRepeatDelay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1922   HRESULT WINAPI ITAutomatedPhoneControl_put_AutoVolumeControlRepeatPeriod_Proxy(ITAutomatedPhoneControl *This,__LONG32 lPeriod);
1923   void __RPC_STUB ITAutomatedPhoneControl_put_AutoVolumeControlRepeatPeriod_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1924   HRESULT WINAPI ITAutomatedPhoneControl_get_AutoVolumeControlRepeatPeriod_Proxy(ITAutomatedPhoneControl *This,__LONG32 *plPeriod);
1925   void __RPC_STUB ITAutomatedPhoneControl_get_AutoVolumeControlRepeatPeriod_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1926   HRESULT WINAPI ITAutomatedPhoneControl_SelectCall_Proxy(ITAutomatedPhoneControl *This,ITCallInfo *pCall,VARIANT_BOOL fSelectDefaultTerminals);
1927   void __RPC_STUB ITAutomatedPhoneControl_SelectCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1928   HRESULT WINAPI ITAutomatedPhoneControl_UnselectCall_Proxy(ITAutomatedPhoneControl *This,ITCallInfo *pCall);
1929   void __RPC_STUB ITAutomatedPhoneControl_UnselectCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1930   HRESULT WINAPI ITAutomatedPhoneControl_EnumerateSelectedCalls_Proxy(ITAutomatedPhoneControl *This,IEnumCall **ppCallEnum);
1931   void __RPC_STUB ITAutomatedPhoneControl_EnumerateSelectedCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1932   HRESULT WINAPI ITAutomatedPhoneControl_get_SelectedCalls_Proxy(ITAutomatedPhoneControl *This,VARIANT *pVariant);
1933   void __RPC_STUB ITAutomatedPhoneControl_get_SelectedCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1934 #endif
1935 
1936 #ifndef __ITBasicCallControl_INTERFACE_DEFINED__
1937 #define __ITBasicCallControl_INTERFACE_DEFINED__
1938   EXTERN_C const IID IID_ITBasicCallControl;
1939 #if defined(__cplusplus) && !defined(CINTERFACE)
1940   struct ITBasicCallControl : public IDispatch {
1941   public:
1942     virtual HRESULT WINAPI Connect(VARIANT_BOOL fSync) = 0;
1943     virtual HRESULT WINAPI Answer(void) = 0;
1944     virtual HRESULT WINAPI Disconnect(DISCONNECT_CODE code) = 0;
1945     virtual HRESULT WINAPI Hold(VARIANT_BOOL fHold) = 0;
1946     virtual HRESULT WINAPI HandoffDirect(BSTR pApplicationName) = 0;
1947     virtual HRESULT WINAPI HandoffIndirect(__LONG32 lMediaType) = 0;
1948     virtual HRESULT WINAPI Conference(ITBasicCallControl *pCall,VARIANT_BOOL fSync) = 0;
1949     virtual HRESULT WINAPI Transfer(ITBasicCallControl *pCall,VARIANT_BOOL fSync) = 0;
1950     virtual HRESULT WINAPI BlindTransfer(BSTR pDestAddress) = 0;
1951     virtual HRESULT WINAPI SwapHold(ITBasicCallControl *pCall) = 0;
1952     virtual HRESULT WINAPI ParkDirect(BSTR pParkAddress) = 0;
1953     virtual HRESULT WINAPI ParkIndirect(BSTR *ppNonDirAddress) = 0;
1954     virtual HRESULT WINAPI Unpark(void) = 0;
1955     virtual HRESULT WINAPI SetQOS(__LONG32 lMediaType,QOS_SERVICE_LEVEL ServiceLevel) = 0;
1956     virtual HRESULT WINAPI Pickup(BSTR pGroupID) = 0;
1957     virtual HRESULT WINAPI Dial(BSTR pDestAddress) = 0;
1958     virtual HRESULT WINAPI Finish(FINISH_MODE finishMode) = 0;
1959     virtual HRESULT WINAPI RemoveFromConference(void) = 0;
1960   };
1961 #else
1962   typedef struct ITBasicCallControlVtbl {
1963     BEGIN_INTERFACE
1964       HRESULT (WINAPI *QueryInterface)(ITBasicCallControl *This,REFIID riid,void **ppvObject);
1965       ULONG (WINAPI *AddRef)(ITBasicCallControl *This);
1966       ULONG (WINAPI *Release)(ITBasicCallControl *This);
1967       HRESULT (WINAPI *GetTypeInfoCount)(ITBasicCallControl *This,UINT *pctinfo);
1968       HRESULT (WINAPI *GetTypeInfo)(ITBasicCallControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1969       HRESULT (WINAPI *GetIDsOfNames)(ITBasicCallControl *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1970       HRESULT (WINAPI *Invoke)(ITBasicCallControl *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1971       HRESULT (WINAPI *Connect)(ITBasicCallControl *This,VARIANT_BOOL fSync);
1972       HRESULT (WINAPI *Answer)(ITBasicCallControl *This);
1973       HRESULT (WINAPI *Disconnect)(ITBasicCallControl *This,DISCONNECT_CODE code);
1974       HRESULT (WINAPI *Hold)(ITBasicCallControl *This,VARIANT_BOOL fHold);
1975       HRESULT (WINAPI *HandoffDirect)(ITBasicCallControl *This,BSTR pApplicationName);
1976       HRESULT (WINAPI *HandoffIndirect)(ITBasicCallControl *This,__LONG32 lMediaType);
1977       HRESULT (WINAPI *Conference)(ITBasicCallControl *This,ITBasicCallControl *pCall,VARIANT_BOOL fSync);
1978       HRESULT (WINAPI *Transfer)(ITBasicCallControl *This,ITBasicCallControl *pCall,VARIANT_BOOL fSync);
1979       HRESULT (WINAPI *BlindTransfer)(ITBasicCallControl *This,BSTR pDestAddress);
1980       HRESULT (WINAPI *SwapHold)(ITBasicCallControl *This,ITBasicCallControl *pCall);
1981       HRESULT (WINAPI *ParkDirect)(ITBasicCallControl *This,BSTR pParkAddress);
1982       HRESULT (WINAPI *ParkIndirect)(ITBasicCallControl *This,BSTR *ppNonDirAddress);
1983       HRESULT (WINAPI *Unpark)(ITBasicCallControl *This);
1984       HRESULT (WINAPI *SetQOS)(ITBasicCallControl *This,__LONG32 lMediaType,QOS_SERVICE_LEVEL ServiceLevel);
1985       HRESULT (WINAPI *Pickup)(ITBasicCallControl *This,BSTR pGroupID);
1986       HRESULT (WINAPI *Dial)(ITBasicCallControl *This,BSTR pDestAddress);
1987       HRESULT (WINAPI *Finish)(ITBasicCallControl *This,FINISH_MODE finishMode);
1988       HRESULT (WINAPI *RemoveFromConference)(ITBasicCallControl *This);
1989     END_INTERFACE
1990   } ITBasicCallControlVtbl;
1991   struct ITBasicCallControl {
1992     CONST_VTBL struct ITBasicCallControlVtbl *lpVtbl;
1993   };
1994 #ifdef COBJMACROS
1995 #define ITBasicCallControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1996 #define ITBasicCallControl_AddRef(This) (This)->lpVtbl->AddRef(This)
1997 #define ITBasicCallControl_Release(This) (This)->lpVtbl->Release(This)
1998 #define ITBasicCallControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1999 #define ITBasicCallControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2000 #define ITBasicCallControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2001 #define ITBasicCallControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2002 #define ITBasicCallControl_Connect(This,fSync) (This)->lpVtbl->Connect(This,fSync)
2003 #define ITBasicCallControl_Answer(This) (This)->lpVtbl->Answer(This)
2004 #define ITBasicCallControl_Disconnect(This,code) (This)->lpVtbl->Disconnect(This,code)
2005 #define ITBasicCallControl_Hold(This,fHold) (This)->lpVtbl->Hold(This,fHold)
2006 #define ITBasicCallControl_HandoffDirect(This,pApplicationName) (This)->lpVtbl->HandoffDirect(This,pApplicationName)
2007 #define ITBasicCallControl_HandoffIndirect(This,lMediaType) (This)->lpVtbl->HandoffIndirect(This,lMediaType)
2008 #define ITBasicCallControl_Conference(This,pCall,fSync) (This)->lpVtbl->Conference(This,pCall,fSync)
2009 #define ITBasicCallControl_Transfer(This,pCall,fSync) (This)->lpVtbl->Transfer(This,pCall,fSync)
2010 #define ITBasicCallControl_BlindTransfer(This,pDestAddress) (This)->lpVtbl->BlindTransfer(This,pDestAddress)
2011 #define ITBasicCallControl_SwapHold(This,pCall) (This)->lpVtbl->SwapHold(This,pCall)
2012 #define ITBasicCallControl_ParkDirect(This,pParkAddress) (This)->lpVtbl->ParkDirect(This,pParkAddress)
2013 #define ITBasicCallControl_ParkIndirect(This,ppNonDirAddress) (This)->lpVtbl->ParkIndirect(This,ppNonDirAddress)
2014 #define ITBasicCallControl_Unpark(This) (This)->lpVtbl->Unpark(This)
2015 #define ITBasicCallControl_SetQOS(This,lMediaType,ServiceLevel) (This)->lpVtbl->SetQOS(This,lMediaType,ServiceLevel)
2016 #define ITBasicCallControl_Pickup(This,pGroupID) (This)->lpVtbl->Pickup(This,pGroupID)
2017 #define ITBasicCallControl_Dial(This,pDestAddress) (This)->lpVtbl->Dial(This,pDestAddress)
2018 #define ITBasicCallControl_Finish(This,finishMode) (This)->lpVtbl->Finish(This,finishMode)
2019 #define ITBasicCallControl_RemoveFromConference(This) (This)->lpVtbl->RemoveFromConference(This)
2020 #endif
2021 #endif
2022   HRESULT WINAPI ITBasicCallControl_Connect_Proxy(ITBasicCallControl *This,VARIANT_BOOL fSync);
2023   void __RPC_STUB ITBasicCallControl_Connect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2024   HRESULT WINAPI ITBasicCallControl_Answer_Proxy(ITBasicCallControl *This);
2025   void __RPC_STUB ITBasicCallControl_Answer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2026   HRESULT WINAPI ITBasicCallControl_Disconnect_Proxy(ITBasicCallControl *This,DISCONNECT_CODE code);
2027   void __RPC_STUB ITBasicCallControl_Disconnect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2028   HRESULT WINAPI ITBasicCallControl_Hold_Proxy(ITBasicCallControl *This,VARIANT_BOOL fHold);
2029   void __RPC_STUB ITBasicCallControl_Hold_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2030   HRESULT WINAPI ITBasicCallControl_HandoffDirect_Proxy(ITBasicCallControl *This,BSTR pApplicationName);
2031   void __RPC_STUB ITBasicCallControl_HandoffDirect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2032   HRESULT WINAPI ITBasicCallControl_HandoffIndirect_Proxy(ITBasicCallControl *This,__LONG32 lMediaType);
2033   void __RPC_STUB ITBasicCallControl_HandoffIndirect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2034   HRESULT WINAPI ITBasicCallControl_Conference_Proxy(ITBasicCallControl *This,ITBasicCallControl *pCall,VARIANT_BOOL fSync);
2035   void __RPC_STUB ITBasicCallControl_Conference_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2036   HRESULT WINAPI ITBasicCallControl_Transfer_Proxy(ITBasicCallControl *This,ITBasicCallControl *pCall,VARIANT_BOOL fSync);
2037   void __RPC_STUB ITBasicCallControl_Transfer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2038   HRESULT WINAPI ITBasicCallControl_BlindTransfer_Proxy(ITBasicCallControl *This,BSTR pDestAddress);
2039   void __RPC_STUB ITBasicCallControl_BlindTransfer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2040   HRESULT WINAPI ITBasicCallControl_SwapHold_Proxy(ITBasicCallControl *This,ITBasicCallControl *pCall);
2041   void __RPC_STUB ITBasicCallControl_SwapHold_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2042   HRESULT WINAPI ITBasicCallControl_ParkDirect_Proxy(ITBasicCallControl *This,BSTR pParkAddress);
2043   void __RPC_STUB ITBasicCallControl_ParkDirect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2044   HRESULT WINAPI ITBasicCallControl_ParkIndirect_Proxy(ITBasicCallControl *This,BSTR *ppNonDirAddress);
2045   void __RPC_STUB ITBasicCallControl_ParkIndirect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2046   HRESULT WINAPI ITBasicCallControl_Unpark_Proxy(ITBasicCallControl *This);
2047   void __RPC_STUB ITBasicCallControl_Unpark_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2048   HRESULT WINAPI ITBasicCallControl_SetQOS_Proxy(ITBasicCallControl *This,__LONG32 lMediaType,QOS_SERVICE_LEVEL ServiceLevel);
2049   void __RPC_STUB ITBasicCallControl_SetQOS_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2050   HRESULT WINAPI ITBasicCallControl_Pickup_Proxy(ITBasicCallControl *This,BSTR pGroupID);
2051   void __RPC_STUB ITBasicCallControl_Pickup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2052   HRESULT WINAPI ITBasicCallControl_Dial_Proxy(ITBasicCallControl *This,BSTR pDestAddress);
2053   void __RPC_STUB ITBasicCallControl_Dial_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2054   HRESULT WINAPI ITBasicCallControl_Finish_Proxy(ITBasicCallControl *This,FINISH_MODE finishMode);
2055   void __RPC_STUB ITBasicCallControl_Finish_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2056   HRESULT WINAPI ITBasicCallControl_RemoveFromConference_Proxy(ITBasicCallControl *This);
2057   void __RPC_STUB ITBasicCallControl_RemoveFromConference_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2058 #endif
2059 
2060 #ifndef __ITCallInfo_INTERFACE_DEFINED__
2061 #define __ITCallInfo_INTERFACE_DEFINED__
2062   EXTERN_C const IID IID_ITCallInfo;
2063 #if defined(__cplusplus) && !defined(CINTERFACE)
2064   struct ITCallInfo : public IDispatch {
2065   public:
2066     virtual HRESULT WINAPI get_Address(ITAddress **ppAddress) = 0;
2067     virtual HRESULT WINAPI get_CallState(CALL_STATE *pCallState) = 0;
2068     virtual HRESULT WINAPI get_Privilege(CALL_PRIVILEGE *pPrivilege) = 0;
2069     virtual HRESULT WINAPI get_CallHub(ITCallHub **ppCallHub) = 0;
2070     virtual HRESULT WINAPI get_CallInfoLong(CALLINFO_LONG CallInfoLong,__LONG32 *plCallInfoLongVal) = 0;
2071     virtual HRESULT WINAPI put_CallInfoLong(CALLINFO_LONG CallInfoLong,__LONG32 lCallInfoLongVal) = 0;
2072     virtual HRESULT WINAPI get_CallInfoString(CALLINFO_STRING CallInfoString,BSTR *ppCallInfoString) = 0;
2073     virtual HRESULT WINAPI put_CallInfoString(CALLINFO_STRING CallInfoString,BSTR pCallInfoString) = 0;
2074     virtual HRESULT WINAPI get_CallInfoBuffer(CALLINFO_BUFFER CallInfoBuffer,VARIANT *ppCallInfoBuffer) = 0;
2075     virtual HRESULT WINAPI put_CallInfoBuffer(CALLINFO_BUFFER CallInfoBuffer,VARIANT pCallInfoBuffer) = 0;
2076     virtual HRESULT WINAPI GetCallInfoBuffer(CALLINFO_BUFFER CallInfoBuffer,DWORD *pdwSize,BYTE **ppCallInfoBuffer) = 0;
2077     virtual HRESULT WINAPI SetCallInfoBuffer(CALLINFO_BUFFER CallInfoBuffer,DWORD dwSize,BYTE *pCallInfoBuffer) = 0;
2078     virtual HRESULT WINAPI ReleaseUserUserInfo(void) = 0;
2079   };
2080 #else
2081   typedef struct ITCallInfoVtbl {
2082     BEGIN_INTERFACE
2083       HRESULT (WINAPI *QueryInterface)(ITCallInfo *This,REFIID riid,void **ppvObject);
2084       ULONG (WINAPI *AddRef)(ITCallInfo *This);
2085       ULONG (WINAPI *Release)(ITCallInfo *This);
2086       HRESULT (WINAPI *GetTypeInfoCount)(ITCallInfo *This,UINT *pctinfo);
2087       HRESULT (WINAPI *GetTypeInfo)(ITCallInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2088       HRESULT (WINAPI *GetIDsOfNames)(ITCallInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2089       HRESULT (WINAPI *Invoke)(ITCallInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2090       HRESULT (WINAPI *get_Address)(ITCallInfo *This,ITAddress **ppAddress);
2091       HRESULT (WINAPI *get_CallState)(ITCallInfo *This,CALL_STATE *pCallState);
2092       HRESULT (WINAPI *get_Privilege)(ITCallInfo *This,CALL_PRIVILEGE *pPrivilege);
2093       HRESULT (WINAPI *get_CallHub)(ITCallInfo *This,ITCallHub **ppCallHub);
2094       HRESULT (WINAPI *get_CallInfoLong)(ITCallInfo *This,CALLINFO_LONG CallInfoLong,__LONG32 *plCallInfoLongVal);
2095       HRESULT (WINAPI *put_CallInfoLong)(ITCallInfo *This,CALLINFO_LONG CallInfoLong,__LONG32 lCallInfoLongVal);
2096       HRESULT (WINAPI *get_CallInfoString)(ITCallInfo *This,CALLINFO_STRING CallInfoString,BSTR *ppCallInfoString);
2097       HRESULT (WINAPI *put_CallInfoString)(ITCallInfo *This,CALLINFO_STRING CallInfoString,BSTR pCallInfoString);
2098       HRESULT (WINAPI *get_CallInfoBuffer)(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,VARIANT *ppCallInfoBuffer);
2099       HRESULT (WINAPI *put_CallInfoBuffer)(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,VARIANT pCallInfoBuffer);
2100       HRESULT (WINAPI *GetCallInfoBuffer)(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,DWORD *pdwSize,BYTE **ppCallInfoBuffer);
2101       HRESULT (WINAPI *SetCallInfoBuffer)(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,DWORD dwSize,BYTE *pCallInfoBuffer);
2102       HRESULT (WINAPI *ReleaseUserUserInfo)(ITCallInfo *This);
2103     END_INTERFACE
2104   } ITCallInfoVtbl;
2105   struct ITCallInfo {
2106     CONST_VTBL struct ITCallInfoVtbl *lpVtbl;
2107   };
2108 #ifdef COBJMACROS
2109 #define ITCallInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2110 #define ITCallInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
2111 #define ITCallInfo_Release(This) (This)->lpVtbl->Release(This)
2112 #define ITCallInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2113 #define ITCallInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2114 #define ITCallInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2115 #define ITCallInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2116 #define ITCallInfo_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
2117 #define ITCallInfo_get_CallState(This,pCallState) (This)->lpVtbl->get_CallState(This,pCallState)
2118 #define ITCallInfo_get_Privilege(This,pPrivilege) (This)->lpVtbl->get_Privilege(This,pPrivilege)
2119 #define ITCallInfo_get_CallHub(This,ppCallHub) (This)->lpVtbl->get_CallHub(This,ppCallHub)
2120 #define ITCallInfo_get_CallInfoLong(This,CallInfoLong,plCallInfoLongVal) (This)->lpVtbl->get_CallInfoLong(This,CallInfoLong,plCallInfoLongVal)
2121 #define ITCallInfo_put_CallInfoLong(This,CallInfoLong,lCallInfoLongVal) (This)->lpVtbl->put_CallInfoLong(This,CallInfoLong,lCallInfoLongVal)
2122 #define ITCallInfo_get_CallInfoString(This,CallInfoString,ppCallInfoString) (This)->lpVtbl->get_CallInfoString(This,CallInfoString,ppCallInfoString)
2123 #define ITCallInfo_put_CallInfoString(This,CallInfoString,pCallInfoString) (This)->lpVtbl->put_CallInfoString(This,CallInfoString,pCallInfoString)
2124 #define ITCallInfo_get_CallInfoBuffer(This,CallInfoBuffer,ppCallInfoBuffer) (This)->lpVtbl->get_CallInfoBuffer(This,CallInfoBuffer,ppCallInfoBuffer)
2125 #define ITCallInfo_put_CallInfoBuffer(This,CallInfoBuffer,pCallInfoBuffer) (This)->lpVtbl->put_CallInfoBuffer(This,CallInfoBuffer,pCallInfoBuffer)
2126 #define ITCallInfo_GetCallInfoBuffer(This,CallInfoBuffer,pdwSize,ppCallInfoBuffer) (This)->lpVtbl->GetCallInfoBuffer(This,CallInfoBuffer,pdwSize,ppCallInfoBuffer)
2127 #define ITCallInfo_SetCallInfoBuffer(This,CallInfoBuffer,dwSize,pCallInfoBuffer) (This)->lpVtbl->SetCallInfoBuffer(This,CallInfoBuffer,dwSize,pCallInfoBuffer)
2128 #define ITCallInfo_ReleaseUserUserInfo(This) (This)->lpVtbl->ReleaseUserUserInfo(This)
2129 #endif
2130 #endif
2131   HRESULT WINAPI ITCallInfo_get_Address_Proxy(ITCallInfo *This,ITAddress **ppAddress);
2132   void __RPC_STUB ITCallInfo_get_Address_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2133   HRESULT WINAPI ITCallInfo_get_CallState_Proxy(ITCallInfo *This,CALL_STATE *pCallState);
2134   void __RPC_STUB ITCallInfo_get_CallState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2135   HRESULT WINAPI ITCallInfo_get_Privilege_Proxy(ITCallInfo *This,CALL_PRIVILEGE *pPrivilege);
2136   void __RPC_STUB ITCallInfo_get_Privilege_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2137   HRESULT WINAPI ITCallInfo_get_CallHub_Proxy(ITCallInfo *This,ITCallHub **ppCallHub);
2138   void __RPC_STUB ITCallInfo_get_CallHub_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2139   HRESULT WINAPI ITCallInfo_get_CallInfoLong_Proxy(ITCallInfo *This,CALLINFO_LONG CallInfoLong,__LONG32 *plCallInfoLongVal);
2140   void __RPC_STUB ITCallInfo_get_CallInfoLong_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2141   HRESULT WINAPI ITCallInfo_put_CallInfoLong_Proxy(ITCallInfo *This,CALLINFO_LONG CallInfoLong,__LONG32 lCallInfoLongVal);
2142   void __RPC_STUB ITCallInfo_put_CallInfoLong_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2143   HRESULT WINAPI ITCallInfo_get_CallInfoString_Proxy(ITCallInfo *This,CALLINFO_STRING CallInfoString,BSTR *ppCallInfoString);
2144   void __RPC_STUB ITCallInfo_get_CallInfoString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2145   HRESULT WINAPI ITCallInfo_put_CallInfoString_Proxy(ITCallInfo *This,CALLINFO_STRING CallInfoString,BSTR pCallInfoString);
2146   void __RPC_STUB ITCallInfo_put_CallInfoString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2147   HRESULT WINAPI ITCallInfo_get_CallInfoBuffer_Proxy(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,VARIANT *ppCallInfoBuffer);
2148   void __RPC_STUB ITCallInfo_get_CallInfoBuffer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2149   HRESULT WINAPI ITCallInfo_put_CallInfoBuffer_Proxy(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,VARIANT pCallInfoBuffer);
2150   void __RPC_STUB ITCallInfo_put_CallInfoBuffer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2151   HRESULT WINAPI ITCallInfo_GetCallInfoBuffer_Proxy(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,DWORD *pdwSize,BYTE **ppCallInfoBuffer);
2152   void __RPC_STUB ITCallInfo_GetCallInfoBuffer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2153   HRESULT WINAPI ITCallInfo_SetCallInfoBuffer_Proxy(ITCallInfo *This,CALLINFO_BUFFER CallInfoBuffer,DWORD dwSize,BYTE *pCallInfoBuffer);
2154   void __RPC_STUB ITCallInfo_SetCallInfoBuffer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2155   HRESULT WINAPI ITCallInfo_ReleaseUserUserInfo_Proxy(ITCallInfo *This);
2156   void __RPC_STUB ITCallInfo_ReleaseUserUserInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2157 #endif
2158 
2159 #ifndef __ITCallInfo2_INTERFACE_DEFINED__
2160 #define __ITCallInfo2_INTERFACE_DEFINED__
2161   EXTERN_C const IID IID_ITCallInfo2;
2162 #if defined(__cplusplus) && !defined(CINTERFACE)
2163   struct ITCallInfo2 : public ITCallInfo {
2164   public:
2165     virtual HRESULT WINAPI get_EventFilter(TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL *pEnable) = 0;
2166     virtual HRESULT WINAPI put_EventFilter(TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL bEnable) = 0;
2167   };
2168 #else
2169   typedef struct ITCallInfo2Vtbl {
2170     BEGIN_INTERFACE
2171       HRESULT (WINAPI *QueryInterface)(ITCallInfo2 *This,REFIID riid,void **ppvObject);
2172       ULONG (WINAPI *AddRef)(ITCallInfo2 *This);
2173       ULONG (WINAPI *Release)(ITCallInfo2 *This);
2174       HRESULT (WINAPI *GetTypeInfoCount)(ITCallInfo2 *This,UINT *pctinfo);
2175       HRESULT (WINAPI *GetTypeInfo)(ITCallInfo2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2176       HRESULT (WINAPI *GetIDsOfNames)(ITCallInfo2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2177       HRESULT (WINAPI *Invoke)(ITCallInfo2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2178       HRESULT (WINAPI *get_Address)(ITCallInfo2 *This,ITAddress **ppAddress);
2179       HRESULT (WINAPI *get_CallState)(ITCallInfo2 *This,CALL_STATE *pCallState);
2180       HRESULT (WINAPI *get_Privilege)(ITCallInfo2 *This,CALL_PRIVILEGE *pPrivilege);
2181       HRESULT (WINAPI *get_CallHub)(ITCallInfo2 *This,ITCallHub **ppCallHub);
2182       HRESULT (WINAPI *get_CallInfoLong)(ITCallInfo2 *This,CALLINFO_LONG CallInfoLong,__LONG32 *plCallInfoLongVal);
2183       HRESULT (WINAPI *put_CallInfoLong)(ITCallInfo2 *This,CALLINFO_LONG CallInfoLong,__LONG32 lCallInfoLongVal);
2184       HRESULT (WINAPI *get_CallInfoString)(ITCallInfo2 *This,CALLINFO_STRING CallInfoString,BSTR *ppCallInfoString);
2185       HRESULT (WINAPI *put_CallInfoString)(ITCallInfo2 *This,CALLINFO_STRING CallInfoString,BSTR pCallInfoString);
2186       HRESULT (WINAPI *get_CallInfoBuffer)(ITCallInfo2 *This,CALLINFO_BUFFER CallInfoBuffer,VARIANT *ppCallInfoBuffer);
2187       HRESULT (WINAPI *put_CallInfoBuffer)(ITCallInfo2 *This,CALLINFO_BUFFER CallInfoBuffer,VARIANT pCallInfoBuffer);
2188       HRESULT (WINAPI *GetCallInfoBuffer)(ITCallInfo2 *This,CALLINFO_BUFFER CallInfoBuffer,DWORD *pdwSize,BYTE **ppCallInfoBuffer);
2189       HRESULT (WINAPI *SetCallInfoBuffer)(ITCallInfo2 *This,CALLINFO_BUFFER CallInfoBuffer,DWORD dwSize,BYTE *pCallInfoBuffer);
2190       HRESULT (WINAPI *ReleaseUserUserInfo)(ITCallInfo2 *This);
2191       HRESULT (WINAPI *get_EventFilter)(ITCallInfo2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL *pEnable);
2192       HRESULT (WINAPI *put_EventFilter)(ITCallInfo2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL bEnable);
2193     END_INTERFACE
2194   } ITCallInfo2Vtbl;
2195   struct ITCallInfo2 {
2196     CONST_VTBL struct ITCallInfo2Vtbl *lpVtbl;
2197   };
2198 #ifdef COBJMACROS
2199 #define ITCallInfo2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2200 #define ITCallInfo2_AddRef(This) (This)->lpVtbl->AddRef(This)
2201 #define ITCallInfo2_Release(This) (This)->lpVtbl->Release(This)
2202 #define ITCallInfo2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2203 #define ITCallInfo2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2204 #define ITCallInfo2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2205 #define ITCallInfo2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2206 #define ITCallInfo2_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
2207 #define ITCallInfo2_get_CallState(This,pCallState) (This)->lpVtbl->get_CallState(This,pCallState)
2208 #define ITCallInfo2_get_Privilege(This,pPrivilege) (This)->lpVtbl->get_Privilege(This,pPrivilege)
2209 #define ITCallInfo2_get_CallHub(This,ppCallHub) (This)->lpVtbl->get_CallHub(This,ppCallHub)
2210 #define ITCallInfo2_get_CallInfoLong(This,CallInfoLong,plCallInfoLongVal) (This)->lpVtbl->get_CallInfoLong(This,CallInfoLong,plCallInfoLongVal)
2211 #define ITCallInfo2_put_CallInfoLong(This,CallInfoLong,lCallInfoLongVal) (This)->lpVtbl->put_CallInfoLong(This,CallInfoLong,lCallInfoLongVal)
2212 #define ITCallInfo2_get_CallInfoString(This,CallInfoString,ppCallInfoString) (This)->lpVtbl->get_CallInfoString(This,CallInfoString,ppCallInfoString)
2213 #define ITCallInfo2_put_CallInfoString(This,CallInfoString,pCallInfoString) (This)->lpVtbl->put_CallInfoString(This,CallInfoString,pCallInfoString)
2214 #define ITCallInfo2_get_CallInfoBuffer(This,CallInfoBuffer,ppCallInfoBuffer) (This)->lpVtbl->get_CallInfoBuffer(This,CallInfoBuffer,ppCallInfoBuffer)
2215 #define ITCallInfo2_put_CallInfoBuffer(This,CallInfoBuffer,pCallInfoBuffer) (This)->lpVtbl->put_CallInfoBuffer(This,CallInfoBuffer,pCallInfoBuffer)
2216 #define ITCallInfo2_GetCallInfoBuffer(This,CallInfoBuffer,pdwSize,ppCallInfoBuffer) (This)->lpVtbl->GetCallInfoBuffer(This,CallInfoBuffer,pdwSize,ppCallInfoBuffer)
2217 #define ITCallInfo2_SetCallInfoBuffer(This,CallInfoBuffer,dwSize,pCallInfoBuffer) (This)->lpVtbl->SetCallInfoBuffer(This,CallInfoBuffer,dwSize,pCallInfoBuffer)
2218 #define ITCallInfo2_ReleaseUserUserInfo(This) (This)->lpVtbl->ReleaseUserUserInfo(This)
2219 #define ITCallInfo2_get_EventFilter(This,TapiEvent,lSubEvent,pEnable) (This)->lpVtbl->get_EventFilter(This,TapiEvent,lSubEvent,pEnable)
2220 #define ITCallInfo2_put_EventFilter(This,TapiEvent,lSubEvent,bEnable) (This)->lpVtbl->put_EventFilter(This,TapiEvent,lSubEvent,bEnable)
2221 #endif
2222 #endif
2223   HRESULT WINAPI ITCallInfo2_get_EventFilter_Proxy(ITCallInfo2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL *pEnable);
2224   void __RPC_STUB ITCallInfo2_get_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2225   HRESULT WINAPI ITCallInfo2_put_EventFilter_Proxy(ITCallInfo2 *This,TAPI_EVENT TapiEvent,__LONG32 lSubEvent,VARIANT_BOOL bEnable);
2226   void __RPC_STUB ITCallInfo2_put_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2227 #endif
2228 
2229 #ifndef __ITTerminal_INTERFACE_DEFINED__
2230 #define __ITTerminal_INTERFACE_DEFINED__
2231   EXTERN_C const IID IID_ITTerminal;
2232 #if defined(__cplusplus) && !defined(CINTERFACE)
2233   struct ITTerminal : public IDispatch {
2234   public:
2235     virtual HRESULT WINAPI get_Name(BSTR *ppName) = 0;
2236     virtual HRESULT WINAPI get_State(TERMINAL_STATE *pTerminalState) = 0;
2237     virtual HRESULT WINAPI get_TerminalType(TERMINAL_TYPE *pType) = 0;
2238     virtual HRESULT WINAPI get_TerminalClass(BSTR *ppTerminalClass) = 0;
2239     virtual HRESULT WINAPI get_MediaType(__LONG32 *plMediaType) = 0;
2240     virtual HRESULT WINAPI get_Direction(TERMINAL_DIRECTION *pDirection) = 0;
2241   };
2242 #else
2243   typedef struct ITTerminalVtbl {
2244     BEGIN_INTERFACE
2245       HRESULT (WINAPI *QueryInterface)(ITTerminal *This,REFIID riid,void **ppvObject);
2246       ULONG (WINAPI *AddRef)(ITTerminal *This);
2247       ULONG (WINAPI *Release)(ITTerminal *This);
2248       HRESULT (WINAPI *GetTypeInfoCount)(ITTerminal *This,UINT *pctinfo);
2249       HRESULT (WINAPI *GetTypeInfo)(ITTerminal *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2250       HRESULT (WINAPI *GetIDsOfNames)(ITTerminal *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2251       HRESULT (WINAPI *Invoke)(ITTerminal *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2252       HRESULT (WINAPI *get_Name)(ITTerminal *This,BSTR *ppName);
2253       HRESULT (WINAPI *get_State)(ITTerminal *This,TERMINAL_STATE *pTerminalState);
2254       HRESULT (WINAPI *get_TerminalType)(ITTerminal *This,TERMINAL_TYPE *pType);
2255       HRESULT (WINAPI *get_TerminalClass)(ITTerminal *This,BSTR *ppTerminalClass);
2256       HRESULT (WINAPI *get_MediaType)(ITTerminal *This,__LONG32 *plMediaType);
2257       HRESULT (WINAPI *get_Direction)(ITTerminal *This,TERMINAL_DIRECTION *pDirection);
2258     END_INTERFACE
2259   } ITTerminalVtbl;
2260   struct ITTerminal {
2261     CONST_VTBL struct ITTerminalVtbl *lpVtbl;
2262   };
2263 #ifdef COBJMACROS
2264 #define ITTerminal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2265 #define ITTerminal_AddRef(This) (This)->lpVtbl->AddRef(This)
2266 #define ITTerminal_Release(This) (This)->lpVtbl->Release(This)
2267 #define ITTerminal_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2268 #define ITTerminal_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2269 #define ITTerminal_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2270 #define ITTerminal_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2271 #define ITTerminal_get_Name(This,ppName) (This)->lpVtbl->get_Name(This,ppName)
2272 #define ITTerminal_get_State(This,pTerminalState) (This)->lpVtbl->get_State(This,pTerminalState)
2273 #define ITTerminal_get_TerminalType(This,pType) (This)->lpVtbl->get_TerminalType(This,pType)
2274 #define ITTerminal_get_TerminalClass(This,ppTerminalClass) (This)->lpVtbl->get_TerminalClass(This,ppTerminalClass)
2275 #define ITTerminal_get_MediaType(This,plMediaType) (This)->lpVtbl->get_MediaType(This,plMediaType)
2276 #define ITTerminal_get_Direction(This,pDirection) (This)->lpVtbl->get_Direction(This,pDirection)
2277 #endif
2278 #endif
2279   HRESULT WINAPI ITTerminal_get_Name_Proxy(ITTerminal *This,BSTR *ppName);
2280   void __RPC_STUB ITTerminal_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2281   HRESULT WINAPI ITTerminal_get_State_Proxy(ITTerminal *This,TERMINAL_STATE *pTerminalState);
2282   void __RPC_STUB ITTerminal_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2283   HRESULT WINAPI ITTerminal_get_TerminalType_Proxy(ITTerminal *This,TERMINAL_TYPE *pType);
2284   void __RPC_STUB ITTerminal_get_TerminalType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2285   HRESULT WINAPI ITTerminal_get_TerminalClass_Proxy(ITTerminal *This,BSTR *ppTerminalClass);
2286   void __RPC_STUB ITTerminal_get_TerminalClass_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2287   HRESULT WINAPI ITTerminal_get_MediaType_Proxy(ITTerminal *This,__LONG32 *plMediaType);
2288   void __RPC_STUB ITTerminal_get_MediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2289   HRESULT WINAPI ITTerminal_get_Direction_Proxy(ITTerminal *This,TERMINAL_DIRECTION *pDirection);
2290   void __RPC_STUB ITTerminal_get_Direction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2291 #endif
2292 
2293 #ifndef __ITMultiTrackTerminal_INTERFACE_DEFINED__
2294 #define __ITMultiTrackTerminal_INTERFACE_DEFINED__
2295   EXTERN_C const IID IID_ITMultiTrackTerminal;
2296 #if defined(__cplusplus) && !defined(CINTERFACE)
2297   struct ITMultiTrackTerminal : public IDispatch {
2298   public:
2299     virtual HRESULT WINAPI get_TrackTerminals(VARIANT *pVariant) = 0;
2300     virtual HRESULT WINAPI EnumerateTrackTerminals(IEnumTerminal **ppEnumTerminal) = 0;
2301     virtual HRESULT WINAPI CreateTrackTerminal(__LONG32 MediaType,TERMINAL_DIRECTION TerminalDirection,ITTerminal **ppTerminal) = 0;
2302     virtual HRESULT WINAPI get_MediaTypesInUse(__LONG32 *plMediaTypesInUse) = 0;
2303     virtual HRESULT WINAPI get_DirectionsInUse(TERMINAL_DIRECTION *plDirectionsInUsed) = 0;
2304     virtual HRESULT WINAPI RemoveTrackTerminal(ITTerminal *pTrackTerminalToRemove) = 0;
2305   };
2306 #else
2307   typedef struct ITMultiTrackTerminalVtbl {
2308     BEGIN_INTERFACE
2309       HRESULT (WINAPI *QueryInterface)(ITMultiTrackTerminal *This,REFIID riid,void **ppvObject);
2310       ULONG (WINAPI *AddRef)(ITMultiTrackTerminal *This);
2311       ULONG (WINAPI *Release)(ITMultiTrackTerminal *This);
2312       HRESULT (WINAPI *GetTypeInfoCount)(ITMultiTrackTerminal *This,UINT *pctinfo);
2313       HRESULT (WINAPI *GetTypeInfo)(ITMultiTrackTerminal *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2314       HRESULT (WINAPI *GetIDsOfNames)(ITMultiTrackTerminal *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2315       HRESULT (WINAPI *Invoke)(ITMultiTrackTerminal *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2316       HRESULT (WINAPI *get_TrackTerminals)(ITMultiTrackTerminal *This,VARIANT *pVariant);
2317       HRESULT (WINAPI *EnumerateTrackTerminals)(ITMultiTrackTerminal *This,IEnumTerminal **ppEnumTerminal);
2318       HRESULT (WINAPI *CreateTrackTerminal)(ITMultiTrackTerminal *This,__LONG32 MediaType,TERMINAL_DIRECTION TerminalDirection,ITTerminal **ppTerminal);
2319       HRESULT (WINAPI *get_MediaTypesInUse)(ITMultiTrackTerminal *This,__LONG32 *plMediaTypesInUse);
2320       HRESULT (WINAPI *get_DirectionsInUse)(ITMultiTrackTerminal *This,TERMINAL_DIRECTION *plDirectionsInUsed);
2321       HRESULT (WINAPI *RemoveTrackTerminal)(ITMultiTrackTerminal *This,ITTerminal *pTrackTerminalToRemove);
2322     END_INTERFACE
2323   } ITMultiTrackTerminalVtbl;
2324   struct ITMultiTrackTerminal {
2325     CONST_VTBL struct ITMultiTrackTerminalVtbl *lpVtbl;
2326   };
2327 #ifdef COBJMACROS
2328 #define ITMultiTrackTerminal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2329 #define ITMultiTrackTerminal_AddRef(This) (This)->lpVtbl->AddRef(This)
2330 #define ITMultiTrackTerminal_Release(This) (This)->lpVtbl->Release(This)
2331 #define ITMultiTrackTerminal_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2332 #define ITMultiTrackTerminal_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2333 #define ITMultiTrackTerminal_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2334 #define ITMultiTrackTerminal_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2335 #define ITMultiTrackTerminal_get_TrackTerminals(This,pVariant) (This)->lpVtbl->get_TrackTerminals(This,pVariant)
2336 #define ITMultiTrackTerminal_EnumerateTrackTerminals(This,ppEnumTerminal) (This)->lpVtbl->EnumerateTrackTerminals(This,ppEnumTerminal)
2337 #define ITMultiTrackTerminal_CreateTrackTerminal(This,MediaType,TerminalDirection,ppTerminal) (This)->lpVtbl->CreateTrackTerminal(This,MediaType,TerminalDirection,ppTerminal)
2338 #define ITMultiTrackTerminal_get_MediaTypesInUse(This,plMediaTypesInUse) (This)->lpVtbl->get_MediaTypesInUse(This,plMediaTypesInUse)
2339 #define ITMultiTrackTerminal_get_DirectionsInUse(This,plDirectionsInUsed) (This)->lpVtbl->get_DirectionsInUse(This,plDirectionsInUsed)
2340 #define ITMultiTrackTerminal_RemoveTrackTerminal(This,pTrackTerminalToRemove) (This)->lpVtbl->RemoveTrackTerminal(This,pTrackTerminalToRemove)
2341 #endif
2342 #endif
2343   HRESULT WINAPI ITMultiTrackTerminal_get_TrackTerminals_Proxy(ITMultiTrackTerminal *This,VARIANT *pVariant);
2344   void __RPC_STUB ITMultiTrackTerminal_get_TrackTerminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2345   HRESULT WINAPI ITMultiTrackTerminal_EnumerateTrackTerminals_Proxy(ITMultiTrackTerminal *This,IEnumTerminal **ppEnumTerminal);
2346   void __RPC_STUB ITMultiTrackTerminal_EnumerateTrackTerminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2347   HRESULT WINAPI ITMultiTrackTerminal_CreateTrackTerminal_Proxy(ITMultiTrackTerminal *This,__LONG32 MediaType,TERMINAL_DIRECTION TerminalDirection,ITTerminal **ppTerminal);
2348   void __RPC_STUB ITMultiTrackTerminal_CreateTrackTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2349   HRESULT WINAPI ITMultiTrackTerminal_get_MediaTypesInUse_Proxy(ITMultiTrackTerminal *This,__LONG32 *plMediaTypesInUse);
2350   void __RPC_STUB ITMultiTrackTerminal_get_MediaTypesInUse_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2351   HRESULT WINAPI ITMultiTrackTerminal_get_DirectionsInUse_Proxy(ITMultiTrackTerminal *This,TERMINAL_DIRECTION *plDirectionsInUsed);
2352   void __RPC_STUB ITMultiTrackTerminal_get_DirectionsInUse_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2353   HRESULT WINAPI ITMultiTrackTerminal_RemoveTrackTerminal_Proxy(ITMultiTrackTerminal *This,ITTerminal *pTrackTerminalToRemove);
2354   void __RPC_STUB ITMultiTrackTerminal_RemoveTrackTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2355 #endif
2356 
2357   typedef enum TERMINAL_MEDIA_STATE {
2358     TMS_IDLE = 0,
2359     TMS_ACTIVE,TMS_PAUSED,
2360     TMS_LASTITEM = TMS_PAUSED
2361   } TERMINAL_MEDIA_STATE;
2362 
2363   typedef enum FT_STATE_EVENT_CAUSE {
2364     FTEC_NORMAL = 0,
2365     FTEC_END_OF_FILE,FTEC_READ_ERROR,FTEC_WRITE_ERROR
2366   } FT_STATE_EVENT_CAUSE;
2367 
2368   extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0433_v0_0_c_ifspec;
2369   extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0433_v0_0_s_ifspec;
2370 #ifndef __ITFileTrack_INTERFACE_DEFINED__
2371 #define __ITFileTrack_INTERFACE_DEFINED__
2372   EXTERN_C const IID IID_ITFileTrack;
2373 #if defined(__cplusplus) && !defined(CINTERFACE)
2374   struct ITFileTrack : public IDispatch {
2375   public:
2376     virtual HRESULT WINAPI get_Format(AM_MEDIA_TYPE **ppmt) = 0;
2377     virtual HRESULT WINAPI put_Format(const AM_MEDIA_TYPE *pmt) = 0;
2378     virtual HRESULT WINAPI get_ControllingTerminal(ITTerminal **ppControllingTerminal) = 0;
2379     virtual HRESULT WINAPI get_AudioFormatForScripting(ITScriptableAudioFormat **ppAudioFormat) = 0;
2380     virtual HRESULT WINAPI put_AudioFormatForScripting(ITScriptableAudioFormat *pAudioFormat) = 0;
2381     virtual HRESULT WINAPI get_EmptyAudioFormatForScripting(ITScriptableAudioFormat **ppAudioFormat) = 0;
2382   };
2383 #else
2384   typedef struct ITFileTrackVtbl {
2385     BEGIN_INTERFACE
2386       HRESULT (WINAPI *QueryInterface)(ITFileTrack *This,REFIID riid,void **ppvObject);
2387       ULONG (WINAPI *AddRef)(ITFileTrack *This);
2388       ULONG (WINAPI *Release)(ITFileTrack *This);
2389       HRESULT (WINAPI *GetTypeInfoCount)(ITFileTrack *This,UINT *pctinfo);
2390       HRESULT (WINAPI *GetTypeInfo)(ITFileTrack *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2391       HRESULT (WINAPI *GetIDsOfNames)(ITFileTrack *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2392       HRESULT (WINAPI *Invoke)(ITFileTrack *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2393       HRESULT (WINAPI *get_Format)(ITFileTrack *This,AM_MEDIA_TYPE **ppmt);
2394       HRESULT (WINAPI *put_Format)(ITFileTrack *This,const AM_MEDIA_TYPE *pmt);
2395       HRESULT (WINAPI *get_ControllingTerminal)(ITFileTrack *This,ITTerminal **ppControllingTerminal);
2396       HRESULT (WINAPI *get_AudioFormatForScripting)(ITFileTrack *This,ITScriptableAudioFormat **ppAudioFormat);
2397       HRESULT (WINAPI *put_AudioFormatForScripting)(ITFileTrack *This,ITScriptableAudioFormat *pAudioFormat);
2398       HRESULT (WINAPI *get_EmptyAudioFormatForScripting)(ITFileTrack *This,ITScriptableAudioFormat **ppAudioFormat);
2399     END_INTERFACE
2400   } ITFileTrackVtbl;
2401   struct ITFileTrack {
2402     CONST_VTBL struct ITFileTrackVtbl *lpVtbl;
2403   };
2404 #ifdef COBJMACROS
2405 #define ITFileTrack_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2406 #define ITFileTrack_AddRef(This) (This)->lpVtbl->AddRef(This)
2407 #define ITFileTrack_Release(This) (This)->lpVtbl->Release(This)
2408 #define ITFileTrack_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2409 #define ITFileTrack_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2410 #define ITFileTrack_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2411 #define ITFileTrack_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2412 #define ITFileTrack_get_Format(This,ppmt) (This)->lpVtbl->get_Format(This,ppmt)
2413 #define ITFileTrack_put_Format(This,pmt) (This)->lpVtbl->put_Format(This,pmt)
2414 #define ITFileTrack_get_ControllingTerminal(This,ppControllingTerminal) (This)->lpVtbl->get_ControllingTerminal(This,ppControllingTerminal)
2415 #define ITFileTrack_get_AudioFormatForScripting(This,ppAudioFormat) (This)->lpVtbl->get_AudioFormatForScripting(This,ppAudioFormat)
2416 #define ITFileTrack_put_AudioFormatForScripting(This,pAudioFormat) (This)->lpVtbl->put_AudioFormatForScripting(This,pAudioFormat)
2417 #define ITFileTrack_get_EmptyAudioFormatForScripting(This,ppAudioFormat) (This)->lpVtbl->get_EmptyAudioFormatForScripting(This,ppAudioFormat)
2418 #endif
2419 #endif
2420   HRESULT WINAPI ITFileTrack_get_Format_Proxy(ITFileTrack *This,AM_MEDIA_TYPE **ppmt);
2421   void __RPC_STUB ITFileTrack_get_Format_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2422   HRESULT WINAPI ITFileTrack_put_Format_Proxy(ITFileTrack *This,const AM_MEDIA_TYPE *pmt);
2423   void __RPC_STUB ITFileTrack_put_Format_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2424   HRESULT WINAPI ITFileTrack_get_ControllingTerminal_Proxy(ITFileTrack *This,ITTerminal **ppControllingTerminal);
2425   void __RPC_STUB ITFileTrack_get_ControllingTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2426   HRESULT WINAPI ITFileTrack_get_AudioFormatForScripting_Proxy(ITFileTrack *This,ITScriptableAudioFormat **ppAudioFormat);
2427   void __RPC_STUB ITFileTrack_get_AudioFormatForScripting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2428   HRESULT WINAPI ITFileTrack_put_AudioFormatForScripting_Proxy(ITFileTrack *This,ITScriptableAudioFormat *pAudioFormat);
2429   void __RPC_STUB ITFileTrack_put_AudioFormatForScripting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2430   HRESULT WINAPI ITFileTrack_get_EmptyAudioFormatForScripting_Proxy(ITFileTrack *This,ITScriptableAudioFormat **ppAudioFormat);
2431   void __RPC_STUB ITFileTrack_get_EmptyAudioFormatForScripting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2432 #endif
2433 
2434 #ifndef __ITMediaPlayback_INTERFACE_DEFINED__
2435 #define __ITMediaPlayback_INTERFACE_DEFINED__
2436   EXTERN_C const IID IID_ITMediaPlayback;
2437 #if defined(__cplusplus) && !defined(CINTERFACE)
2438   struct ITMediaPlayback : public IDispatch {
2439   public:
2440     virtual HRESULT WINAPI put_PlayList(VARIANTARG PlayListVariant) = 0;
2441     virtual HRESULT WINAPI get_PlayList(VARIANTARG *pPlayListVariant) = 0;
2442   };
2443 #else
2444   typedef struct ITMediaPlaybackVtbl {
2445     BEGIN_INTERFACE
2446       HRESULT (WINAPI *QueryInterface)(ITMediaPlayback *This,REFIID riid,void **ppvObject);
2447       ULONG (WINAPI *AddRef)(ITMediaPlayback *This);
2448       ULONG (WINAPI *Release)(ITMediaPlayback *This);
2449       HRESULT (WINAPI *GetTypeInfoCount)(ITMediaPlayback *This,UINT *pctinfo);
2450       HRESULT (WINAPI *GetTypeInfo)(ITMediaPlayback *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2451       HRESULT (WINAPI *GetIDsOfNames)(ITMediaPlayback *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2452       HRESULT (WINAPI *Invoke)(ITMediaPlayback *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2453       HRESULT (WINAPI *put_PlayList)(ITMediaPlayback *This,VARIANTARG PlayListVariant);
2454       HRESULT (WINAPI *get_PlayList)(ITMediaPlayback *This,VARIANTARG *pPlayListVariant);
2455     END_INTERFACE
2456   } ITMediaPlaybackVtbl;
2457   struct ITMediaPlayback {
2458     CONST_VTBL struct ITMediaPlaybackVtbl *lpVtbl;
2459   };
2460 #ifdef COBJMACROS
2461 #define ITMediaPlayback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2462 #define ITMediaPlayback_AddRef(This) (This)->lpVtbl->AddRef(This)
2463 #define ITMediaPlayback_Release(This) (This)->lpVtbl->Release(This)
2464 #define ITMediaPlayback_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2465 #define ITMediaPlayback_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2466 #define ITMediaPlayback_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2467 #define ITMediaPlayback_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2468 #define ITMediaPlayback_put_PlayList(This,PlayListVariant) (This)->lpVtbl->put_PlayList(This,PlayListVariant)
2469 #define ITMediaPlayback_get_PlayList(This,pPlayListVariant) (This)->lpVtbl->get_PlayList(This,pPlayListVariant)
2470 #endif
2471 #endif
2472   HRESULT WINAPI ITMediaPlayback_put_PlayList_Proxy(ITMediaPlayback *This,VARIANTARG PlayListVariant);
2473   void __RPC_STUB ITMediaPlayback_put_PlayList_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2474   HRESULT WINAPI ITMediaPlayback_get_PlayList_Proxy(ITMediaPlayback *This,VARIANTARG *pPlayListVariant);
2475   void __RPC_STUB ITMediaPlayback_get_PlayList_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2476 #endif
2477 
2478 #ifndef __ITMediaRecord_INTERFACE_DEFINED__
2479 #define __ITMediaRecord_INTERFACE_DEFINED__
2480   EXTERN_C const IID IID_ITMediaRecord;
2481 #if defined(__cplusplus) && !defined(CINTERFACE)
2482   struct ITMediaRecord : public IDispatch {
2483   public:
2484     virtual HRESULT WINAPI put_FileName(BSTR bstrFileName) = 0;
2485     virtual HRESULT WINAPI get_FileName(BSTR *pbstrFileName) = 0;
2486   };
2487 #else
2488   typedef struct ITMediaRecordVtbl {
2489     BEGIN_INTERFACE
2490       HRESULT (WINAPI *QueryInterface)(ITMediaRecord *This,REFIID riid,void **ppvObject);
2491       ULONG (WINAPI *AddRef)(ITMediaRecord *This);
2492       ULONG (WINAPI *Release)(ITMediaRecord *This);
2493       HRESULT (WINAPI *GetTypeInfoCount)(ITMediaRecord *This,UINT *pctinfo);
2494       HRESULT (WINAPI *GetTypeInfo)(ITMediaRecord *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2495       HRESULT (WINAPI *GetIDsOfNames)(ITMediaRecord *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2496       HRESULT (WINAPI *Invoke)(ITMediaRecord *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2497       HRESULT (WINAPI *put_FileName)(ITMediaRecord *This,BSTR bstrFileName);
2498       HRESULT (WINAPI *get_FileName)(ITMediaRecord *This,BSTR *pbstrFileName);
2499     END_INTERFACE
2500   } ITMediaRecordVtbl;
2501   struct ITMediaRecord {
2502     CONST_VTBL struct ITMediaRecordVtbl *lpVtbl;
2503   };
2504 #ifdef COBJMACROS
2505 #define ITMediaRecord_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2506 #define ITMediaRecord_AddRef(This) (This)->lpVtbl->AddRef(This)
2507 #define ITMediaRecord_Release(This) (This)->lpVtbl->Release(This)
2508 #define ITMediaRecord_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2509 #define ITMediaRecord_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2510 #define ITMediaRecord_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2511 #define ITMediaRecord_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2512 #define ITMediaRecord_put_FileName(This,bstrFileName) (This)->lpVtbl->put_FileName(This,bstrFileName)
2513 #define ITMediaRecord_get_FileName(This,pbstrFileName) (This)->lpVtbl->get_FileName(This,pbstrFileName)
2514 #endif
2515 #endif
2516   HRESULT WINAPI ITMediaRecord_put_FileName_Proxy(ITMediaRecord *This,BSTR bstrFileName);
2517   void __RPC_STUB ITMediaRecord_put_FileName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2518   HRESULT WINAPI ITMediaRecord_get_FileName_Proxy(ITMediaRecord *This,BSTR *pbstrFileName);
2519   void __RPC_STUB ITMediaRecord_get_FileName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2520 #endif
2521 
2522 #ifndef __ITMediaControl_INTERFACE_DEFINED__
2523 #define __ITMediaControl_INTERFACE_DEFINED__
2524   EXTERN_C const IID IID_ITMediaControl;
2525 #if defined(__cplusplus) && !defined(CINTERFACE)
2526   struct ITMediaControl : public IDispatch {
2527   public:
2528     virtual HRESULT WINAPI Start(void) = 0;
2529     virtual HRESULT WINAPI Stop(void) = 0;
2530     virtual HRESULT WINAPI Pause(void) = 0;
2531     virtual HRESULT WINAPI get_MediaState(TERMINAL_MEDIA_STATE *pTerminalMediaState) = 0;
2532   };
2533 #else
2534   typedef struct ITMediaControlVtbl {
2535     BEGIN_INTERFACE
2536       HRESULT (WINAPI *QueryInterface)(ITMediaControl *This,REFIID riid,void **ppvObject);
2537       ULONG (WINAPI *AddRef)(ITMediaControl *This);
2538       ULONG (WINAPI *Release)(ITMediaControl *This);
2539       HRESULT (WINAPI *GetTypeInfoCount)(ITMediaControl *This,UINT *pctinfo);
2540       HRESULT (WINAPI *GetTypeInfo)(ITMediaControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2541       HRESULT (WINAPI *GetIDsOfNames)(ITMediaControl *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2542       HRESULT (WINAPI *Invoke)(ITMediaControl *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2543       HRESULT (WINAPI *Start)(ITMediaControl *This);
2544       HRESULT (WINAPI *Stop)(ITMediaControl *This);
2545       HRESULT (WINAPI *Pause)(ITMediaControl *This);
2546       HRESULT (WINAPI *get_MediaState)(ITMediaControl *This,TERMINAL_MEDIA_STATE *pTerminalMediaState);
2547     END_INTERFACE
2548   } ITMediaControlVtbl;
2549   struct ITMediaControl {
2550     CONST_VTBL struct ITMediaControlVtbl *lpVtbl;
2551   };
2552 #ifdef COBJMACROS
2553 #define ITMediaControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2554 #define ITMediaControl_AddRef(This) (This)->lpVtbl->AddRef(This)
2555 #define ITMediaControl_Release(This) (This)->lpVtbl->Release(This)
2556 #define ITMediaControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2557 #define ITMediaControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2558 #define ITMediaControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2559 #define ITMediaControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2560 #define ITMediaControl_Start(This) (This)->lpVtbl->Start(This)
2561 #define ITMediaControl_Stop(This) (This)->lpVtbl->Stop(This)
2562 #define ITMediaControl_Pause(This) (This)->lpVtbl->Pause(This)
2563 #define ITMediaControl_get_MediaState(This,pTerminalMediaState) (This)->lpVtbl->get_MediaState(This,pTerminalMediaState)
2564 #endif
2565 #endif
2566   HRESULT WINAPI ITMediaControl_Start_Proxy(ITMediaControl *This);
2567   void __RPC_STUB ITMediaControl_Start_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2568   HRESULT WINAPI ITMediaControl_Stop_Proxy(ITMediaControl *This);
2569   void __RPC_STUB ITMediaControl_Stop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2570   HRESULT WINAPI ITMediaControl_Pause_Proxy(ITMediaControl *This);
2571   void __RPC_STUB ITMediaControl_Pause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2572   HRESULT WINAPI ITMediaControl_get_MediaState_Proxy(ITMediaControl *This,TERMINAL_MEDIA_STATE *pTerminalMediaState);
2573   void __RPC_STUB ITMediaControl_get_MediaState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2574 #endif
2575 
2576 #ifndef __ITBasicAudioTerminal_INTERFACE_DEFINED__
2577 #define __ITBasicAudioTerminal_INTERFACE_DEFINED__
2578   EXTERN_C const IID IID_ITBasicAudioTerminal;
2579 #if defined(__cplusplus) && !defined(CINTERFACE)
2580   struct ITBasicAudioTerminal : public IDispatch {
2581   public:
2582     virtual HRESULT WINAPI put_Volume(__LONG32 lVolume) = 0;
2583     virtual HRESULT WINAPI get_Volume(__LONG32 *plVolume) = 0;
2584     virtual HRESULT WINAPI put_Balance(__LONG32 lBalance) = 0;
2585     virtual HRESULT WINAPI get_Balance(__LONG32 *plBalance) = 0;
2586   };
2587 #else
2588   typedef struct ITBasicAudioTerminalVtbl {
2589     BEGIN_INTERFACE
2590       HRESULT (WINAPI *QueryInterface)(ITBasicAudioTerminal *This,REFIID riid,void **ppvObject);
2591       ULONG (WINAPI *AddRef)(ITBasicAudioTerminal *This);
2592       ULONG (WINAPI *Release)(ITBasicAudioTerminal *This);
2593       HRESULT (WINAPI *GetTypeInfoCount)(ITBasicAudioTerminal *This,UINT *pctinfo);
2594       HRESULT (WINAPI *GetTypeInfo)(ITBasicAudioTerminal *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2595       HRESULT (WINAPI *GetIDsOfNames)(ITBasicAudioTerminal *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2596       HRESULT (WINAPI *Invoke)(ITBasicAudioTerminal *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2597       HRESULT (WINAPI *put_Volume)(ITBasicAudioTerminal *This,__LONG32 lVolume);
2598       HRESULT (WINAPI *get_Volume)(ITBasicAudioTerminal *This,__LONG32 *plVolume);
2599       HRESULT (WINAPI *put_Balance)(ITBasicAudioTerminal *This,__LONG32 lBalance);
2600       HRESULT (WINAPI *get_Balance)(ITBasicAudioTerminal *This,__LONG32 *plBalance);
2601     END_INTERFACE
2602   } ITBasicAudioTerminalVtbl;
2603   struct ITBasicAudioTerminal {
2604     CONST_VTBL struct ITBasicAudioTerminalVtbl *lpVtbl;
2605   };
2606 #ifdef COBJMACROS
2607 #define ITBasicAudioTerminal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2608 #define ITBasicAudioTerminal_AddRef(This) (This)->lpVtbl->AddRef(This)
2609 #define ITBasicAudioTerminal_Release(This) (This)->lpVtbl->Release(This)
2610 #define ITBasicAudioTerminal_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2611 #define ITBasicAudioTerminal_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2612 #define ITBasicAudioTerminal_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2613 #define ITBasicAudioTerminal_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2614 #define ITBasicAudioTerminal_put_Volume(This,lVolume) (This)->lpVtbl->put_Volume(This,lVolume)
2615 #define ITBasicAudioTerminal_get_Volume(This,plVolume) (This)->lpVtbl->get_Volume(This,plVolume)
2616 #define ITBasicAudioTerminal_put_Balance(This,lBalance) (This)->lpVtbl->put_Balance(This,lBalance)
2617 #define ITBasicAudioTerminal_get_Balance(This,plBalance) (This)->lpVtbl->get_Balance(This,plBalance)
2618 #endif
2619 #endif
2620   HRESULT WINAPI ITBasicAudioTerminal_put_Volume_Proxy(ITBasicAudioTerminal *This,__LONG32 lVolume);
2621   void __RPC_STUB ITBasicAudioTerminal_put_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2622   HRESULT WINAPI ITBasicAudioTerminal_get_Volume_Proxy(ITBasicAudioTerminal *This,__LONG32 *plVolume);
2623   void __RPC_STUB ITBasicAudioTerminal_get_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2624   HRESULT WINAPI ITBasicAudioTerminal_put_Balance_Proxy(ITBasicAudioTerminal *This,__LONG32 lBalance);
2625   void __RPC_STUB ITBasicAudioTerminal_put_Balance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2626   HRESULT WINAPI ITBasicAudioTerminal_get_Balance_Proxy(ITBasicAudioTerminal *This,__LONG32 *plBalance);
2627   void __RPC_STUB ITBasicAudioTerminal_get_Balance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2628 #endif
2629 
2630 #ifndef __ITStaticAudioTerminal_INTERFACE_DEFINED__
2631 #define __ITStaticAudioTerminal_INTERFACE_DEFINED__
2632   EXTERN_C const IID IID_ITStaticAudioTerminal;
2633 #if defined(__cplusplus) && !defined(CINTERFACE)
2634   struct ITStaticAudioTerminal : public IDispatch {
2635   public:
2636     virtual HRESULT WINAPI get_WaveId(__LONG32 *plWaveId) = 0;
2637   };
2638 #else
2639   typedef struct ITStaticAudioTerminalVtbl {
2640     BEGIN_INTERFACE
2641       HRESULT (WINAPI *QueryInterface)(ITStaticAudioTerminal *This,REFIID riid,void **ppvObject);
2642       ULONG (WINAPI *AddRef)(ITStaticAudioTerminal *This);
2643       ULONG (WINAPI *Release)(ITStaticAudioTerminal *This);
2644       HRESULT (WINAPI *GetTypeInfoCount)(ITStaticAudioTerminal *This,UINT *pctinfo);
2645       HRESULT (WINAPI *GetTypeInfo)(ITStaticAudioTerminal *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2646       HRESULT (WINAPI *GetIDsOfNames)(ITStaticAudioTerminal *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2647       HRESULT (WINAPI *Invoke)(ITStaticAudioTerminal *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2648       HRESULT (WINAPI *get_WaveId)(ITStaticAudioTerminal *This,__LONG32 *plWaveId);
2649     END_INTERFACE
2650   } ITStaticAudioTerminalVtbl;
2651   struct ITStaticAudioTerminal {
2652     CONST_VTBL struct ITStaticAudioTerminalVtbl *lpVtbl;
2653   };
2654 #ifdef COBJMACROS
2655 #define ITStaticAudioTerminal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2656 #define ITStaticAudioTerminal_AddRef(This) (This)->lpVtbl->AddRef(This)
2657 #define ITStaticAudioTerminal_Release(This) (This)->lpVtbl->Release(This)
2658 #define ITStaticAudioTerminal_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2659 #define ITStaticAudioTerminal_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2660 #define ITStaticAudioTerminal_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2661 #define ITStaticAudioTerminal_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2662 #define ITStaticAudioTerminal_get_WaveId(This,plWaveId) (This)->lpVtbl->get_WaveId(This,plWaveId)
2663 #endif
2664 #endif
2665   HRESULT WINAPI ITStaticAudioTerminal_get_WaveId_Proxy(ITStaticAudioTerminal *This,__LONG32 *plWaveId);
2666   void __RPC_STUB ITStaticAudioTerminal_get_WaveId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2667 #endif
2668 
2669 #ifndef __ITCallHub_INTERFACE_DEFINED__
2670 #define __ITCallHub_INTERFACE_DEFINED__
2671   EXTERN_C const IID IID_ITCallHub;
2672 #if defined(__cplusplus) && !defined(CINTERFACE)
2673   struct ITCallHub : public IDispatch {
2674   public:
2675     virtual HRESULT WINAPI Clear(void) = 0;
2676     virtual HRESULT WINAPI EnumerateCalls(IEnumCall **ppEnumCall) = 0;
2677     virtual HRESULT WINAPI get_Calls(VARIANT *pCalls) = 0;
2678     virtual HRESULT WINAPI get_NumCalls(__LONG32 *plCalls) = 0;
2679     virtual HRESULT WINAPI get_State(CALLHUB_STATE *pState) = 0;
2680   };
2681 #else
2682   typedef struct ITCallHubVtbl {
2683     BEGIN_INTERFACE
2684       HRESULT (WINAPI *QueryInterface)(ITCallHub *This,REFIID riid,void **ppvObject);
2685       ULONG (WINAPI *AddRef)(ITCallHub *This);
2686       ULONG (WINAPI *Release)(ITCallHub *This);
2687       HRESULT (WINAPI *GetTypeInfoCount)(ITCallHub *This,UINT *pctinfo);
2688       HRESULT (WINAPI *GetTypeInfo)(ITCallHub *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2689       HRESULT (WINAPI *GetIDsOfNames)(ITCallHub *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2690       HRESULT (WINAPI *Invoke)(ITCallHub *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2691       HRESULT (WINAPI *Clear)(ITCallHub *This);
2692       HRESULT (WINAPI *EnumerateCalls)(ITCallHub *This,IEnumCall **ppEnumCall);
2693       HRESULT (WINAPI *get_Calls)(ITCallHub *This,VARIANT *pCalls);
2694       HRESULT (WINAPI *get_NumCalls)(ITCallHub *This,__LONG32 *plCalls);
2695       HRESULT (WINAPI *get_State)(ITCallHub *This,CALLHUB_STATE *pState);
2696     END_INTERFACE
2697   } ITCallHubVtbl;
2698   struct ITCallHub {
2699     CONST_VTBL struct ITCallHubVtbl *lpVtbl;
2700   };
2701 #ifdef COBJMACROS
2702 #define ITCallHub_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2703 #define ITCallHub_AddRef(This) (This)->lpVtbl->AddRef(This)
2704 #define ITCallHub_Release(This) (This)->lpVtbl->Release(This)
2705 #define ITCallHub_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2706 #define ITCallHub_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2707 #define ITCallHub_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2708 #define ITCallHub_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2709 #define ITCallHub_Clear(This) (This)->lpVtbl->Clear(This)
2710 #define ITCallHub_EnumerateCalls(This,ppEnumCall) (This)->lpVtbl->EnumerateCalls(This,ppEnumCall)
2711 #define ITCallHub_get_Calls(This,pCalls) (This)->lpVtbl->get_Calls(This,pCalls)
2712 #define ITCallHub_get_NumCalls(This,plCalls) (This)->lpVtbl->get_NumCalls(This,plCalls)
2713 #define ITCallHub_get_State(This,pState) (This)->lpVtbl->get_State(This,pState)
2714 #endif
2715 #endif
2716   HRESULT WINAPI ITCallHub_Clear_Proxy(ITCallHub *This);
2717   void __RPC_STUB ITCallHub_Clear_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2718   HRESULT WINAPI ITCallHub_EnumerateCalls_Proxy(ITCallHub *This,IEnumCall **ppEnumCall);
2719   void __RPC_STUB ITCallHub_EnumerateCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2720   HRESULT WINAPI ITCallHub_get_Calls_Proxy(ITCallHub *This,VARIANT *pCalls);
2721   void __RPC_STUB ITCallHub_get_Calls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2722   HRESULT WINAPI ITCallHub_get_NumCalls_Proxy(ITCallHub *This,__LONG32 *plCalls);
2723   void __RPC_STUB ITCallHub_get_NumCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2724   HRESULT WINAPI ITCallHub_get_State_Proxy(ITCallHub *This,CALLHUB_STATE *pState);
2725   void __RPC_STUB ITCallHub_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2726 #endif
2727 
2728 #ifndef __ITLegacyAddressMediaControl_INTERFACE_DEFINED__
2729 #define __ITLegacyAddressMediaControl_INTERFACE_DEFINED__
2730   EXTERN_C const IID IID_ITLegacyAddressMediaControl;
2731 #if defined(__cplusplus) && !defined(CINTERFACE)
2732   struct ITLegacyAddressMediaControl : public IUnknown {
2733   public:
2734     virtual HRESULT WINAPI GetID(BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID) = 0;
2735     virtual HRESULT WINAPI GetDevConfig(BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceConfig) = 0;
2736     virtual HRESULT WINAPI SetDevConfig(BSTR pDeviceClass,DWORD dwSize,BYTE *pDeviceConfig) = 0;
2737   };
2738 #else
2739   typedef struct ITLegacyAddressMediaControlVtbl {
2740     BEGIN_INTERFACE
2741       HRESULT (WINAPI *QueryInterface)(ITLegacyAddressMediaControl *This,REFIID riid,void **ppvObject);
2742       ULONG (WINAPI *AddRef)(ITLegacyAddressMediaControl *This);
2743       ULONG (WINAPI *Release)(ITLegacyAddressMediaControl *This);
2744       HRESULT (WINAPI *GetID)(ITLegacyAddressMediaControl *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID);
2745       HRESULT (WINAPI *GetDevConfig)(ITLegacyAddressMediaControl *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceConfig);
2746       HRESULT (WINAPI *SetDevConfig)(ITLegacyAddressMediaControl *This,BSTR pDeviceClass,DWORD dwSize,BYTE *pDeviceConfig);
2747     END_INTERFACE
2748   } ITLegacyAddressMediaControlVtbl;
2749   struct ITLegacyAddressMediaControl {
2750     CONST_VTBL struct ITLegacyAddressMediaControlVtbl *lpVtbl;
2751   };
2752 #ifdef COBJMACROS
2753 #define ITLegacyAddressMediaControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2754 #define ITLegacyAddressMediaControl_AddRef(This) (This)->lpVtbl->AddRef(This)
2755 #define ITLegacyAddressMediaControl_Release(This) (This)->lpVtbl->Release(This)
2756 #define ITLegacyAddressMediaControl_GetID(This,pDeviceClass,pdwSize,ppDeviceID) (This)->lpVtbl->GetID(This,pDeviceClass,pdwSize,ppDeviceID)
2757 #define ITLegacyAddressMediaControl_GetDevConfig(This,pDeviceClass,pdwSize,ppDeviceConfig) (This)->lpVtbl->GetDevConfig(This,pDeviceClass,pdwSize,ppDeviceConfig)
2758 #define ITLegacyAddressMediaControl_SetDevConfig(This,pDeviceClass,dwSize,pDeviceConfig) (This)->lpVtbl->SetDevConfig(This,pDeviceClass,dwSize,pDeviceConfig)
2759 #endif
2760 #endif
2761   HRESULT WINAPI ITLegacyAddressMediaControl_GetID_Proxy(ITLegacyAddressMediaControl *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID);
2762   void __RPC_STUB ITLegacyAddressMediaControl_GetID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2763   HRESULT WINAPI ITLegacyAddressMediaControl_GetDevConfig_Proxy(ITLegacyAddressMediaControl *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceConfig);
2764   void __RPC_STUB ITLegacyAddressMediaControl_GetDevConfig_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2765   HRESULT WINAPI ITLegacyAddressMediaControl_SetDevConfig_Proxy(ITLegacyAddressMediaControl *This,BSTR pDeviceClass,DWORD dwSize,BYTE *pDeviceConfig);
2766   void __RPC_STUB ITLegacyAddressMediaControl_SetDevConfig_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2767 #endif
2768 
2769 #ifndef __ITPrivateEvent_INTERFACE_DEFINED__
2770 #define __ITPrivateEvent_INTERFACE_DEFINED__
2771   EXTERN_C const IID IID_ITPrivateEvent;
2772 #if defined(__cplusplus) && !defined(CINTERFACE)
2773   struct ITPrivateEvent : public IDispatch {
2774   public:
2775     virtual HRESULT WINAPI get_Address(ITAddress **ppAddress) = 0;
2776     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
2777     virtual HRESULT WINAPI get_CallHub(ITCallHub **ppCallHub) = 0;
2778     virtual HRESULT WINAPI get_EventCode(__LONG32 *plEventCode) = 0;
2779     virtual HRESULT WINAPI get_EventInterface(IDispatch **pEventInterface) = 0;
2780   };
2781 #else
2782   typedef struct ITPrivateEventVtbl {
2783     BEGIN_INTERFACE
2784       HRESULT (WINAPI *QueryInterface)(ITPrivateEvent *This,REFIID riid,void **ppvObject);
2785       ULONG (WINAPI *AddRef)(ITPrivateEvent *This);
2786       ULONG (WINAPI *Release)(ITPrivateEvent *This);
2787       HRESULT (WINAPI *GetTypeInfoCount)(ITPrivateEvent *This,UINT *pctinfo);
2788       HRESULT (WINAPI *GetTypeInfo)(ITPrivateEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2789       HRESULT (WINAPI *GetIDsOfNames)(ITPrivateEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2790       HRESULT (WINAPI *Invoke)(ITPrivateEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2791       HRESULT (WINAPI *get_Address)(ITPrivateEvent *This,ITAddress **ppAddress);
2792       HRESULT (WINAPI *get_Call)(ITPrivateEvent *This,ITCallInfo **ppCallInfo);
2793       HRESULT (WINAPI *get_CallHub)(ITPrivateEvent *This,ITCallHub **ppCallHub);
2794       HRESULT (WINAPI *get_EventCode)(ITPrivateEvent *This,__LONG32 *plEventCode);
2795       HRESULT (WINAPI *get_EventInterface)(ITPrivateEvent *This,IDispatch **pEventInterface);
2796     END_INTERFACE
2797   } ITPrivateEventVtbl;
2798   struct ITPrivateEvent {
2799     CONST_VTBL struct ITPrivateEventVtbl *lpVtbl;
2800   };
2801 #ifdef COBJMACROS
2802 #define ITPrivateEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2803 #define ITPrivateEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
2804 #define ITPrivateEvent_Release(This) (This)->lpVtbl->Release(This)
2805 #define ITPrivateEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2806 #define ITPrivateEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2807 #define ITPrivateEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2808 #define ITPrivateEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2809 #define ITPrivateEvent_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
2810 #define ITPrivateEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
2811 #define ITPrivateEvent_get_CallHub(This,ppCallHub) (This)->lpVtbl->get_CallHub(This,ppCallHub)
2812 #define ITPrivateEvent_get_EventCode(This,plEventCode) (This)->lpVtbl->get_EventCode(This,plEventCode)
2813 #define ITPrivateEvent_get_EventInterface(This,pEventInterface) (This)->lpVtbl->get_EventInterface(This,pEventInterface)
2814 #endif
2815 #endif
2816   HRESULT WINAPI ITPrivateEvent_get_Address_Proxy(ITPrivateEvent *This,ITAddress **ppAddress);
2817   void __RPC_STUB ITPrivateEvent_get_Address_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2818   HRESULT WINAPI ITPrivateEvent_get_Call_Proxy(ITPrivateEvent *This,ITCallInfo **ppCallInfo);
2819   void __RPC_STUB ITPrivateEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2820   HRESULT WINAPI ITPrivateEvent_get_CallHub_Proxy(ITPrivateEvent *This,ITCallHub **ppCallHub);
2821   void __RPC_STUB ITPrivateEvent_get_CallHub_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2822   HRESULT WINAPI ITPrivateEvent_get_EventCode_Proxy(ITPrivateEvent *This,__LONG32 *plEventCode);
2823   void __RPC_STUB ITPrivateEvent_get_EventCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2824   HRESULT WINAPI ITPrivateEvent_get_EventInterface_Proxy(ITPrivateEvent *This,IDispatch **pEventInterface);
2825   void __RPC_STUB ITPrivateEvent_get_EventInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2826 #endif
2827 
2828 #ifndef __ITLegacyAddressMediaControl2_INTERFACE_DEFINED__
2829 #define __ITLegacyAddressMediaControl2_INTERFACE_DEFINED__
2830   EXTERN_C const IID IID_ITLegacyAddressMediaControl2;
2831 #if defined(__cplusplus) && !defined(CINTERFACE)
2832   struct ITLegacyAddressMediaControl2 : public ITLegacyAddressMediaControl {
2833   public:
2834     virtual HRESULT WINAPI ConfigDialog(HWND hwndOwner,BSTR pDeviceClass) = 0;
2835     virtual HRESULT WINAPI ConfigDialogEdit(HWND hwndOwner,BSTR pDeviceClass,DWORD dwSizeIn,BYTE *pDeviceConfigIn,DWORD *pdwSizeOut,BYTE **ppDeviceConfigOut) = 0;
2836   };
2837 #else
2838   typedef struct ITLegacyAddressMediaControl2Vtbl {
2839     BEGIN_INTERFACE
2840       HRESULT (WINAPI *QueryInterface)(ITLegacyAddressMediaControl2 *This,REFIID riid,void **ppvObject);
2841       ULONG (WINAPI *AddRef)(ITLegacyAddressMediaControl2 *This);
2842       ULONG (WINAPI *Release)(ITLegacyAddressMediaControl2 *This);
2843       HRESULT (WINAPI *GetID)(ITLegacyAddressMediaControl2 *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID);
2844       HRESULT (WINAPI *GetDevConfig)(ITLegacyAddressMediaControl2 *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceConfig);
2845       HRESULT (WINAPI *SetDevConfig)(ITLegacyAddressMediaControl2 *This,BSTR pDeviceClass,DWORD dwSize,BYTE *pDeviceConfig);
2846       HRESULT (WINAPI *ConfigDialog)(ITLegacyAddressMediaControl2 *This,HWND hwndOwner,BSTR pDeviceClass);
2847       HRESULT (WINAPI *ConfigDialogEdit)(ITLegacyAddressMediaControl2 *This,HWND hwndOwner,BSTR pDeviceClass,DWORD dwSizeIn,BYTE *pDeviceConfigIn,DWORD *pdwSizeOut,BYTE **ppDeviceConfigOut);
2848     END_INTERFACE
2849   } ITLegacyAddressMediaControl2Vtbl;
2850   struct ITLegacyAddressMediaControl2 {
2851     CONST_VTBL struct ITLegacyAddressMediaControl2Vtbl *lpVtbl;
2852   };
2853 #ifdef COBJMACROS
2854 #define ITLegacyAddressMediaControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2855 #define ITLegacyAddressMediaControl2_AddRef(This) (This)->lpVtbl->AddRef(This)
2856 #define ITLegacyAddressMediaControl2_Release(This) (This)->lpVtbl->Release(This)
2857 #define ITLegacyAddressMediaControl2_GetID(This,pDeviceClass,pdwSize,ppDeviceID) (This)->lpVtbl->GetID(This,pDeviceClass,pdwSize,ppDeviceID)
2858 #define ITLegacyAddressMediaControl2_GetDevConfig(This,pDeviceClass,pdwSize,ppDeviceConfig) (This)->lpVtbl->GetDevConfig(This,pDeviceClass,pdwSize,ppDeviceConfig)
2859 #define ITLegacyAddressMediaControl2_SetDevConfig(This,pDeviceClass,dwSize,pDeviceConfig) (This)->lpVtbl->SetDevConfig(This,pDeviceClass,dwSize,pDeviceConfig)
2860 #define ITLegacyAddressMediaControl2_ConfigDialog(This,hwndOwner,pDeviceClass) (This)->lpVtbl->ConfigDialog(This,hwndOwner,pDeviceClass)
2861 #define ITLegacyAddressMediaControl2_ConfigDialogEdit(This,hwndOwner,pDeviceClass,dwSizeIn,pDeviceConfigIn,pdwSizeOut,ppDeviceConfigOut) (This)->lpVtbl->ConfigDialogEdit(This,hwndOwner,pDeviceClass,dwSizeIn,pDeviceConfigIn,pdwSizeOut,ppDeviceConfigOut)
2862 #endif
2863 #endif
2864   HRESULT WINAPI ITLegacyAddressMediaControl2_ConfigDialog_Proxy(ITLegacyAddressMediaControl2 *This,HWND hwndOwner,BSTR pDeviceClass);
2865   void __RPC_STUB ITLegacyAddressMediaControl2_ConfigDialog_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2866   HRESULT WINAPI ITLegacyAddressMediaControl2_ConfigDialogEdit_Proxy(ITLegacyAddressMediaControl2 *This,HWND hwndOwner,BSTR pDeviceClass,DWORD dwSizeIn,BYTE *pDeviceConfigIn,DWORD *pdwSizeOut,BYTE **ppDeviceConfigOut);
2867   void __RPC_STUB ITLegacyAddressMediaControl2_ConfigDialogEdit_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2868 #endif
2869 
2870 #ifndef __ITLegacyCallMediaControl_INTERFACE_DEFINED__
2871 #define __ITLegacyCallMediaControl_INTERFACE_DEFINED__
2872   EXTERN_C const IID IID_ITLegacyCallMediaControl;
2873 #if defined(__cplusplus) && !defined(CINTERFACE)
2874   struct ITLegacyCallMediaControl : public IDispatch {
2875   public:
2876     virtual HRESULT WINAPI DetectDigits(TAPI_DIGITMODE DigitMode) = 0;
2877     virtual HRESULT WINAPI GenerateDigits(BSTR pDigits,TAPI_DIGITMODE DigitMode) = 0;
2878     virtual HRESULT WINAPI GetID(BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID) = 0;
2879     virtual HRESULT WINAPI SetMediaType(__LONG32 lMediaType) = 0;
2880     virtual HRESULT WINAPI MonitorMedia(__LONG32 lMediaType) = 0;
2881   };
2882 #else
2883   typedef struct ITLegacyCallMediaControlVtbl {
2884     BEGIN_INTERFACE
2885       HRESULT (WINAPI *QueryInterface)(ITLegacyCallMediaControl *This,REFIID riid,void **ppvObject);
2886       ULONG (WINAPI *AddRef)(ITLegacyCallMediaControl *This);
2887       ULONG (WINAPI *Release)(ITLegacyCallMediaControl *This);
2888       HRESULT (WINAPI *GetTypeInfoCount)(ITLegacyCallMediaControl *This,UINT *pctinfo);
2889       HRESULT (WINAPI *GetTypeInfo)(ITLegacyCallMediaControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2890       HRESULT (WINAPI *GetIDsOfNames)(ITLegacyCallMediaControl *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2891       HRESULT (WINAPI *Invoke)(ITLegacyCallMediaControl *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2892       HRESULT (WINAPI *DetectDigits)(ITLegacyCallMediaControl *This,TAPI_DIGITMODE DigitMode);
2893       HRESULT (WINAPI *GenerateDigits)(ITLegacyCallMediaControl *This,BSTR pDigits,TAPI_DIGITMODE DigitMode);
2894       HRESULT (WINAPI *GetID)(ITLegacyCallMediaControl *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID);
2895       HRESULT (WINAPI *SetMediaType)(ITLegacyCallMediaControl *This,__LONG32 lMediaType);
2896       HRESULT (WINAPI *MonitorMedia)(ITLegacyCallMediaControl *This,__LONG32 lMediaType);
2897     END_INTERFACE
2898   } ITLegacyCallMediaControlVtbl;
2899   struct ITLegacyCallMediaControl {
2900     CONST_VTBL struct ITLegacyCallMediaControlVtbl *lpVtbl;
2901   };
2902 #ifdef COBJMACROS
2903 #define ITLegacyCallMediaControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2904 #define ITLegacyCallMediaControl_AddRef(This) (This)->lpVtbl->AddRef(This)
2905 #define ITLegacyCallMediaControl_Release(This) (This)->lpVtbl->Release(This)
2906 #define ITLegacyCallMediaControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2907 #define ITLegacyCallMediaControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2908 #define ITLegacyCallMediaControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2909 #define ITLegacyCallMediaControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2910 #define ITLegacyCallMediaControl_DetectDigits(This,DigitMode) (This)->lpVtbl->DetectDigits(This,DigitMode)
2911 #define ITLegacyCallMediaControl_GenerateDigits(This,pDigits,DigitMode) (This)->lpVtbl->GenerateDigits(This,pDigits,DigitMode)
2912 #define ITLegacyCallMediaControl_GetID(This,pDeviceClass,pdwSize,ppDeviceID) (This)->lpVtbl->GetID(This,pDeviceClass,pdwSize,ppDeviceID)
2913 #define ITLegacyCallMediaControl_SetMediaType(This,lMediaType) (This)->lpVtbl->SetMediaType(This,lMediaType)
2914 #define ITLegacyCallMediaControl_MonitorMedia(This,lMediaType) (This)->lpVtbl->MonitorMedia(This,lMediaType)
2915 #endif
2916 #endif
2917   HRESULT WINAPI ITLegacyCallMediaControl_DetectDigits_Proxy(ITLegacyCallMediaControl *This,TAPI_DIGITMODE DigitMode);
2918   void __RPC_STUB ITLegacyCallMediaControl_DetectDigits_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2919   HRESULT WINAPI ITLegacyCallMediaControl_GenerateDigits_Proxy(ITLegacyCallMediaControl *This,BSTR pDigits,TAPI_DIGITMODE DigitMode);
2920   void __RPC_STUB ITLegacyCallMediaControl_GenerateDigits_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2921   HRESULT WINAPI ITLegacyCallMediaControl_GetID_Proxy(ITLegacyCallMediaControl *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID);
2922   void __RPC_STUB ITLegacyCallMediaControl_GetID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2923   HRESULT WINAPI ITLegacyCallMediaControl_SetMediaType_Proxy(ITLegacyCallMediaControl *This,__LONG32 lMediaType);
2924   void __RPC_STUB ITLegacyCallMediaControl_SetMediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2925   HRESULT WINAPI ITLegacyCallMediaControl_MonitorMedia_Proxy(ITLegacyCallMediaControl *This,__LONG32 lMediaType);
2926   void __RPC_STUB ITLegacyCallMediaControl_MonitorMedia_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
2927 #endif
2928 
2929 #ifndef __ITLegacyCallMediaControl2_INTERFACE_DEFINED__
2930 #define __ITLegacyCallMediaControl2_INTERFACE_DEFINED__
2931   EXTERN_C const IID IID_ITLegacyCallMediaControl2;
2932 #if defined(__cplusplus) && !defined(CINTERFACE)
2933   struct ITLegacyCallMediaControl2 : public ITLegacyCallMediaControl {
2934   public:
2935     virtual HRESULT WINAPI GenerateDigits2(BSTR pDigits,TAPI_DIGITMODE DigitMode,__LONG32 lDuration) = 0;
2936     virtual HRESULT WINAPI GatherDigits(TAPI_DIGITMODE DigitMode,__LONG32 lNumDigits,BSTR pTerminationDigits,__LONG32 lFirstDigitTimeout,__LONG32 lInterDigitTimeout) = 0;
2937     virtual HRESULT WINAPI DetectTones(TAPI_DETECTTONE *pToneList,__LONG32 lNumTones) = 0;
2938     virtual HRESULT WINAPI DetectTonesByCollection(ITCollection2 *pDetectToneCollection) = 0;
2939     virtual HRESULT WINAPI GenerateTone(TAPI_TONEMODE ToneMode,__LONG32 lDuration) = 0;
2940     virtual HRESULT WINAPI GenerateCustomTones(TAPI_CUSTOMTONE *pToneList,__LONG32 lNumTones,__LONG32 lDuration) = 0;
2941     virtual HRESULT WINAPI GenerateCustomTonesByCollection(ITCollection2 *pCustomToneCollection,__LONG32 lDuration) = 0;
2942     virtual HRESULT WINAPI CreateDetectToneObject(ITDetectTone **ppDetectTone) = 0;
2943     virtual HRESULT WINAPI CreateCustomToneObject(ITCustomTone **ppCustomTone) = 0;
2944     virtual HRESULT WINAPI GetIDAsVariant(BSTR bstrDeviceClass,VARIANT *pVarDeviceID) = 0;
2945   };
2946 #else
2947   typedef struct ITLegacyCallMediaControl2Vtbl {
2948     BEGIN_INTERFACE
2949       HRESULT (WINAPI *QueryInterface)(ITLegacyCallMediaControl2 *This,REFIID riid,void **ppvObject);
2950       ULONG (WINAPI *AddRef)(ITLegacyCallMediaControl2 *This);
2951       ULONG (WINAPI *Release)(ITLegacyCallMediaControl2 *This);
2952       HRESULT (WINAPI *GetTypeInfoCount)(ITLegacyCallMediaControl2 *This,UINT *pctinfo);
2953       HRESULT (WINAPI *GetTypeInfo)(ITLegacyCallMediaControl2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
2954       HRESULT (WINAPI *GetIDsOfNames)(ITLegacyCallMediaControl2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
2955       HRESULT (WINAPI *Invoke)(ITLegacyCallMediaControl2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
2956       HRESULT (WINAPI *DetectDigits)(ITLegacyCallMediaControl2 *This,TAPI_DIGITMODE DigitMode);
2957       HRESULT (WINAPI *GenerateDigits)(ITLegacyCallMediaControl2 *This,BSTR pDigits,TAPI_DIGITMODE DigitMode);
2958       HRESULT (WINAPI *GetID)(ITLegacyCallMediaControl2 *This,BSTR pDeviceClass,DWORD *pdwSize,BYTE **ppDeviceID);
2959       HRESULT (WINAPI *SetMediaType)(ITLegacyCallMediaControl2 *This,__LONG32 lMediaType);
2960       HRESULT (WINAPI *MonitorMedia)(ITLegacyCallMediaControl2 *This,__LONG32 lMediaType);
2961       HRESULT (WINAPI *GenerateDigits2)(ITLegacyCallMediaControl2 *This,BSTR pDigits,TAPI_DIGITMODE DigitMode,__LONG32 lDuration);
2962       HRESULT (WINAPI *GatherDigits)(ITLegacyCallMediaControl2 *This,TAPI_DIGITMODE DigitMode,__LONG32 lNumDigits,BSTR pTerminationDigits,__LONG32 lFirstDigitTimeout,__LONG32 lInterDigitTimeout);
2963       HRESULT (WINAPI *DetectTones)(ITLegacyCallMediaControl2 *This,TAPI_DETECTTONE *pToneList,__LONG32 lNumTones);
2964       HRESULT (WINAPI *DetectTonesByCollection)(ITLegacyCallMediaControl2 *This,ITCollection2 *pDetectToneCollection);
2965       HRESULT (WINAPI *GenerateTone)(ITLegacyCallMediaControl2 *This,TAPI_TONEMODE ToneMode,__LONG32 lDuration);
2966       HRESULT (WINAPI *GenerateCustomTones)(ITLegacyCallMediaControl2 *This,TAPI_CUSTOMTONE *pToneList,__LONG32 lNumTones,__LONG32 lDuration);
2967       HRESULT (WINAPI *GenerateCustomTonesByCollection)(ITLegacyCallMediaControl2 *This,ITCollection2 *pCustomToneCollection,__LONG32 lDuration);
2968       HRESULT (WINAPI *CreateDetectToneObject)(ITLegacyCallMediaControl2 *This,ITDetectTone **ppDetectTone);
2969       HRESULT (WINAPI *CreateCustomToneObject)(ITLegacyCallMediaControl2 *This,ITCustomTone **ppCustomTone);
2970       HRESULT (WINAPI *GetIDAsVariant)(ITLegacyCallMediaControl2 *This,BSTR bstrDeviceClass,VARIANT *pVarDeviceID);
2971     END_INTERFACE
2972   } ITLegacyCallMediaControl2Vtbl;
2973   struct ITLegacyCallMediaControl2 {
2974     CONST_VTBL struct ITLegacyCallMediaControl2Vtbl *lpVtbl;
2975   };
2976 #ifdef COBJMACROS
2977 #define ITLegacyCallMediaControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2978 #define ITLegacyCallMediaControl2_AddRef(This) (This)->lpVtbl->AddRef(This)
2979 #define ITLegacyCallMediaControl2_Release(This) (This)->lpVtbl->Release(This)
2980 #define ITLegacyCallMediaControl2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2981 #define ITLegacyCallMediaControl2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2982 #define ITLegacyCallMediaControl2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2983 #define ITLegacyCallMediaControl2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2984 #define ITLegacyCallMediaControl2_DetectDigits(This,DigitMode) (This)->lpVtbl->DetectDigits(This,DigitMode)
2985 #define ITLegacyCallMediaControl2_GenerateDigits(This,pDigits,DigitMode) (This)->lpVtbl->GenerateDigits(This,pDigits,DigitMode)
2986 #define ITLegacyCallMediaControl2_GetID(This,pDeviceClass,pdwSize,ppDeviceID) (This)->lpVtbl->GetID(This,pDeviceClass,pdwSize,ppDeviceID)
2987 #define ITLegacyCallMediaControl2_SetMediaType(This,lMediaType) (This)->lpVtbl->SetMediaType(This,lMediaType)
2988 #define ITLegacyCallMediaControl2_MonitorMedia(This,lMediaType) (This)->lpVtbl->MonitorMedia(This,lMediaType)
2989 #define ITLegacyCallMediaControl2_GenerateDigits2(This,pDigits,DigitMode,lDuration) (This)->lpVtbl->GenerateDigits2(This,pDigits,DigitMode,lDuration)
2990 #define ITLegacyCallMediaControl2_GatherDigits(This,DigitMode,lNumDigits,pTerminationDigits,lFirstDigitTimeout,lInterDigitTimeout) (This)->lpVtbl->GatherDigits(This,DigitMode,lNumDigits,pTerminationDigits,lFirstDigitTimeout,lInterDigitTimeout)
2991 #define ITLegacyCallMediaControl2_DetectTones(This,pToneList,lNumTones) (This)->lpVtbl->DetectTones(This,pToneList,lNumTones)
2992 #define ITLegacyCallMediaControl2_DetectTonesByCollection(This,pDetectToneCollection) (This)->lpVtbl->DetectTonesByCollection(This,pDetectToneCollection)
2993 #define ITLegacyCallMediaControl2_GenerateTone(This,ToneMode,lDuration) (This)->lpVtbl->GenerateTone(This,ToneMode,lDuration)
2994 #define ITLegacyCallMediaControl2_GenerateCustomTones(This,pToneList,lNumTones,lDuration) (This)->lpVtbl->GenerateCustomTones(This,pToneList,lNumTones,lDuration)
2995 #define ITLegacyCallMediaControl2_GenerateCustomTonesByCollection(This,pCustomToneCollection,lDuration) (This)->lpVtbl->GenerateCustomTonesByCollection(This,pCustomToneCollection,lDuration)
2996 #define ITLegacyCallMediaControl2_CreateDetectToneObject(This,ppDetectTone) (This)->lpVtbl->CreateDetectToneObject(This,ppDetectTone)
2997 #define ITLegacyCallMediaControl2_CreateCustomToneObject(This,ppCustomTone) (This)->lpVtbl->CreateCustomToneObject(This,ppCustomTone)
2998 #define ITLegacyCallMediaControl2_GetIDAsVariant(This,bstrDeviceClass,pVarDeviceID) (This)->lpVtbl->GetIDAsVariant(This,bstrDeviceClass,pVarDeviceID)
2999 #endif
3000 #endif
3001   HRESULT WINAPI ITLegacyCallMediaControl2_GenerateDigits2_Proxy(ITLegacyCallMediaControl2 *This,BSTR pDigits,TAPI_DIGITMODE DigitMode,__LONG32 lDuration);
3002   void __RPC_STUB ITLegacyCallMediaControl2_GenerateDigits2_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3003   HRESULT WINAPI ITLegacyCallMediaControl2_GatherDigits_Proxy(ITLegacyCallMediaControl2 *This,TAPI_DIGITMODE DigitMode,__LONG32 lNumDigits,BSTR pTerminationDigits,__LONG32 lFirstDigitTimeout,__LONG32 lInterDigitTimeout);
3004   void __RPC_STUB ITLegacyCallMediaControl2_GatherDigits_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3005   HRESULT WINAPI ITLegacyCallMediaControl2_DetectTones_Proxy(ITLegacyCallMediaControl2 *This,TAPI_DETECTTONE *pToneList,__LONG32 lNumTones);
3006   void __RPC_STUB ITLegacyCallMediaControl2_DetectTones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3007   HRESULT WINAPI ITLegacyCallMediaControl2_DetectTonesByCollection_Proxy(ITLegacyCallMediaControl2 *This,ITCollection2 *pDetectToneCollection);
3008   void __RPC_STUB ITLegacyCallMediaControl2_DetectTonesByCollection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3009   HRESULT WINAPI ITLegacyCallMediaControl2_GenerateTone_Proxy(ITLegacyCallMediaControl2 *This,TAPI_TONEMODE ToneMode,__LONG32 lDuration);
3010   void __RPC_STUB ITLegacyCallMediaControl2_GenerateTone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3011   HRESULT WINAPI ITLegacyCallMediaControl2_GenerateCustomTones_Proxy(ITLegacyCallMediaControl2 *This,TAPI_CUSTOMTONE *pToneList,__LONG32 lNumTones,__LONG32 lDuration);
3012   void __RPC_STUB ITLegacyCallMediaControl2_GenerateCustomTones_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3013   HRESULT WINAPI ITLegacyCallMediaControl2_GenerateCustomTonesByCollection_Proxy(ITLegacyCallMediaControl2 *This,ITCollection2 *pCustomToneCollection,__LONG32 lDuration);
3014   void __RPC_STUB ITLegacyCallMediaControl2_GenerateCustomTonesByCollection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3015   HRESULT WINAPI ITLegacyCallMediaControl2_CreateDetectToneObject_Proxy(ITLegacyCallMediaControl2 *This,ITDetectTone **ppDetectTone);
3016   void __RPC_STUB ITLegacyCallMediaControl2_CreateDetectToneObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3017   HRESULT WINAPI ITLegacyCallMediaControl2_CreateCustomToneObject_Proxy(ITLegacyCallMediaControl2 *This,ITCustomTone **ppCustomTone);
3018   void __RPC_STUB ITLegacyCallMediaControl2_CreateCustomToneObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3019   HRESULT WINAPI ITLegacyCallMediaControl2_GetIDAsVariant_Proxy(ITLegacyCallMediaControl2 *This,BSTR bstrDeviceClass,VARIANT *pVarDeviceID);
3020   void __RPC_STUB ITLegacyCallMediaControl2_GetIDAsVariant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3021 #endif
3022 
3023 #ifndef __ITDetectTone_INTERFACE_DEFINED__
3024 #define __ITDetectTone_INTERFACE_DEFINED__
3025   EXTERN_C const IID IID_ITDetectTone;
3026 #if defined(__cplusplus) && !defined(CINTERFACE)
3027   struct ITDetectTone : public IDispatch {
3028   public:
3029     virtual HRESULT WINAPI get_AppSpecific(__LONG32 *plAppSpecific) = 0;
3030     virtual HRESULT WINAPI put_AppSpecific(__LONG32 lAppSpecific) = 0;
3031     virtual HRESULT WINAPI get_Duration(__LONG32 *plDuration) = 0;
3032     virtual HRESULT WINAPI put_Duration(__LONG32 lDuration) = 0;
3033     virtual HRESULT WINAPI get_Frequency(__LONG32 Index,__LONG32 *plFrequency) = 0;
3034     virtual HRESULT WINAPI put_Frequency(__LONG32 Index,__LONG32 lFrequency) = 0;
3035   };
3036 #else
3037   typedef struct ITDetectToneVtbl {
3038     BEGIN_INTERFACE
3039       HRESULT (WINAPI *QueryInterface)(ITDetectTone *This,REFIID riid,void **ppvObject);
3040       ULONG (WINAPI *AddRef)(ITDetectTone *This);
3041       ULONG (WINAPI *Release)(ITDetectTone *This);
3042       HRESULT (WINAPI *GetTypeInfoCount)(ITDetectTone *This,UINT *pctinfo);
3043       HRESULT (WINAPI *GetTypeInfo)(ITDetectTone *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3044       HRESULT (WINAPI *GetIDsOfNames)(ITDetectTone *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3045       HRESULT (WINAPI *Invoke)(ITDetectTone *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3046       HRESULT (WINAPI *get_AppSpecific)(ITDetectTone *This,__LONG32 *plAppSpecific);
3047       HRESULT (WINAPI *put_AppSpecific)(ITDetectTone *This,__LONG32 lAppSpecific);
3048       HRESULT (WINAPI *get_Duration)(ITDetectTone *This,__LONG32 *plDuration);
3049       HRESULT (WINAPI *put_Duration)(ITDetectTone *This,__LONG32 lDuration);
3050       HRESULT (WINAPI *get_Frequency)(ITDetectTone *This,__LONG32 Index,__LONG32 *plFrequency);
3051       HRESULT (WINAPI *put_Frequency)(ITDetectTone *This,__LONG32 Index,__LONG32 lFrequency);
3052     END_INTERFACE
3053   } ITDetectToneVtbl;
3054   struct ITDetectTone {
3055     CONST_VTBL struct ITDetectToneVtbl *lpVtbl;
3056   };
3057 #ifdef COBJMACROS
3058 #define ITDetectTone_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3059 #define ITDetectTone_AddRef(This) (This)->lpVtbl->AddRef(This)
3060 #define ITDetectTone_Release(This) (This)->lpVtbl->Release(This)
3061 #define ITDetectTone_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3062 #define ITDetectTone_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3063 #define ITDetectTone_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3064 #define ITDetectTone_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3065 #define ITDetectTone_get_AppSpecific(This,plAppSpecific) (This)->lpVtbl->get_AppSpecific(This,plAppSpecific)
3066 #define ITDetectTone_put_AppSpecific(This,lAppSpecific) (This)->lpVtbl->put_AppSpecific(This,lAppSpecific)
3067 #define ITDetectTone_get_Duration(This,plDuration) (This)->lpVtbl->get_Duration(This,plDuration)
3068 #define ITDetectTone_put_Duration(This,lDuration) (This)->lpVtbl->put_Duration(This,lDuration)
3069 #define ITDetectTone_get_Frequency(This,Index,plFrequency) (This)->lpVtbl->get_Frequency(This,Index,plFrequency)
3070 #define ITDetectTone_put_Frequency(This,Index,lFrequency) (This)->lpVtbl->put_Frequency(This,Index,lFrequency)
3071 #endif
3072 #endif
3073   HRESULT WINAPI ITDetectTone_get_AppSpecific_Proxy(ITDetectTone *This,__LONG32 *plAppSpecific);
3074   void __RPC_STUB ITDetectTone_get_AppSpecific_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3075   HRESULT WINAPI ITDetectTone_put_AppSpecific_Proxy(ITDetectTone *This,__LONG32 lAppSpecific);
3076   void __RPC_STUB ITDetectTone_put_AppSpecific_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3077   HRESULT WINAPI ITDetectTone_get_Duration_Proxy(ITDetectTone *This,__LONG32 *plDuration);
3078   void __RPC_STUB ITDetectTone_get_Duration_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3079   HRESULT WINAPI ITDetectTone_put_Duration_Proxy(ITDetectTone *This,__LONG32 lDuration);
3080   void __RPC_STUB ITDetectTone_put_Duration_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3081   HRESULT WINAPI ITDetectTone_get_Frequency_Proxy(ITDetectTone *This,__LONG32 Index,__LONG32 *plFrequency);
3082   void __RPC_STUB ITDetectTone_get_Frequency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3083   HRESULT WINAPI ITDetectTone_put_Frequency_Proxy(ITDetectTone *This,__LONG32 Index,__LONG32 lFrequency);
3084   void __RPC_STUB ITDetectTone_put_Frequency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3085 #endif
3086 
3087 #ifndef __ITCustomTone_INTERFACE_DEFINED__
3088 #define __ITCustomTone_INTERFACE_DEFINED__
3089   EXTERN_C const IID IID_ITCustomTone;
3090 #if defined(__cplusplus) && !defined(CINTERFACE)
3091   struct ITCustomTone : public IDispatch {
3092   public:
3093     virtual HRESULT WINAPI get_Frequency(__LONG32 *plFrequency) = 0;
3094     virtual HRESULT WINAPI put_Frequency(__LONG32 lFrequency) = 0;
3095     virtual HRESULT WINAPI get_CadenceOn(__LONG32 *plCadenceOn) = 0;
3096     virtual HRESULT WINAPI put_CadenceOn(__LONG32 CadenceOn) = 0;
3097     virtual HRESULT WINAPI get_CadenceOff(__LONG32 *plCadenceOff) = 0;
3098     virtual HRESULT WINAPI put_CadenceOff(__LONG32 lCadenceOff) = 0;
3099     virtual HRESULT WINAPI get_Volume(__LONG32 *plVolume) = 0;
3100     virtual HRESULT WINAPI put_Volume(__LONG32 lVolume) = 0;
3101   };
3102 #else
3103   typedef struct ITCustomToneVtbl {
3104     BEGIN_INTERFACE
3105       HRESULT (WINAPI *QueryInterface)(ITCustomTone *This,REFIID riid,void **ppvObject);
3106       ULONG (WINAPI *AddRef)(ITCustomTone *This);
3107       ULONG (WINAPI *Release)(ITCustomTone *This);
3108       HRESULT (WINAPI *GetTypeInfoCount)(ITCustomTone *This,UINT *pctinfo);
3109       HRESULT (WINAPI *GetTypeInfo)(ITCustomTone *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3110       HRESULT (WINAPI *GetIDsOfNames)(ITCustomTone *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3111       HRESULT (WINAPI *Invoke)(ITCustomTone *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3112       HRESULT (WINAPI *get_Frequency)(ITCustomTone *This,__LONG32 *plFrequency);
3113       HRESULT (WINAPI *put_Frequency)(ITCustomTone *This,__LONG32 lFrequency);
3114       HRESULT (WINAPI *get_CadenceOn)(ITCustomTone *This,__LONG32 *plCadenceOn);
3115       HRESULT (WINAPI *put_CadenceOn)(ITCustomTone *This,__LONG32 CadenceOn);
3116       HRESULT (WINAPI *get_CadenceOff)(ITCustomTone *This,__LONG32 *plCadenceOff);
3117       HRESULT (WINAPI *put_CadenceOff)(ITCustomTone *This,__LONG32 lCadenceOff);
3118       HRESULT (WINAPI *get_Volume)(ITCustomTone *This,__LONG32 *plVolume);
3119       HRESULT (WINAPI *put_Volume)(ITCustomTone *This,__LONG32 lVolume);
3120     END_INTERFACE
3121   } ITCustomToneVtbl;
3122   struct ITCustomTone {
3123     CONST_VTBL struct ITCustomToneVtbl *lpVtbl;
3124   };
3125 #ifdef COBJMACROS
3126 #define ITCustomTone_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3127 #define ITCustomTone_AddRef(This) (This)->lpVtbl->AddRef(This)
3128 #define ITCustomTone_Release(This) (This)->lpVtbl->Release(This)
3129 #define ITCustomTone_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3130 #define ITCustomTone_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3131 #define ITCustomTone_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3132 #define ITCustomTone_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3133 #define ITCustomTone_get_Frequency(This,plFrequency) (This)->lpVtbl->get_Frequency(This,plFrequency)
3134 #define ITCustomTone_put_Frequency(This,lFrequency) (This)->lpVtbl->put_Frequency(This,lFrequency)
3135 #define ITCustomTone_get_CadenceOn(This,plCadenceOn) (This)->lpVtbl->get_CadenceOn(This,plCadenceOn)
3136 #define ITCustomTone_put_CadenceOn(This,CadenceOn) (This)->lpVtbl->put_CadenceOn(This,CadenceOn)
3137 #define ITCustomTone_get_CadenceOff(This,plCadenceOff) (This)->lpVtbl->get_CadenceOff(This,plCadenceOff)
3138 #define ITCustomTone_put_CadenceOff(This,lCadenceOff) (This)->lpVtbl->put_CadenceOff(This,lCadenceOff)
3139 #define ITCustomTone_get_Volume(This,plVolume) (This)->lpVtbl->get_Volume(This,plVolume)
3140 #define ITCustomTone_put_Volume(This,lVolume) (This)->lpVtbl->put_Volume(This,lVolume)
3141 #endif
3142 #endif
3143   HRESULT WINAPI ITCustomTone_get_Frequency_Proxy(ITCustomTone *This,__LONG32 *plFrequency);
3144   void __RPC_STUB ITCustomTone_get_Frequency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3145   HRESULT WINAPI ITCustomTone_put_Frequency_Proxy(ITCustomTone *This,__LONG32 lFrequency);
3146   void __RPC_STUB ITCustomTone_put_Frequency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3147   HRESULT WINAPI ITCustomTone_get_CadenceOn_Proxy(ITCustomTone *This,__LONG32 *plCadenceOn);
3148   void __RPC_STUB ITCustomTone_get_CadenceOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3149   HRESULT WINAPI ITCustomTone_put_CadenceOn_Proxy(ITCustomTone *This,__LONG32 CadenceOn);
3150   void __RPC_STUB ITCustomTone_put_CadenceOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3151   HRESULT WINAPI ITCustomTone_get_CadenceOff_Proxy(ITCustomTone *This,__LONG32 *plCadenceOff);
3152   void __RPC_STUB ITCustomTone_get_CadenceOff_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3153   HRESULT WINAPI ITCustomTone_put_CadenceOff_Proxy(ITCustomTone *This,__LONG32 lCadenceOff);
3154   void __RPC_STUB ITCustomTone_put_CadenceOff_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3155   HRESULT WINAPI ITCustomTone_get_Volume_Proxy(ITCustomTone *This,__LONG32 *plVolume);
3156   void __RPC_STUB ITCustomTone_get_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3157   HRESULT WINAPI ITCustomTone_put_Volume_Proxy(ITCustomTone *This,__LONG32 lVolume);
3158   void __RPC_STUB ITCustomTone_put_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3159 #endif
3160 
3161 #ifndef __IEnumPhone_INTERFACE_DEFINED__
3162 #define __IEnumPhone_INTERFACE_DEFINED__
3163   EXTERN_C const IID IID_IEnumPhone;
3164 #if defined(__cplusplus) && !defined(CINTERFACE)
3165   struct IEnumPhone : public IUnknown {
3166   public:
3167     virtual HRESULT WINAPI Next(ULONG celt,ITPhone **ppElements,ULONG *pceltFetched) = 0;
3168     virtual HRESULT WINAPI Reset(void) = 0;
3169     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3170     virtual HRESULT WINAPI Clone(IEnumPhone **ppEnum) = 0;
3171   };
3172 #else
3173   typedef struct IEnumPhoneVtbl {
3174     BEGIN_INTERFACE
3175       HRESULT (WINAPI *QueryInterface)(IEnumPhone *This,REFIID riid,void **ppvObject);
3176       ULONG (WINAPI *AddRef)(IEnumPhone *This);
3177       ULONG (WINAPI *Release)(IEnumPhone *This);
3178       HRESULT (WINAPI *Next)(IEnumPhone *This,ULONG celt,ITPhone **ppElements,ULONG *pceltFetched);
3179       HRESULT (WINAPI *Reset)(IEnumPhone *This);
3180       HRESULT (WINAPI *Skip)(IEnumPhone *This,ULONG celt);
3181       HRESULT (WINAPI *Clone)(IEnumPhone *This,IEnumPhone **ppEnum);
3182     END_INTERFACE
3183   } IEnumPhoneVtbl;
3184   struct IEnumPhone {
3185     CONST_VTBL struct IEnumPhoneVtbl *lpVtbl;
3186   };
3187 #ifdef COBJMACROS
3188 #define IEnumPhone_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3189 #define IEnumPhone_AddRef(This) (This)->lpVtbl->AddRef(This)
3190 #define IEnumPhone_Release(This) (This)->lpVtbl->Release(This)
3191 #define IEnumPhone_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
3192 #define IEnumPhone_Reset(This) (This)->lpVtbl->Reset(This)
3193 #define IEnumPhone_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3194 #define IEnumPhone_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3195 #endif
3196 #endif
3197   HRESULT WINAPI IEnumPhone_Next_Proxy(IEnumPhone *This,ULONG celt,ITPhone **ppElements,ULONG *pceltFetched);
3198   void __RPC_STUB IEnumPhone_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3199   HRESULT WINAPI IEnumPhone_Reset_Proxy(IEnumPhone *This);
3200   void __RPC_STUB IEnumPhone_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3201   HRESULT WINAPI IEnumPhone_Skip_Proxy(IEnumPhone *This,ULONG celt);
3202   void __RPC_STUB IEnumPhone_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3203   HRESULT WINAPI IEnumPhone_Clone_Proxy(IEnumPhone *This,IEnumPhone **ppEnum);
3204   void __RPC_STUB IEnumPhone_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3205 #endif
3206 
3207 #ifndef __IEnumTerminal_INTERFACE_DEFINED__
3208 #define __IEnumTerminal_INTERFACE_DEFINED__
3209   EXTERN_C const IID IID_IEnumTerminal;
3210 #if defined(__cplusplus) && !defined(CINTERFACE)
3211   struct IEnumTerminal : public IUnknown {
3212   public:
3213     virtual HRESULT WINAPI Next(ULONG celt,ITTerminal **ppElements,ULONG *pceltFetched) = 0;
3214     virtual HRESULT WINAPI Reset(void) = 0;
3215     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3216     virtual HRESULT WINAPI Clone(IEnumTerminal **ppEnum) = 0;
3217   };
3218 #else
3219   typedef struct IEnumTerminalVtbl {
3220     BEGIN_INTERFACE
3221       HRESULT (WINAPI *QueryInterface)(IEnumTerminal *This,REFIID riid,void **ppvObject);
3222       ULONG (WINAPI *AddRef)(IEnumTerminal *This);
3223       ULONG (WINAPI *Release)(IEnumTerminal *This);
3224       HRESULT (WINAPI *Next)(IEnumTerminal *This,ULONG celt,ITTerminal **ppElements,ULONG *pceltFetched);
3225       HRESULT (WINAPI *Reset)(IEnumTerminal *This);
3226       HRESULT (WINAPI *Skip)(IEnumTerminal *This,ULONG celt);
3227       HRESULT (WINAPI *Clone)(IEnumTerminal *This,IEnumTerminal **ppEnum);
3228     END_INTERFACE
3229   } IEnumTerminalVtbl;
3230   struct IEnumTerminal {
3231     CONST_VTBL struct IEnumTerminalVtbl *lpVtbl;
3232   };
3233 #ifdef COBJMACROS
3234 #define IEnumTerminal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3235 #define IEnumTerminal_AddRef(This) (This)->lpVtbl->AddRef(This)
3236 #define IEnumTerminal_Release(This) (This)->lpVtbl->Release(This)
3237 #define IEnumTerminal_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
3238 #define IEnumTerminal_Reset(This) (This)->lpVtbl->Reset(This)
3239 #define IEnumTerminal_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3240 #define IEnumTerminal_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3241 #endif
3242 #endif
3243   HRESULT WINAPI IEnumTerminal_Next_Proxy(IEnumTerminal *This,ULONG celt,ITTerminal **ppElements,ULONG *pceltFetched);
3244   void __RPC_STUB IEnumTerminal_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3245   HRESULT WINAPI IEnumTerminal_Reset_Proxy(IEnumTerminal *This);
3246   void __RPC_STUB IEnumTerminal_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3247   HRESULT WINAPI IEnumTerminal_Skip_Proxy(IEnumTerminal *This,ULONG celt);
3248   void __RPC_STUB IEnumTerminal_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3249   HRESULT WINAPI IEnumTerminal_Clone_Proxy(IEnumTerminal *This,IEnumTerminal **ppEnum);
3250   void __RPC_STUB IEnumTerminal_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3251 #endif
3252 
3253 #ifndef __IEnumTerminalClass_INTERFACE_DEFINED__
3254 #define __IEnumTerminalClass_INTERFACE_DEFINED__
3255   EXTERN_C const IID IID_IEnumTerminalClass;
3256 #if defined(__cplusplus) && !defined(CINTERFACE)
3257   struct IEnumTerminalClass : public IUnknown {
3258   public:
3259     virtual HRESULT WINAPI Next(ULONG celt,GUID *pElements,ULONG *pceltFetched) = 0;
3260     virtual HRESULT WINAPI Reset(void) = 0;
3261     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3262     virtual HRESULT WINAPI Clone(IEnumTerminalClass **ppEnum) = 0;
3263   };
3264 #else
3265   typedef struct IEnumTerminalClassVtbl {
3266     BEGIN_INTERFACE
3267       HRESULT (WINAPI *QueryInterface)(IEnumTerminalClass *This,REFIID riid,void **ppvObject);
3268       ULONG (WINAPI *AddRef)(IEnumTerminalClass *This);
3269       ULONG (WINAPI *Release)(IEnumTerminalClass *This);
3270       HRESULT (WINAPI *Next)(IEnumTerminalClass *This,ULONG celt,GUID *pElements,ULONG *pceltFetched);
3271       HRESULT (WINAPI *Reset)(IEnumTerminalClass *This);
3272       HRESULT (WINAPI *Skip)(IEnumTerminalClass *This,ULONG celt);
3273       HRESULT (WINAPI *Clone)(IEnumTerminalClass *This,IEnumTerminalClass **ppEnum);
3274     END_INTERFACE
3275   } IEnumTerminalClassVtbl;
3276   struct IEnumTerminalClass {
3277     CONST_VTBL struct IEnumTerminalClassVtbl *lpVtbl;
3278   };
3279 #ifdef COBJMACROS
3280 #define IEnumTerminalClass_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3281 #define IEnumTerminalClass_AddRef(This) (This)->lpVtbl->AddRef(This)
3282 #define IEnumTerminalClass_Release(This) (This)->lpVtbl->Release(This)
3283 #define IEnumTerminalClass_Next(This,celt,pElements,pceltFetched) (This)->lpVtbl->Next(This,celt,pElements,pceltFetched)
3284 #define IEnumTerminalClass_Reset(This) (This)->lpVtbl->Reset(This)
3285 #define IEnumTerminalClass_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3286 #define IEnumTerminalClass_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3287 #endif
3288 #endif
3289   HRESULT WINAPI IEnumTerminalClass_Next_Proxy(IEnumTerminalClass *This,ULONG celt,GUID *pElements,ULONG *pceltFetched);
3290   void __RPC_STUB IEnumTerminalClass_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3291   HRESULT WINAPI IEnumTerminalClass_Reset_Proxy(IEnumTerminalClass *This);
3292   void __RPC_STUB IEnumTerminalClass_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3293   HRESULT WINAPI IEnumTerminalClass_Skip_Proxy(IEnumTerminalClass *This,ULONG celt);
3294   void __RPC_STUB IEnumTerminalClass_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3295   HRESULT WINAPI IEnumTerminalClass_Clone_Proxy(IEnumTerminalClass *This,IEnumTerminalClass **ppEnum);
3296   void __RPC_STUB IEnumTerminalClass_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3297 #endif
3298 
3299 #ifndef __IEnumCall_INTERFACE_DEFINED__
3300 #define __IEnumCall_INTERFACE_DEFINED__
3301   EXTERN_C const IID IID_IEnumCall;
3302 #if defined(__cplusplus) && !defined(CINTERFACE)
3303   struct IEnumCall : public IUnknown {
3304   public:
3305     virtual HRESULT WINAPI Next(ULONG celt,ITCallInfo **ppElements,ULONG *pceltFetched) = 0;
3306     virtual HRESULT WINAPI Reset(void) = 0;
3307     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3308     virtual HRESULT WINAPI Clone(IEnumCall **ppEnum) = 0;
3309   };
3310 #else
3311   typedef struct IEnumCallVtbl {
3312     BEGIN_INTERFACE
3313       HRESULT (WINAPI *QueryInterface)(IEnumCall *This,REFIID riid,void **ppvObject);
3314       ULONG (WINAPI *AddRef)(IEnumCall *This);
3315       ULONG (WINAPI *Release)(IEnumCall *This);
3316       HRESULT (WINAPI *Next)(IEnumCall *This,ULONG celt,ITCallInfo **ppElements,ULONG *pceltFetched);
3317       HRESULT (WINAPI *Reset)(IEnumCall *This);
3318       HRESULT (WINAPI *Skip)(IEnumCall *This,ULONG celt);
3319       HRESULT (WINAPI *Clone)(IEnumCall *This,IEnumCall **ppEnum);
3320     END_INTERFACE
3321   } IEnumCallVtbl;
3322   struct IEnumCall {
3323     CONST_VTBL struct IEnumCallVtbl *lpVtbl;
3324   };
3325 #ifdef COBJMACROS
3326 #define IEnumCall_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3327 #define IEnumCall_AddRef(This) (This)->lpVtbl->AddRef(This)
3328 #define IEnumCall_Release(This) (This)->lpVtbl->Release(This)
3329 #define IEnumCall_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
3330 #define IEnumCall_Reset(This) (This)->lpVtbl->Reset(This)
3331 #define IEnumCall_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3332 #define IEnumCall_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3333 #endif
3334 #endif
3335   HRESULT WINAPI IEnumCall_Next_Proxy(IEnumCall *This,ULONG celt,ITCallInfo **ppElements,ULONG *pceltFetched);
3336   void __RPC_STUB IEnumCall_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3337   HRESULT WINAPI IEnumCall_Reset_Proxy(IEnumCall *This);
3338   void __RPC_STUB IEnumCall_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3339   HRESULT WINAPI IEnumCall_Skip_Proxy(IEnumCall *This,ULONG celt);
3340   void __RPC_STUB IEnumCall_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3341   HRESULT WINAPI IEnumCall_Clone_Proxy(IEnumCall *This,IEnumCall **ppEnum);
3342   void __RPC_STUB IEnumCall_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3343 #endif
3344 
3345 #ifndef __IEnumAddress_INTERFACE_DEFINED__
3346 #define __IEnumAddress_INTERFACE_DEFINED__
3347   EXTERN_C const IID IID_IEnumAddress;
3348 #if defined(__cplusplus) && !defined(CINTERFACE)
3349   struct IEnumAddress : public IUnknown {
3350   public:
3351     virtual HRESULT WINAPI Next(ULONG celt,ITAddress **ppElements,ULONG *pceltFetched) = 0;
3352     virtual HRESULT WINAPI Reset(void) = 0;
3353     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3354     virtual HRESULT WINAPI Clone(IEnumAddress **ppEnum) = 0;
3355   };
3356 #else
3357   typedef struct IEnumAddressVtbl {
3358     BEGIN_INTERFACE
3359       HRESULT (WINAPI *QueryInterface)(IEnumAddress *This,REFIID riid,void **ppvObject);
3360       ULONG (WINAPI *AddRef)(IEnumAddress *This);
3361       ULONG (WINAPI *Release)(IEnumAddress *This);
3362       HRESULT (WINAPI *Next)(IEnumAddress *This,ULONG celt,ITAddress **ppElements,ULONG *pceltFetched);
3363       HRESULT (WINAPI *Reset)(IEnumAddress *This);
3364       HRESULT (WINAPI *Skip)(IEnumAddress *This,ULONG celt);
3365       HRESULT (WINAPI *Clone)(IEnumAddress *This,IEnumAddress **ppEnum);
3366     END_INTERFACE
3367   } IEnumAddressVtbl;
3368   struct IEnumAddress {
3369     CONST_VTBL struct IEnumAddressVtbl *lpVtbl;
3370   };
3371 #ifdef COBJMACROS
3372 #define IEnumAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3373 #define IEnumAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
3374 #define IEnumAddress_Release(This) (This)->lpVtbl->Release(This)
3375 #define IEnumAddress_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
3376 #define IEnumAddress_Reset(This) (This)->lpVtbl->Reset(This)
3377 #define IEnumAddress_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3378 #define IEnumAddress_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3379 #endif
3380 #endif
3381   HRESULT WINAPI IEnumAddress_Next_Proxy(IEnumAddress *This,ULONG celt,ITAddress **ppElements,ULONG *pceltFetched);
3382   void __RPC_STUB IEnumAddress_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3383   HRESULT WINAPI IEnumAddress_Reset_Proxy(IEnumAddress *This);
3384   void __RPC_STUB IEnumAddress_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3385   HRESULT WINAPI IEnumAddress_Skip_Proxy(IEnumAddress *This,ULONG celt);
3386   void __RPC_STUB IEnumAddress_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3387   HRESULT WINAPI IEnumAddress_Clone_Proxy(IEnumAddress *This,IEnumAddress **ppEnum);
3388   void __RPC_STUB IEnumAddress_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3389 #endif
3390 
3391 #ifndef __IEnumCallHub_INTERFACE_DEFINED__
3392 #define __IEnumCallHub_INTERFACE_DEFINED__
3393   EXTERN_C const IID IID_IEnumCallHub;
3394 #if defined(__cplusplus) && !defined(CINTERFACE)
3395   struct IEnumCallHub : public IUnknown {
3396   public:
3397     virtual HRESULT WINAPI Next(ULONG celt,ITCallHub **ppElements,ULONG *pceltFetched) = 0;
3398     virtual HRESULT WINAPI Reset(void) = 0;
3399     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3400     virtual HRESULT WINAPI Clone(IEnumCallHub **ppEnum) = 0;
3401   };
3402 #else
3403   typedef struct IEnumCallHubVtbl {
3404     BEGIN_INTERFACE
3405       HRESULT (WINAPI *QueryInterface)(IEnumCallHub *This,REFIID riid,void **ppvObject);
3406       ULONG (WINAPI *AddRef)(IEnumCallHub *This);
3407       ULONG (WINAPI *Release)(IEnumCallHub *This);
3408       HRESULT (WINAPI *Next)(IEnumCallHub *This,ULONG celt,ITCallHub **ppElements,ULONG *pceltFetched);
3409       HRESULT (WINAPI *Reset)(IEnumCallHub *This);
3410       HRESULT (WINAPI *Skip)(IEnumCallHub *This,ULONG celt);
3411       HRESULT (WINAPI *Clone)(IEnumCallHub *This,IEnumCallHub **ppEnum);
3412     END_INTERFACE
3413   } IEnumCallHubVtbl;
3414   struct IEnumCallHub {
3415     CONST_VTBL struct IEnumCallHubVtbl *lpVtbl;
3416   };
3417 #ifdef COBJMACROS
3418 #define IEnumCallHub_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3419 #define IEnumCallHub_AddRef(This) (This)->lpVtbl->AddRef(This)
3420 #define IEnumCallHub_Release(This) (This)->lpVtbl->Release(This)
3421 #define IEnumCallHub_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
3422 #define IEnumCallHub_Reset(This) (This)->lpVtbl->Reset(This)
3423 #define IEnumCallHub_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3424 #define IEnumCallHub_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3425 #endif
3426 #endif
3427   HRESULT WINAPI IEnumCallHub_Next_Proxy(IEnumCallHub *This,ULONG celt,ITCallHub **ppElements,ULONG *pceltFetched);
3428   void __RPC_STUB IEnumCallHub_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3429   HRESULT WINAPI IEnumCallHub_Reset_Proxy(IEnumCallHub *This);
3430   void __RPC_STUB IEnumCallHub_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3431   HRESULT WINAPI IEnumCallHub_Skip_Proxy(IEnumCallHub *This,ULONG celt);
3432   void __RPC_STUB IEnumCallHub_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3433   HRESULT WINAPI IEnumCallHub_Clone_Proxy(IEnumCallHub *This,IEnumCallHub **ppEnum);
3434   void __RPC_STUB IEnumCallHub_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3435 #endif
3436 
3437 #ifndef __IEnumBstr_INTERFACE_DEFINED__
3438 #define __IEnumBstr_INTERFACE_DEFINED__
3439   EXTERN_C const IID IID_IEnumBstr;
3440 #if defined(__cplusplus) && !defined(CINTERFACE)
3441   struct IEnumBstr : public IUnknown {
3442   public:
3443     virtual HRESULT WINAPI Next(ULONG celt,BSTR *ppStrings,ULONG *pceltFetched) = 0;
3444     virtual HRESULT WINAPI Reset(void) = 0;
3445     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3446     virtual HRESULT WINAPI Clone(IEnumBstr **ppEnum) = 0;
3447   };
3448 #else
3449   typedef struct IEnumBstrVtbl {
3450     BEGIN_INTERFACE
3451       HRESULT (WINAPI *QueryInterface)(IEnumBstr *This,REFIID riid,void **ppvObject);
3452       ULONG (WINAPI *AddRef)(IEnumBstr *This);
3453       ULONG (WINAPI *Release)(IEnumBstr *This);
3454       HRESULT (WINAPI *Next)(IEnumBstr *This,ULONG celt,BSTR *ppStrings,ULONG *pceltFetched);
3455       HRESULT (WINAPI *Reset)(IEnumBstr *This);
3456       HRESULT (WINAPI *Skip)(IEnumBstr *This,ULONG celt);
3457       HRESULT (WINAPI *Clone)(IEnumBstr *This,IEnumBstr **ppEnum);
3458     END_INTERFACE
3459   } IEnumBstrVtbl;
3460   struct IEnumBstr {
3461     CONST_VTBL struct IEnumBstrVtbl *lpVtbl;
3462   };
3463 #ifdef COBJMACROS
3464 #define IEnumBstr_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3465 #define IEnumBstr_AddRef(This) (This)->lpVtbl->AddRef(This)
3466 #define IEnumBstr_Release(This) (This)->lpVtbl->Release(This)
3467 #define IEnumBstr_Next(This,celt,ppStrings,pceltFetched) (This)->lpVtbl->Next(This,celt,ppStrings,pceltFetched)
3468 #define IEnumBstr_Reset(This) (This)->lpVtbl->Reset(This)
3469 #define IEnumBstr_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3470 #define IEnumBstr_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3471 #endif
3472 #endif
3473   HRESULT WINAPI IEnumBstr_Next_Proxy(IEnumBstr *This,ULONG celt,BSTR *ppStrings,ULONG *pceltFetched);
3474   void __RPC_STUB IEnumBstr_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3475   HRESULT WINAPI IEnumBstr_Reset_Proxy(IEnumBstr *This);
3476   void __RPC_STUB IEnumBstr_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3477   HRESULT WINAPI IEnumBstr_Skip_Proxy(IEnumBstr *This,ULONG celt);
3478   void __RPC_STUB IEnumBstr_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3479   HRESULT WINAPI IEnumBstr_Clone_Proxy(IEnumBstr *This,IEnumBstr **ppEnum);
3480   void __RPC_STUB IEnumBstr_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3481 #endif
3482 
3483 #ifndef __IEnumPluggableTerminalClassInfo_INTERFACE_DEFINED__
3484 #define __IEnumPluggableTerminalClassInfo_INTERFACE_DEFINED__
3485   EXTERN_C const IID IID_IEnumPluggableTerminalClassInfo;
3486 #if defined(__cplusplus) && !defined(CINTERFACE)
3487   struct IEnumPluggableTerminalClassInfo : public IUnknown {
3488   public:
3489     virtual HRESULT WINAPI Next(ULONG celt,ITPluggableTerminalClassInfo **ppElements,ULONG *pceltFetched) = 0;
3490     virtual HRESULT WINAPI Reset(void) = 0;
3491     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3492     virtual HRESULT WINAPI Clone(IEnumPluggableTerminalClassInfo **ppEnum) = 0;
3493   };
3494 #else
3495   typedef struct IEnumPluggableTerminalClassInfoVtbl {
3496     BEGIN_INTERFACE
3497       HRESULT (WINAPI *QueryInterface)(IEnumPluggableTerminalClassInfo *This,REFIID riid,void **ppvObject);
3498       ULONG (WINAPI *AddRef)(IEnumPluggableTerminalClassInfo *This);
3499       ULONG (WINAPI *Release)(IEnumPluggableTerminalClassInfo *This);
3500       HRESULT (WINAPI *Next)(IEnumPluggableTerminalClassInfo *This,ULONG celt,ITPluggableTerminalClassInfo **ppElements,ULONG *pceltFetched);
3501       HRESULT (WINAPI *Reset)(IEnumPluggableTerminalClassInfo *This);
3502       HRESULT (WINAPI *Skip)(IEnumPluggableTerminalClassInfo *This,ULONG celt);
3503       HRESULT (WINAPI *Clone)(IEnumPluggableTerminalClassInfo *This,IEnumPluggableTerminalClassInfo **ppEnum);
3504     END_INTERFACE
3505   } IEnumPluggableTerminalClassInfoVtbl;
3506   struct IEnumPluggableTerminalClassInfo {
3507     CONST_VTBL struct IEnumPluggableTerminalClassInfoVtbl *lpVtbl;
3508   };
3509 #ifdef COBJMACROS
3510 #define IEnumPluggableTerminalClassInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3511 #define IEnumPluggableTerminalClassInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
3512 #define IEnumPluggableTerminalClassInfo_Release(This) (This)->lpVtbl->Release(This)
3513 #define IEnumPluggableTerminalClassInfo_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
3514 #define IEnumPluggableTerminalClassInfo_Reset(This) (This)->lpVtbl->Reset(This)
3515 #define IEnumPluggableTerminalClassInfo_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3516 #define IEnumPluggableTerminalClassInfo_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3517 #endif
3518 #endif
3519   HRESULT WINAPI IEnumPluggableTerminalClassInfo_Next_Proxy(IEnumPluggableTerminalClassInfo *This,ULONG celt,ITPluggableTerminalClassInfo **ppElements,ULONG *pceltFetched);
3520   void __RPC_STUB IEnumPluggableTerminalClassInfo_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3521   HRESULT WINAPI IEnumPluggableTerminalClassInfo_Reset_Proxy(IEnumPluggableTerminalClassInfo *This);
3522   void __RPC_STUB IEnumPluggableTerminalClassInfo_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3523   HRESULT WINAPI IEnumPluggableTerminalClassInfo_Skip_Proxy(IEnumPluggableTerminalClassInfo *This,ULONG celt);
3524   void __RPC_STUB IEnumPluggableTerminalClassInfo_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3525   HRESULT WINAPI IEnumPluggableTerminalClassInfo_Clone_Proxy(IEnumPluggableTerminalClassInfo *This,IEnumPluggableTerminalClassInfo **ppEnum);
3526   void __RPC_STUB IEnumPluggableTerminalClassInfo_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3527 #endif
3528 
3529 #ifndef __IEnumPluggableSuperclassInfo_INTERFACE_DEFINED__
3530 #define __IEnumPluggableSuperclassInfo_INTERFACE_DEFINED__
3531   EXTERN_C const IID IID_IEnumPluggableSuperclassInfo;
3532 #if defined(__cplusplus) && !defined(CINTERFACE)
3533   struct IEnumPluggableSuperclassInfo : public IUnknown {
3534   public:
3535     virtual HRESULT WINAPI Next(ULONG celt,ITPluggableTerminalSuperclassInfo **ppElements,ULONG *pceltFetched) = 0;
3536     virtual HRESULT WINAPI Reset(void) = 0;
3537     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
3538     virtual HRESULT WINAPI Clone(IEnumPluggableSuperclassInfo **ppEnum) = 0;
3539   };
3540 #else
3541   typedef struct IEnumPluggableSuperclassInfoVtbl {
3542     BEGIN_INTERFACE
3543       HRESULT (WINAPI *QueryInterface)(IEnumPluggableSuperclassInfo *This,REFIID riid,void **ppvObject);
3544       ULONG (WINAPI *AddRef)(IEnumPluggableSuperclassInfo *This);
3545       ULONG (WINAPI *Release)(IEnumPluggableSuperclassInfo *This);
3546       HRESULT (WINAPI *Next)(IEnumPluggableSuperclassInfo *This,ULONG celt,ITPluggableTerminalSuperclassInfo **ppElements,ULONG *pceltFetched);
3547       HRESULT (WINAPI *Reset)(IEnumPluggableSuperclassInfo *This);
3548       HRESULT (WINAPI *Skip)(IEnumPluggableSuperclassInfo *This,ULONG celt);
3549       HRESULT (WINAPI *Clone)(IEnumPluggableSuperclassInfo *This,IEnumPluggableSuperclassInfo **ppEnum);
3550     END_INTERFACE
3551   } IEnumPluggableSuperclassInfoVtbl;
3552   struct IEnumPluggableSuperclassInfo {
3553     CONST_VTBL struct IEnumPluggableSuperclassInfoVtbl *lpVtbl;
3554   };
3555 #ifdef COBJMACROS
3556 #define IEnumPluggableSuperclassInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3557 #define IEnumPluggableSuperclassInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
3558 #define IEnumPluggableSuperclassInfo_Release(This) (This)->lpVtbl->Release(This)
3559 #define IEnumPluggableSuperclassInfo_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
3560 #define IEnumPluggableSuperclassInfo_Reset(This) (This)->lpVtbl->Reset(This)
3561 #define IEnumPluggableSuperclassInfo_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
3562 #define IEnumPluggableSuperclassInfo_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
3563 #endif
3564 #endif
3565   HRESULT WINAPI IEnumPluggableSuperclassInfo_Next_Proxy(IEnumPluggableSuperclassInfo *This,ULONG celt,ITPluggableTerminalSuperclassInfo **ppElements,ULONG *pceltFetched);
3566   void __RPC_STUB IEnumPluggableSuperclassInfo_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3567   HRESULT WINAPI IEnumPluggableSuperclassInfo_Reset_Proxy(IEnumPluggableSuperclassInfo *This);
3568   void __RPC_STUB IEnumPluggableSuperclassInfo_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3569   HRESULT WINAPI IEnumPluggableSuperclassInfo_Skip_Proxy(IEnumPluggableSuperclassInfo *This,ULONG celt);
3570   void __RPC_STUB IEnumPluggableSuperclassInfo_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3571   HRESULT WINAPI IEnumPluggableSuperclassInfo_Clone_Proxy(IEnumPluggableSuperclassInfo *This,IEnumPluggableSuperclassInfo **ppEnum);
3572   void __RPC_STUB IEnumPluggableSuperclassInfo_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3573 #endif
3574 
3575 #ifndef __ITPhoneEvent_INTERFACE_DEFINED__
3576 #define __ITPhoneEvent_INTERFACE_DEFINED__
3577   EXTERN_C const IID IID_ITPhoneEvent;
3578 #if defined(__cplusplus) && !defined(CINTERFACE)
3579   struct ITPhoneEvent : public IDispatch {
3580   public:
3581     virtual HRESULT WINAPI get_Phone(ITPhone **ppPhone) = 0;
3582     virtual HRESULT WINAPI get_Event(PHONE_EVENT *pEvent) = 0;
3583     virtual HRESULT WINAPI get_ButtonState(PHONE_BUTTON_STATE *pState) = 0;
3584     virtual HRESULT WINAPI get_HookSwitchState(PHONE_HOOK_SWITCH_STATE *pState) = 0;
3585     virtual HRESULT WINAPI get_HookSwitchDevice(PHONE_HOOK_SWITCH_DEVICE *pDevice) = 0;
3586     virtual HRESULT WINAPI get_RingMode(__LONG32 *plRingMode) = 0;
3587     virtual HRESULT WINAPI get_ButtonLampId(__LONG32 *plButtonLampId) = 0;
3588     virtual HRESULT WINAPI get_NumberGathered(BSTR *ppNumber) = 0;
3589     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
3590   };
3591 #else
3592   typedef struct ITPhoneEventVtbl {
3593     BEGIN_INTERFACE
3594       HRESULT (WINAPI *QueryInterface)(ITPhoneEvent *This,REFIID riid,void **ppvObject);
3595       ULONG (WINAPI *AddRef)(ITPhoneEvent *This);
3596       ULONG (WINAPI *Release)(ITPhoneEvent *This);
3597       HRESULT (WINAPI *GetTypeInfoCount)(ITPhoneEvent *This,UINT *pctinfo);
3598       HRESULT (WINAPI *GetTypeInfo)(ITPhoneEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3599       HRESULT (WINAPI *GetIDsOfNames)(ITPhoneEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3600       HRESULT (WINAPI *Invoke)(ITPhoneEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3601       HRESULT (WINAPI *get_Phone)(ITPhoneEvent *This,ITPhone **ppPhone);
3602       HRESULT (WINAPI *get_Event)(ITPhoneEvent *This,PHONE_EVENT *pEvent);
3603       HRESULT (WINAPI *get_ButtonState)(ITPhoneEvent *This,PHONE_BUTTON_STATE *pState);
3604       HRESULT (WINAPI *get_HookSwitchState)(ITPhoneEvent *This,PHONE_HOOK_SWITCH_STATE *pState);
3605       HRESULT (WINAPI *get_HookSwitchDevice)(ITPhoneEvent *This,PHONE_HOOK_SWITCH_DEVICE *pDevice);
3606       HRESULT (WINAPI *get_RingMode)(ITPhoneEvent *This,__LONG32 *plRingMode);
3607       HRESULT (WINAPI *get_ButtonLampId)(ITPhoneEvent *This,__LONG32 *plButtonLampId);
3608       HRESULT (WINAPI *get_NumberGathered)(ITPhoneEvent *This,BSTR *ppNumber);
3609       HRESULT (WINAPI *get_Call)(ITPhoneEvent *This,ITCallInfo **ppCallInfo);
3610     END_INTERFACE
3611   } ITPhoneEventVtbl;
3612   struct ITPhoneEvent {
3613     CONST_VTBL struct ITPhoneEventVtbl *lpVtbl;
3614   };
3615 #ifdef COBJMACROS
3616 #define ITPhoneEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3617 #define ITPhoneEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
3618 #define ITPhoneEvent_Release(This) (This)->lpVtbl->Release(This)
3619 #define ITPhoneEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3620 #define ITPhoneEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3621 #define ITPhoneEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3622 #define ITPhoneEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3623 #define ITPhoneEvent_get_Phone(This,ppPhone) (This)->lpVtbl->get_Phone(This,ppPhone)
3624 #define ITPhoneEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
3625 #define ITPhoneEvent_get_ButtonState(This,pState) (This)->lpVtbl->get_ButtonState(This,pState)
3626 #define ITPhoneEvent_get_HookSwitchState(This,pState) (This)->lpVtbl->get_HookSwitchState(This,pState)
3627 #define ITPhoneEvent_get_HookSwitchDevice(This,pDevice) (This)->lpVtbl->get_HookSwitchDevice(This,pDevice)
3628 #define ITPhoneEvent_get_RingMode(This,plRingMode) (This)->lpVtbl->get_RingMode(This,plRingMode)
3629 #define ITPhoneEvent_get_ButtonLampId(This,plButtonLampId) (This)->lpVtbl->get_ButtonLampId(This,plButtonLampId)
3630 #define ITPhoneEvent_get_NumberGathered(This,ppNumber) (This)->lpVtbl->get_NumberGathered(This,ppNumber)
3631 #define ITPhoneEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
3632 #endif
3633 #endif
3634   HRESULT WINAPI ITPhoneEvent_get_Phone_Proxy(ITPhoneEvent *This,ITPhone **ppPhone);
3635   void __RPC_STUB ITPhoneEvent_get_Phone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3636   HRESULT WINAPI ITPhoneEvent_get_Event_Proxy(ITPhoneEvent *This,PHONE_EVENT *pEvent);
3637   void __RPC_STUB ITPhoneEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3638   HRESULT WINAPI ITPhoneEvent_get_ButtonState_Proxy(ITPhoneEvent *This,PHONE_BUTTON_STATE *pState);
3639   void __RPC_STUB ITPhoneEvent_get_ButtonState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3640   HRESULT WINAPI ITPhoneEvent_get_HookSwitchState_Proxy(ITPhoneEvent *This,PHONE_HOOK_SWITCH_STATE *pState);
3641   void __RPC_STUB ITPhoneEvent_get_HookSwitchState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3642   HRESULT WINAPI ITPhoneEvent_get_HookSwitchDevice_Proxy(ITPhoneEvent *This,PHONE_HOOK_SWITCH_DEVICE *pDevice);
3643   void __RPC_STUB ITPhoneEvent_get_HookSwitchDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3644   HRESULT WINAPI ITPhoneEvent_get_RingMode_Proxy(ITPhoneEvent *This,__LONG32 *plRingMode);
3645   void __RPC_STUB ITPhoneEvent_get_RingMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3646   HRESULT WINAPI ITPhoneEvent_get_ButtonLampId_Proxy(ITPhoneEvent *This,__LONG32 *plButtonLampId);
3647   void __RPC_STUB ITPhoneEvent_get_ButtonLampId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3648   HRESULT WINAPI ITPhoneEvent_get_NumberGathered_Proxy(ITPhoneEvent *This,BSTR *ppNumber);
3649   void __RPC_STUB ITPhoneEvent_get_NumberGathered_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3650   HRESULT WINAPI ITPhoneEvent_get_Call_Proxy(ITPhoneEvent *This,ITCallInfo **ppCallInfo);
3651   void __RPC_STUB ITPhoneEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3652 #endif
3653 
3654 #ifndef __ITCallStateEvent_INTERFACE_DEFINED__
3655 #define __ITCallStateEvent_INTERFACE_DEFINED__
3656   EXTERN_C const IID IID_ITCallStateEvent;
3657 #if defined(__cplusplus) && !defined(CINTERFACE)
3658   struct ITCallStateEvent : public IDispatch {
3659   public:
3660     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
3661     virtual HRESULT WINAPI get_State(CALL_STATE *pCallState) = 0;
3662     virtual HRESULT WINAPI get_Cause(CALL_STATE_EVENT_CAUSE *pCEC) = 0;
3663     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
3664   };
3665 #else
3666   typedef struct ITCallStateEventVtbl {
3667     BEGIN_INTERFACE
3668       HRESULT (WINAPI *QueryInterface)(ITCallStateEvent *This,REFIID riid,void **ppvObject);
3669       ULONG (WINAPI *AddRef)(ITCallStateEvent *This);
3670       ULONG (WINAPI *Release)(ITCallStateEvent *This);
3671       HRESULT (WINAPI *GetTypeInfoCount)(ITCallStateEvent *This,UINT *pctinfo);
3672       HRESULT (WINAPI *GetTypeInfo)(ITCallStateEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3673       HRESULT (WINAPI *GetIDsOfNames)(ITCallStateEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3674       HRESULT (WINAPI *Invoke)(ITCallStateEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3675       HRESULT (WINAPI *get_Call)(ITCallStateEvent *This,ITCallInfo **ppCallInfo);
3676       HRESULT (WINAPI *get_State)(ITCallStateEvent *This,CALL_STATE *pCallState);
3677       HRESULT (WINAPI *get_Cause)(ITCallStateEvent *This,CALL_STATE_EVENT_CAUSE *pCEC);
3678       HRESULT (WINAPI *get_CallbackInstance)(ITCallStateEvent *This,__LONG32 *plCallbackInstance);
3679     END_INTERFACE
3680   } ITCallStateEventVtbl;
3681   struct ITCallStateEvent {
3682     CONST_VTBL struct ITCallStateEventVtbl *lpVtbl;
3683   };
3684 #ifdef COBJMACROS
3685 #define ITCallStateEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3686 #define ITCallStateEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
3687 #define ITCallStateEvent_Release(This) (This)->lpVtbl->Release(This)
3688 #define ITCallStateEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3689 #define ITCallStateEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3690 #define ITCallStateEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3691 #define ITCallStateEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3692 #define ITCallStateEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
3693 #define ITCallStateEvent_get_State(This,pCallState) (This)->lpVtbl->get_State(This,pCallState)
3694 #define ITCallStateEvent_get_Cause(This,pCEC) (This)->lpVtbl->get_Cause(This,pCEC)
3695 #define ITCallStateEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
3696 #endif
3697 #endif
3698   HRESULT WINAPI ITCallStateEvent_get_Call_Proxy(ITCallStateEvent *This,ITCallInfo **ppCallInfo);
3699   void __RPC_STUB ITCallStateEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3700   HRESULT WINAPI ITCallStateEvent_get_State_Proxy(ITCallStateEvent *This,CALL_STATE *pCallState);
3701   void __RPC_STUB ITCallStateEvent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3702   HRESULT WINAPI ITCallStateEvent_get_Cause_Proxy(ITCallStateEvent *This,CALL_STATE_EVENT_CAUSE *pCEC);
3703   void __RPC_STUB ITCallStateEvent_get_Cause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3704   HRESULT WINAPI ITCallStateEvent_get_CallbackInstance_Proxy(ITCallStateEvent *This,__LONG32 *plCallbackInstance);
3705   void __RPC_STUB ITCallStateEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3706 #endif
3707 
3708 #ifndef __ITPhoneDeviceSpecificEvent_INTERFACE_DEFINED__
3709 #define __ITPhoneDeviceSpecificEvent_INTERFACE_DEFINED__
3710   EXTERN_C const IID IID_ITPhoneDeviceSpecificEvent;
3711 #if defined(__cplusplus) && !defined(CINTERFACE)
3712   struct ITPhoneDeviceSpecificEvent : public IDispatch {
3713   public:
3714     virtual HRESULT WINAPI get_Phone(ITPhone **ppPhone) = 0;
3715     virtual HRESULT WINAPI get_lParam1(__LONG32 *pParam1) = 0;
3716     virtual HRESULT WINAPI get_lParam2(__LONG32 *pParam2) = 0;
3717     virtual HRESULT WINAPI get_lParam3(__LONG32 *pParam3) = 0;
3718   };
3719 #else
3720   typedef struct ITPhoneDeviceSpecificEventVtbl {
3721     BEGIN_INTERFACE
3722       HRESULT (WINAPI *QueryInterface)(ITPhoneDeviceSpecificEvent *This,REFIID riid,void **ppvObject);
3723       ULONG (WINAPI *AddRef)(ITPhoneDeviceSpecificEvent *This);
3724       ULONG (WINAPI *Release)(ITPhoneDeviceSpecificEvent *This);
3725       HRESULT (WINAPI *GetTypeInfoCount)(ITPhoneDeviceSpecificEvent *This,UINT *pctinfo);
3726       HRESULT (WINAPI *GetTypeInfo)(ITPhoneDeviceSpecificEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3727       HRESULT (WINAPI *GetIDsOfNames)(ITPhoneDeviceSpecificEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3728       HRESULT (WINAPI *Invoke)(ITPhoneDeviceSpecificEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3729       HRESULT (WINAPI *get_Phone)(ITPhoneDeviceSpecificEvent *This,ITPhone **ppPhone);
3730       HRESULT (WINAPI *get_lParam1)(ITPhoneDeviceSpecificEvent *This,__LONG32 *pParam1);
3731       HRESULT (WINAPI *get_lParam2)(ITPhoneDeviceSpecificEvent *This,__LONG32 *pParam2);
3732       HRESULT (WINAPI *get_lParam3)(ITPhoneDeviceSpecificEvent *This,__LONG32 *pParam3);
3733     END_INTERFACE
3734   } ITPhoneDeviceSpecificEventVtbl;
3735   struct ITPhoneDeviceSpecificEvent {
3736     CONST_VTBL struct ITPhoneDeviceSpecificEventVtbl *lpVtbl;
3737   };
3738 #ifdef COBJMACROS
3739 #define ITPhoneDeviceSpecificEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3740 #define ITPhoneDeviceSpecificEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
3741 #define ITPhoneDeviceSpecificEvent_Release(This) (This)->lpVtbl->Release(This)
3742 #define ITPhoneDeviceSpecificEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3743 #define ITPhoneDeviceSpecificEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3744 #define ITPhoneDeviceSpecificEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3745 #define ITPhoneDeviceSpecificEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3746 #define ITPhoneDeviceSpecificEvent_get_Phone(This,ppPhone) (This)->lpVtbl->get_Phone(This,ppPhone)
3747 #define ITPhoneDeviceSpecificEvent_get_lParam1(This,pParam1) (This)->lpVtbl->get_lParam1(This,pParam1)
3748 #define ITPhoneDeviceSpecificEvent_get_lParam2(This,pParam2) (This)->lpVtbl->get_lParam2(This,pParam2)
3749 #define ITPhoneDeviceSpecificEvent_get_lParam3(This,pParam3) (This)->lpVtbl->get_lParam3(This,pParam3)
3750 #endif
3751 #endif
3752   HRESULT WINAPI ITPhoneDeviceSpecificEvent_get_Phone_Proxy(ITPhoneDeviceSpecificEvent *This,ITPhone **ppPhone);
3753   void __RPC_STUB ITPhoneDeviceSpecificEvent_get_Phone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3754   HRESULT WINAPI ITPhoneDeviceSpecificEvent_get_lParam1_Proxy(ITPhoneDeviceSpecificEvent *This,__LONG32 *pParam1);
3755   void __RPC_STUB ITPhoneDeviceSpecificEvent_get_lParam1_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3756   HRESULT WINAPI ITPhoneDeviceSpecificEvent_get_lParam2_Proxy(ITPhoneDeviceSpecificEvent *This,__LONG32 *pParam2);
3757   void __RPC_STUB ITPhoneDeviceSpecificEvent_get_lParam2_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3758   HRESULT WINAPI ITPhoneDeviceSpecificEvent_get_lParam3_Proxy(ITPhoneDeviceSpecificEvent *This,__LONG32 *pParam3);
3759   void __RPC_STUB ITPhoneDeviceSpecificEvent_get_lParam3_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3760 #endif
3761 
3762 #ifndef __ITCallMediaEvent_INTERFACE_DEFINED__
3763 #define __ITCallMediaEvent_INTERFACE_DEFINED__
3764   EXTERN_C const IID IID_ITCallMediaEvent;
3765 #if defined(__cplusplus) && !defined(CINTERFACE)
3766   struct ITCallMediaEvent : public IDispatch {
3767   public:
3768     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
3769     virtual HRESULT WINAPI get_Event(CALL_MEDIA_EVENT *pCallMediaEvent) = 0;
3770     virtual HRESULT WINAPI get_Error(HRESULT *phrError) = 0;
3771     virtual HRESULT WINAPI get_Terminal(ITTerminal **ppTerminal) = 0;
3772     virtual HRESULT WINAPI get_Stream(ITStream **ppStream) = 0;
3773     virtual HRESULT WINAPI get_Cause(CALL_MEDIA_EVENT_CAUSE *pCause) = 0;
3774   };
3775 #else
3776   typedef struct ITCallMediaEventVtbl {
3777     BEGIN_INTERFACE
3778       HRESULT (WINAPI *QueryInterface)(ITCallMediaEvent *This,REFIID riid,void **ppvObject);
3779       ULONG (WINAPI *AddRef)(ITCallMediaEvent *This);
3780       ULONG (WINAPI *Release)(ITCallMediaEvent *This);
3781       HRESULT (WINAPI *GetTypeInfoCount)(ITCallMediaEvent *This,UINT *pctinfo);
3782       HRESULT (WINAPI *GetTypeInfo)(ITCallMediaEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3783       HRESULT (WINAPI *GetIDsOfNames)(ITCallMediaEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3784       HRESULT (WINAPI *Invoke)(ITCallMediaEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3785       HRESULT (WINAPI *get_Call)(ITCallMediaEvent *This,ITCallInfo **ppCallInfo);
3786       HRESULT (WINAPI *get_Event)(ITCallMediaEvent *This,CALL_MEDIA_EVENT *pCallMediaEvent);
3787       HRESULT (WINAPI *get_Error)(ITCallMediaEvent *This,HRESULT *phrError);
3788       HRESULT (WINAPI *get_Terminal)(ITCallMediaEvent *This,ITTerminal **ppTerminal);
3789       HRESULT (WINAPI *get_Stream)(ITCallMediaEvent *This,ITStream **ppStream);
3790       HRESULT (WINAPI *get_Cause)(ITCallMediaEvent *This,CALL_MEDIA_EVENT_CAUSE *pCause);
3791     END_INTERFACE
3792   } ITCallMediaEventVtbl;
3793   struct ITCallMediaEvent {
3794     CONST_VTBL struct ITCallMediaEventVtbl *lpVtbl;
3795   };
3796 #ifdef COBJMACROS
3797 #define ITCallMediaEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3798 #define ITCallMediaEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
3799 #define ITCallMediaEvent_Release(This) (This)->lpVtbl->Release(This)
3800 #define ITCallMediaEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3801 #define ITCallMediaEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3802 #define ITCallMediaEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3803 #define ITCallMediaEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3804 #define ITCallMediaEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
3805 #define ITCallMediaEvent_get_Event(This,pCallMediaEvent) (This)->lpVtbl->get_Event(This,pCallMediaEvent)
3806 #define ITCallMediaEvent_get_Error(This,phrError) (This)->lpVtbl->get_Error(This,phrError)
3807 #define ITCallMediaEvent_get_Terminal(This,ppTerminal) (This)->lpVtbl->get_Terminal(This,ppTerminal)
3808 #define ITCallMediaEvent_get_Stream(This,ppStream) (This)->lpVtbl->get_Stream(This,ppStream)
3809 #define ITCallMediaEvent_get_Cause(This,pCause) (This)->lpVtbl->get_Cause(This,pCause)
3810 #endif
3811 #endif
3812   HRESULT WINAPI ITCallMediaEvent_get_Call_Proxy(ITCallMediaEvent *This,ITCallInfo **ppCallInfo);
3813   void __RPC_STUB ITCallMediaEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3814   HRESULT WINAPI ITCallMediaEvent_get_Event_Proxy(ITCallMediaEvent *This,CALL_MEDIA_EVENT *pCallMediaEvent);
3815   void __RPC_STUB ITCallMediaEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3816   HRESULT WINAPI ITCallMediaEvent_get_Error_Proxy(ITCallMediaEvent *This,HRESULT *phrError);
3817   void __RPC_STUB ITCallMediaEvent_get_Error_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3818   HRESULT WINAPI ITCallMediaEvent_get_Terminal_Proxy(ITCallMediaEvent *This,ITTerminal **ppTerminal);
3819   void __RPC_STUB ITCallMediaEvent_get_Terminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3820   HRESULT WINAPI ITCallMediaEvent_get_Stream_Proxy(ITCallMediaEvent *This,ITStream **ppStream);
3821   void __RPC_STUB ITCallMediaEvent_get_Stream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3822   HRESULT WINAPI ITCallMediaEvent_get_Cause_Proxy(ITCallMediaEvent *This,CALL_MEDIA_EVENT_CAUSE *pCause);
3823   void __RPC_STUB ITCallMediaEvent_get_Cause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3824 #endif
3825 
3826 #ifndef __ITDigitDetectionEvent_INTERFACE_DEFINED__
3827 #define __ITDigitDetectionEvent_INTERFACE_DEFINED__
3828   EXTERN_C const IID IID_ITDigitDetectionEvent;
3829 #if defined(__cplusplus) && !defined(CINTERFACE)
3830   struct ITDigitDetectionEvent : public IDispatch {
3831   public:
3832     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
3833     virtual HRESULT WINAPI get_Digit(unsigned char *pucDigit) = 0;
3834     virtual HRESULT WINAPI get_DigitMode(TAPI_DIGITMODE *pDigitMode) = 0;
3835     virtual HRESULT WINAPI get_TickCount(__LONG32 *plTickCount) = 0;
3836     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
3837   };
3838 #else
3839   typedef struct ITDigitDetectionEventVtbl {
3840     BEGIN_INTERFACE
3841       HRESULT (WINAPI *QueryInterface)(ITDigitDetectionEvent *This,REFIID riid,void **ppvObject);
3842       ULONG (WINAPI *AddRef)(ITDigitDetectionEvent *This);
3843       ULONG (WINAPI *Release)(ITDigitDetectionEvent *This);
3844       HRESULT (WINAPI *GetTypeInfoCount)(ITDigitDetectionEvent *This,UINT *pctinfo);
3845       HRESULT (WINAPI *GetTypeInfo)(ITDigitDetectionEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3846       HRESULT (WINAPI *GetIDsOfNames)(ITDigitDetectionEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3847       HRESULT (WINAPI *Invoke)(ITDigitDetectionEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3848       HRESULT (WINAPI *get_Call)(ITDigitDetectionEvent *This,ITCallInfo **ppCallInfo);
3849       HRESULT (WINAPI *get_Digit)(ITDigitDetectionEvent *This,unsigned char *pucDigit);
3850       HRESULT (WINAPI *get_DigitMode)(ITDigitDetectionEvent *This,TAPI_DIGITMODE *pDigitMode);
3851       HRESULT (WINAPI *get_TickCount)(ITDigitDetectionEvent *This,__LONG32 *plTickCount);
3852       HRESULT (WINAPI *get_CallbackInstance)(ITDigitDetectionEvent *This,__LONG32 *plCallbackInstance);
3853     END_INTERFACE
3854   } ITDigitDetectionEventVtbl;
3855   struct ITDigitDetectionEvent {
3856     CONST_VTBL struct ITDigitDetectionEventVtbl *lpVtbl;
3857   };
3858 #ifdef COBJMACROS
3859 #define ITDigitDetectionEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3860 #define ITDigitDetectionEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
3861 #define ITDigitDetectionEvent_Release(This) (This)->lpVtbl->Release(This)
3862 #define ITDigitDetectionEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3863 #define ITDigitDetectionEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3864 #define ITDigitDetectionEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3865 #define ITDigitDetectionEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3866 #define ITDigitDetectionEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
3867 #define ITDigitDetectionEvent_get_Digit(This,pucDigit) (This)->lpVtbl->get_Digit(This,pucDigit)
3868 #define ITDigitDetectionEvent_get_DigitMode(This,pDigitMode) (This)->lpVtbl->get_DigitMode(This,pDigitMode)
3869 #define ITDigitDetectionEvent_get_TickCount(This,plTickCount) (This)->lpVtbl->get_TickCount(This,plTickCount)
3870 #define ITDigitDetectionEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
3871 #endif
3872 #endif
3873   HRESULT WINAPI ITDigitDetectionEvent_get_Call_Proxy(ITDigitDetectionEvent *This,ITCallInfo **ppCallInfo);
3874   void __RPC_STUB ITDigitDetectionEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3875   HRESULT WINAPI ITDigitDetectionEvent_get_Digit_Proxy(ITDigitDetectionEvent *This,unsigned char *pucDigit);
3876   void __RPC_STUB ITDigitDetectionEvent_get_Digit_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3877   HRESULT WINAPI ITDigitDetectionEvent_get_DigitMode_Proxy(ITDigitDetectionEvent *This,TAPI_DIGITMODE *pDigitMode);
3878   void __RPC_STUB ITDigitDetectionEvent_get_DigitMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3879   HRESULT WINAPI ITDigitDetectionEvent_get_TickCount_Proxy(ITDigitDetectionEvent *This,__LONG32 *plTickCount);
3880   void __RPC_STUB ITDigitDetectionEvent_get_TickCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3881   HRESULT WINAPI ITDigitDetectionEvent_get_CallbackInstance_Proxy(ITDigitDetectionEvent *This,__LONG32 *plCallbackInstance);
3882   void __RPC_STUB ITDigitDetectionEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3883 #endif
3884 
3885 #ifndef __ITDigitGenerationEvent_INTERFACE_DEFINED__
3886 #define __ITDigitGenerationEvent_INTERFACE_DEFINED__
3887   EXTERN_C const IID IID_ITDigitGenerationEvent;
3888 #if defined(__cplusplus) && !defined(CINTERFACE)
3889   struct ITDigitGenerationEvent : public IDispatch {
3890   public:
3891     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
3892     virtual HRESULT WINAPI get_GenerationTermination(__LONG32 *plGenerationTermination) = 0;
3893     virtual HRESULT WINAPI get_TickCount(__LONG32 *plTickCount) = 0;
3894     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
3895   };
3896 #else
3897   typedef struct ITDigitGenerationEventVtbl {
3898     BEGIN_INTERFACE
3899       HRESULT (WINAPI *QueryInterface)(ITDigitGenerationEvent *This,REFIID riid,void **ppvObject);
3900       ULONG (WINAPI *AddRef)(ITDigitGenerationEvent *This);
3901       ULONG (WINAPI *Release)(ITDigitGenerationEvent *This);
3902       HRESULT (WINAPI *GetTypeInfoCount)(ITDigitGenerationEvent *This,UINT *pctinfo);
3903       HRESULT (WINAPI *GetTypeInfo)(ITDigitGenerationEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3904       HRESULT (WINAPI *GetIDsOfNames)(ITDigitGenerationEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3905       HRESULT (WINAPI *Invoke)(ITDigitGenerationEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3906       HRESULT (WINAPI *get_Call)(ITDigitGenerationEvent *This,ITCallInfo **ppCallInfo);
3907       HRESULT (WINAPI *get_GenerationTermination)(ITDigitGenerationEvent *This,__LONG32 *plGenerationTermination);
3908       HRESULT (WINAPI *get_TickCount)(ITDigitGenerationEvent *This,__LONG32 *plTickCount);
3909       HRESULT (WINAPI *get_CallbackInstance)(ITDigitGenerationEvent *This,__LONG32 *plCallbackInstance);
3910     END_INTERFACE
3911   } ITDigitGenerationEventVtbl;
3912   struct ITDigitGenerationEvent {
3913     CONST_VTBL struct ITDigitGenerationEventVtbl *lpVtbl;
3914   };
3915 #ifdef COBJMACROS
3916 #define ITDigitGenerationEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3917 #define ITDigitGenerationEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
3918 #define ITDigitGenerationEvent_Release(This) (This)->lpVtbl->Release(This)
3919 #define ITDigitGenerationEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3920 #define ITDigitGenerationEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3921 #define ITDigitGenerationEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3922 #define ITDigitGenerationEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3923 #define ITDigitGenerationEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
3924 #define ITDigitGenerationEvent_get_GenerationTermination(This,plGenerationTermination) (This)->lpVtbl->get_GenerationTermination(This,plGenerationTermination)
3925 #define ITDigitGenerationEvent_get_TickCount(This,plTickCount) (This)->lpVtbl->get_TickCount(This,plTickCount)
3926 #define ITDigitGenerationEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
3927 #endif
3928 #endif
3929   HRESULT WINAPI ITDigitGenerationEvent_get_Call_Proxy(ITDigitGenerationEvent *This,ITCallInfo **ppCallInfo);
3930   void __RPC_STUB ITDigitGenerationEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3931   HRESULT WINAPI ITDigitGenerationEvent_get_GenerationTermination_Proxy(ITDigitGenerationEvent *This,__LONG32 *plGenerationTermination);
3932   void __RPC_STUB ITDigitGenerationEvent_get_GenerationTermination_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3933   HRESULT WINAPI ITDigitGenerationEvent_get_TickCount_Proxy(ITDigitGenerationEvent *This,__LONG32 *plTickCount);
3934   void __RPC_STUB ITDigitGenerationEvent_get_TickCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3935   HRESULT WINAPI ITDigitGenerationEvent_get_CallbackInstance_Proxy(ITDigitGenerationEvent *This,__LONG32 *plCallbackInstance);
3936   void __RPC_STUB ITDigitGenerationEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3937 #endif
3938 
3939 #ifndef __ITDigitsGatheredEvent_INTERFACE_DEFINED__
3940 #define __ITDigitsGatheredEvent_INTERFACE_DEFINED__
3941   EXTERN_C const IID IID_ITDigitsGatheredEvent;
3942 #if defined(__cplusplus) && !defined(CINTERFACE)
3943   struct ITDigitsGatheredEvent : public IDispatch {
3944   public:
3945     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
3946     virtual HRESULT WINAPI get_Digits(BSTR *ppDigits) = 0;
3947     virtual HRESULT WINAPI get_GatherTermination(TAPI_GATHERTERM *pGatherTermination) = 0;
3948     virtual HRESULT WINAPI get_TickCount(__LONG32 *plTickCount) = 0;
3949     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
3950   };
3951 #else
3952   typedef struct ITDigitsGatheredEventVtbl {
3953     BEGIN_INTERFACE
3954       HRESULT (WINAPI *QueryInterface)(ITDigitsGatheredEvent *This,REFIID riid,void **ppvObject);
3955       ULONG (WINAPI *AddRef)(ITDigitsGatheredEvent *This);
3956       ULONG (WINAPI *Release)(ITDigitsGatheredEvent *This);
3957       HRESULT (WINAPI *GetTypeInfoCount)(ITDigitsGatheredEvent *This,UINT *pctinfo);
3958       HRESULT (WINAPI *GetTypeInfo)(ITDigitsGatheredEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
3959       HRESULT (WINAPI *GetIDsOfNames)(ITDigitsGatheredEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
3960       HRESULT (WINAPI *Invoke)(ITDigitsGatheredEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
3961       HRESULT (WINAPI *get_Call)(ITDigitsGatheredEvent *This,ITCallInfo **ppCallInfo);
3962       HRESULT (WINAPI *get_Digits)(ITDigitsGatheredEvent *This,BSTR *ppDigits);
3963       HRESULT (WINAPI *get_GatherTermination)(ITDigitsGatheredEvent *This,TAPI_GATHERTERM *pGatherTermination);
3964       HRESULT (WINAPI *get_TickCount)(ITDigitsGatheredEvent *This,__LONG32 *plTickCount);
3965       HRESULT (WINAPI *get_CallbackInstance)(ITDigitsGatheredEvent *This,__LONG32 *plCallbackInstance);
3966     END_INTERFACE
3967   } ITDigitsGatheredEventVtbl;
3968   struct ITDigitsGatheredEvent {
3969     CONST_VTBL struct ITDigitsGatheredEventVtbl *lpVtbl;
3970   };
3971 #ifdef COBJMACROS
3972 #define ITDigitsGatheredEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3973 #define ITDigitsGatheredEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
3974 #define ITDigitsGatheredEvent_Release(This) (This)->lpVtbl->Release(This)
3975 #define ITDigitsGatheredEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3976 #define ITDigitsGatheredEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3977 #define ITDigitsGatheredEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3978 #define ITDigitsGatheredEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3979 #define ITDigitsGatheredEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
3980 #define ITDigitsGatheredEvent_get_Digits(This,ppDigits) (This)->lpVtbl->get_Digits(This,ppDigits)
3981 #define ITDigitsGatheredEvent_get_GatherTermination(This,pGatherTermination) (This)->lpVtbl->get_GatherTermination(This,pGatherTermination)
3982 #define ITDigitsGatheredEvent_get_TickCount(This,plTickCount) (This)->lpVtbl->get_TickCount(This,plTickCount)
3983 #define ITDigitsGatheredEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
3984 #endif
3985 #endif
3986   HRESULT WINAPI ITDigitsGatheredEvent_get_Call_Proxy(ITDigitsGatheredEvent *This,ITCallInfo **ppCallInfo);
3987   void __RPC_STUB ITDigitsGatheredEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3988   HRESULT WINAPI ITDigitsGatheredEvent_get_Digits_Proxy(ITDigitsGatheredEvent *This,BSTR *ppDigits);
3989   void __RPC_STUB ITDigitsGatheredEvent_get_Digits_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3990   HRESULT WINAPI ITDigitsGatheredEvent_get_GatherTermination_Proxy(ITDigitsGatheredEvent *This,TAPI_GATHERTERM *pGatherTermination);
3991   void __RPC_STUB ITDigitsGatheredEvent_get_GatherTermination_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3992   HRESULT WINAPI ITDigitsGatheredEvent_get_TickCount_Proxy(ITDigitsGatheredEvent *This,__LONG32 *plTickCount);
3993   void __RPC_STUB ITDigitsGatheredEvent_get_TickCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3994   HRESULT WINAPI ITDigitsGatheredEvent_get_CallbackInstance_Proxy(ITDigitsGatheredEvent *This,__LONG32 *plCallbackInstance);
3995   void __RPC_STUB ITDigitsGatheredEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
3996 #endif
3997 
3998 #ifndef __ITToneDetectionEvent_INTERFACE_DEFINED__
3999 #define __ITToneDetectionEvent_INTERFACE_DEFINED__
4000   EXTERN_C const IID IID_ITToneDetectionEvent;
4001 #if defined(__cplusplus) && !defined(CINTERFACE)
4002   struct ITToneDetectionEvent : public IDispatch {
4003   public:
4004     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCallInfo) = 0;
4005     virtual HRESULT WINAPI get_AppSpecific(__LONG32 *plAppSpecific) = 0;
4006     virtual HRESULT WINAPI get_TickCount(__LONG32 *plTickCount) = 0;
4007     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
4008   };
4009 #else
4010   typedef struct ITToneDetectionEventVtbl {
4011     BEGIN_INTERFACE
4012       HRESULT (WINAPI *QueryInterface)(ITToneDetectionEvent *This,REFIID riid,void **ppvObject);
4013       ULONG (WINAPI *AddRef)(ITToneDetectionEvent *This);
4014       ULONG (WINAPI *Release)(ITToneDetectionEvent *This);
4015       HRESULT (WINAPI *GetTypeInfoCount)(ITToneDetectionEvent *This,UINT *pctinfo);
4016       HRESULT (WINAPI *GetTypeInfo)(ITToneDetectionEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4017       HRESULT (WINAPI *GetIDsOfNames)(ITToneDetectionEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4018       HRESULT (WINAPI *Invoke)(ITToneDetectionEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4019       HRESULT (WINAPI *get_Call)(ITToneDetectionEvent *This,ITCallInfo **ppCallInfo);
4020       HRESULT (WINAPI *get_AppSpecific)(ITToneDetectionEvent *This,__LONG32 *plAppSpecific);
4021       HRESULT (WINAPI *get_TickCount)(ITToneDetectionEvent *This,__LONG32 *plTickCount);
4022       HRESULT (WINAPI *get_CallbackInstance)(ITToneDetectionEvent *This,__LONG32 *plCallbackInstance);
4023     END_INTERFACE
4024   } ITToneDetectionEventVtbl;
4025   struct ITToneDetectionEvent {
4026     CONST_VTBL struct ITToneDetectionEventVtbl *lpVtbl;
4027   };
4028 #ifdef COBJMACROS
4029 #define ITToneDetectionEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4030 #define ITToneDetectionEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4031 #define ITToneDetectionEvent_Release(This) (This)->lpVtbl->Release(This)
4032 #define ITToneDetectionEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4033 #define ITToneDetectionEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4034 #define ITToneDetectionEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4035 #define ITToneDetectionEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4036 #define ITToneDetectionEvent_get_Call(This,ppCallInfo) (This)->lpVtbl->get_Call(This,ppCallInfo)
4037 #define ITToneDetectionEvent_get_AppSpecific(This,plAppSpecific) (This)->lpVtbl->get_AppSpecific(This,plAppSpecific)
4038 #define ITToneDetectionEvent_get_TickCount(This,plTickCount) (This)->lpVtbl->get_TickCount(This,plTickCount)
4039 #define ITToneDetectionEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
4040 #endif
4041 #endif
4042   HRESULT WINAPI ITToneDetectionEvent_get_Call_Proxy(ITToneDetectionEvent *This,ITCallInfo **ppCallInfo);
4043   void __RPC_STUB ITToneDetectionEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4044   HRESULT WINAPI ITToneDetectionEvent_get_AppSpecific_Proxy(ITToneDetectionEvent *This,__LONG32 *plAppSpecific);
4045   void __RPC_STUB ITToneDetectionEvent_get_AppSpecific_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4046   HRESULT WINAPI ITToneDetectionEvent_get_TickCount_Proxy(ITToneDetectionEvent *This,__LONG32 *plTickCount);
4047   void __RPC_STUB ITToneDetectionEvent_get_TickCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4048   HRESULT WINAPI ITToneDetectionEvent_get_CallbackInstance_Proxy(ITToneDetectionEvent *This,__LONG32 *plCallbackInstance);
4049   void __RPC_STUB ITToneDetectionEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4050 #endif
4051 
4052 #ifndef __ITTAPIObjectEvent_INTERFACE_DEFINED__
4053 #define __ITTAPIObjectEvent_INTERFACE_DEFINED__
4054   EXTERN_C const IID IID_ITTAPIObjectEvent;
4055 #if defined(__cplusplus) && !defined(CINTERFACE)
4056   struct ITTAPIObjectEvent : public IDispatch {
4057   public:
4058     virtual HRESULT WINAPI get_TAPIObject(ITTAPI **ppTAPIObject) = 0;
4059     virtual HRESULT WINAPI get_Event(TAPIOBJECT_EVENT *pEvent) = 0;
4060     virtual HRESULT WINAPI get_Address(ITAddress **ppAddress) = 0;
4061     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
4062   };
4063 #else
4064   typedef struct ITTAPIObjectEventVtbl {
4065     BEGIN_INTERFACE
4066       HRESULT (WINAPI *QueryInterface)(ITTAPIObjectEvent *This,REFIID riid,void **ppvObject);
4067       ULONG (WINAPI *AddRef)(ITTAPIObjectEvent *This);
4068       ULONG (WINAPI *Release)(ITTAPIObjectEvent *This);
4069       HRESULT (WINAPI *GetTypeInfoCount)(ITTAPIObjectEvent *This,UINT *pctinfo);
4070       HRESULT (WINAPI *GetTypeInfo)(ITTAPIObjectEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4071       HRESULT (WINAPI *GetIDsOfNames)(ITTAPIObjectEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4072       HRESULT (WINAPI *Invoke)(ITTAPIObjectEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4073       HRESULT (WINAPI *get_TAPIObject)(ITTAPIObjectEvent *This,ITTAPI **ppTAPIObject);
4074       HRESULT (WINAPI *get_Event)(ITTAPIObjectEvent *This,TAPIOBJECT_EVENT *pEvent);
4075       HRESULT (WINAPI *get_Address)(ITTAPIObjectEvent *This,ITAddress **ppAddress);
4076       HRESULT (WINAPI *get_CallbackInstance)(ITTAPIObjectEvent *This,__LONG32 *plCallbackInstance);
4077     END_INTERFACE
4078   } ITTAPIObjectEventVtbl;
4079   struct ITTAPIObjectEvent {
4080     CONST_VTBL struct ITTAPIObjectEventVtbl *lpVtbl;
4081   };
4082 #ifdef COBJMACROS
4083 #define ITTAPIObjectEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4084 #define ITTAPIObjectEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4085 #define ITTAPIObjectEvent_Release(This) (This)->lpVtbl->Release(This)
4086 #define ITTAPIObjectEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4087 #define ITTAPIObjectEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4088 #define ITTAPIObjectEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4089 #define ITTAPIObjectEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4090 #define ITTAPIObjectEvent_get_TAPIObject(This,ppTAPIObject) (This)->lpVtbl->get_TAPIObject(This,ppTAPIObject)
4091 #define ITTAPIObjectEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
4092 #define ITTAPIObjectEvent_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
4093 #define ITTAPIObjectEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
4094 #endif
4095 #endif
4096   HRESULT WINAPI ITTAPIObjectEvent_get_TAPIObject_Proxy(ITTAPIObjectEvent *This,ITTAPI **ppTAPIObject);
4097   void __RPC_STUB ITTAPIObjectEvent_get_TAPIObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4098   HRESULT WINAPI ITTAPIObjectEvent_get_Event_Proxy(ITTAPIObjectEvent *This,TAPIOBJECT_EVENT *pEvent);
4099   void __RPC_STUB ITTAPIObjectEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4100   HRESULT WINAPI ITTAPIObjectEvent_get_Address_Proxy(ITTAPIObjectEvent *This,ITAddress **ppAddress);
4101   void __RPC_STUB ITTAPIObjectEvent_get_Address_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4102   HRESULT WINAPI ITTAPIObjectEvent_get_CallbackInstance_Proxy(ITTAPIObjectEvent *This,__LONG32 *plCallbackInstance);
4103   void __RPC_STUB ITTAPIObjectEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4104 #endif
4105 
4106 #ifndef __ITTAPIObjectEvent2_INTERFACE_DEFINED__
4107 #define __ITTAPIObjectEvent2_INTERFACE_DEFINED__
4108   EXTERN_C const IID IID_ITTAPIObjectEvent2;
4109 #if defined(__cplusplus) && !defined(CINTERFACE)
4110   struct ITTAPIObjectEvent2 : public ITTAPIObjectEvent {
4111   public:
4112     virtual HRESULT WINAPI get_Phone(ITPhone **ppPhone) = 0;
4113   };
4114 #else
4115   typedef struct ITTAPIObjectEvent2Vtbl {
4116     BEGIN_INTERFACE
4117       HRESULT (WINAPI *QueryInterface)(ITTAPIObjectEvent2 *This,REFIID riid,void **ppvObject);
4118       ULONG (WINAPI *AddRef)(ITTAPIObjectEvent2 *This);
4119       ULONG (WINAPI *Release)(ITTAPIObjectEvent2 *This);
4120       HRESULT (WINAPI *GetTypeInfoCount)(ITTAPIObjectEvent2 *This,UINT *pctinfo);
4121       HRESULT (WINAPI *GetTypeInfo)(ITTAPIObjectEvent2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4122       HRESULT (WINAPI *GetIDsOfNames)(ITTAPIObjectEvent2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4123       HRESULT (WINAPI *Invoke)(ITTAPIObjectEvent2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4124       HRESULT (WINAPI *get_TAPIObject)(ITTAPIObjectEvent2 *This,ITTAPI **ppTAPIObject);
4125       HRESULT (WINAPI *get_Event)(ITTAPIObjectEvent2 *This,TAPIOBJECT_EVENT *pEvent);
4126       HRESULT (WINAPI *get_Address)(ITTAPIObjectEvent2 *This,ITAddress **ppAddress);
4127       HRESULT (WINAPI *get_CallbackInstance)(ITTAPIObjectEvent2 *This,__LONG32 *plCallbackInstance);
4128       HRESULT (WINAPI *get_Phone)(ITTAPIObjectEvent2 *This,ITPhone **ppPhone);
4129     END_INTERFACE
4130   } ITTAPIObjectEvent2Vtbl;
4131   struct ITTAPIObjectEvent2 {
4132     CONST_VTBL struct ITTAPIObjectEvent2Vtbl *lpVtbl;
4133   };
4134 #ifdef COBJMACROS
4135 #define ITTAPIObjectEvent2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4136 #define ITTAPIObjectEvent2_AddRef(This) (This)->lpVtbl->AddRef(This)
4137 #define ITTAPIObjectEvent2_Release(This) (This)->lpVtbl->Release(This)
4138 #define ITTAPIObjectEvent2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4139 #define ITTAPIObjectEvent2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4140 #define ITTAPIObjectEvent2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4141 #define ITTAPIObjectEvent2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4142 #define ITTAPIObjectEvent2_get_TAPIObject(This,ppTAPIObject) (This)->lpVtbl->get_TAPIObject(This,ppTAPIObject)
4143 #define ITTAPIObjectEvent2_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
4144 #define ITTAPIObjectEvent2_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
4145 #define ITTAPIObjectEvent2_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
4146 #define ITTAPIObjectEvent2_get_Phone(This,ppPhone) (This)->lpVtbl->get_Phone(This,ppPhone)
4147 #endif
4148 #endif
4149   HRESULT WINAPI ITTAPIObjectEvent2_get_Phone_Proxy(ITTAPIObjectEvent2 *This,ITPhone **ppPhone);
4150   void __RPC_STUB ITTAPIObjectEvent2_get_Phone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4151 #endif
4152 
4153 #ifndef __ITTAPIEventNotification_INTERFACE_DEFINED__
4154 #define __ITTAPIEventNotification_INTERFACE_DEFINED__
4155   EXTERN_C const IID IID_ITTAPIEventNotification;
4156 #if defined(__cplusplus) && !defined(CINTERFACE)
4157   struct ITTAPIEventNotification : public IUnknown {
4158   public:
4159     virtual HRESULT WINAPI Event(TAPI_EVENT TapiEvent,IDispatch *pEvent) = 0;
4160   };
4161 #else
4162   typedef struct ITTAPIEventNotificationVtbl {
4163     BEGIN_INTERFACE
4164       HRESULT (WINAPI *QueryInterface)(ITTAPIEventNotification *This,REFIID riid,void **ppvObject);
4165       ULONG (WINAPI *AddRef)(ITTAPIEventNotification *This);
4166       ULONG (WINAPI *Release)(ITTAPIEventNotification *This);
4167       HRESULT (WINAPI *Event)(ITTAPIEventNotification *This,TAPI_EVENT TapiEvent,IDispatch *pEvent);
4168     END_INTERFACE
4169   } ITTAPIEventNotificationVtbl;
4170   struct ITTAPIEventNotification {
4171     CONST_VTBL struct ITTAPIEventNotificationVtbl *lpVtbl;
4172   };
4173 #ifdef COBJMACROS
4174 #define ITTAPIEventNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4175 #define ITTAPIEventNotification_AddRef(This) (This)->lpVtbl->AddRef(This)
4176 #define ITTAPIEventNotification_Release(This) (This)->lpVtbl->Release(This)
4177 #define ITTAPIEventNotification_Event(This,TapiEvent,pEvent) (This)->lpVtbl->Event(This,TapiEvent,pEvent)
4178 #endif
4179 #endif
4180   HRESULT WINAPI ITTAPIEventNotification_Event_Proxy(ITTAPIEventNotification *This,TAPI_EVENT TapiEvent,IDispatch *pEvent);
4181   void __RPC_STUB ITTAPIEventNotification_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4182 #endif
4183 
4184 #ifndef __ITCallHubEvent_INTERFACE_DEFINED__
4185 #define __ITCallHubEvent_INTERFACE_DEFINED__
4186   EXTERN_C const IID IID_ITCallHubEvent;
4187 #if defined(__cplusplus) && !defined(CINTERFACE)
4188   struct ITCallHubEvent : public IDispatch {
4189   public:
4190     virtual HRESULT WINAPI get_Event(CALLHUB_EVENT *pEvent) = 0;
4191     virtual HRESULT WINAPI get_CallHub(ITCallHub **ppCallHub) = 0;
4192     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4193   };
4194 #else
4195   typedef struct ITCallHubEventVtbl {
4196     BEGIN_INTERFACE
4197       HRESULT (WINAPI *QueryInterface)(ITCallHubEvent *This,REFIID riid,void **ppvObject);
4198       ULONG (WINAPI *AddRef)(ITCallHubEvent *This);
4199       ULONG (WINAPI *Release)(ITCallHubEvent *This);
4200       HRESULT (WINAPI *GetTypeInfoCount)(ITCallHubEvent *This,UINT *pctinfo);
4201       HRESULT (WINAPI *GetTypeInfo)(ITCallHubEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4202       HRESULT (WINAPI *GetIDsOfNames)(ITCallHubEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4203       HRESULT (WINAPI *Invoke)(ITCallHubEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4204       HRESULT (WINAPI *get_Event)(ITCallHubEvent *This,CALLHUB_EVENT *pEvent);
4205       HRESULT (WINAPI *get_CallHub)(ITCallHubEvent *This,ITCallHub **ppCallHub);
4206       HRESULT (WINAPI *get_Call)(ITCallHubEvent *This,ITCallInfo **ppCall);
4207     END_INTERFACE
4208   } ITCallHubEventVtbl;
4209   struct ITCallHubEvent {
4210     CONST_VTBL struct ITCallHubEventVtbl *lpVtbl;
4211   };
4212 #ifdef COBJMACROS
4213 #define ITCallHubEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4214 #define ITCallHubEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4215 #define ITCallHubEvent_Release(This) (This)->lpVtbl->Release(This)
4216 #define ITCallHubEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4217 #define ITCallHubEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4218 #define ITCallHubEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4219 #define ITCallHubEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4220 #define ITCallHubEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
4221 #define ITCallHubEvent_get_CallHub(This,ppCallHub) (This)->lpVtbl->get_CallHub(This,ppCallHub)
4222 #define ITCallHubEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4223 #endif
4224 #endif
4225   HRESULT WINAPI ITCallHubEvent_get_Event_Proxy(ITCallHubEvent *This,CALLHUB_EVENT *pEvent);
4226   void __RPC_STUB ITCallHubEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4227   HRESULT WINAPI ITCallHubEvent_get_CallHub_Proxy(ITCallHubEvent *This,ITCallHub **ppCallHub);
4228   void __RPC_STUB ITCallHubEvent_get_CallHub_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4229   HRESULT WINAPI ITCallHubEvent_get_Call_Proxy(ITCallHubEvent *This,ITCallInfo **ppCall);
4230   void __RPC_STUB ITCallHubEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4231 #endif
4232 
4233 #ifndef __ITAddressEvent_INTERFACE_DEFINED__
4234 #define __ITAddressEvent_INTERFACE_DEFINED__
4235   EXTERN_C const IID IID_ITAddressEvent;
4236 #if defined(__cplusplus) && !defined(CINTERFACE)
4237   struct ITAddressEvent : public IDispatch {
4238   public:
4239     virtual HRESULT WINAPI get_Address(ITAddress **ppAddress) = 0;
4240     virtual HRESULT WINAPI get_Event(ADDRESS_EVENT *pEvent) = 0;
4241     virtual HRESULT WINAPI get_Terminal(ITTerminal **ppTerminal) = 0;
4242   };
4243 #else
4244   typedef struct ITAddressEventVtbl {
4245     BEGIN_INTERFACE
4246       HRESULT (WINAPI *QueryInterface)(ITAddressEvent *This,REFIID riid,void **ppvObject);
4247       ULONG (WINAPI *AddRef)(ITAddressEvent *This);
4248       ULONG (WINAPI *Release)(ITAddressEvent *This);
4249       HRESULT (WINAPI *GetTypeInfoCount)(ITAddressEvent *This,UINT *pctinfo);
4250       HRESULT (WINAPI *GetTypeInfo)(ITAddressEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4251       HRESULT (WINAPI *GetIDsOfNames)(ITAddressEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4252       HRESULT (WINAPI *Invoke)(ITAddressEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4253       HRESULT (WINAPI *get_Address)(ITAddressEvent *This,ITAddress **ppAddress);
4254       HRESULT (WINAPI *get_Event)(ITAddressEvent *This,ADDRESS_EVENT *pEvent);
4255       HRESULT (WINAPI *get_Terminal)(ITAddressEvent *This,ITTerminal **ppTerminal);
4256     END_INTERFACE
4257   } ITAddressEventVtbl;
4258   struct ITAddressEvent {
4259     CONST_VTBL struct ITAddressEventVtbl *lpVtbl;
4260   };
4261 #ifdef COBJMACROS
4262 #define ITAddressEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4263 #define ITAddressEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4264 #define ITAddressEvent_Release(This) (This)->lpVtbl->Release(This)
4265 #define ITAddressEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4266 #define ITAddressEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4267 #define ITAddressEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4268 #define ITAddressEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4269 #define ITAddressEvent_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
4270 #define ITAddressEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
4271 #define ITAddressEvent_get_Terminal(This,ppTerminal) (This)->lpVtbl->get_Terminal(This,ppTerminal)
4272 #endif
4273 #endif
4274   HRESULT WINAPI ITAddressEvent_get_Address_Proxy(ITAddressEvent *This,ITAddress **ppAddress);
4275   void __RPC_STUB ITAddressEvent_get_Address_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4276   HRESULT WINAPI ITAddressEvent_get_Event_Proxy(ITAddressEvent *This,ADDRESS_EVENT *pEvent);
4277   void __RPC_STUB ITAddressEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4278   HRESULT WINAPI ITAddressEvent_get_Terminal_Proxy(ITAddressEvent *This,ITTerminal **ppTerminal);
4279   void __RPC_STUB ITAddressEvent_get_Terminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4280 #endif
4281 
4282 #ifndef __ITAddressDeviceSpecificEvent_INTERFACE_DEFINED__
4283 #define __ITAddressDeviceSpecificEvent_INTERFACE_DEFINED__
4284   EXTERN_C const IID IID_ITAddressDeviceSpecificEvent;
4285 #if defined(__cplusplus) && !defined(CINTERFACE)
4286   struct ITAddressDeviceSpecificEvent : public IDispatch {
4287   public:
4288     virtual HRESULT WINAPI get_Address(ITAddress **ppAddress) = 0;
4289     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4290     virtual HRESULT WINAPI get_lParam1(__LONG32 *pParam1) = 0;
4291     virtual HRESULT WINAPI get_lParam2(__LONG32 *pParam2) = 0;
4292     virtual HRESULT WINAPI get_lParam3(__LONG32 *pParam3) = 0;
4293   };
4294 #else
4295   typedef struct ITAddressDeviceSpecificEventVtbl {
4296     BEGIN_INTERFACE
4297       HRESULT (WINAPI *QueryInterface)(ITAddressDeviceSpecificEvent *This,REFIID riid,void **ppvObject);
4298       ULONG (WINAPI *AddRef)(ITAddressDeviceSpecificEvent *This);
4299       ULONG (WINAPI *Release)(ITAddressDeviceSpecificEvent *This);
4300       HRESULT (WINAPI *GetTypeInfoCount)(ITAddressDeviceSpecificEvent *This,UINT *pctinfo);
4301       HRESULT (WINAPI *GetTypeInfo)(ITAddressDeviceSpecificEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4302       HRESULT (WINAPI *GetIDsOfNames)(ITAddressDeviceSpecificEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4303       HRESULT (WINAPI *Invoke)(ITAddressDeviceSpecificEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4304       HRESULT (WINAPI *get_Address)(ITAddressDeviceSpecificEvent *This,ITAddress **ppAddress);
4305       HRESULT (WINAPI *get_Call)(ITAddressDeviceSpecificEvent *This,ITCallInfo **ppCall);
4306       HRESULT (WINAPI *get_lParam1)(ITAddressDeviceSpecificEvent *This,__LONG32 *pParam1);
4307       HRESULT (WINAPI *get_lParam2)(ITAddressDeviceSpecificEvent *This,__LONG32 *pParam2);
4308       HRESULT (WINAPI *get_lParam3)(ITAddressDeviceSpecificEvent *This,__LONG32 *pParam3);
4309     END_INTERFACE
4310   } ITAddressDeviceSpecificEventVtbl;
4311   struct ITAddressDeviceSpecificEvent {
4312     CONST_VTBL struct ITAddressDeviceSpecificEventVtbl *lpVtbl;
4313   };
4314 #ifdef COBJMACROS
4315 #define ITAddressDeviceSpecificEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4316 #define ITAddressDeviceSpecificEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4317 #define ITAddressDeviceSpecificEvent_Release(This) (This)->lpVtbl->Release(This)
4318 #define ITAddressDeviceSpecificEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4319 #define ITAddressDeviceSpecificEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4320 #define ITAddressDeviceSpecificEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4321 #define ITAddressDeviceSpecificEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4322 #define ITAddressDeviceSpecificEvent_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
4323 #define ITAddressDeviceSpecificEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4324 #define ITAddressDeviceSpecificEvent_get_lParam1(This,pParam1) (This)->lpVtbl->get_lParam1(This,pParam1)
4325 #define ITAddressDeviceSpecificEvent_get_lParam2(This,pParam2) (This)->lpVtbl->get_lParam2(This,pParam2)
4326 #define ITAddressDeviceSpecificEvent_get_lParam3(This,pParam3) (This)->lpVtbl->get_lParam3(This,pParam3)
4327 #endif
4328 #endif
4329   HRESULT WINAPI ITAddressDeviceSpecificEvent_get_Address_Proxy(ITAddressDeviceSpecificEvent *This,ITAddress **ppAddress);
4330   void __RPC_STUB ITAddressDeviceSpecificEvent_get_Address_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4331   HRESULT WINAPI ITAddressDeviceSpecificEvent_get_Call_Proxy(ITAddressDeviceSpecificEvent *This,ITCallInfo **ppCall);
4332   void __RPC_STUB ITAddressDeviceSpecificEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4333   HRESULT WINAPI ITAddressDeviceSpecificEvent_get_lParam1_Proxy(ITAddressDeviceSpecificEvent *This,__LONG32 *pParam1);
4334   void __RPC_STUB ITAddressDeviceSpecificEvent_get_lParam1_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4335   HRESULT WINAPI ITAddressDeviceSpecificEvent_get_lParam2_Proxy(ITAddressDeviceSpecificEvent *This,__LONG32 *pParam2);
4336   void __RPC_STUB ITAddressDeviceSpecificEvent_get_lParam2_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4337   HRESULT WINAPI ITAddressDeviceSpecificEvent_get_lParam3_Proxy(ITAddressDeviceSpecificEvent *This,__LONG32 *pParam3);
4338   void __RPC_STUB ITAddressDeviceSpecificEvent_get_lParam3_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4339 #endif
4340 
4341 #ifndef __ITFileTerminalEvent_INTERFACE_DEFINED__
4342 #define __ITFileTerminalEvent_INTERFACE_DEFINED__
4343   EXTERN_C const IID IID_ITFileTerminalEvent;
4344 #if defined(__cplusplus) && !defined(CINTERFACE)
4345   struct ITFileTerminalEvent : public IDispatch {
4346   public:
4347     virtual HRESULT WINAPI get_Terminal(ITTerminal **ppTerminal) = 0;
4348     virtual HRESULT WINAPI get_Track(ITFileTrack **ppTrackTerminal) = 0;
4349     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4350     virtual HRESULT WINAPI get_State(TERMINAL_MEDIA_STATE *pState) = 0;
4351     virtual HRESULT WINAPI get_Cause(FT_STATE_EVENT_CAUSE *pCause) = 0;
4352     virtual HRESULT WINAPI get_Error(HRESULT *phrErrorCode) = 0;
4353   };
4354 #else
4355   typedef struct ITFileTerminalEventVtbl {
4356     BEGIN_INTERFACE
4357       HRESULT (WINAPI *QueryInterface)(ITFileTerminalEvent *This,REFIID riid,void **ppvObject);
4358       ULONG (WINAPI *AddRef)(ITFileTerminalEvent *This);
4359       ULONG (WINAPI *Release)(ITFileTerminalEvent *This);
4360       HRESULT (WINAPI *GetTypeInfoCount)(ITFileTerminalEvent *This,UINT *pctinfo);
4361       HRESULT (WINAPI *GetTypeInfo)(ITFileTerminalEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4362       HRESULT (WINAPI *GetIDsOfNames)(ITFileTerminalEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4363       HRESULT (WINAPI *Invoke)(ITFileTerminalEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4364       HRESULT (WINAPI *get_Terminal)(ITFileTerminalEvent *This,ITTerminal **ppTerminal);
4365       HRESULT (WINAPI *get_Track)(ITFileTerminalEvent *This,ITFileTrack **ppTrackTerminal);
4366       HRESULT (WINAPI *get_Call)(ITFileTerminalEvent *This,ITCallInfo **ppCall);
4367       HRESULT (WINAPI *get_State)(ITFileTerminalEvent *This,TERMINAL_MEDIA_STATE *pState);
4368       HRESULT (WINAPI *get_Cause)(ITFileTerminalEvent *This,FT_STATE_EVENT_CAUSE *pCause);
4369       HRESULT (WINAPI *get_Error)(ITFileTerminalEvent *This,HRESULT *phrErrorCode);
4370     END_INTERFACE
4371   } ITFileTerminalEventVtbl;
4372   struct ITFileTerminalEvent {
4373     CONST_VTBL struct ITFileTerminalEventVtbl *lpVtbl;
4374   };
4375 #ifdef COBJMACROS
4376 #define ITFileTerminalEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4377 #define ITFileTerminalEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4378 #define ITFileTerminalEvent_Release(This) (This)->lpVtbl->Release(This)
4379 #define ITFileTerminalEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4380 #define ITFileTerminalEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4381 #define ITFileTerminalEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4382 #define ITFileTerminalEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4383 #define ITFileTerminalEvent_get_Terminal(This,ppTerminal) (This)->lpVtbl->get_Terminal(This,ppTerminal)
4384 #define ITFileTerminalEvent_get_Track(This,ppTrackTerminal) (This)->lpVtbl->get_Track(This,ppTrackTerminal)
4385 #define ITFileTerminalEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4386 #define ITFileTerminalEvent_get_State(This,pState) (This)->lpVtbl->get_State(This,pState)
4387 #define ITFileTerminalEvent_get_Cause(This,pCause) (This)->lpVtbl->get_Cause(This,pCause)
4388 #define ITFileTerminalEvent_get_Error(This,phrErrorCode) (This)->lpVtbl->get_Error(This,phrErrorCode)
4389 #endif
4390 #endif
4391   HRESULT WINAPI ITFileTerminalEvent_get_Terminal_Proxy(ITFileTerminalEvent *This,ITTerminal **ppTerminal);
4392   void __RPC_STUB ITFileTerminalEvent_get_Terminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4393   HRESULT WINAPI ITFileTerminalEvent_get_Track_Proxy(ITFileTerminalEvent *This,ITFileTrack **ppTrackTerminal);
4394   void __RPC_STUB ITFileTerminalEvent_get_Track_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4395   HRESULT WINAPI ITFileTerminalEvent_get_Call_Proxy(ITFileTerminalEvent *This,ITCallInfo **ppCall);
4396   void __RPC_STUB ITFileTerminalEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4397   HRESULT WINAPI ITFileTerminalEvent_get_State_Proxy(ITFileTerminalEvent *This,TERMINAL_MEDIA_STATE *pState);
4398   void __RPC_STUB ITFileTerminalEvent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4399   HRESULT WINAPI ITFileTerminalEvent_get_Cause_Proxy(ITFileTerminalEvent *This,FT_STATE_EVENT_CAUSE *pCause);
4400   void __RPC_STUB ITFileTerminalEvent_get_Cause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4401   HRESULT WINAPI ITFileTerminalEvent_get_Error_Proxy(ITFileTerminalEvent *This,HRESULT *phrErrorCode);
4402   void __RPC_STUB ITFileTerminalEvent_get_Error_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4403 #endif
4404 
4405 #ifndef __ITTTSTerminalEvent_INTERFACE_DEFINED__
4406 #define __ITTTSTerminalEvent_INTERFACE_DEFINED__
4407   EXTERN_C const IID IID_ITTTSTerminalEvent;
4408 #if defined(__cplusplus) && !defined(CINTERFACE)
4409   struct ITTTSTerminalEvent : public IDispatch {
4410   public:
4411     virtual HRESULT WINAPI get_Terminal(ITTerminal **ppTerminal) = 0;
4412     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4413     virtual HRESULT WINAPI get_Error(HRESULT *phrErrorCode) = 0;
4414   };
4415 #else
4416   typedef struct ITTTSTerminalEventVtbl {
4417     BEGIN_INTERFACE
4418       HRESULT (WINAPI *QueryInterface)(ITTTSTerminalEvent *This,REFIID riid,void **ppvObject);
4419       ULONG (WINAPI *AddRef)(ITTTSTerminalEvent *This);
4420       ULONG (WINAPI *Release)(ITTTSTerminalEvent *This);
4421       HRESULT (WINAPI *GetTypeInfoCount)(ITTTSTerminalEvent *This,UINT *pctinfo);
4422       HRESULT (WINAPI *GetTypeInfo)(ITTTSTerminalEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4423       HRESULT (WINAPI *GetIDsOfNames)(ITTTSTerminalEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4424       HRESULT (WINAPI *Invoke)(ITTTSTerminalEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4425       HRESULT (WINAPI *get_Terminal)(ITTTSTerminalEvent *This,ITTerminal **ppTerminal);
4426       HRESULT (WINAPI *get_Call)(ITTTSTerminalEvent *This,ITCallInfo **ppCall);
4427       HRESULT (WINAPI *get_Error)(ITTTSTerminalEvent *This,HRESULT *phrErrorCode);
4428     END_INTERFACE
4429   } ITTTSTerminalEventVtbl;
4430   struct ITTTSTerminalEvent {
4431     CONST_VTBL struct ITTTSTerminalEventVtbl *lpVtbl;
4432   };
4433 #ifdef COBJMACROS
4434 #define ITTTSTerminalEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4435 #define ITTTSTerminalEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4436 #define ITTTSTerminalEvent_Release(This) (This)->lpVtbl->Release(This)
4437 #define ITTTSTerminalEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4438 #define ITTTSTerminalEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4439 #define ITTTSTerminalEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4440 #define ITTTSTerminalEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4441 #define ITTTSTerminalEvent_get_Terminal(This,ppTerminal) (This)->lpVtbl->get_Terminal(This,ppTerminal)
4442 #define ITTTSTerminalEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4443 #define ITTTSTerminalEvent_get_Error(This,phrErrorCode) (This)->lpVtbl->get_Error(This,phrErrorCode)
4444 #endif
4445 #endif
4446   HRESULT WINAPI ITTTSTerminalEvent_get_Terminal_Proxy(ITTTSTerminalEvent *This,ITTerminal **ppTerminal);
4447   void __RPC_STUB ITTTSTerminalEvent_get_Terminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4448   HRESULT WINAPI ITTTSTerminalEvent_get_Call_Proxy(ITTTSTerminalEvent *This,ITCallInfo **ppCall);
4449   void __RPC_STUB ITTTSTerminalEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4450   HRESULT WINAPI ITTTSTerminalEvent_get_Error_Proxy(ITTTSTerminalEvent *This,HRESULT *phrErrorCode);
4451   void __RPC_STUB ITTTSTerminalEvent_get_Error_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4452 #endif
4453 
4454 #ifndef __ITASRTerminalEvent_INTERFACE_DEFINED__
4455 #define __ITASRTerminalEvent_INTERFACE_DEFINED__
4456   EXTERN_C const IID IID_ITASRTerminalEvent;
4457 #if defined(__cplusplus) && !defined(CINTERFACE)
4458   struct ITASRTerminalEvent : public IDispatch {
4459   public:
4460     virtual HRESULT WINAPI get_Terminal(ITTerminal **ppTerminal) = 0;
4461     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4462     virtual HRESULT WINAPI get_Error(HRESULT *phrErrorCode) = 0;
4463   };
4464 #else
4465   typedef struct ITASRTerminalEventVtbl {
4466     BEGIN_INTERFACE
4467       HRESULT (WINAPI *QueryInterface)(ITASRTerminalEvent *This,REFIID riid,void **ppvObject);
4468       ULONG (WINAPI *AddRef)(ITASRTerminalEvent *This);
4469       ULONG (WINAPI *Release)(ITASRTerminalEvent *This);
4470       HRESULT (WINAPI *GetTypeInfoCount)(ITASRTerminalEvent *This,UINT *pctinfo);
4471       HRESULT (WINAPI *GetTypeInfo)(ITASRTerminalEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4472       HRESULT (WINAPI *GetIDsOfNames)(ITASRTerminalEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4473       HRESULT (WINAPI *Invoke)(ITASRTerminalEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4474       HRESULT (WINAPI *get_Terminal)(ITASRTerminalEvent *This,ITTerminal **ppTerminal);
4475       HRESULT (WINAPI *get_Call)(ITASRTerminalEvent *This,ITCallInfo **ppCall);
4476       HRESULT (WINAPI *get_Error)(ITASRTerminalEvent *This,HRESULT *phrErrorCode);
4477     END_INTERFACE
4478   } ITASRTerminalEventVtbl;
4479   struct ITASRTerminalEvent {
4480     CONST_VTBL struct ITASRTerminalEventVtbl *lpVtbl;
4481   };
4482 #ifdef COBJMACROS
4483 #define ITASRTerminalEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4484 #define ITASRTerminalEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4485 #define ITASRTerminalEvent_Release(This) (This)->lpVtbl->Release(This)
4486 #define ITASRTerminalEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4487 #define ITASRTerminalEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4488 #define ITASRTerminalEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4489 #define ITASRTerminalEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4490 #define ITASRTerminalEvent_get_Terminal(This,ppTerminal) (This)->lpVtbl->get_Terminal(This,ppTerminal)
4491 #define ITASRTerminalEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4492 #define ITASRTerminalEvent_get_Error(This,phrErrorCode) (This)->lpVtbl->get_Error(This,phrErrorCode)
4493 #endif
4494 #endif
4495   HRESULT WINAPI ITASRTerminalEvent_get_Terminal_Proxy(ITASRTerminalEvent *This,ITTerminal **ppTerminal);
4496   void __RPC_STUB ITASRTerminalEvent_get_Terminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4497   HRESULT WINAPI ITASRTerminalEvent_get_Call_Proxy(ITASRTerminalEvent *This,ITCallInfo **ppCall);
4498   void __RPC_STUB ITASRTerminalEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4499   HRESULT WINAPI ITASRTerminalEvent_get_Error_Proxy(ITASRTerminalEvent *This,HRESULT *phrErrorCode);
4500   void __RPC_STUB ITASRTerminalEvent_get_Error_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4501 #endif
4502 
4503 #ifndef __ITToneTerminalEvent_INTERFACE_DEFINED__
4504 #define __ITToneTerminalEvent_INTERFACE_DEFINED__
4505   EXTERN_C const IID IID_ITToneTerminalEvent;
4506 #if defined(__cplusplus) && !defined(CINTERFACE)
4507   struct ITToneTerminalEvent : public IDispatch {
4508   public:
4509     virtual HRESULT WINAPI get_Terminal(ITTerminal **ppTerminal) = 0;
4510     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4511     virtual HRESULT WINAPI get_Error(HRESULT *phrErrorCode) = 0;
4512   };
4513 #else
4514   typedef struct ITToneTerminalEventVtbl {
4515     BEGIN_INTERFACE
4516       HRESULT (WINAPI *QueryInterface)(ITToneTerminalEvent *This,REFIID riid,void **ppvObject);
4517       ULONG (WINAPI *AddRef)(ITToneTerminalEvent *This);
4518       ULONG (WINAPI *Release)(ITToneTerminalEvent *This);
4519       HRESULT (WINAPI *GetTypeInfoCount)(ITToneTerminalEvent *This,UINT *pctinfo);
4520       HRESULT (WINAPI *GetTypeInfo)(ITToneTerminalEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4521       HRESULT (WINAPI *GetIDsOfNames)(ITToneTerminalEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4522       HRESULT (WINAPI *Invoke)(ITToneTerminalEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4523       HRESULT (WINAPI *get_Terminal)(ITToneTerminalEvent *This,ITTerminal **ppTerminal);
4524       HRESULT (WINAPI *get_Call)(ITToneTerminalEvent *This,ITCallInfo **ppCall);
4525       HRESULT (WINAPI *get_Error)(ITToneTerminalEvent *This,HRESULT *phrErrorCode);
4526     END_INTERFACE
4527   } ITToneTerminalEventVtbl;
4528   struct ITToneTerminalEvent {
4529     CONST_VTBL struct ITToneTerminalEventVtbl *lpVtbl;
4530   };
4531 #ifdef COBJMACROS
4532 #define ITToneTerminalEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4533 #define ITToneTerminalEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4534 #define ITToneTerminalEvent_Release(This) (This)->lpVtbl->Release(This)
4535 #define ITToneTerminalEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4536 #define ITToneTerminalEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4537 #define ITToneTerminalEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4538 #define ITToneTerminalEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4539 #define ITToneTerminalEvent_get_Terminal(This,ppTerminal) (This)->lpVtbl->get_Terminal(This,ppTerminal)
4540 #define ITToneTerminalEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4541 #define ITToneTerminalEvent_get_Error(This,phrErrorCode) (This)->lpVtbl->get_Error(This,phrErrorCode)
4542 #endif
4543 #endif
4544   HRESULT WINAPI ITToneTerminalEvent_get_Terminal_Proxy(ITToneTerminalEvent *This,ITTerminal **ppTerminal);
4545   void __RPC_STUB ITToneTerminalEvent_get_Terminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4546   HRESULT WINAPI ITToneTerminalEvent_get_Call_Proxy(ITToneTerminalEvent *This,ITCallInfo **ppCall);
4547   void __RPC_STUB ITToneTerminalEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4548   HRESULT WINAPI ITToneTerminalEvent_get_Error_Proxy(ITToneTerminalEvent *This,HRESULT *phrErrorCode);
4549   void __RPC_STUB ITToneTerminalEvent_get_Error_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4550 #endif
4551 
4552 #ifndef __ITQOSEvent_INTERFACE_DEFINED__
4553 #define __ITQOSEvent_INTERFACE_DEFINED__
4554   EXTERN_C const IID IID_ITQOSEvent;
4555 #if defined(__cplusplus) && !defined(CINTERFACE)
4556   struct ITQOSEvent : public IDispatch {
4557   public:
4558     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4559     virtual HRESULT WINAPI get_Event(QOS_EVENT *pQosEvent) = 0;
4560     virtual HRESULT WINAPI get_MediaType(__LONG32 *plMediaType) = 0;
4561   };
4562 #else
4563   typedef struct ITQOSEventVtbl {
4564     BEGIN_INTERFACE
4565       HRESULT (WINAPI *QueryInterface)(ITQOSEvent *This,REFIID riid,void **ppvObject);
4566       ULONG (WINAPI *AddRef)(ITQOSEvent *This);
4567       ULONG (WINAPI *Release)(ITQOSEvent *This);
4568       HRESULT (WINAPI *GetTypeInfoCount)(ITQOSEvent *This,UINT *pctinfo);
4569       HRESULT (WINAPI *GetTypeInfo)(ITQOSEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4570       HRESULT (WINAPI *GetIDsOfNames)(ITQOSEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4571       HRESULT (WINAPI *Invoke)(ITQOSEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4572       HRESULT (WINAPI *get_Call)(ITQOSEvent *This,ITCallInfo **ppCall);
4573       HRESULT (WINAPI *get_Event)(ITQOSEvent *This,QOS_EVENT *pQosEvent);
4574       HRESULT (WINAPI *get_MediaType)(ITQOSEvent *This,__LONG32 *plMediaType);
4575     END_INTERFACE
4576   } ITQOSEventVtbl;
4577   struct ITQOSEvent {
4578     CONST_VTBL struct ITQOSEventVtbl *lpVtbl;
4579   };
4580 #ifdef COBJMACROS
4581 #define ITQOSEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4582 #define ITQOSEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4583 #define ITQOSEvent_Release(This) (This)->lpVtbl->Release(This)
4584 #define ITQOSEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4585 #define ITQOSEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4586 #define ITQOSEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4587 #define ITQOSEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4588 #define ITQOSEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4589 #define ITQOSEvent_get_Event(This,pQosEvent) (This)->lpVtbl->get_Event(This,pQosEvent)
4590 #define ITQOSEvent_get_MediaType(This,plMediaType) (This)->lpVtbl->get_MediaType(This,plMediaType)
4591 #endif
4592 #endif
4593   HRESULT WINAPI ITQOSEvent_get_Call_Proxy(ITQOSEvent *This,ITCallInfo **ppCall);
4594   void __RPC_STUB ITQOSEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4595   HRESULT WINAPI ITQOSEvent_get_Event_Proxy(ITQOSEvent *This,QOS_EVENT *pQosEvent);
4596   void __RPC_STUB ITQOSEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4597   HRESULT WINAPI ITQOSEvent_get_MediaType_Proxy(ITQOSEvent *This,__LONG32 *plMediaType);
4598   void __RPC_STUB ITQOSEvent_get_MediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4599 #endif
4600 
4601 #ifndef __ITCallInfoChangeEvent_INTERFACE_DEFINED__
4602 #define __ITCallInfoChangeEvent_INTERFACE_DEFINED__
4603   EXTERN_C const IID IID_ITCallInfoChangeEvent;
4604 #if defined(__cplusplus) && !defined(CINTERFACE)
4605   struct ITCallInfoChangeEvent : public IDispatch {
4606   public:
4607     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
4608     virtual HRESULT WINAPI get_Cause(CALLINFOCHANGE_CAUSE *pCIC) = 0;
4609     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
4610   };
4611 #else
4612   typedef struct ITCallInfoChangeEventVtbl {
4613     BEGIN_INTERFACE
4614       HRESULT (WINAPI *QueryInterface)(ITCallInfoChangeEvent *This,REFIID riid,void **ppvObject);
4615       ULONG (WINAPI *AddRef)(ITCallInfoChangeEvent *This);
4616       ULONG (WINAPI *Release)(ITCallInfoChangeEvent *This);
4617       HRESULT (WINAPI *GetTypeInfoCount)(ITCallInfoChangeEvent *This,UINT *pctinfo);
4618       HRESULT (WINAPI *GetTypeInfo)(ITCallInfoChangeEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4619       HRESULT (WINAPI *GetIDsOfNames)(ITCallInfoChangeEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4620       HRESULT (WINAPI *Invoke)(ITCallInfoChangeEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4621       HRESULT (WINAPI *get_Call)(ITCallInfoChangeEvent *This,ITCallInfo **ppCall);
4622       HRESULT (WINAPI *get_Cause)(ITCallInfoChangeEvent *This,CALLINFOCHANGE_CAUSE *pCIC);
4623       HRESULT (WINAPI *get_CallbackInstance)(ITCallInfoChangeEvent *This,__LONG32 *plCallbackInstance);
4624     END_INTERFACE
4625   } ITCallInfoChangeEventVtbl;
4626   struct ITCallInfoChangeEvent {
4627     CONST_VTBL struct ITCallInfoChangeEventVtbl *lpVtbl;
4628   };
4629 #ifdef COBJMACROS
4630 #define ITCallInfoChangeEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4631 #define ITCallInfoChangeEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4632 #define ITCallInfoChangeEvent_Release(This) (This)->lpVtbl->Release(This)
4633 #define ITCallInfoChangeEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4634 #define ITCallInfoChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4635 #define ITCallInfoChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4636 #define ITCallInfoChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4637 #define ITCallInfoChangeEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
4638 #define ITCallInfoChangeEvent_get_Cause(This,pCIC) (This)->lpVtbl->get_Cause(This,pCIC)
4639 #define ITCallInfoChangeEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
4640 #endif
4641 #endif
4642   HRESULT WINAPI ITCallInfoChangeEvent_get_Call_Proxy(ITCallInfoChangeEvent *This,ITCallInfo **ppCall);
4643   void __RPC_STUB ITCallInfoChangeEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4644   HRESULT WINAPI ITCallInfoChangeEvent_get_Cause_Proxy(ITCallInfoChangeEvent *This,CALLINFOCHANGE_CAUSE *pCIC);
4645   void __RPC_STUB ITCallInfoChangeEvent_get_Cause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4646   HRESULT WINAPI ITCallInfoChangeEvent_get_CallbackInstance_Proxy(ITCallInfoChangeEvent *This,__LONG32 *plCallbackInstance);
4647   void __RPC_STUB ITCallInfoChangeEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4648 #endif
4649 
4650 #ifndef __ITRequest_INTERFACE_DEFINED__
4651 #define __ITRequest_INTERFACE_DEFINED__
4652   EXTERN_C const IID IID_ITRequest;
4653 #if defined(__cplusplus) && !defined(CINTERFACE)
4654   struct ITRequest : public IDispatch {
4655   public:
4656     virtual HRESULT WINAPI MakeCall(BSTR pDestAddress,BSTR pAppName,BSTR pCalledParty,BSTR pComment) = 0;
4657   };
4658 #else
4659   typedef struct ITRequestVtbl {
4660     BEGIN_INTERFACE
4661       HRESULT (WINAPI *QueryInterface)(ITRequest *This,REFIID riid,void **ppvObject);
4662       ULONG (WINAPI *AddRef)(ITRequest *This);
4663       ULONG (WINAPI *Release)(ITRequest *This);
4664       HRESULT (WINAPI *GetTypeInfoCount)(ITRequest *This,UINT *pctinfo);
4665       HRESULT (WINAPI *GetTypeInfo)(ITRequest *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4666       HRESULT (WINAPI *GetIDsOfNames)(ITRequest *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4667       HRESULT (WINAPI *Invoke)(ITRequest *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4668       HRESULT (WINAPI *MakeCall)(ITRequest *This,BSTR pDestAddress,BSTR pAppName,BSTR pCalledParty,BSTR pComment);
4669     END_INTERFACE
4670   } ITRequestVtbl;
4671   struct ITRequest {
4672     CONST_VTBL struct ITRequestVtbl *lpVtbl;
4673   };
4674 #ifdef COBJMACROS
4675 #define ITRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4676 #define ITRequest_AddRef(This) (This)->lpVtbl->AddRef(This)
4677 #define ITRequest_Release(This) (This)->lpVtbl->Release(This)
4678 #define ITRequest_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4679 #define ITRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4680 #define ITRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4681 #define ITRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4682 #define ITRequest_MakeCall(This,pDestAddress,pAppName,pCalledParty,pComment) (This)->lpVtbl->MakeCall(This,pDestAddress,pAppName,pCalledParty,pComment)
4683 #endif
4684 #endif
4685   HRESULT WINAPI ITRequest_MakeCall_Proxy(ITRequest *This,BSTR pDestAddress,BSTR pAppName,BSTR pCalledParty,BSTR pComment);
4686   void __RPC_STUB ITRequest_MakeCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4687 #endif
4688 
4689 #ifndef __ITRequestEvent_INTERFACE_DEFINED__
4690 #define __ITRequestEvent_INTERFACE_DEFINED__
4691   EXTERN_C const IID IID_ITRequestEvent;
4692 #if defined(__cplusplus) && !defined(CINTERFACE)
4693   struct ITRequestEvent : public IDispatch {
4694   public:
4695     virtual HRESULT WINAPI get_RegistrationInstance(__LONG32 *plRegistrationInstance) = 0;
4696     virtual HRESULT WINAPI get_RequestMode(__LONG32 *plRequestMode) = 0;
4697     virtual HRESULT WINAPI get_DestAddress(BSTR *ppDestAddress) = 0;
4698     virtual HRESULT WINAPI get_AppName(BSTR *ppAppName) = 0;
4699     virtual HRESULT WINAPI get_CalledParty(BSTR *ppCalledParty) = 0;
4700     virtual HRESULT WINAPI get_Comment(BSTR *ppComment) = 0;
4701   };
4702 #else
4703   typedef struct ITRequestEventVtbl {
4704     BEGIN_INTERFACE
4705       HRESULT (WINAPI *QueryInterface)(ITRequestEvent *This,REFIID riid,void **ppvObject);
4706       ULONG (WINAPI *AddRef)(ITRequestEvent *This);
4707       ULONG (WINAPI *Release)(ITRequestEvent *This);
4708       HRESULT (WINAPI *GetTypeInfoCount)(ITRequestEvent *This,UINT *pctinfo);
4709       HRESULT (WINAPI *GetTypeInfo)(ITRequestEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4710       HRESULT (WINAPI *GetIDsOfNames)(ITRequestEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4711       HRESULT (WINAPI *Invoke)(ITRequestEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4712       HRESULT (WINAPI *get_RegistrationInstance)(ITRequestEvent *This,__LONG32 *plRegistrationInstance);
4713       HRESULT (WINAPI *get_RequestMode)(ITRequestEvent *This,__LONG32 *plRequestMode);
4714       HRESULT (WINAPI *get_DestAddress)(ITRequestEvent *This,BSTR *ppDestAddress);
4715       HRESULT (WINAPI *get_AppName)(ITRequestEvent *This,BSTR *ppAppName);
4716       HRESULT (WINAPI *get_CalledParty)(ITRequestEvent *This,BSTR *ppCalledParty);
4717       HRESULT (WINAPI *get_Comment)(ITRequestEvent *This,BSTR *ppComment);
4718     END_INTERFACE
4719   } ITRequestEventVtbl;
4720   struct ITRequestEvent {
4721     CONST_VTBL struct ITRequestEventVtbl *lpVtbl;
4722   };
4723 #ifdef COBJMACROS
4724 #define ITRequestEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4725 #define ITRequestEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4726 #define ITRequestEvent_Release(This) (This)->lpVtbl->Release(This)
4727 #define ITRequestEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4728 #define ITRequestEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4729 #define ITRequestEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4730 #define ITRequestEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4731 #define ITRequestEvent_get_RegistrationInstance(This,plRegistrationInstance) (This)->lpVtbl->get_RegistrationInstance(This,plRegistrationInstance)
4732 #define ITRequestEvent_get_RequestMode(This,plRequestMode) (This)->lpVtbl->get_RequestMode(This,plRequestMode)
4733 #define ITRequestEvent_get_DestAddress(This,ppDestAddress) (This)->lpVtbl->get_DestAddress(This,ppDestAddress)
4734 #define ITRequestEvent_get_AppName(This,ppAppName) (This)->lpVtbl->get_AppName(This,ppAppName)
4735 #define ITRequestEvent_get_CalledParty(This,ppCalledParty) (This)->lpVtbl->get_CalledParty(This,ppCalledParty)
4736 #define ITRequestEvent_get_Comment(This,ppComment) (This)->lpVtbl->get_Comment(This,ppComment)
4737 #endif
4738 #endif
4739   HRESULT WINAPI ITRequestEvent_get_RegistrationInstance_Proxy(ITRequestEvent *This,__LONG32 *plRegistrationInstance);
4740   void __RPC_STUB ITRequestEvent_get_RegistrationInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4741   HRESULT WINAPI ITRequestEvent_get_RequestMode_Proxy(ITRequestEvent *This,__LONG32 *plRequestMode);
4742   void __RPC_STUB ITRequestEvent_get_RequestMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4743   HRESULT WINAPI ITRequestEvent_get_DestAddress_Proxy(ITRequestEvent *This,BSTR *ppDestAddress);
4744   void __RPC_STUB ITRequestEvent_get_DestAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4745   HRESULT WINAPI ITRequestEvent_get_AppName_Proxy(ITRequestEvent *This,BSTR *ppAppName);
4746   void __RPC_STUB ITRequestEvent_get_AppName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4747   HRESULT WINAPI ITRequestEvent_get_CalledParty_Proxy(ITRequestEvent *This,BSTR *ppCalledParty);
4748   void __RPC_STUB ITRequestEvent_get_CalledParty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4749   HRESULT WINAPI ITRequestEvent_get_Comment_Proxy(ITRequestEvent *This,BSTR *ppComment);
4750   void __RPC_STUB ITRequestEvent_get_Comment_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4751 #endif
4752 
4753 #ifndef __ITCollection_INTERFACE_DEFINED__
4754 #define __ITCollection_INTERFACE_DEFINED__
4755   EXTERN_C const IID IID_ITCollection;
4756 #if defined(__cplusplus) && !defined(CINTERFACE)
4757   struct ITCollection : public IDispatch {
4758   public:
4759     virtual HRESULT WINAPI get_Count(__LONG32 *lCount) = 0;
4760     virtual HRESULT WINAPI get_Item(__LONG32 Index,VARIANT *pVariant) = 0;
4761     virtual HRESULT WINAPI get__NewEnum(IUnknown **ppNewEnum) = 0;
4762   };
4763 #else
4764   typedef struct ITCollectionVtbl {
4765     BEGIN_INTERFACE
4766       HRESULT (WINAPI *QueryInterface)(ITCollection *This,REFIID riid,void **ppvObject);
4767       ULONG (WINAPI *AddRef)(ITCollection *This);
4768       ULONG (WINAPI *Release)(ITCollection *This);
4769       HRESULT (WINAPI *GetTypeInfoCount)(ITCollection *This,UINT *pctinfo);
4770       HRESULT (WINAPI *GetTypeInfo)(ITCollection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4771       HRESULT (WINAPI *GetIDsOfNames)(ITCollection *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4772       HRESULT (WINAPI *Invoke)(ITCollection *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4773       HRESULT (WINAPI *get_Count)(ITCollection *This,__LONG32 *lCount);
4774       HRESULT (WINAPI *get_Item)(ITCollection *This,__LONG32 Index,VARIANT *pVariant);
4775       HRESULT (WINAPI *get__NewEnum)(ITCollection *This,IUnknown **ppNewEnum);
4776     END_INTERFACE
4777   } ITCollectionVtbl;
4778   struct ITCollection {
4779     CONST_VTBL struct ITCollectionVtbl *lpVtbl;
4780   };
4781 #ifdef COBJMACROS
4782 #define ITCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4783 #define ITCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
4784 #define ITCollection_Release(This) (This)->lpVtbl->Release(This)
4785 #define ITCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4786 #define ITCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4787 #define ITCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4788 #define ITCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4789 #define ITCollection_get_Count(This,lCount) (This)->lpVtbl->get_Count(This,lCount)
4790 #define ITCollection_get_Item(This,Index,pVariant) (This)->lpVtbl->get_Item(This,Index,pVariant)
4791 #define ITCollection_get__NewEnum(This,ppNewEnum) (This)->lpVtbl->get__NewEnum(This,ppNewEnum)
4792 #endif
4793 #endif
4794   HRESULT WINAPI ITCollection_get_Count_Proxy(ITCollection *This,__LONG32 *lCount);
4795   void __RPC_STUB ITCollection_get_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4796   HRESULT WINAPI ITCollection_get_Item_Proxy(ITCollection *This,__LONG32 Index,VARIANT *pVariant);
4797   void __RPC_STUB ITCollection_get_Item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4798   HRESULT WINAPI ITCollection_get__NewEnum_Proxy(ITCollection *This,IUnknown **ppNewEnum);
4799   void __RPC_STUB ITCollection_get__NewEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4800 #endif
4801 
4802 #ifndef __ITCollection2_INTERFACE_DEFINED__
4803 #define __ITCollection2_INTERFACE_DEFINED__
4804   EXTERN_C const IID IID_ITCollection2;
4805 #if defined(__cplusplus) && !defined(CINTERFACE)
4806   struct ITCollection2 : public ITCollection {
4807   public:
4808     virtual HRESULT WINAPI Add(__LONG32 Index,VARIANT *pVariant) = 0;
4809     virtual HRESULT WINAPI Remove(__LONG32 Index) = 0;
4810   };
4811 #else
4812   typedef struct ITCollection2Vtbl {
4813     BEGIN_INTERFACE
4814       HRESULT (WINAPI *QueryInterface)(ITCollection2 *This,REFIID riid,void **ppvObject);
4815       ULONG (WINAPI *AddRef)(ITCollection2 *This);
4816       ULONG (WINAPI *Release)(ITCollection2 *This);
4817       HRESULT (WINAPI *GetTypeInfoCount)(ITCollection2 *This,UINT *pctinfo);
4818       HRESULT (WINAPI *GetTypeInfo)(ITCollection2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4819       HRESULT (WINAPI *GetIDsOfNames)(ITCollection2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4820       HRESULT (WINAPI *Invoke)(ITCollection2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4821       HRESULT (WINAPI *get_Count)(ITCollection2 *This,__LONG32 *lCount);
4822       HRESULT (WINAPI *get_Item)(ITCollection2 *This,__LONG32 Index,VARIANT *pVariant);
4823       HRESULT (WINAPI *get__NewEnum)(ITCollection2 *This,IUnknown **ppNewEnum);
4824       HRESULT (WINAPI *Add)(ITCollection2 *This,__LONG32 Index,VARIANT *pVariant);
4825       HRESULT (WINAPI *Remove)(ITCollection2 *This,__LONG32 Index);
4826     END_INTERFACE
4827   } ITCollection2Vtbl;
4828   struct ITCollection2 {
4829     CONST_VTBL struct ITCollection2Vtbl *lpVtbl;
4830   };
4831 #ifdef COBJMACROS
4832 #define ITCollection2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4833 #define ITCollection2_AddRef(This) (This)->lpVtbl->AddRef(This)
4834 #define ITCollection2_Release(This) (This)->lpVtbl->Release(This)
4835 #define ITCollection2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4836 #define ITCollection2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4837 #define ITCollection2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4838 #define ITCollection2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4839 #define ITCollection2_get_Count(This,lCount) (This)->lpVtbl->get_Count(This,lCount)
4840 #define ITCollection2_get_Item(This,Index,pVariant) (This)->lpVtbl->get_Item(This,Index,pVariant)
4841 #define ITCollection2_get__NewEnum(This,ppNewEnum) (This)->lpVtbl->get__NewEnum(This,ppNewEnum)
4842 #define ITCollection2_Add(This,Index,pVariant) (This)->lpVtbl->Add(This,Index,pVariant)
4843 #define ITCollection2_Remove(This,Index) (This)->lpVtbl->Remove(This,Index)
4844 #endif
4845 #endif
4846   HRESULT WINAPI ITCollection2_Add_Proxy(ITCollection2 *This,__LONG32 Index,VARIANT *pVariant);
4847   void __RPC_STUB ITCollection2_Add_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4848   HRESULT WINAPI ITCollection2_Remove_Proxy(ITCollection2 *This,__LONG32 Index);
4849   void __RPC_STUB ITCollection2_Remove_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4850 #endif
4851 
4852 #ifndef __ITForwardInformation_INTERFACE_DEFINED__
4853 #define __ITForwardInformation_INTERFACE_DEFINED__
4854   EXTERN_C const IID IID_ITForwardInformation;
4855 #if defined(__cplusplus) && !defined(CINTERFACE)
4856   struct ITForwardInformation : public IDispatch {
4857   public:
4858     virtual HRESULT WINAPI put_NumRingsNoAnswer(__LONG32 lNumRings) = 0;
4859     virtual HRESULT WINAPI get_NumRingsNoAnswer(__LONG32 *plNumRings) = 0;
4860     virtual HRESULT WINAPI SetForwardType(__LONG32 ForwardType,BSTR pDestAddress,BSTR pCallerAddress) = 0;
4861     virtual HRESULT WINAPI get_ForwardTypeDestination(__LONG32 ForwardType,BSTR *ppDestAddress) = 0;
4862     virtual HRESULT WINAPI get_ForwardTypeCaller(__LONG32 Forwardtype,BSTR *ppCallerAddress) = 0;
4863     virtual HRESULT WINAPI GetForwardType(__LONG32 ForwardType,BSTR *ppDestinationAddress,BSTR *ppCallerAddress) = 0;
4864     virtual HRESULT WINAPI Clear(void) = 0;
4865   };
4866 #else
4867   typedef struct ITForwardInformationVtbl {
4868     BEGIN_INTERFACE
4869       HRESULT (WINAPI *QueryInterface)(ITForwardInformation *This,REFIID riid,void **ppvObject);
4870       ULONG (WINAPI *AddRef)(ITForwardInformation *This);
4871       ULONG (WINAPI *Release)(ITForwardInformation *This);
4872       HRESULT (WINAPI *GetTypeInfoCount)(ITForwardInformation *This,UINT *pctinfo);
4873       HRESULT (WINAPI *GetTypeInfo)(ITForwardInformation *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4874       HRESULT (WINAPI *GetIDsOfNames)(ITForwardInformation *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4875       HRESULT (WINAPI *Invoke)(ITForwardInformation *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4876       HRESULT (WINAPI *put_NumRingsNoAnswer)(ITForwardInformation *This,__LONG32 lNumRings);
4877       HRESULT (WINAPI *get_NumRingsNoAnswer)(ITForwardInformation *This,__LONG32 *plNumRings);
4878       HRESULT (WINAPI *SetForwardType)(ITForwardInformation *This,__LONG32 ForwardType,BSTR pDestAddress,BSTR pCallerAddress);
4879       HRESULT (WINAPI *get_ForwardTypeDestination)(ITForwardInformation *This,__LONG32 ForwardType,BSTR *ppDestAddress);
4880       HRESULT (WINAPI *get_ForwardTypeCaller)(ITForwardInformation *This,__LONG32 Forwardtype,BSTR *ppCallerAddress);
4881       HRESULT (WINAPI *GetForwardType)(ITForwardInformation *This,__LONG32 ForwardType,BSTR *ppDestinationAddress,BSTR *ppCallerAddress);
4882       HRESULT (WINAPI *Clear)(ITForwardInformation *This);
4883     END_INTERFACE
4884   } ITForwardInformationVtbl;
4885   struct ITForwardInformation {
4886     CONST_VTBL struct ITForwardInformationVtbl *lpVtbl;
4887   };
4888 #ifdef COBJMACROS
4889 #define ITForwardInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4890 #define ITForwardInformation_AddRef(This) (This)->lpVtbl->AddRef(This)
4891 #define ITForwardInformation_Release(This) (This)->lpVtbl->Release(This)
4892 #define ITForwardInformation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4893 #define ITForwardInformation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4894 #define ITForwardInformation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4895 #define ITForwardInformation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4896 #define ITForwardInformation_put_NumRingsNoAnswer(This,lNumRings) (This)->lpVtbl->put_NumRingsNoAnswer(This,lNumRings)
4897 #define ITForwardInformation_get_NumRingsNoAnswer(This,plNumRings) (This)->lpVtbl->get_NumRingsNoAnswer(This,plNumRings)
4898 #define ITForwardInformation_SetForwardType(This,ForwardType,pDestAddress,pCallerAddress) (This)->lpVtbl->SetForwardType(This,ForwardType,pDestAddress,pCallerAddress)
4899 #define ITForwardInformation_get_ForwardTypeDestination(This,ForwardType,ppDestAddress) (This)->lpVtbl->get_ForwardTypeDestination(This,ForwardType,ppDestAddress)
4900 #define ITForwardInformation_get_ForwardTypeCaller(This,Forwardtype,ppCallerAddress) (This)->lpVtbl->get_ForwardTypeCaller(This,Forwardtype,ppCallerAddress)
4901 #define ITForwardInformation_GetForwardType(This,ForwardType,ppDestinationAddress,ppCallerAddress) (This)->lpVtbl->GetForwardType(This,ForwardType,ppDestinationAddress,ppCallerAddress)
4902 #define ITForwardInformation_Clear(This) (This)->lpVtbl->Clear(This)
4903 #endif
4904 #endif
4905   HRESULT WINAPI ITForwardInformation_put_NumRingsNoAnswer_Proxy(ITForwardInformation *This,__LONG32 lNumRings);
4906   void __RPC_STUB ITForwardInformation_put_NumRingsNoAnswer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4907   HRESULT WINAPI ITForwardInformation_get_NumRingsNoAnswer_Proxy(ITForwardInformation *This,__LONG32 *plNumRings);
4908   void __RPC_STUB ITForwardInformation_get_NumRingsNoAnswer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4909   HRESULT WINAPI ITForwardInformation_SetForwardType_Proxy(ITForwardInformation *This,__LONG32 ForwardType,BSTR pDestAddress,BSTR pCallerAddress);
4910   void __RPC_STUB ITForwardInformation_SetForwardType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4911   HRESULT WINAPI ITForwardInformation_get_ForwardTypeDestination_Proxy(ITForwardInformation *This,__LONG32 ForwardType,BSTR *ppDestAddress);
4912   void __RPC_STUB ITForwardInformation_get_ForwardTypeDestination_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4913   HRESULT WINAPI ITForwardInformation_get_ForwardTypeCaller_Proxy(ITForwardInformation *This,__LONG32 Forwardtype,BSTR *ppCallerAddress);
4914   void __RPC_STUB ITForwardInformation_get_ForwardTypeCaller_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4915   HRESULT WINAPI ITForwardInformation_GetForwardType_Proxy(ITForwardInformation *This,__LONG32 ForwardType,BSTR *ppDestinationAddress,BSTR *ppCallerAddress);
4916   void __RPC_STUB ITForwardInformation_GetForwardType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4917   HRESULT WINAPI ITForwardInformation_Clear_Proxy(ITForwardInformation *This);
4918   void __RPC_STUB ITForwardInformation_Clear_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4919 #endif
4920 
4921 #ifndef __ITForwardInformation2_INTERFACE_DEFINED__
4922 #define __ITForwardInformation2_INTERFACE_DEFINED__
4923   EXTERN_C const IID IID_ITForwardInformation2;
4924 #if defined(__cplusplus) && !defined(CINTERFACE)
4925   struct ITForwardInformation2 : public ITForwardInformation {
4926   public:
4927     virtual HRESULT WINAPI SetForwardType2(__LONG32 ForwardType,BSTR pDestAddress,__LONG32 DestAddressType,BSTR pCallerAddress,__LONG32 CallerAddressType) = 0;
4928     virtual HRESULT WINAPI GetForwardType2(__LONG32 ForwardType,BSTR *ppDestinationAddress,__LONG32 *pDestAddressType,BSTR *ppCallerAddress,__LONG32 *pCallerAddressType) = 0;
4929     virtual HRESULT WINAPI get_ForwardTypeDestinationAddressType(__LONG32 ForwardType,__LONG32 *pDestAddressType) = 0;
4930     virtual HRESULT WINAPI get_ForwardTypeCallerAddressType(__LONG32 Forwardtype,__LONG32 *pCallerAddressType) = 0;
4931   };
4932 #else
4933   typedef struct ITForwardInformation2Vtbl {
4934     BEGIN_INTERFACE
4935       HRESULT (WINAPI *QueryInterface)(ITForwardInformation2 *This,REFIID riid,void **ppvObject);
4936       ULONG (WINAPI *AddRef)(ITForwardInformation2 *This);
4937       ULONG (WINAPI *Release)(ITForwardInformation2 *This);
4938       HRESULT (WINAPI *GetTypeInfoCount)(ITForwardInformation2 *This,UINT *pctinfo);
4939       HRESULT (WINAPI *GetTypeInfo)(ITForwardInformation2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
4940       HRESULT (WINAPI *GetIDsOfNames)(ITForwardInformation2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
4941       HRESULT (WINAPI *Invoke)(ITForwardInformation2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
4942       HRESULT (WINAPI *put_NumRingsNoAnswer)(ITForwardInformation2 *This,__LONG32 lNumRings);
4943       HRESULT (WINAPI *get_NumRingsNoAnswer)(ITForwardInformation2 *This,__LONG32 *plNumRings);
4944       HRESULT (WINAPI *SetForwardType)(ITForwardInformation2 *This,__LONG32 ForwardType,BSTR pDestAddress,BSTR pCallerAddress);
4945       HRESULT (WINAPI *get_ForwardTypeDestination)(ITForwardInformation2 *This,__LONG32 ForwardType,BSTR *ppDestAddress);
4946       HRESULT (WINAPI *get_ForwardTypeCaller)(ITForwardInformation2 *This,__LONG32 Forwardtype,BSTR *ppCallerAddress);
4947       HRESULT (WINAPI *GetForwardType)(ITForwardInformation2 *This,__LONG32 ForwardType,BSTR *ppDestinationAddress,BSTR *ppCallerAddress);
4948       HRESULT (WINAPI *Clear)(ITForwardInformation2 *This);
4949       HRESULT (WINAPI *SetForwardType2)(ITForwardInformation2 *This,__LONG32 ForwardType,BSTR pDestAddress,__LONG32 DestAddressType,BSTR pCallerAddress,__LONG32 CallerAddressType);
4950       HRESULT (WINAPI *GetForwardType2)(ITForwardInformation2 *This,__LONG32 ForwardType,BSTR *ppDestinationAddress,__LONG32 *pDestAddressType,BSTR *ppCallerAddress,__LONG32 *pCallerAddressType);
4951       HRESULT (WINAPI *get_ForwardTypeDestinationAddressType)(ITForwardInformation2 *This,__LONG32 ForwardType,__LONG32 *pDestAddressType);
4952       HRESULT (WINAPI *get_ForwardTypeCallerAddressType)(ITForwardInformation2 *This,__LONG32 Forwardtype,__LONG32 *pCallerAddressType);
4953     END_INTERFACE
4954   } ITForwardInformation2Vtbl;
4955   struct ITForwardInformation2 {
4956     CONST_VTBL struct ITForwardInformation2Vtbl *lpVtbl;
4957   };
4958 #ifdef COBJMACROS
4959 #define ITForwardInformation2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4960 #define ITForwardInformation2_AddRef(This) (This)->lpVtbl->AddRef(This)
4961 #define ITForwardInformation2_Release(This) (This)->lpVtbl->Release(This)
4962 #define ITForwardInformation2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4963 #define ITForwardInformation2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4964 #define ITForwardInformation2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4965 #define ITForwardInformation2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4966 #define ITForwardInformation2_put_NumRingsNoAnswer(This,lNumRings) (This)->lpVtbl->put_NumRingsNoAnswer(This,lNumRings)
4967 #define ITForwardInformation2_get_NumRingsNoAnswer(This,plNumRings) (This)->lpVtbl->get_NumRingsNoAnswer(This,plNumRings)
4968 #define ITForwardInformation2_SetForwardType(This,ForwardType,pDestAddress,pCallerAddress) (This)->lpVtbl->SetForwardType(This,ForwardType,pDestAddress,pCallerAddress)
4969 #define ITForwardInformation2_get_ForwardTypeDestination(This,ForwardType,ppDestAddress) (This)->lpVtbl->get_ForwardTypeDestination(This,ForwardType,ppDestAddress)
4970 #define ITForwardInformation2_get_ForwardTypeCaller(This,Forwardtype,ppCallerAddress) (This)->lpVtbl->get_ForwardTypeCaller(This,Forwardtype,ppCallerAddress)
4971 #define ITForwardInformation2_GetForwardType(This,ForwardType,ppDestinationAddress,ppCallerAddress) (This)->lpVtbl->GetForwardType(This,ForwardType,ppDestinationAddress,ppCallerAddress)
4972 #define ITForwardInformation2_Clear(This) (This)->lpVtbl->Clear(This)
4973 #define ITForwardInformation2_SetForwardType2(This,ForwardType,pDestAddress,DestAddressType,pCallerAddress,CallerAddressType) (This)->lpVtbl->SetForwardType2(This,ForwardType,pDestAddress,DestAddressType,pCallerAddress,CallerAddressType)
4974 #define ITForwardInformation2_GetForwardType2(This,ForwardType,ppDestinationAddress,pDestAddressType,ppCallerAddress,pCallerAddressType) (This)->lpVtbl->GetForwardType2(This,ForwardType,ppDestinationAddress,pDestAddressType,ppCallerAddress,pCallerAddressType)
4975 #define ITForwardInformation2_get_ForwardTypeDestinationAddressType(This,ForwardType,pDestAddressType) (This)->lpVtbl->get_ForwardTypeDestinationAddressType(This,ForwardType,pDestAddressType)
4976 #define ITForwardInformation2_get_ForwardTypeCallerAddressType(This,Forwardtype,pCallerAddressType) (This)->lpVtbl->get_ForwardTypeCallerAddressType(This,Forwardtype,pCallerAddressType)
4977 #endif
4978 #endif
4979   HRESULT WINAPI ITForwardInformation2_SetForwardType2_Proxy(ITForwardInformation2 *This,__LONG32 ForwardType,BSTR pDestAddress,__LONG32 DestAddressType,BSTR pCallerAddress,__LONG32 CallerAddressType);
4980   void __RPC_STUB ITForwardInformation2_SetForwardType2_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4981   HRESULT WINAPI ITForwardInformation2_GetForwardType2_Proxy(ITForwardInformation2 *This,__LONG32 ForwardType,BSTR *ppDestinationAddress,__LONG32 *pDestAddressType,BSTR *ppCallerAddress,__LONG32 *pCallerAddressType);
4982   void __RPC_STUB ITForwardInformation2_GetForwardType2_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4983   HRESULT WINAPI ITForwardInformation2_get_ForwardTypeDestinationAddressType_Proxy(ITForwardInformation2 *This,__LONG32 ForwardType,__LONG32 *pDestAddressType);
4984   void __RPC_STUB ITForwardInformation2_get_ForwardTypeDestinationAddressType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4985   HRESULT WINAPI ITForwardInformation2_get_ForwardTypeCallerAddressType_Proxy(ITForwardInformation2 *This,__LONG32 Forwardtype,__LONG32 *pCallerAddressType);
4986   void __RPC_STUB ITForwardInformation2_get_ForwardTypeCallerAddressType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
4987 #endif
4988 
4989 #ifndef __ITAddressTranslation_INTERFACE_DEFINED__
4990 #define __ITAddressTranslation_INTERFACE_DEFINED__
4991   EXTERN_C const IID IID_ITAddressTranslation;
4992 #if defined(__cplusplus) && !defined(CINTERFACE)
4993   struct ITAddressTranslation : public IDispatch {
4994   public:
4995     virtual HRESULT WINAPI TranslateAddress(BSTR pAddressToTranslate,__LONG32 lCard,__LONG32 lTranslateOptions,ITAddressTranslationInfo **ppTranslated) = 0;
4996     virtual HRESULT WINAPI TranslateDialog(TAPIHWND hwndOwner,BSTR pAddressIn) = 0;
4997     virtual HRESULT WINAPI EnumerateLocations(IEnumLocation **ppEnumLocation) = 0;
4998     virtual HRESULT WINAPI get_Locations(VARIANT *pVariant) = 0;
4999     virtual HRESULT WINAPI EnumerateCallingCards(IEnumCallingCard **ppEnumCallingCard) = 0;
5000     virtual HRESULT WINAPI get_CallingCards(VARIANT *pVariant) = 0;
5001   };
5002 #else
5003   typedef struct ITAddressTranslationVtbl {
5004     BEGIN_INTERFACE
5005       HRESULT (WINAPI *QueryInterface)(ITAddressTranslation *This,REFIID riid,void **ppvObject);
5006       ULONG (WINAPI *AddRef)(ITAddressTranslation *This);
5007       ULONG (WINAPI *Release)(ITAddressTranslation *This);
5008       HRESULT (WINAPI *GetTypeInfoCount)(ITAddressTranslation *This,UINT *pctinfo);
5009       HRESULT (WINAPI *GetTypeInfo)(ITAddressTranslation *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5010       HRESULT (WINAPI *GetIDsOfNames)(ITAddressTranslation *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5011       HRESULT (WINAPI *Invoke)(ITAddressTranslation *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5012       HRESULT (WINAPI *TranslateAddress)(ITAddressTranslation *This,BSTR pAddressToTranslate,__LONG32 lCard,__LONG32 lTranslateOptions,ITAddressTranslationInfo **ppTranslated);
5013       HRESULT (WINAPI *TranslateDialog)(ITAddressTranslation *This,TAPIHWND hwndOwner,BSTR pAddressIn);
5014       HRESULT (WINAPI *EnumerateLocations)(ITAddressTranslation *This,IEnumLocation **ppEnumLocation);
5015       HRESULT (WINAPI *get_Locations)(ITAddressTranslation *This,VARIANT *pVariant);
5016       HRESULT (WINAPI *EnumerateCallingCards)(ITAddressTranslation *This,IEnumCallingCard **ppEnumCallingCard);
5017       HRESULT (WINAPI *get_CallingCards)(ITAddressTranslation *This,VARIANT *pVariant);
5018     END_INTERFACE
5019   } ITAddressTranslationVtbl;
5020   struct ITAddressTranslation {
5021     CONST_VTBL struct ITAddressTranslationVtbl *lpVtbl;
5022   };
5023 #ifdef COBJMACROS
5024 #define ITAddressTranslation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5025 #define ITAddressTranslation_AddRef(This) (This)->lpVtbl->AddRef(This)
5026 #define ITAddressTranslation_Release(This) (This)->lpVtbl->Release(This)
5027 #define ITAddressTranslation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5028 #define ITAddressTranslation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5029 #define ITAddressTranslation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5030 #define ITAddressTranslation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5031 #define ITAddressTranslation_TranslateAddress(This,pAddressToTranslate,lCard,lTranslateOptions,ppTranslated) (This)->lpVtbl->TranslateAddress(This,pAddressToTranslate,lCard,lTranslateOptions,ppTranslated)
5032 #define ITAddressTranslation_TranslateDialog(This,hwndOwner,pAddressIn) (This)->lpVtbl->TranslateDialog(This,hwndOwner,pAddressIn)
5033 #define ITAddressTranslation_EnumerateLocations(This,ppEnumLocation) (This)->lpVtbl->EnumerateLocations(This,ppEnumLocation)
5034 #define ITAddressTranslation_get_Locations(This,pVariant) (This)->lpVtbl->get_Locations(This,pVariant)
5035 #define ITAddressTranslation_EnumerateCallingCards(This,ppEnumCallingCard) (This)->lpVtbl->EnumerateCallingCards(This,ppEnumCallingCard)
5036 #define ITAddressTranslation_get_CallingCards(This,pVariant) (This)->lpVtbl->get_CallingCards(This,pVariant)
5037 #endif
5038 #endif
5039   HRESULT WINAPI ITAddressTranslation_TranslateAddress_Proxy(ITAddressTranslation *This,BSTR pAddressToTranslate,__LONG32 lCard,__LONG32 lTranslateOptions,ITAddressTranslationInfo **ppTranslated);
5040   void __RPC_STUB ITAddressTranslation_TranslateAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5041   HRESULT WINAPI ITAddressTranslation_TranslateDialog_Proxy(ITAddressTranslation *This,TAPIHWND hwndOwner,BSTR pAddressIn);
5042   void __RPC_STUB ITAddressTranslation_TranslateDialog_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5043   HRESULT WINAPI ITAddressTranslation_EnumerateLocations_Proxy(ITAddressTranslation *This,IEnumLocation **ppEnumLocation);
5044   void __RPC_STUB ITAddressTranslation_EnumerateLocations_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5045   HRESULT WINAPI ITAddressTranslation_get_Locations_Proxy(ITAddressTranslation *This,VARIANT *pVariant);
5046   void __RPC_STUB ITAddressTranslation_get_Locations_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5047   HRESULT WINAPI ITAddressTranslation_EnumerateCallingCards_Proxy(ITAddressTranslation *This,IEnumCallingCard **ppEnumCallingCard);
5048   void __RPC_STUB ITAddressTranslation_EnumerateCallingCards_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5049   HRESULT WINAPI ITAddressTranslation_get_CallingCards_Proxy(ITAddressTranslation *This,VARIANT *pVariant);
5050   void __RPC_STUB ITAddressTranslation_get_CallingCards_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5051 #endif
5052 
5053 #ifndef __ITAddressTranslationInfo_INTERFACE_DEFINED__
5054 #define __ITAddressTranslationInfo_INTERFACE_DEFINED__
5055   EXTERN_C const IID IID_ITAddressTranslationInfo;
5056 #if defined(__cplusplus) && !defined(CINTERFACE)
5057   struct ITAddressTranslationInfo : public IDispatch {
5058   public:
5059     virtual HRESULT WINAPI get_DialableString(BSTR *ppDialableString) = 0;
5060     virtual HRESULT WINAPI get_DisplayableString(BSTR *ppDisplayableString) = 0;
5061     virtual HRESULT WINAPI get_CurrentCountryCode(__LONG32 *CountryCode) = 0;
5062     virtual HRESULT WINAPI get_DestinationCountryCode(__LONG32 *CountryCode) = 0;
5063     virtual HRESULT WINAPI get_TranslationResults(__LONG32 *plResults) = 0;
5064   };
5065 #else
5066   typedef struct ITAddressTranslationInfoVtbl {
5067     BEGIN_INTERFACE
5068       HRESULT (WINAPI *QueryInterface)(ITAddressTranslationInfo *This,REFIID riid,void **ppvObject);
5069       ULONG (WINAPI *AddRef)(ITAddressTranslationInfo *This);
5070       ULONG (WINAPI *Release)(ITAddressTranslationInfo *This);
5071       HRESULT (WINAPI *GetTypeInfoCount)(ITAddressTranslationInfo *This,UINT *pctinfo);
5072       HRESULT (WINAPI *GetTypeInfo)(ITAddressTranslationInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5073       HRESULT (WINAPI *GetIDsOfNames)(ITAddressTranslationInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5074       HRESULT (WINAPI *Invoke)(ITAddressTranslationInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5075       HRESULT (WINAPI *get_DialableString)(ITAddressTranslationInfo *This,BSTR *ppDialableString);
5076       HRESULT (WINAPI *get_DisplayableString)(ITAddressTranslationInfo *This,BSTR *ppDisplayableString);
5077       HRESULT (WINAPI *get_CurrentCountryCode)(ITAddressTranslationInfo *This,__LONG32 *CountryCode);
5078       HRESULT (WINAPI *get_DestinationCountryCode)(ITAddressTranslationInfo *This,__LONG32 *CountryCode);
5079       HRESULT (WINAPI *get_TranslationResults)(ITAddressTranslationInfo *This,__LONG32 *plResults);
5080     END_INTERFACE
5081   } ITAddressTranslationInfoVtbl;
5082   struct ITAddressTranslationInfo {
5083     CONST_VTBL struct ITAddressTranslationInfoVtbl *lpVtbl;
5084   };
5085 #ifdef COBJMACROS
5086 #define ITAddressTranslationInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5087 #define ITAddressTranslationInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
5088 #define ITAddressTranslationInfo_Release(This) (This)->lpVtbl->Release(This)
5089 #define ITAddressTranslationInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5090 #define ITAddressTranslationInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5091 #define ITAddressTranslationInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5092 #define ITAddressTranslationInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5093 #define ITAddressTranslationInfo_get_DialableString(This,ppDialableString) (This)->lpVtbl->get_DialableString(This,ppDialableString)
5094 #define ITAddressTranslationInfo_get_DisplayableString(This,ppDisplayableString) (This)->lpVtbl->get_DisplayableString(This,ppDisplayableString)
5095 #define ITAddressTranslationInfo_get_CurrentCountryCode(This,CountryCode) (This)->lpVtbl->get_CurrentCountryCode(This,CountryCode)
5096 #define ITAddressTranslationInfo_get_DestinationCountryCode(This,CountryCode) (This)->lpVtbl->get_DestinationCountryCode(This,CountryCode)
5097 #define ITAddressTranslationInfo_get_TranslationResults(This,plResults) (This)->lpVtbl->get_TranslationResults(This,plResults)
5098 #endif
5099 #endif
5100   HRESULT WINAPI ITAddressTranslationInfo_get_DialableString_Proxy(ITAddressTranslationInfo *This,BSTR *ppDialableString);
5101   void __RPC_STUB ITAddressTranslationInfo_get_DialableString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5102   HRESULT WINAPI ITAddressTranslationInfo_get_DisplayableString_Proxy(ITAddressTranslationInfo *This,BSTR *ppDisplayableString);
5103   void __RPC_STUB ITAddressTranslationInfo_get_DisplayableString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5104   HRESULT WINAPI ITAddressTranslationInfo_get_CurrentCountryCode_Proxy(ITAddressTranslationInfo *This,__LONG32 *CountryCode);
5105   void __RPC_STUB ITAddressTranslationInfo_get_CurrentCountryCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5106   HRESULT WINAPI ITAddressTranslationInfo_get_DestinationCountryCode_Proxy(ITAddressTranslationInfo *This,__LONG32 *CountryCode);
5107   void __RPC_STUB ITAddressTranslationInfo_get_DestinationCountryCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5108   HRESULT WINAPI ITAddressTranslationInfo_get_TranslationResults_Proxy(ITAddressTranslationInfo *This,__LONG32 *plResults);
5109   void __RPC_STUB ITAddressTranslationInfo_get_TranslationResults_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5110 #endif
5111 
5112 #ifndef __ITLocationInfo_INTERFACE_DEFINED__
5113 #define __ITLocationInfo_INTERFACE_DEFINED__
5114   EXTERN_C const IID IID_ITLocationInfo;
5115 #if defined(__cplusplus) && !defined(CINTERFACE)
5116   struct ITLocationInfo : public IDispatch {
5117   public:
5118     virtual HRESULT WINAPI get_PermanentLocationID(__LONG32 *plLocationID) = 0;
5119     virtual HRESULT WINAPI get_CountryCode(__LONG32 *plCountryCode) = 0;
5120     virtual HRESULT WINAPI get_CountryID(__LONG32 *plCountryID) = 0;
5121     virtual HRESULT WINAPI get_Options(__LONG32 *plOptions) = 0;
5122     virtual HRESULT WINAPI get_PreferredCardID(__LONG32 *plCardID) = 0;
5123     virtual HRESULT WINAPI get_LocationName(BSTR *ppLocationName) = 0;
5124     virtual HRESULT WINAPI get_CityCode(BSTR *ppCode) = 0;
5125     virtual HRESULT WINAPI get_LocalAccessCode(BSTR *ppCode) = 0;
5126     virtual HRESULT WINAPI get_LongDistanceAccessCode(BSTR *ppCode) = 0;
5127     virtual HRESULT WINAPI get_TollPrefixList(BSTR *ppTollList) = 0;
5128     virtual HRESULT WINAPI get_CancelCallWaitingCode(BSTR *ppCode) = 0;
5129   };
5130 #else
5131   typedef struct ITLocationInfoVtbl {
5132     BEGIN_INTERFACE
5133       HRESULT (WINAPI *QueryInterface)(ITLocationInfo *This,REFIID riid,void **ppvObject);
5134       ULONG (WINAPI *AddRef)(ITLocationInfo *This);
5135       ULONG (WINAPI *Release)(ITLocationInfo *This);
5136       HRESULT (WINAPI *GetTypeInfoCount)(ITLocationInfo *This,UINT *pctinfo);
5137       HRESULT (WINAPI *GetTypeInfo)(ITLocationInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5138       HRESULT (WINAPI *GetIDsOfNames)(ITLocationInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5139       HRESULT (WINAPI *Invoke)(ITLocationInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5140       HRESULT (WINAPI *get_PermanentLocationID)(ITLocationInfo *This,__LONG32 *plLocationID);
5141       HRESULT (WINAPI *get_CountryCode)(ITLocationInfo *This,__LONG32 *plCountryCode);
5142       HRESULT (WINAPI *get_CountryID)(ITLocationInfo *This,__LONG32 *plCountryID);
5143       HRESULT (WINAPI *get_Options)(ITLocationInfo *This,__LONG32 *plOptions);
5144       HRESULT (WINAPI *get_PreferredCardID)(ITLocationInfo *This,__LONG32 *plCardID);
5145       HRESULT (WINAPI *get_LocationName)(ITLocationInfo *This,BSTR *ppLocationName);
5146       HRESULT (WINAPI *get_CityCode)(ITLocationInfo *This,BSTR *ppCode);
5147       HRESULT (WINAPI *get_LocalAccessCode)(ITLocationInfo *This,BSTR *ppCode);
5148       HRESULT (WINAPI *get_LongDistanceAccessCode)(ITLocationInfo *This,BSTR *ppCode);
5149       HRESULT (WINAPI *get_TollPrefixList)(ITLocationInfo *This,BSTR *ppTollList);
5150       HRESULT (WINAPI *get_CancelCallWaitingCode)(ITLocationInfo *This,BSTR *ppCode);
5151     END_INTERFACE
5152   } ITLocationInfoVtbl;
5153   struct ITLocationInfo {
5154     CONST_VTBL struct ITLocationInfoVtbl *lpVtbl;
5155   };
5156 #ifdef COBJMACROS
5157 #define ITLocationInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5158 #define ITLocationInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
5159 #define ITLocationInfo_Release(This) (This)->lpVtbl->Release(This)
5160 #define ITLocationInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5161 #define ITLocationInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5162 #define ITLocationInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5163 #define ITLocationInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5164 #define ITLocationInfo_get_PermanentLocationID(This,plLocationID) (This)->lpVtbl->get_PermanentLocationID(This,plLocationID)
5165 #define ITLocationInfo_get_CountryCode(This,plCountryCode) (This)->lpVtbl->get_CountryCode(This,plCountryCode)
5166 #define ITLocationInfo_get_CountryID(This,plCountryID) (This)->lpVtbl->get_CountryID(This,plCountryID)
5167 #define ITLocationInfo_get_Options(This,plOptions) (This)->lpVtbl->get_Options(This,plOptions)
5168 #define ITLocationInfo_get_PreferredCardID(This,plCardID) (This)->lpVtbl->get_PreferredCardID(This,plCardID)
5169 #define ITLocationInfo_get_LocationName(This,ppLocationName) (This)->lpVtbl->get_LocationName(This,ppLocationName)
5170 #define ITLocationInfo_get_CityCode(This,ppCode) (This)->lpVtbl->get_CityCode(This,ppCode)
5171 #define ITLocationInfo_get_LocalAccessCode(This,ppCode) (This)->lpVtbl->get_LocalAccessCode(This,ppCode)
5172 #define ITLocationInfo_get_LongDistanceAccessCode(This,ppCode) (This)->lpVtbl->get_LongDistanceAccessCode(This,ppCode)
5173 #define ITLocationInfo_get_TollPrefixList(This,ppTollList) (This)->lpVtbl->get_TollPrefixList(This,ppTollList)
5174 #define ITLocationInfo_get_CancelCallWaitingCode(This,ppCode) (This)->lpVtbl->get_CancelCallWaitingCode(This,ppCode)
5175 #endif
5176 #endif
5177   HRESULT WINAPI ITLocationInfo_get_PermanentLocationID_Proxy(ITLocationInfo *This,__LONG32 *plLocationID);
5178   void __RPC_STUB ITLocationInfo_get_PermanentLocationID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5179   HRESULT WINAPI ITLocationInfo_get_CountryCode_Proxy(ITLocationInfo *This,__LONG32 *plCountryCode);
5180   void __RPC_STUB ITLocationInfo_get_CountryCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5181   HRESULT WINAPI ITLocationInfo_get_CountryID_Proxy(ITLocationInfo *This,__LONG32 *plCountryID);
5182   void __RPC_STUB ITLocationInfo_get_CountryID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5183   HRESULT WINAPI ITLocationInfo_get_Options_Proxy(ITLocationInfo *This,__LONG32 *plOptions);
5184   void __RPC_STUB ITLocationInfo_get_Options_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5185   HRESULT WINAPI ITLocationInfo_get_PreferredCardID_Proxy(ITLocationInfo *This,__LONG32 *plCardID);
5186   void __RPC_STUB ITLocationInfo_get_PreferredCardID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5187   HRESULT WINAPI ITLocationInfo_get_LocationName_Proxy(ITLocationInfo *This,BSTR *ppLocationName);
5188   void __RPC_STUB ITLocationInfo_get_LocationName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5189   HRESULT WINAPI ITLocationInfo_get_CityCode_Proxy(ITLocationInfo *This,BSTR *ppCode);
5190   void __RPC_STUB ITLocationInfo_get_CityCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5191   HRESULT WINAPI ITLocationInfo_get_LocalAccessCode_Proxy(ITLocationInfo *This,BSTR *ppCode);
5192   void __RPC_STUB ITLocationInfo_get_LocalAccessCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5193   HRESULT WINAPI ITLocationInfo_get_LongDistanceAccessCode_Proxy(ITLocationInfo *This,BSTR *ppCode);
5194   void __RPC_STUB ITLocationInfo_get_LongDistanceAccessCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5195   HRESULT WINAPI ITLocationInfo_get_TollPrefixList_Proxy(ITLocationInfo *This,BSTR *ppTollList);
5196   void __RPC_STUB ITLocationInfo_get_TollPrefixList_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5197   HRESULT WINAPI ITLocationInfo_get_CancelCallWaitingCode_Proxy(ITLocationInfo *This,BSTR *ppCode);
5198   void __RPC_STUB ITLocationInfo_get_CancelCallWaitingCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5199 #endif
5200 
5201 #ifndef __IEnumLocation_INTERFACE_DEFINED__
5202 #define __IEnumLocation_INTERFACE_DEFINED__
5203   EXTERN_C const IID IID_IEnumLocation;
5204 #if defined(__cplusplus) && !defined(CINTERFACE)
5205   struct IEnumLocation : public IUnknown {
5206   public:
5207     virtual HRESULT WINAPI Next(ULONG celt,ITLocationInfo **ppElements,ULONG *pceltFetched) = 0;
5208     virtual HRESULT WINAPI Reset(void) = 0;
5209     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
5210     virtual HRESULT WINAPI Clone(IEnumLocation **ppEnum) = 0;
5211   };
5212 #else
5213   typedef struct IEnumLocationVtbl {
5214     BEGIN_INTERFACE
5215       HRESULT (WINAPI *QueryInterface)(IEnumLocation *This,REFIID riid,void **ppvObject);
5216       ULONG (WINAPI *AddRef)(IEnumLocation *This);
5217       ULONG (WINAPI *Release)(IEnumLocation *This);
5218       HRESULT (WINAPI *Next)(IEnumLocation *This,ULONG celt,ITLocationInfo **ppElements,ULONG *pceltFetched);
5219       HRESULT (WINAPI *Reset)(IEnumLocation *This);
5220       HRESULT (WINAPI *Skip)(IEnumLocation *This,ULONG celt);
5221       HRESULT (WINAPI *Clone)(IEnumLocation *This,IEnumLocation **ppEnum);
5222     END_INTERFACE
5223   } IEnumLocationVtbl;
5224   struct IEnumLocation {
5225     CONST_VTBL struct IEnumLocationVtbl *lpVtbl;
5226   };
5227 #ifdef COBJMACROS
5228 #define IEnumLocation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5229 #define IEnumLocation_AddRef(This) (This)->lpVtbl->AddRef(This)
5230 #define IEnumLocation_Release(This) (This)->lpVtbl->Release(This)
5231 #define IEnumLocation_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
5232 #define IEnumLocation_Reset(This) (This)->lpVtbl->Reset(This)
5233 #define IEnumLocation_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
5234 #define IEnumLocation_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
5235 #endif
5236 #endif
5237   HRESULT WINAPI IEnumLocation_Next_Proxy(IEnumLocation *This,ULONG celt,ITLocationInfo **ppElements,ULONG *pceltFetched);
5238   void __RPC_STUB IEnumLocation_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5239   HRESULT WINAPI IEnumLocation_Reset_Proxy(IEnumLocation *This);
5240   void __RPC_STUB IEnumLocation_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5241   HRESULT WINAPI IEnumLocation_Skip_Proxy(IEnumLocation *This,ULONG celt);
5242   void __RPC_STUB IEnumLocation_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5243   HRESULT WINAPI IEnumLocation_Clone_Proxy(IEnumLocation *This,IEnumLocation **ppEnum);
5244   void __RPC_STUB IEnumLocation_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5245 #endif
5246 
5247 #ifndef __ITCallingCard_INTERFACE_DEFINED__
5248 #define __ITCallingCard_INTERFACE_DEFINED__
5249   EXTERN_C const IID IID_ITCallingCard;
5250 #if defined(__cplusplus) && !defined(CINTERFACE)
5251   struct ITCallingCard : public IDispatch {
5252   public:
5253     virtual HRESULT WINAPI get_PermanentCardID(__LONG32 *plCardID) = 0;
5254     virtual HRESULT WINAPI get_NumberOfDigits(__LONG32 *plDigits) = 0;
5255     virtual HRESULT WINAPI get_Options(__LONG32 *plOptions) = 0;
5256     virtual HRESULT WINAPI get_CardName(BSTR *ppCardName) = 0;
5257     virtual HRESULT WINAPI get_SameAreaDialingRule(BSTR *ppRule) = 0;
5258     virtual HRESULT WINAPI get_LongDistanceDialingRule(BSTR *ppRule) = 0;
5259     virtual HRESULT WINAPI get_InternationalDialingRule(BSTR *ppRule) = 0;
5260   };
5261 #else
5262   typedef struct ITCallingCardVtbl {
5263     BEGIN_INTERFACE
5264       HRESULT (WINAPI *QueryInterface)(ITCallingCard *This,REFIID riid,void **ppvObject);
5265       ULONG (WINAPI *AddRef)(ITCallingCard *This);
5266       ULONG (WINAPI *Release)(ITCallingCard *This);
5267       HRESULT (WINAPI *GetTypeInfoCount)(ITCallingCard *This,UINT *pctinfo);
5268       HRESULT (WINAPI *GetTypeInfo)(ITCallingCard *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5269       HRESULT (WINAPI *GetIDsOfNames)(ITCallingCard *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5270       HRESULT (WINAPI *Invoke)(ITCallingCard *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5271       HRESULT (WINAPI *get_PermanentCardID)(ITCallingCard *This,__LONG32 *plCardID);
5272       HRESULT (WINAPI *get_NumberOfDigits)(ITCallingCard *This,__LONG32 *plDigits);
5273       HRESULT (WINAPI *get_Options)(ITCallingCard *This,__LONG32 *plOptions);
5274       HRESULT (WINAPI *get_CardName)(ITCallingCard *This,BSTR *ppCardName);
5275       HRESULT (WINAPI *get_SameAreaDialingRule)(ITCallingCard *This,BSTR *ppRule);
5276       HRESULT (WINAPI *get_LongDistanceDialingRule)(ITCallingCard *This,BSTR *ppRule);
5277       HRESULT (WINAPI *get_InternationalDialingRule)(ITCallingCard *This,BSTR *ppRule);
5278     END_INTERFACE
5279   } ITCallingCardVtbl;
5280   struct ITCallingCard {
5281     CONST_VTBL struct ITCallingCardVtbl *lpVtbl;
5282   };
5283 #ifdef COBJMACROS
5284 #define ITCallingCard_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5285 #define ITCallingCard_AddRef(This) (This)->lpVtbl->AddRef(This)
5286 #define ITCallingCard_Release(This) (This)->lpVtbl->Release(This)
5287 #define ITCallingCard_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5288 #define ITCallingCard_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5289 #define ITCallingCard_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5290 #define ITCallingCard_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5291 #define ITCallingCard_get_PermanentCardID(This,plCardID) (This)->lpVtbl->get_PermanentCardID(This,plCardID)
5292 #define ITCallingCard_get_NumberOfDigits(This,plDigits) (This)->lpVtbl->get_NumberOfDigits(This,plDigits)
5293 #define ITCallingCard_get_Options(This,plOptions) (This)->lpVtbl->get_Options(This,plOptions)
5294 #define ITCallingCard_get_CardName(This,ppCardName) (This)->lpVtbl->get_CardName(This,ppCardName)
5295 #define ITCallingCard_get_SameAreaDialingRule(This,ppRule) (This)->lpVtbl->get_SameAreaDialingRule(This,ppRule)
5296 #define ITCallingCard_get_LongDistanceDialingRule(This,ppRule) (This)->lpVtbl->get_LongDistanceDialingRule(This,ppRule)
5297 #define ITCallingCard_get_InternationalDialingRule(This,ppRule) (This)->lpVtbl->get_InternationalDialingRule(This,ppRule)
5298 #endif
5299 #endif
5300   HRESULT WINAPI ITCallingCard_get_PermanentCardID_Proxy(ITCallingCard *This,__LONG32 *plCardID);
5301   void __RPC_STUB ITCallingCard_get_PermanentCardID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5302   HRESULT WINAPI ITCallingCard_get_NumberOfDigits_Proxy(ITCallingCard *This,__LONG32 *plDigits);
5303   void __RPC_STUB ITCallingCard_get_NumberOfDigits_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5304   HRESULT WINAPI ITCallingCard_get_Options_Proxy(ITCallingCard *This,__LONG32 *plOptions);
5305   void __RPC_STUB ITCallingCard_get_Options_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5306   HRESULT WINAPI ITCallingCard_get_CardName_Proxy(ITCallingCard *This,BSTR *ppCardName);
5307   void __RPC_STUB ITCallingCard_get_CardName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5308   HRESULT WINAPI ITCallingCard_get_SameAreaDialingRule_Proxy(ITCallingCard *This,BSTR *ppRule);
5309   void __RPC_STUB ITCallingCard_get_SameAreaDialingRule_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5310   HRESULT WINAPI ITCallingCard_get_LongDistanceDialingRule_Proxy(ITCallingCard *This,BSTR *ppRule);
5311   void __RPC_STUB ITCallingCard_get_LongDistanceDialingRule_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5312   HRESULT WINAPI ITCallingCard_get_InternationalDialingRule_Proxy(ITCallingCard *This,BSTR *ppRule);
5313   void __RPC_STUB ITCallingCard_get_InternationalDialingRule_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5314 #endif
5315 
5316 #ifndef __IEnumCallingCard_INTERFACE_DEFINED__
5317 #define __IEnumCallingCard_INTERFACE_DEFINED__
5318   EXTERN_C const IID IID_IEnumCallingCard;
5319 #if defined(__cplusplus) && !defined(CINTERFACE)
5320   struct IEnumCallingCard : public IUnknown {
5321   public:
5322     virtual HRESULT WINAPI Next(ULONG celt,ITCallingCard **ppElements,ULONG *pceltFetched) = 0;
5323     virtual HRESULT WINAPI Reset(void) = 0;
5324     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
5325     virtual HRESULT WINAPI Clone(IEnumCallingCard **ppEnum) = 0;
5326   };
5327 #else
5328   typedef struct IEnumCallingCardVtbl {
5329     BEGIN_INTERFACE
5330       HRESULT (WINAPI *QueryInterface)(IEnumCallingCard *This,REFIID riid,void **ppvObject);
5331       ULONG (WINAPI *AddRef)(IEnumCallingCard *This);
5332       ULONG (WINAPI *Release)(IEnumCallingCard *This);
5333       HRESULT (WINAPI *Next)(IEnumCallingCard *This,ULONG celt,ITCallingCard **ppElements,ULONG *pceltFetched);
5334       HRESULT (WINAPI *Reset)(IEnumCallingCard *This);
5335       HRESULT (WINAPI *Skip)(IEnumCallingCard *This,ULONG celt);
5336       HRESULT (WINAPI *Clone)(IEnumCallingCard *This,IEnumCallingCard **ppEnum);
5337     END_INTERFACE
5338   } IEnumCallingCardVtbl;
5339   struct IEnumCallingCard {
5340     CONST_VTBL struct IEnumCallingCardVtbl *lpVtbl;
5341   };
5342 #ifdef COBJMACROS
5343 #define IEnumCallingCard_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5344 #define IEnumCallingCard_AddRef(This) (This)->lpVtbl->AddRef(This)
5345 #define IEnumCallingCard_Release(This) (This)->lpVtbl->Release(This)
5346 #define IEnumCallingCard_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
5347 #define IEnumCallingCard_Reset(This) (This)->lpVtbl->Reset(This)
5348 #define IEnumCallingCard_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
5349 #define IEnumCallingCard_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
5350 #endif
5351 #endif
5352   HRESULT WINAPI IEnumCallingCard_Next_Proxy(IEnumCallingCard *This,ULONG celt,ITCallingCard **ppElements,ULONG *pceltFetched);
5353   void __RPC_STUB IEnumCallingCard_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5354   HRESULT WINAPI IEnumCallingCard_Reset_Proxy(IEnumCallingCard *This);
5355   void __RPC_STUB IEnumCallingCard_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5356   HRESULT WINAPI IEnumCallingCard_Skip_Proxy(IEnumCallingCard *This,ULONG celt);
5357   void __RPC_STUB IEnumCallingCard_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5358   HRESULT WINAPI IEnumCallingCard_Clone_Proxy(IEnumCallingCard *This,IEnumCallingCard **ppEnum);
5359   void __RPC_STUB IEnumCallingCard_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5360 #endif
5361 
5362 #ifndef __ITCallNotificationEvent_INTERFACE_DEFINED__
5363 #define __ITCallNotificationEvent_INTERFACE_DEFINED__
5364   EXTERN_C const IID IID_ITCallNotificationEvent;
5365 #if defined(__cplusplus) && !defined(CINTERFACE)
5366   struct ITCallNotificationEvent : public IDispatch {
5367   public:
5368     virtual HRESULT WINAPI get_Call(ITCallInfo **ppCall) = 0;
5369     virtual HRESULT WINAPI get_Event(CALL_NOTIFICATION_EVENT *pCallNotificationEvent) = 0;
5370     virtual HRESULT WINAPI get_CallbackInstance(__LONG32 *plCallbackInstance) = 0;
5371   };
5372 #else
5373   typedef struct ITCallNotificationEventVtbl {
5374     BEGIN_INTERFACE
5375       HRESULT (WINAPI *QueryInterface)(ITCallNotificationEvent *This,REFIID riid,void **ppvObject);
5376       ULONG (WINAPI *AddRef)(ITCallNotificationEvent *This);
5377       ULONG (WINAPI *Release)(ITCallNotificationEvent *This);
5378       HRESULT (WINAPI *GetTypeInfoCount)(ITCallNotificationEvent *This,UINT *pctinfo);
5379       HRESULT (WINAPI *GetTypeInfo)(ITCallNotificationEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5380       HRESULT (WINAPI *GetIDsOfNames)(ITCallNotificationEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5381       HRESULT (WINAPI *Invoke)(ITCallNotificationEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5382       HRESULT (WINAPI *get_Call)(ITCallNotificationEvent *This,ITCallInfo **ppCall);
5383       HRESULT (WINAPI *get_Event)(ITCallNotificationEvent *This,CALL_NOTIFICATION_EVENT *pCallNotificationEvent);
5384       HRESULT (WINAPI *get_CallbackInstance)(ITCallNotificationEvent *This,__LONG32 *plCallbackInstance);
5385     END_INTERFACE
5386   } ITCallNotificationEventVtbl;
5387   struct ITCallNotificationEvent {
5388     CONST_VTBL struct ITCallNotificationEventVtbl *lpVtbl;
5389   };
5390 #ifdef COBJMACROS
5391 #define ITCallNotificationEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5392 #define ITCallNotificationEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
5393 #define ITCallNotificationEvent_Release(This) (This)->lpVtbl->Release(This)
5394 #define ITCallNotificationEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5395 #define ITCallNotificationEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5396 #define ITCallNotificationEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5397 #define ITCallNotificationEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5398 #define ITCallNotificationEvent_get_Call(This,ppCall) (This)->lpVtbl->get_Call(This,ppCall)
5399 #define ITCallNotificationEvent_get_Event(This,pCallNotificationEvent) (This)->lpVtbl->get_Event(This,pCallNotificationEvent)
5400 #define ITCallNotificationEvent_get_CallbackInstance(This,plCallbackInstance) (This)->lpVtbl->get_CallbackInstance(This,plCallbackInstance)
5401 #endif
5402 #endif
5403   HRESULT WINAPI ITCallNotificationEvent_get_Call_Proxy(ITCallNotificationEvent *This,ITCallInfo **ppCall);
5404   void __RPC_STUB ITCallNotificationEvent_get_Call_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5405   HRESULT WINAPI ITCallNotificationEvent_get_Event_Proxy(ITCallNotificationEvent *This,CALL_NOTIFICATION_EVENT *pCallNotificationEvent);
5406   void __RPC_STUB ITCallNotificationEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5407   HRESULT WINAPI ITCallNotificationEvent_get_CallbackInstance_Proxy(ITCallNotificationEvent *This,__LONG32 *plCallbackInstance);
5408   void __RPC_STUB ITCallNotificationEvent_get_CallbackInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5409 #endif
5410 
5411 #ifndef __ITDispatchMapper_INTERFACE_DEFINED__
5412 #define __ITDispatchMapper_INTERFACE_DEFINED__
5413   EXTERN_C const IID IID_ITDispatchMapper;
5414 #if defined(__cplusplus) && !defined(CINTERFACE)
5415   struct ITDispatchMapper : public IDispatch {
5416   public:
5417     virtual HRESULT WINAPI QueryDispatchInterface(BSTR pIID,IDispatch *pInterfaceToMap,IDispatch **ppReturnedInterface) = 0;
5418   };
5419 #else
5420   typedef struct ITDispatchMapperVtbl {
5421     BEGIN_INTERFACE
5422       HRESULT (WINAPI *QueryInterface)(ITDispatchMapper *This,REFIID riid,void **ppvObject);
5423       ULONG (WINAPI *AddRef)(ITDispatchMapper *This);
5424       ULONG (WINAPI *Release)(ITDispatchMapper *This);
5425       HRESULT (WINAPI *GetTypeInfoCount)(ITDispatchMapper *This,UINT *pctinfo);
5426       HRESULT (WINAPI *GetTypeInfo)(ITDispatchMapper *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5427       HRESULT (WINAPI *GetIDsOfNames)(ITDispatchMapper *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5428       HRESULT (WINAPI *Invoke)(ITDispatchMapper *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5429       HRESULT (WINAPI *QueryDispatchInterface)(ITDispatchMapper *This,BSTR pIID,IDispatch *pInterfaceToMap,IDispatch **ppReturnedInterface);
5430     END_INTERFACE
5431   } ITDispatchMapperVtbl;
5432   struct ITDispatchMapper {
5433     CONST_VTBL struct ITDispatchMapperVtbl *lpVtbl;
5434   };
5435 #ifdef COBJMACROS
5436 #define ITDispatchMapper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5437 #define ITDispatchMapper_AddRef(This) (This)->lpVtbl->AddRef(This)
5438 #define ITDispatchMapper_Release(This) (This)->lpVtbl->Release(This)
5439 #define ITDispatchMapper_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5440 #define ITDispatchMapper_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5441 #define ITDispatchMapper_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5442 #define ITDispatchMapper_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5443 #define ITDispatchMapper_QueryDispatchInterface(This,pIID,pInterfaceToMap,ppReturnedInterface) (This)->lpVtbl->QueryDispatchInterface(This,pIID,pInterfaceToMap,ppReturnedInterface)
5444 #endif
5445 #endif
5446   HRESULT WINAPI ITDispatchMapper_QueryDispatchInterface_Proxy(ITDispatchMapper *This,BSTR pIID,IDispatch *pInterfaceToMap,IDispatch **ppReturnedInterface);
5447   void __RPC_STUB ITDispatchMapper_QueryDispatchInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5448 #endif
5449 
5450 #ifndef __ITStreamControl_INTERFACE_DEFINED__
5451 #define __ITStreamControl_INTERFACE_DEFINED__
5452   EXTERN_C const IID IID_ITStreamControl;
5453 #if defined(__cplusplus) && !defined(CINTERFACE)
5454   struct ITStreamControl : public IDispatch {
5455   public:
5456     virtual HRESULT WINAPI CreateStream(__LONG32 lMediaType,TERMINAL_DIRECTION td,ITStream **ppStream) = 0;
5457     virtual HRESULT WINAPI RemoveStream(ITStream *pStream) = 0;
5458     virtual HRESULT WINAPI EnumerateStreams(IEnumStream **ppEnumStream) = 0;
5459     virtual HRESULT WINAPI get_Streams(VARIANT *pVariant) = 0;
5460   };
5461 #else
5462   typedef struct ITStreamControlVtbl {
5463     BEGIN_INTERFACE
5464       HRESULT (WINAPI *QueryInterface)(ITStreamControl *This,REFIID riid,void **ppvObject);
5465       ULONG (WINAPI *AddRef)(ITStreamControl *This);
5466       ULONG (WINAPI *Release)(ITStreamControl *This);
5467       HRESULT (WINAPI *GetTypeInfoCount)(ITStreamControl *This,UINT *pctinfo);
5468       HRESULT (WINAPI *GetTypeInfo)(ITStreamControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5469       HRESULT (WINAPI *GetIDsOfNames)(ITStreamControl *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5470       HRESULT (WINAPI *Invoke)(ITStreamControl *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5471       HRESULT (WINAPI *CreateStream)(ITStreamControl *This,__LONG32 lMediaType,TERMINAL_DIRECTION td,ITStream **ppStream);
5472       HRESULT (WINAPI *RemoveStream)(ITStreamControl *This,ITStream *pStream);
5473       HRESULT (WINAPI *EnumerateStreams)(ITStreamControl *This,IEnumStream **ppEnumStream);
5474       HRESULT (WINAPI *get_Streams)(ITStreamControl *This,VARIANT *pVariant);
5475     END_INTERFACE
5476   } ITStreamControlVtbl;
5477   struct ITStreamControl {
5478     CONST_VTBL struct ITStreamControlVtbl *lpVtbl;
5479   };
5480 #ifdef COBJMACROS
5481 #define ITStreamControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5482 #define ITStreamControl_AddRef(This) (This)->lpVtbl->AddRef(This)
5483 #define ITStreamControl_Release(This) (This)->lpVtbl->Release(This)
5484 #define ITStreamControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5485 #define ITStreamControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5486 #define ITStreamControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5487 #define ITStreamControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5488 #define ITStreamControl_CreateStream(This,lMediaType,td,ppStream) (This)->lpVtbl->CreateStream(This,lMediaType,td,ppStream)
5489 #define ITStreamControl_RemoveStream(This,pStream) (This)->lpVtbl->RemoveStream(This,pStream)
5490 #define ITStreamControl_EnumerateStreams(This,ppEnumStream) (This)->lpVtbl->EnumerateStreams(This,ppEnumStream)
5491 #define ITStreamControl_get_Streams(This,pVariant) (This)->lpVtbl->get_Streams(This,pVariant)
5492 #endif
5493 #endif
5494   HRESULT WINAPI ITStreamControl_CreateStream_Proxy(ITStreamControl *This,__LONG32 lMediaType,TERMINAL_DIRECTION td,ITStream **ppStream);
5495   void __RPC_STUB ITStreamControl_CreateStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5496   HRESULT WINAPI ITStreamControl_RemoveStream_Proxy(ITStreamControl *This,ITStream *pStream);
5497   void __RPC_STUB ITStreamControl_RemoveStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5498   HRESULT WINAPI ITStreamControl_EnumerateStreams_Proxy(ITStreamControl *This,IEnumStream **ppEnumStream);
5499   void __RPC_STUB ITStreamControl_EnumerateStreams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5500   HRESULT WINAPI ITStreamControl_get_Streams_Proxy(ITStreamControl *This,VARIANT *pVariant);
5501   void __RPC_STUB ITStreamControl_get_Streams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5502 #endif
5503 
5504 #ifndef __ITStream_INTERFACE_DEFINED__
5505 #define __ITStream_INTERFACE_DEFINED__
5506   EXTERN_C const IID IID_ITStream;
5507 #if defined(__cplusplus) && !defined(CINTERFACE)
5508   struct ITStream : public IDispatch {
5509   public:
5510     virtual HRESULT WINAPI get_MediaType(__LONG32 *plMediaType) = 0;
5511     virtual HRESULT WINAPI get_Direction(TERMINAL_DIRECTION *pTD) = 0;
5512     virtual HRESULT WINAPI get_Name(BSTR *ppName) = 0;
5513     virtual HRESULT WINAPI StartStream(void) = 0;
5514     virtual HRESULT WINAPI PauseStream(void) = 0;
5515     virtual HRESULT WINAPI StopStream(void) = 0;
5516     virtual HRESULT WINAPI SelectTerminal(ITTerminal *pTerminal) = 0;
5517     virtual HRESULT WINAPI UnselectTerminal(ITTerminal *pTerminal) = 0;
5518     virtual HRESULT WINAPI EnumerateTerminals(IEnumTerminal **ppEnumTerminal) = 0;
5519     virtual HRESULT WINAPI get_Terminals(VARIANT *pTerminals) = 0;
5520   };
5521 #else
5522   typedef struct ITStreamVtbl {
5523     BEGIN_INTERFACE
5524       HRESULT (WINAPI *QueryInterface)(ITStream *This,REFIID riid,void **ppvObject);
5525       ULONG (WINAPI *AddRef)(ITStream *This);
5526       ULONG (WINAPI *Release)(ITStream *This);
5527       HRESULT (WINAPI *GetTypeInfoCount)(ITStream *This,UINT *pctinfo);
5528       HRESULT (WINAPI *GetTypeInfo)(ITStream *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5529       HRESULT (WINAPI *GetIDsOfNames)(ITStream *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5530       HRESULT (WINAPI *Invoke)(ITStream *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5531       HRESULT (WINAPI *get_MediaType)(ITStream *This,__LONG32 *plMediaType);
5532       HRESULT (WINAPI *get_Direction)(ITStream *This,TERMINAL_DIRECTION *pTD);
5533       HRESULT (WINAPI *get_Name)(ITStream *This,BSTR *ppName);
5534       HRESULT (WINAPI *StartStream)(ITStream *This);
5535       HRESULT (WINAPI *PauseStream)(ITStream *This);
5536       HRESULT (WINAPI *StopStream)(ITStream *This);
5537       HRESULT (WINAPI *SelectTerminal)(ITStream *This,ITTerminal *pTerminal);
5538       HRESULT (WINAPI *UnselectTerminal)(ITStream *This,ITTerminal *pTerminal);
5539       HRESULT (WINAPI *EnumerateTerminals)(ITStream *This,IEnumTerminal **ppEnumTerminal);
5540       HRESULT (WINAPI *get_Terminals)(ITStream *This,VARIANT *pTerminals);
5541     END_INTERFACE
5542   } ITStreamVtbl;
5543   struct ITStream {
5544     CONST_VTBL struct ITStreamVtbl *lpVtbl;
5545   };
5546 #ifdef COBJMACROS
5547 #define ITStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5548 #define ITStream_AddRef(This) (This)->lpVtbl->AddRef(This)
5549 #define ITStream_Release(This) (This)->lpVtbl->Release(This)
5550 #define ITStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5551 #define ITStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5552 #define ITStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5553 #define ITStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5554 #define ITStream_get_MediaType(This,plMediaType) (This)->lpVtbl->get_MediaType(This,plMediaType)
5555 #define ITStream_get_Direction(This,pTD) (This)->lpVtbl->get_Direction(This,pTD)
5556 #define ITStream_get_Name(This,ppName) (This)->lpVtbl->get_Name(This,ppName)
5557 #define ITStream_StartStream(This) (This)->lpVtbl->StartStream(This)
5558 #define ITStream_PauseStream(This) (This)->lpVtbl->PauseStream(This)
5559 #define ITStream_StopStream(This) (This)->lpVtbl->StopStream(This)
5560 #define ITStream_SelectTerminal(This,pTerminal) (This)->lpVtbl->SelectTerminal(This,pTerminal)
5561 #define ITStream_UnselectTerminal(This,pTerminal) (This)->lpVtbl->UnselectTerminal(This,pTerminal)
5562 #define ITStream_EnumerateTerminals(This,ppEnumTerminal) (This)->lpVtbl->EnumerateTerminals(This,ppEnumTerminal)
5563 #define ITStream_get_Terminals(This,pTerminals) (This)->lpVtbl->get_Terminals(This,pTerminals)
5564 #endif
5565 #endif
5566   HRESULT WINAPI ITStream_get_MediaType_Proxy(ITStream *This,__LONG32 *plMediaType);
5567   void __RPC_STUB ITStream_get_MediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5568   HRESULT WINAPI ITStream_get_Direction_Proxy(ITStream *This,TERMINAL_DIRECTION *pTD);
5569   void __RPC_STUB ITStream_get_Direction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5570   HRESULT WINAPI ITStream_get_Name_Proxy(ITStream *This,BSTR *ppName);
5571   void __RPC_STUB ITStream_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5572   HRESULT WINAPI ITStream_StartStream_Proxy(ITStream *This);
5573   void __RPC_STUB ITStream_StartStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5574   HRESULT WINAPI ITStream_PauseStream_Proxy(ITStream *This);
5575   void __RPC_STUB ITStream_PauseStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5576   HRESULT WINAPI ITStream_StopStream_Proxy(ITStream *This);
5577   void __RPC_STUB ITStream_StopStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5578   HRESULT WINAPI ITStream_SelectTerminal_Proxy(ITStream *This,ITTerminal *pTerminal);
5579   void __RPC_STUB ITStream_SelectTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5580   HRESULT WINAPI ITStream_UnselectTerminal_Proxy(ITStream *This,ITTerminal *pTerminal);
5581   void __RPC_STUB ITStream_UnselectTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5582   HRESULT WINAPI ITStream_EnumerateTerminals_Proxy(ITStream *This,IEnumTerminal **ppEnumTerminal);
5583   void __RPC_STUB ITStream_EnumerateTerminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5584   HRESULT WINAPI ITStream_get_Terminals_Proxy(ITStream *This,VARIANT *pTerminals);
5585   void __RPC_STUB ITStream_get_Terminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5586 #endif
5587 
5588 #ifndef __IEnumStream_INTERFACE_DEFINED__
5589 #define __IEnumStream_INTERFACE_DEFINED__
5590   EXTERN_C const IID IID_IEnumStream;
5591 #if defined(__cplusplus) && !defined(CINTERFACE)
5592   struct IEnumStream : public IUnknown {
5593   public:
5594     virtual HRESULT WINAPI Next(ULONG celt,ITStream **ppElements,ULONG *pceltFetched) = 0;
5595     virtual HRESULT WINAPI Reset(void) = 0;
5596     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
5597     virtual HRESULT WINAPI Clone(IEnumStream **ppEnum) = 0;
5598   };
5599 #else
5600   typedef struct IEnumStreamVtbl {
5601     BEGIN_INTERFACE
5602       HRESULT (WINAPI *QueryInterface)(IEnumStream *This,REFIID riid,void **ppvObject);
5603       ULONG (WINAPI *AddRef)(IEnumStream *This);
5604       ULONG (WINAPI *Release)(IEnumStream *This);
5605       HRESULT (WINAPI *Next)(IEnumStream *This,ULONG celt,ITStream **ppElements,ULONG *pceltFetched);
5606       HRESULT (WINAPI *Reset)(IEnumStream *This);
5607       HRESULT (WINAPI *Skip)(IEnumStream *This,ULONG celt);
5608       HRESULT (WINAPI *Clone)(IEnumStream *This,IEnumStream **ppEnum);
5609     END_INTERFACE
5610   } IEnumStreamVtbl;
5611   struct IEnumStream {
5612     CONST_VTBL struct IEnumStreamVtbl *lpVtbl;
5613   };
5614 #ifdef COBJMACROS
5615 #define IEnumStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5616 #define IEnumStream_AddRef(This) (This)->lpVtbl->AddRef(This)
5617 #define IEnumStream_Release(This) (This)->lpVtbl->Release(This)
5618 #define IEnumStream_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
5619 #define IEnumStream_Reset(This) (This)->lpVtbl->Reset(This)
5620 #define IEnumStream_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
5621 #define IEnumStream_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
5622 #endif
5623 #endif
5624   HRESULT WINAPI IEnumStream_Next_Proxy(IEnumStream *This,ULONG celt,ITStream **ppElements,ULONG *pceltFetched);
5625   void __RPC_STUB IEnumStream_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5626   HRESULT WINAPI IEnumStream_Reset_Proxy(IEnumStream *This);
5627   void __RPC_STUB IEnumStream_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5628   HRESULT WINAPI IEnumStream_Skip_Proxy(IEnumStream *This,ULONG celt);
5629   void __RPC_STUB IEnumStream_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5630   HRESULT WINAPI IEnumStream_Clone_Proxy(IEnumStream *This,IEnumStream **ppEnum);
5631   void __RPC_STUB IEnumStream_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5632 #endif
5633 
5634 #ifndef __ITSubStreamControl_INTERFACE_DEFINED__
5635 #define __ITSubStreamControl_INTERFACE_DEFINED__
5636   EXTERN_C const IID IID_ITSubStreamControl;
5637 #if defined(__cplusplus) && !defined(CINTERFACE)
5638   struct ITSubStreamControl : public IDispatch {
5639   public:
5640     virtual HRESULT WINAPI CreateSubStream(ITSubStream **ppSubStream) = 0;
5641     virtual HRESULT WINAPI RemoveSubStream(ITSubStream *pSubStream) = 0;
5642     virtual HRESULT WINAPI EnumerateSubStreams(IEnumSubStream **ppEnumSubStream) = 0;
5643     virtual HRESULT WINAPI get_SubStreams(VARIANT *pVariant) = 0;
5644   };
5645 #else
5646   typedef struct ITSubStreamControlVtbl {
5647     BEGIN_INTERFACE
5648       HRESULT (WINAPI *QueryInterface)(ITSubStreamControl *This,REFIID riid,void **ppvObject);
5649       ULONG (WINAPI *AddRef)(ITSubStreamControl *This);
5650       ULONG (WINAPI *Release)(ITSubStreamControl *This);
5651       HRESULT (WINAPI *GetTypeInfoCount)(ITSubStreamControl *This,UINT *pctinfo);
5652       HRESULT (WINAPI *GetTypeInfo)(ITSubStreamControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5653       HRESULT (WINAPI *GetIDsOfNames)(ITSubStreamControl *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5654       HRESULT (WINAPI *Invoke)(ITSubStreamControl *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5655       HRESULT (WINAPI *CreateSubStream)(ITSubStreamControl *This,ITSubStream **ppSubStream);
5656       HRESULT (WINAPI *RemoveSubStream)(ITSubStreamControl *This,ITSubStream *pSubStream);
5657       HRESULT (WINAPI *EnumerateSubStreams)(ITSubStreamControl *This,IEnumSubStream **ppEnumSubStream);
5658       HRESULT (WINAPI *get_SubStreams)(ITSubStreamControl *This,VARIANT *pVariant);
5659     END_INTERFACE
5660   } ITSubStreamControlVtbl;
5661   struct ITSubStreamControl {
5662     CONST_VTBL struct ITSubStreamControlVtbl *lpVtbl;
5663   };
5664 #ifdef COBJMACROS
5665 #define ITSubStreamControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5666 #define ITSubStreamControl_AddRef(This) (This)->lpVtbl->AddRef(This)
5667 #define ITSubStreamControl_Release(This) (This)->lpVtbl->Release(This)
5668 #define ITSubStreamControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5669 #define ITSubStreamControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5670 #define ITSubStreamControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5671 #define ITSubStreamControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5672 #define ITSubStreamControl_CreateSubStream(This,ppSubStream) (This)->lpVtbl->CreateSubStream(This,ppSubStream)
5673 #define ITSubStreamControl_RemoveSubStream(This,pSubStream) (This)->lpVtbl->RemoveSubStream(This,pSubStream)
5674 #define ITSubStreamControl_EnumerateSubStreams(This,ppEnumSubStream) (This)->lpVtbl->EnumerateSubStreams(This,ppEnumSubStream)
5675 #define ITSubStreamControl_get_SubStreams(This,pVariant) (This)->lpVtbl->get_SubStreams(This,pVariant)
5676 #endif
5677 #endif
5678   HRESULT WINAPI ITSubStreamControl_CreateSubStream_Proxy(ITSubStreamControl *This,ITSubStream **ppSubStream);
5679   void __RPC_STUB ITSubStreamControl_CreateSubStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5680   HRESULT WINAPI ITSubStreamControl_RemoveSubStream_Proxy(ITSubStreamControl *This,ITSubStream *pSubStream);
5681   void __RPC_STUB ITSubStreamControl_RemoveSubStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5682   HRESULT WINAPI ITSubStreamControl_EnumerateSubStreams_Proxy(ITSubStreamControl *This,IEnumSubStream **ppEnumSubStream);
5683   void __RPC_STUB ITSubStreamControl_EnumerateSubStreams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5684   HRESULT WINAPI ITSubStreamControl_get_SubStreams_Proxy(ITSubStreamControl *This,VARIANT *pVariant);
5685   void __RPC_STUB ITSubStreamControl_get_SubStreams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5686 #endif
5687 
5688 #ifndef __ITSubStream_INTERFACE_DEFINED__
5689 #define __ITSubStream_INTERFACE_DEFINED__
5690   EXTERN_C const IID IID_ITSubStream;
5691 #if defined(__cplusplus) && !defined(CINTERFACE)
5692   struct ITSubStream : public IDispatch {
5693   public:
5694     virtual HRESULT WINAPI StartSubStream(void) = 0;
5695     virtual HRESULT WINAPI PauseSubStream(void) = 0;
5696     virtual HRESULT WINAPI StopSubStream(void) = 0;
5697     virtual HRESULT WINAPI SelectTerminal(ITTerminal *pTerminal) = 0;
5698     virtual HRESULT WINAPI UnselectTerminal(ITTerminal *pTerminal) = 0;
5699     virtual HRESULT WINAPI EnumerateTerminals(IEnumTerminal **ppEnumTerminal) = 0;
5700     virtual HRESULT WINAPI get_Terminals(VARIANT *pTerminals) = 0;
5701     virtual HRESULT WINAPI get_Stream(ITStream **ppITStream) = 0;
5702   };
5703 #else
5704   typedef struct ITSubStreamVtbl {
5705     BEGIN_INTERFACE
5706       HRESULT (WINAPI *QueryInterface)(ITSubStream *This,REFIID riid,void **ppvObject);
5707       ULONG (WINAPI *AddRef)(ITSubStream *This);
5708       ULONG (WINAPI *Release)(ITSubStream *This);
5709       HRESULT (WINAPI *GetTypeInfoCount)(ITSubStream *This,UINT *pctinfo);
5710       HRESULT (WINAPI *GetTypeInfo)(ITSubStream *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5711       HRESULT (WINAPI *GetIDsOfNames)(ITSubStream *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5712       HRESULT (WINAPI *Invoke)(ITSubStream *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5713       HRESULT (WINAPI *StartSubStream)(ITSubStream *This);
5714       HRESULT (WINAPI *PauseSubStream)(ITSubStream *This);
5715       HRESULT (WINAPI *StopSubStream)(ITSubStream *This);
5716       HRESULT (WINAPI *SelectTerminal)(ITSubStream *This,ITTerminal *pTerminal);
5717       HRESULT (WINAPI *UnselectTerminal)(ITSubStream *This,ITTerminal *pTerminal);
5718       HRESULT (WINAPI *EnumerateTerminals)(ITSubStream *This,IEnumTerminal **ppEnumTerminal);
5719       HRESULT (WINAPI *get_Terminals)(ITSubStream *This,VARIANT *pTerminals);
5720       HRESULT (WINAPI *get_Stream)(ITSubStream *This,ITStream **ppITStream);
5721     END_INTERFACE
5722   } ITSubStreamVtbl;
5723   struct ITSubStream {
5724     CONST_VTBL struct ITSubStreamVtbl *lpVtbl;
5725   };
5726 #ifdef COBJMACROS
5727 #define ITSubStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5728 #define ITSubStream_AddRef(This) (This)->lpVtbl->AddRef(This)
5729 #define ITSubStream_Release(This) (This)->lpVtbl->Release(This)
5730 #define ITSubStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5731 #define ITSubStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5732 #define ITSubStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5733 #define ITSubStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5734 #define ITSubStream_StartSubStream(This) (This)->lpVtbl->StartSubStream(This)
5735 #define ITSubStream_PauseSubStream(This) (This)->lpVtbl->PauseSubStream(This)
5736 #define ITSubStream_StopSubStream(This) (This)->lpVtbl->StopSubStream(This)
5737 #define ITSubStream_SelectTerminal(This,pTerminal) (This)->lpVtbl->SelectTerminal(This,pTerminal)
5738 #define ITSubStream_UnselectTerminal(This,pTerminal) (This)->lpVtbl->UnselectTerminal(This,pTerminal)
5739 #define ITSubStream_EnumerateTerminals(This,ppEnumTerminal) (This)->lpVtbl->EnumerateTerminals(This,ppEnumTerminal)
5740 #define ITSubStream_get_Terminals(This,pTerminals) (This)->lpVtbl->get_Terminals(This,pTerminals)
5741 #define ITSubStream_get_Stream(This,ppITStream) (This)->lpVtbl->get_Stream(This,ppITStream)
5742 #endif
5743 #endif
5744   HRESULT WINAPI ITSubStream_StartSubStream_Proxy(ITSubStream *This);
5745   void __RPC_STUB ITSubStream_StartSubStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5746   HRESULT WINAPI ITSubStream_PauseSubStream_Proxy(ITSubStream *This);
5747   void __RPC_STUB ITSubStream_PauseSubStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5748   HRESULT WINAPI ITSubStream_StopSubStream_Proxy(ITSubStream *This);
5749   void __RPC_STUB ITSubStream_StopSubStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5750   HRESULT WINAPI ITSubStream_SelectTerminal_Proxy(ITSubStream *This,ITTerminal *pTerminal);
5751   void __RPC_STUB ITSubStream_SelectTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5752   HRESULT WINAPI ITSubStream_UnselectTerminal_Proxy(ITSubStream *This,ITTerminal *pTerminal);
5753   void __RPC_STUB ITSubStream_UnselectTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5754   HRESULT WINAPI ITSubStream_EnumerateTerminals_Proxy(ITSubStream *This,IEnumTerminal **ppEnumTerminal);
5755   void __RPC_STUB ITSubStream_EnumerateTerminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5756   HRESULT WINAPI ITSubStream_get_Terminals_Proxy(ITSubStream *This,VARIANT *pTerminals);
5757   void __RPC_STUB ITSubStream_get_Terminals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5758   HRESULT WINAPI ITSubStream_get_Stream_Proxy(ITSubStream *This,ITStream **ppITStream);
5759   void __RPC_STUB ITSubStream_get_Stream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5760 #endif
5761 
5762 #ifndef __IEnumSubStream_INTERFACE_DEFINED__
5763 #define __IEnumSubStream_INTERFACE_DEFINED__
5764   EXTERN_C const IID IID_IEnumSubStream;
5765 #if defined(__cplusplus) && !defined(CINTERFACE)
5766   struct IEnumSubStream : public IUnknown {
5767   public:
5768     virtual HRESULT WINAPI Next(ULONG celt,ITSubStream **ppElements,ULONG *pceltFetched) = 0;
5769     virtual HRESULT WINAPI Reset(void) = 0;
5770     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
5771     virtual HRESULT WINAPI Clone(IEnumSubStream **ppEnum) = 0;
5772   };
5773 #else
5774   typedef struct IEnumSubStreamVtbl {
5775     BEGIN_INTERFACE
5776       HRESULT (WINAPI *QueryInterface)(IEnumSubStream *This,REFIID riid,void **ppvObject);
5777       ULONG (WINAPI *AddRef)(IEnumSubStream *This);
5778       ULONG (WINAPI *Release)(IEnumSubStream *This);
5779       HRESULT (WINAPI *Next)(IEnumSubStream *This,ULONG celt,ITSubStream **ppElements,ULONG *pceltFetched);
5780       HRESULT (WINAPI *Reset)(IEnumSubStream *This);
5781       HRESULT (WINAPI *Skip)(IEnumSubStream *This,ULONG celt);
5782       HRESULT (WINAPI *Clone)(IEnumSubStream *This,IEnumSubStream **ppEnum);
5783     END_INTERFACE
5784   } IEnumSubStreamVtbl;
5785   struct IEnumSubStream {
5786     CONST_VTBL struct IEnumSubStreamVtbl *lpVtbl;
5787   };
5788 #ifdef COBJMACROS
5789 #define IEnumSubStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5790 #define IEnumSubStream_AddRef(This) (This)->lpVtbl->AddRef(This)
5791 #define IEnumSubStream_Release(This) (This)->lpVtbl->Release(This)
5792 #define IEnumSubStream_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
5793 #define IEnumSubStream_Reset(This) (This)->lpVtbl->Reset(This)
5794 #define IEnumSubStream_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
5795 #define IEnumSubStream_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
5796 #endif
5797 #endif
5798   HRESULT WINAPI IEnumSubStream_Next_Proxy(IEnumSubStream *This,ULONG celt,ITSubStream **ppElements,ULONG *pceltFetched);
5799   void __RPC_STUB IEnumSubStream_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5800   HRESULT WINAPI IEnumSubStream_Reset_Proxy(IEnumSubStream *This);
5801   void __RPC_STUB IEnumSubStream_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5802   HRESULT WINAPI IEnumSubStream_Skip_Proxy(IEnumSubStream *This,ULONG celt);
5803   void __RPC_STUB IEnumSubStream_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5804   HRESULT WINAPI IEnumSubStream_Clone_Proxy(IEnumSubStream *This,IEnumSubStream **ppEnum);
5805   void __RPC_STUB IEnumSubStream_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5806 #endif
5807 
5808 #ifndef __ITLegacyWaveSupport_INTERFACE_DEFINED__
5809 #define __ITLegacyWaveSupport_INTERFACE_DEFINED__
5810   EXTERN_C const IID IID_ITLegacyWaveSupport;
5811 #if defined(__cplusplus) && !defined(CINTERFACE)
5812   struct ITLegacyWaveSupport : public IDispatch {
5813   public:
5814     virtual HRESULT WINAPI IsFullDuplex(FULLDUPLEX_SUPPORT *pSupport) = 0;
5815   };
5816 #else
5817   typedef struct ITLegacyWaveSupportVtbl {
5818     BEGIN_INTERFACE
5819       HRESULT (WINAPI *QueryInterface)(ITLegacyWaveSupport *This,REFIID riid,void **ppvObject);
5820       ULONG (WINAPI *AddRef)(ITLegacyWaveSupport *This);
5821       ULONG (WINAPI *Release)(ITLegacyWaveSupport *This);
5822       HRESULT (WINAPI *GetTypeInfoCount)(ITLegacyWaveSupport *This,UINT *pctinfo);
5823       HRESULT (WINAPI *GetTypeInfo)(ITLegacyWaveSupport *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5824       HRESULT (WINAPI *GetIDsOfNames)(ITLegacyWaveSupport *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5825       HRESULT (WINAPI *Invoke)(ITLegacyWaveSupport *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5826       HRESULT (WINAPI *IsFullDuplex)(ITLegacyWaveSupport *This,FULLDUPLEX_SUPPORT *pSupport);
5827     END_INTERFACE
5828   } ITLegacyWaveSupportVtbl;
5829   struct ITLegacyWaveSupport {
5830     CONST_VTBL struct ITLegacyWaveSupportVtbl *lpVtbl;
5831   };
5832 #ifdef COBJMACROS
5833 #define ITLegacyWaveSupport_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5834 #define ITLegacyWaveSupport_AddRef(This) (This)->lpVtbl->AddRef(This)
5835 #define ITLegacyWaveSupport_Release(This) (This)->lpVtbl->Release(This)
5836 #define ITLegacyWaveSupport_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5837 #define ITLegacyWaveSupport_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5838 #define ITLegacyWaveSupport_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5839 #define ITLegacyWaveSupport_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5840 #define ITLegacyWaveSupport_IsFullDuplex(This,pSupport) (This)->lpVtbl->IsFullDuplex(This,pSupport)
5841 #endif
5842 #endif
5843   HRESULT WINAPI ITLegacyWaveSupport_IsFullDuplex_Proxy(ITLegacyWaveSupport *This,FULLDUPLEX_SUPPORT *pSupport);
5844   void __RPC_STUB ITLegacyWaveSupport_IsFullDuplex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5845 #endif
5846 
5847 #ifndef __ITBasicCallControl2_INTERFACE_DEFINED__
5848 #define __ITBasicCallControl2_INTERFACE_DEFINED__
5849   EXTERN_C const IID IID_ITBasicCallControl2;
5850 #if defined(__cplusplus) && !defined(CINTERFACE)
5851   struct ITBasicCallControl2 : public ITBasicCallControl {
5852   public:
5853     virtual HRESULT WINAPI RequestTerminal(BSTR bstrTerminalClassGUID,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal) = 0;
5854     virtual HRESULT WINAPI SelectTerminalOnCall(ITTerminal *pTerminal) = 0;
5855     virtual HRESULT WINAPI UnselectTerminalOnCall(ITTerminal *pTerminal) = 0;
5856   };
5857 #else
5858   typedef struct ITBasicCallControl2Vtbl {
5859     BEGIN_INTERFACE
5860       HRESULT (WINAPI *QueryInterface)(ITBasicCallControl2 *This,REFIID riid,void **ppvObject);
5861       ULONG (WINAPI *AddRef)(ITBasicCallControl2 *This);
5862       ULONG (WINAPI *Release)(ITBasicCallControl2 *This);
5863       HRESULT (WINAPI *GetTypeInfoCount)(ITBasicCallControl2 *This,UINT *pctinfo);
5864       HRESULT (WINAPI *GetTypeInfo)(ITBasicCallControl2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5865       HRESULT (WINAPI *GetIDsOfNames)(ITBasicCallControl2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5866       HRESULT (WINAPI *Invoke)(ITBasicCallControl2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5867       HRESULT (WINAPI *Connect)(ITBasicCallControl2 *This,VARIANT_BOOL fSync);
5868       HRESULT (WINAPI *Answer)(ITBasicCallControl2 *This);
5869       HRESULT (WINAPI *Disconnect)(ITBasicCallControl2 *This,DISCONNECT_CODE code);
5870       HRESULT (WINAPI *Hold)(ITBasicCallControl2 *This,VARIANT_BOOL fHold);
5871       HRESULT (WINAPI *HandoffDirect)(ITBasicCallControl2 *This,BSTR pApplicationName);
5872       HRESULT (WINAPI *HandoffIndirect)(ITBasicCallControl2 *This,__LONG32 lMediaType);
5873       HRESULT (WINAPI *Conference)(ITBasicCallControl2 *This,ITBasicCallControl *pCall,VARIANT_BOOL fSync);
5874       HRESULT (WINAPI *Transfer)(ITBasicCallControl2 *This,ITBasicCallControl *pCall,VARIANT_BOOL fSync);
5875       HRESULT (WINAPI *BlindTransfer)(ITBasicCallControl2 *This,BSTR pDestAddress);
5876       HRESULT (WINAPI *SwapHold)(ITBasicCallControl2 *This,ITBasicCallControl *pCall);
5877       HRESULT (WINAPI *ParkDirect)(ITBasicCallControl2 *This,BSTR pParkAddress);
5878       HRESULT (WINAPI *ParkIndirect)(ITBasicCallControl2 *This,BSTR *ppNonDirAddress);
5879       HRESULT (WINAPI *Unpark)(ITBasicCallControl2 *This);
5880       HRESULT (WINAPI *SetQOS)(ITBasicCallControl2 *This,__LONG32 lMediaType,QOS_SERVICE_LEVEL ServiceLevel);
5881       HRESULT (WINAPI *Pickup)(ITBasicCallControl2 *This,BSTR pGroupID);
5882       HRESULT (WINAPI *Dial)(ITBasicCallControl2 *This,BSTR pDestAddress);
5883       HRESULT (WINAPI *Finish)(ITBasicCallControl2 *This,FINISH_MODE finishMode);
5884       HRESULT (WINAPI *RemoveFromConference)(ITBasicCallControl2 *This);
5885       HRESULT (WINAPI *RequestTerminal)(ITBasicCallControl2 *This,BSTR bstrTerminalClassGUID,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
5886       HRESULT (WINAPI *SelectTerminalOnCall)(ITBasicCallControl2 *This,ITTerminal *pTerminal);
5887       HRESULT (WINAPI *UnselectTerminalOnCall)(ITBasicCallControl2 *This,ITTerminal *pTerminal);
5888     END_INTERFACE
5889   } ITBasicCallControl2Vtbl;
5890   struct ITBasicCallControl2 {
5891     CONST_VTBL struct ITBasicCallControl2Vtbl *lpVtbl;
5892   };
5893 #ifdef COBJMACROS
5894 #define ITBasicCallControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5895 #define ITBasicCallControl2_AddRef(This) (This)->lpVtbl->AddRef(This)
5896 #define ITBasicCallControl2_Release(This) (This)->lpVtbl->Release(This)
5897 #define ITBasicCallControl2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5898 #define ITBasicCallControl2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5899 #define ITBasicCallControl2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5900 #define ITBasicCallControl2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5901 #define ITBasicCallControl2_Connect(This,fSync) (This)->lpVtbl->Connect(This,fSync)
5902 #define ITBasicCallControl2_Answer(This) (This)->lpVtbl->Answer(This)
5903 #define ITBasicCallControl2_Disconnect(This,code) (This)->lpVtbl->Disconnect(This,code)
5904 #define ITBasicCallControl2_Hold(This,fHold) (This)->lpVtbl->Hold(This,fHold)
5905 #define ITBasicCallControl2_HandoffDirect(This,pApplicationName) (This)->lpVtbl->HandoffDirect(This,pApplicationName)
5906 #define ITBasicCallControl2_HandoffIndirect(This,lMediaType) (This)->lpVtbl->HandoffIndirect(This,lMediaType)
5907 #define ITBasicCallControl2_Conference(This,pCall,fSync) (This)->lpVtbl->Conference(This,pCall,fSync)
5908 #define ITBasicCallControl2_Transfer(This,pCall,fSync) (This)->lpVtbl->Transfer(This,pCall,fSync)
5909 #define ITBasicCallControl2_BlindTransfer(This,pDestAddress) (This)->lpVtbl->BlindTransfer(This,pDestAddress)
5910 #define ITBasicCallControl2_SwapHold(This,pCall) (This)->lpVtbl->SwapHold(This,pCall)
5911 #define ITBasicCallControl2_ParkDirect(This,pParkAddress) (This)->lpVtbl->ParkDirect(This,pParkAddress)
5912 #define ITBasicCallControl2_ParkIndirect(This,ppNonDirAddress) (This)->lpVtbl->ParkIndirect(This,ppNonDirAddress)
5913 #define ITBasicCallControl2_Unpark(This) (This)->lpVtbl->Unpark(This)
5914 #define ITBasicCallControl2_SetQOS(This,lMediaType,ServiceLevel) (This)->lpVtbl->SetQOS(This,lMediaType,ServiceLevel)
5915 #define ITBasicCallControl2_Pickup(This,pGroupID) (This)->lpVtbl->Pickup(This,pGroupID)
5916 #define ITBasicCallControl2_Dial(This,pDestAddress) (This)->lpVtbl->Dial(This,pDestAddress)
5917 #define ITBasicCallControl2_Finish(This,finishMode) (This)->lpVtbl->Finish(This,finishMode)
5918 #define ITBasicCallControl2_RemoveFromConference(This) (This)->lpVtbl->RemoveFromConference(This)
5919 #define ITBasicCallControl2_RequestTerminal(This,bstrTerminalClassGUID,lMediaType,Direction,ppTerminal) (This)->lpVtbl->RequestTerminal(This,bstrTerminalClassGUID,lMediaType,Direction,ppTerminal)
5920 #define ITBasicCallControl2_SelectTerminalOnCall(This,pTerminal) (This)->lpVtbl->SelectTerminalOnCall(This,pTerminal)
5921 #define ITBasicCallControl2_UnselectTerminalOnCall(This,pTerminal) (This)->lpVtbl->UnselectTerminalOnCall(This,pTerminal)
5922 #endif
5923 #endif
5924   HRESULT WINAPI ITBasicCallControl2_RequestTerminal_Proxy(ITBasicCallControl2 *This,BSTR bstrTerminalClassGUID,__LONG32 lMediaType,TERMINAL_DIRECTION Direction,ITTerminal **ppTerminal);
5925   void __RPC_STUB ITBasicCallControl2_RequestTerminal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5926   HRESULT WINAPI ITBasicCallControl2_SelectTerminalOnCall_Proxy(ITBasicCallControl2 *This,ITTerminal *pTerminal);
5927   void __RPC_STUB ITBasicCallControl2_SelectTerminalOnCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5928   HRESULT WINAPI ITBasicCallControl2_UnselectTerminalOnCall_Proxy(ITBasicCallControl2 *This,ITTerminal *pTerminal);
5929   void __RPC_STUB ITBasicCallControl2_UnselectTerminalOnCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
5930 #endif
5931 
5932 #ifndef __ITScriptableAudioFormat_INTERFACE_DEFINED__
5933 #define __ITScriptableAudioFormat_INTERFACE_DEFINED__
5934   EXTERN_C const IID IID_ITScriptableAudioFormat;
5935 #if defined(__cplusplus) && !defined(CINTERFACE)
5936   struct ITScriptableAudioFormat : public IDispatch {
5937   public:
5938     virtual HRESULT WINAPI get_Channels(__LONG32 *pVal) = 0;
5939     virtual HRESULT WINAPI put_Channels(const __LONG32 nNewVal) = 0;
5940     virtual HRESULT WINAPI get_SamplesPerSec(__LONG32 *pVal) = 0;
5941     virtual HRESULT WINAPI put_SamplesPerSec(const __LONG32 nNewVal) = 0;
5942     virtual HRESULT WINAPI get_AvgBytesPerSec(__LONG32 *pVal) = 0;
5943     virtual HRESULT WINAPI put_AvgBytesPerSec(const __LONG32 nNewVal) = 0;
5944     virtual HRESULT WINAPI get_BlockAlign(__LONG32 *pVal) = 0;
5945     virtual HRESULT WINAPI put_BlockAlign(const __LONG32 nNewVal) = 0;
5946     virtual HRESULT WINAPI get_BitsPerSample(__LONG32 *pVal) = 0;
5947     virtual HRESULT WINAPI put_BitsPerSample(const __LONG32 nNewVal) = 0;
5948     virtual HRESULT WINAPI get_FormatTag(__LONG32 *pVal) = 0;
5949     virtual HRESULT WINAPI put_FormatTag(const __LONG32 nNewVal) = 0;
5950   };
5951 #else
5952   typedef struct ITScriptableAudioFormatVtbl {
5953     BEGIN_INTERFACE
5954       HRESULT (WINAPI *QueryInterface)(ITScriptableAudioFormat *This,REFIID riid,void **ppvObject);
5955       ULONG (WINAPI *AddRef)(ITScriptableAudioFormat *This);
5956       ULONG (WINAPI *Release)(ITScriptableAudioFormat *This);
5957       HRESULT (WINAPI *GetTypeInfoCount)(ITScriptableAudioFormat *This,UINT *pctinfo);
5958       HRESULT (WINAPI *GetTypeInfo)(ITScriptableAudioFormat *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
5959       HRESULT (WINAPI *GetIDsOfNames)(ITScriptableAudioFormat *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
5960       HRESULT (WINAPI *Invoke)(ITScriptableAudioFormat *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
5961       HRESULT (WINAPI *get_Channels)(ITScriptableAudioFormat *This,__LONG32 *pVal);
5962       HRESULT (WINAPI *put_Channels)(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
5963       HRESULT (WINAPI *get_SamplesPerSec)(ITScriptableAudioFormat *This,__LONG32 *pVal);
5964       HRESULT (WINAPI *put_SamplesPerSec)(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
5965       HRESULT (WINAPI *get_AvgBytesPerSec)(ITScriptableAudioFormat *This,__LONG32 *pVal);
5966       HRESULT (WINAPI *put_AvgBytesPerSec)(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
5967       HRESULT (WINAPI *get_BlockAlign)(ITScriptableAudioFormat *This,__LONG32 *pVal);
5968       HRESULT (WINAPI *put_BlockAlign)(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
5969       HRESULT (WINAPI *get_BitsPerSample)(ITScriptableAudioFormat *This,__LONG32 *pVal);
5970       HRESULT (WINAPI *put_BitsPerSample)(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
5971       HRESULT (WINAPI *get_FormatTag)(ITScriptableAudioFormat *This,__LONG32 *pVal);
5972       HRESULT (WINAPI *put_FormatTag)(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
5973     END_INTERFACE
5974   } ITScriptableAudioFormatVtbl;
5975   struct ITScriptableAudioFormat {
5976     CONST_VTBL struct ITScriptableAudioFormatVtbl *lpVtbl;
5977   };
5978 #ifdef COBJMACROS
5979 #define ITScriptableAudioFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5980 #define ITScriptableAudioFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
5981 #define ITScriptableAudioFormat_Release(This) (This)->lpVtbl->Release(This)
5982 #define ITScriptableAudioFormat_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5983 #define ITScriptableAudioFormat_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5984 #define ITScriptableAudioFormat_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5985 #define ITScriptableAudioFormat_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5986 #define ITScriptableAudioFormat_get_Channels(This,pVal) (This)->lpVtbl->get_Channels(This,pVal)
5987 #define ITScriptableAudioFormat_put_Channels(This,nNewVal) (This)->lpVtbl->put_Channels(This,nNewVal)
5988 #define ITScriptableAudioFormat_get_SamplesPerSec(This,pVal) (This)->lpVtbl->get_SamplesPerSec(This,pVal)
5989 #define ITScriptableAudioFormat_put_SamplesPerSec(This,nNewVal) (This)->lpVtbl->put_SamplesPerSec(This,nNewVal)
5990 #define ITScriptableAudioFormat_get_AvgBytesPerSec(This,pVal) (This)->lpVtbl->get_AvgBytesPerSec(This,pVal)
5991 #define ITScriptableAudioFormat_put_AvgBytesPerSec(This,nNewVal) (This)->lpVtbl->put_AvgBytesPerSec(This,nNewVal)
5992 #define ITScriptableAudioFormat_get_BlockAlign(This,pVal) (This)->lpVtbl->get_BlockAlign(This,pVal)
5993 #define ITScriptableAudioFormat_put_BlockAlign(This,nNewVal) (This)->lpVtbl->put_BlockAlign(This,nNewVal)
5994 #define ITScriptableAudioFormat_get_BitsPerSample(This,pVal) (This)->lpVtbl->get_BitsPerSample(This,pVal)
5995 #define ITScriptableAudioFormat_put_BitsPerSample(This,nNewVal) (This)->lpVtbl->put_BitsPerSample(This,nNewVal)
5996 #define ITScriptableAudioFormat_get_FormatTag(This,pVal) (This)->lpVtbl->get_FormatTag(This,pVal)
5997 #define ITScriptableAudioFormat_put_FormatTag(This,nNewVal) (This)->lpVtbl->put_FormatTag(This,nNewVal)
5998 #endif
5999 #endif
6000   HRESULT WINAPI ITScriptableAudioFormat_get_Channels_Proxy(ITScriptableAudioFormat *This,__LONG32 *pVal);
6001   void __RPC_STUB ITScriptableAudioFormat_get_Channels_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6002   HRESULT WINAPI ITScriptableAudioFormat_put_Channels_Proxy(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
6003   void __RPC_STUB ITScriptableAudioFormat_put_Channels_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6004   HRESULT WINAPI ITScriptableAudioFormat_get_SamplesPerSec_Proxy(ITScriptableAudioFormat *This,__LONG32 *pVal);
6005   void __RPC_STUB ITScriptableAudioFormat_get_SamplesPerSec_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6006   HRESULT WINAPI ITScriptableAudioFormat_put_SamplesPerSec_Proxy(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
6007   void __RPC_STUB ITScriptableAudioFormat_put_SamplesPerSec_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6008   HRESULT WINAPI ITScriptableAudioFormat_get_AvgBytesPerSec_Proxy(ITScriptableAudioFormat *This,__LONG32 *pVal);
6009   void __RPC_STUB ITScriptableAudioFormat_get_AvgBytesPerSec_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6010   HRESULT WINAPI ITScriptableAudioFormat_put_AvgBytesPerSec_Proxy(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
6011   void __RPC_STUB ITScriptableAudioFormat_put_AvgBytesPerSec_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6012   HRESULT WINAPI ITScriptableAudioFormat_get_BlockAlign_Proxy(ITScriptableAudioFormat *This,__LONG32 *pVal);
6013   void __RPC_STUB ITScriptableAudioFormat_get_BlockAlign_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6014   HRESULT WINAPI ITScriptableAudioFormat_put_BlockAlign_Proxy(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
6015   void __RPC_STUB ITScriptableAudioFormat_put_BlockAlign_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6016   HRESULT WINAPI ITScriptableAudioFormat_get_BitsPerSample_Proxy(ITScriptableAudioFormat *This,__LONG32 *pVal);
6017   void __RPC_STUB ITScriptableAudioFormat_get_BitsPerSample_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6018   HRESULT WINAPI ITScriptableAudioFormat_put_BitsPerSample_Proxy(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
6019   void __RPC_STUB ITScriptableAudioFormat_put_BitsPerSample_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6020   HRESULT WINAPI ITScriptableAudioFormat_get_FormatTag_Proxy(ITScriptableAudioFormat *This,__LONG32 *pVal);
6021   void __RPC_STUB ITScriptableAudioFormat_get_FormatTag_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6022   HRESULT WINAPI ITScriptableAudioFormat_put_FormatTag_Proxy(ITScriptableAudioFormat *This,const __LONG32 nNewVal);
6023   void __RPC_STUB ITScriptableAudioFormat_put_FormatTag_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
6024 #endif
6025 
6026   EXTERN_C const CLSID CLSID_VideoWindowTerm;
6027   EXTERN_C const CLSID CLSID_VideoInputTerminal;
6028   EXTERN_C const CLSID CLSID_HandsetTerminal;
6029   EXTERN_C const CLSID CLSID_HeadsetTerminal;
6030   EXTERN_C const CLSID CLSID_SpeakerphoneTerminal;
6031   EXTERN_C const CLSID CLSID_MicrophoneTerminal;
6032   EXTERN_C const CLSID CLSID_SpeakersTerminal;
6033   EXTERN_C const CLSID CLSID_MediaStreamTerminal;
6034   EXTERN_C const CLSID CLSID_FileRecordingTerminal;
6035   EXTERN_C const CLSID CLSID_FileRecordingTrack;
6036   EXTERN_C const CLSID CLSID_FilePlaybackTerminal;
6037 
6038 #define TAPIMEDIATYPE_AUDIO 0x8
6039 #define TAPIMEDIATYPE_VIDEO 0x8000
6040 #define TAPIMEDIATYPE_DATAMODEM 0x10
6041 #define TAPIMEDIATYPE_G3FAX 0x20
6042 #define TAPIMEDIATYPE_MULTITRACK 0x10000
6043 
6044   EXTERN_C const CLSID TAPIPROTOCOL_PSTN;
6045   EXTERN_C const CLSID TAPIPROTOCOL_H323;
6046   EXTERN_C const CLSID TAPIPROTOCOL_Multicast;
6047 
6048 #define __TapiConstants_MODULE_DEFINED__
6049 
6050   extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0499_v0_0_c_ifspec;
6051   extern RPC_IF_HANDLE __MIDL_itf_tapi3if_0499_v0_0_s_ifspec;
6052 
6053   ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
6054   unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
6055   unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
6056   void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
6057   ULONG __RPC_API HWND_UserSize(ULONG *,ULONG,HWND *);
6058   unsigned char *__RPC_API HWND_UserMarshal(ULONG *,unsigned char *,HWND *);
6059   unsigned char *__RPC_API HWND_UserUnmarshal(ULONG *,unsigned char *,HWND *);
6060   void __RPC_API HWND_UserFree(ULONG *,HWND *);
6061   ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
6062   unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
6063   unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
6064   void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
6065 
6066 #ifdef __cplusplus
6067 }
6068 #endif
6069 #endif
6070