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__
27typedef struct ITTAPI ITTAPI;
28#endif
29
30#ifndef __ITTAPI2_FWD_DEFINED__
31#define __ITTAPI2_FWD_DEFINED__
32typedef struct ITTAPI2 ITTAPI2;
33#endif
34
35#ifndef __ITMediaSupport_FWD_DEFINED__
36#define __ITMediaSupport_FWD_DEFINED__
37typedef struct ITMediaSupport ITMediaSupport;
38#endif
39
40#ifndef __ITPluggableTerminalClassInfo_FWD_DEFINED__
41#define __ITPluggableTerminalClassInfo_FWD_DEFINED__
42typedef struct ITPluggableTerminalClassInfo ITPluggableTerminalClassInfo;
43#endif
44
45#ifndef __ITPluggableTerminalSuperclassInfo_FWD_DEFINED__
46#define __ITPluggableTerminalSuperclassInfo_FWD_DEFINED__
47typedef struct ITPluggableTerminalSuperclassInfo ITPluggableTerminalSuperclassInfo;
48#endif
49
50#ifndef __ITTerminalSupport_FWD_DEFINED__
51#define __ITTerminalSupport_FWD_DEFINED__
52typedef struct ITTerminalSupport ITTerminalSupport;
53#endif
54
55#ifndef __ITTerminalSupport2_FWD_DEFINED__
56#define __ITTerminalSupport2_FWD_DEFINED__
57typedef struct ITTerminalSupport2 ITTerminalSupport2;
58#endif
59
60#ifndef __ITAddress_FWD_DEFINED__
61#define __ITAddress_FWD_DEFINED__
62typedef struct ITAddress ITAddress;
63#endif
64
65#ifndef __ITAddress2_FWD_DEFINED__
66#define __ITAddress2_FWD_DEFINED__
67typedef struct ITAddress2 ITAddress2;
68#endif
69
70#ifndef __ITAddressCapabilities_FWD_DEFINED__
71#define __ITAddressCapabilities_FWD_DEFINED__
72typedef struct ITAddressCapabilities ITAddressCapabilities;
73#endif
74
75#ifndef __ITPhone_FWD_DEFINED__
76#define __ITPhone_FWD_DEFINED__
77typedef struct ITPhone ITPhone;
78#endif
79
80#ifndef __ITAutomatedPhoneControl_FWD_DEFINED__
81#define __ITAutomatedPhoneControl_FWD_DEFINED__
82typedef struct ITAutomatedPhoneControl ITAutomatedPhoneControl;
83#endif
84
85#ifndef __ITBasicCallControl_FWD_DEFINED__
86#define __ITBasicCallControl_FWD_DEFINED__
87typedef struct ITBasicCallControl ITBasicCallControl;
88#endif
89
90#ifndef __ITCallInfo_FWD_DEFINED__
91#define __ITCallInfo_FWD_DEFINED__
92typedef struct ITCallInfo ITCallInfo;
93#endif
94
95#ifndef __ITCallInfo2_FWD_DEFINED__
96#define __ITCallInfo2_FWD_DEFINED__
97typedef struct ITCallInfo2 ITCallInfo2;
98#endif
99
100#ifndef __ITTerminal_FWD_DEFINED__
101#define __ITTerminal_FWD_DEFINED__
102typedef struct ITTerminal ITTerminal;
103#endif
104
105#ifndef __ITMultiTrackTerminal_FWD_DEFINED__
106#define __ITMultiTrackTerminal_FWD_DEFINED__
107typedef struct ITMultiTrackTerminal ITMultiTrackTerminal;
108#endif
109
110#ifndef __ITFileTrack_FWD_DEFINED__
111#define __ITFileTrack_FWD_DEFINED__
112typedef struct ITFileTrack ITFileTrack;
113#endif
114
115#ifndef __ITMediaPlayback_FWD_DEFINED__
116#define __ITMediaPlayback_FWD_DEFINED__
117typedef struct ITMediaPlayback ITMediaPlayback;
118#endif
119
120#ifndef __ITMediaRecord_FWD_DEFINED__
121#define __ITMediaRecord_FWD_DEFINED__
122typedef struct ITMediaRecord ITMediaRecord;
123#endif
124
125#ifndef __ITMediaControl_FWD_DEFINED__
126#define __ITMediaControl_FWD_DEFINED__
127typedef struct ITMediaControl ITMediaControl;
128#endif
129
130#ifndef __ITBasicAudioTerminal_FWD_DEFINED__
131#define __ITBasicAudioTerminal_FWD_DEFINED__
132typedef struct ITBasicAudioTerminal ITBasicAudioTerminal;
133#endif
134
135#ifndef __ITStaticAudioTerminal_FWD_DEFINED__
136#define __ITStaticAudioTerminal_FWD_DEFINED__
137typedef struct ITStaticAudioTerminal ITStaticAudioTerminal;
138#endif
139
140#ifndef __ITCallHub_FWD_DEFINED__
141#define __ITCallHub_FWD_DEFINED__
142typedef struct ITCallHub ITCallHub;
143#endif
144
145#ifndef __ITLegacyAddressMediaControl_FWD_DEFINED__
146#define __ITLegacyAddressMediaControl_FWD_DEFINED__
147typedef struct ITLegacyAddressMediaControl ITLegacyAddressMediaControl;
148#endif
149
150#ifndef __ITPrivateEvent_FWD_DEFINED__
151#define __ITPrivateEvent_FWD_DEFINED__
152typedef struct ITPrivateEvent ITPrivateEvent;
153#endif
154
155#ifndef __ITLegacyAddressMediaControl2_FWD_DEFINED__
156#define __ITLegacyAddressMediaControl2_FWD_DEFINED__
157typedef struct ITLegacyAddressMediaControl2 ITLegacyAddressMediaControl2;
158#endif
159
160#ifndef __ITLegacyCallMediaControl_FWD_DEFINED__
161#define __ITLegacyCallMediaControl_FWD_DEFINED__
162typedef struct ITLegacyCallMediaControl ITLegacyCallMediaControl;
163#endif
164
165#ifndef __ITLegacyCallMediaControl2_FWD_DEFINED__
166#define __ITLegacyCallMediaControl2_FWD_DEFINED__
167typedef struct ITLegacyCallMediaControl2 ITLegacyCallMediaControl2;
168#endif
169
170#ifndef __ITDetectTone_FWD_DEFINED__
171#define __ITDetectTone_FWD_DEFINED__
172typedef struct ITDetectTone ITDetectTone;
173#endif
174
175#ifndef __ITCustomTone_FWD_DEFINED__
176#define __ITCustomTone_FWD_DEFINED__
177typedef struct ITCustomTone ITCustomTone;
178#endif
179
180#ifndef __IEnumPhone_FWD_DEFINED__
181#define __IEnumPhone_FWD_DEFINED__
182typedef struct IEnumPhone IEnumPhone;
183#endif
184
185#ifndef __IEnumTerminal_FWD_DEFINED__
186#define __IEnumTerminal_FWD_DEFINED__
187typedef struct IEnumTerminal IEnumTerminal;
188#endif
189
190#ifndef __IEnumTerminalClass_FWD_DEFINED__
191#define __IEnumTerminalClass_FWD_DEFINED__
192typedef struct IEnumTerminalClass IEnumTerminalClass;
193#endif
194
195#ifndef __IEnumCall_FWD_DEFINED__
196#define __IEnumCall_FWD_DEFINED__
197typedef struct IEnumCall IEnumCall;
198#endif
199
200#ifndef __IEnumAddress_FWD_DEFINED__
201#define __IEnumAddress_FWD_DEFINED__
202typedef struct IEnumAddress IEnumAddress;
203#endif
204
205#ifndef __IEnumCallHub_FWD_DEFINED__
206#define __IEnumCallHub_FWD_DEFINED__
207typedef struct IEnumCallHub IEnumCallHub;
208#endif
209
210#ifndef __IEnumBstr_FWD_DEFINED__
211#define __IEnumBstr_FWD_DEFINED__
212typedef struct IEnumBstr IEnumBstr;
213#endif
214
215#ifndef __IEnumPluggableTerminalClassInfo_FWD_DEFINED__
216#define __IEnumPluggableTerminalClassInfo_FWD_DEFINED__
217typedef struct IEnumPluggableTerminalClassInfo IEnumPluggableTerminalClassInfo;
218#endif
219
220#ifndef __IEnumPluggableSuperclassInfo_FWD_DEFINED__
221#define __IEnumPluggableSuperclassInfo_FWD_DEFINED__
222typedef struct IEnumPluggableSuperclassInfo IEnumPluggableSuperclassInfo;
223#endif
224
225#ifndef __ITPhoneEvent_FWD_DEFINED__
226#define __ITPhoneEvent_FWD_DEFINED__
227typedef struct ITPhoneEvent ITPhoneEvent;
228#endif
229
230#ifndef __ITCallStateEvent_FWD_DEFINED__
231#define __ITCallStateEvent_FWD_DEFINED__
232typedef struct ITCallStateEvent ITCallStateEvent;
233#endif
234
235#ifndef __ITPhoneDeviceSpecificEvent_FWD_DEFINED__
236#define __ITPhoneDeviceSpecificEvent_FWD_DEFINED__
237typedef struct ITPhoneDeviceSpecificEvent ITPhoneDeviceSpecificEvent;
238#endif
239
240#ifndef __ITCallMediaEvent_FWD_DEFINED__
241#define __ITCallMediaEvent_FWD_DEFINED__
242typedef struct ITCallMediaEvent ITCallMediaEvent;
243#endif
244
245#ifndef __ITDigitDetectionEvent_FWD_DEFINED__
246#define __ITDigitDetectionEvent_FWD_DEFINED__
247typedef struct ITDigitDetectionEvent ITDigitDetectionEvent;
248#endif
249
250#ifndef __ITDigitGenerationEvent_FWD_DEFINED__
251#define __ITDigitGenerationEvent_FWD_DEFINED__
252typedef struct ITDigitGenerationEvent ITDigitGenerationEvent;
253#endif
254
255#ifndef __ITDigitsGatheredEvent_FWD_DEFINED__
256#define __ITDigitsGatheredEvent_FWD_DEFINED__
257typedef struct ITDigitsGatheredEvent ITDigitsGatheredEvent;
258#endif
259
260#ifndef __ITToneDetectionEvent_FWD_DEFINED__
261#define __ITToneDetectionEvent_FWD_DEFINED__
262typedef struct ITToneDetectionEvent ITToneDetectionEvent;
263#endif
264
265#ifndef __ITTAPIObjectEvent_FWD_DEFINED__
266#define __ITTAPIObjectEvent_FWD_DEFINED__
267typedef struct ITTAPIObjectEvent ITTAPIObjectEvent;
268#endif
269
270#ifndef __ITTAPIObjectEvent2_FWD_DEFINED__
271#define __ITTAPIObjectEvent2_FWD_DEFINED__
272typedef struct ITTAPIObjectEvent2 ITTAPIObjectEvent2;
273#endif
274
275#ifndef __ITTAPIEventNotification_FWD_DEFINED__
276#define __ITTAPIEventNotification_FWD_DEFINED__
277typedef struct ITTAPIEventNotification ITTAPIEventNotification;
278#endif
279
280#ifndef __ITCallHubEvent_FWD_DEFINED__
281#define __ITCallHubEvent_FWD_DEFINED__
282typedef struct ITCallHubEvent ITCallHubEvent;
283#endif
284
285#ifndef __ITAddressEvent_FWD_DEFINED__
286#define __ITAddressEvent_FWD_DEFINED__
287typedef struct ITAddressEvent ITAddressEvent;
288#endif
289
290#ifndef __ITAddressDeviceSpecificEvent_FWD_DEFINED__
291#define __ITAddressDeviceSpecificEvent_FWD_DEFINED__
292typedef struct ITAddressDeviceSpecificEvent ITAddressDeviceSpecificEvent;
293#endif
294
295#ifndef __ITFileTerminalEvent_FWD_DEFINED__
296#define __ITFileTerminalEvent_FWD_DEFINED__
297typedef struct ITFileTerminalEvent ITFileTerminalEvent;
298#endif
299
300#ifndef __ITTTSTerminalEvent_FWD_DEFINED__
301#define __ITTTSTerminalEvent_FWD_DEFINED__
302typedef struct ITTTSTerminalEvent ITTTSTerminalEvent;
303#endif
304
305#ifndef __ITASRTerminalEvent_FWD_DEFINED__
306#define __ITASRTerminalEvent_FWD_DEFINED__
307typedef struct ITASRTerminalEvent ITASRTerminalEvent;
308#endif
309
310#ifndef __ITToneTerminalEvent_FWD_DEFINED__
311#define __ITToneTerminalEvent_FWD_DEFINED__
312typedef struct ITToneTerminalEvent ITToneTerminalEvent;
313#endif
314
315#ifndef __ITQOSEvent_FWD_DEFINED__
316#define __ITQOSEvent_FWD_DEFINED__
317typedef struct ITQOSEvent ITQOSEvent;
318#endif
319
320#ifndef __ITCallInfoChangeEvent_FWD_DEFINED__
321#define __ITCallInfoChangeEvent_FWD_DEFINED__
322typedef struct ITCallInfoChangeEvent ITCallInfoChangeEvent;
323#endif
324
325#ifndef __ITRequest_FWD_DEFINED__
326#define __ITRequest_FWD_DEFINED__
327typedef struct ITRequest ITRequest;
328#endif
329
330#ifndef __ITRequestEvent_FWD_DEFINED__
331#define __ITRequestEvent_FWD_DEFINED__
332typedef struct ITRequestEvent ITRequestEvent;
333#endif
334
335#ifndef __ITCollection_FWD_DEFINED__
336#define __ITCollection_FWD_DEFINED__
337typedef struct ITCollection ITCollection;
338#endif
339
340#ifndef __ITCollection2_FWD_DEFINED__
341#define __ITCollection2_FWD_DEFINED__
342typedef struct ITCollection2 ITCollection2;
343#endif
344
345#ifndef __ITForwardInformation_FWD_DEFINED__
346#define __ITForwardInformation_FWD_DEFINED__
347typedef struct ITForwardInformation ITForwardInformation;
348#endif
349
350#ifndef __ITForwardInformation2_FWD_DEFINED__
351#define __ITForwardInformation2_FWD_DEFINED__
352typedef struct ITForwardInformation2 ITForwardInformation2;
353#endif
354
355#ifndef __ITAddressTranslation_FWD_DEFINED__
356#define __ITAddressTranslation_FWD_DEFINED__
357typedef struct ITAddressTranslation ITAddressTranslation;
358#endif
359
360#ifndef __ITAddressTranslationInfo_FWD_DEFINED__
361#define __ITAddressTranslationInfo_FWD_DEFINED__
362typedef struct ITAddressTranslationInfo ITAddressTranslationInfo;
363#endif
364
365#ifndef __ITLocationInfo_FWD_DEFINED__
366#define __ITLocationInfo_FWD_DEFINED__
367typedef struct ITLocationInfo ITLocationInfo;
368#endif
369
370#ifndef __IEnumLocation_FWD_DEFINED__
371#define __IEnumLocation_FWD_DEFINED__
372typedef struct IEnumLocation IEnumLocation;
373#endif
374
375#ifndef __ITCallingCard_FWD_DEFINED__
376#define __ITCallingCard_FWD_DEFINED__
377typedef struct ITCallingCard ITCallingCard;
378#endif
379
380#ifndef __IEnumCallingCard_FWD_DEFINED__
381#define __IEnumCallingCard_FWD_DEFINED__
382typedef struct IEnumCallingCard IEnumCallingCard;
383#endif
384
385#ifndef __ITCallNotificationEvent_FWD_DEFINED__
386#define __ITCallNotificationEvent_FWD_DEFINED__
387typedef struct ITCallNotificationEvent ITCallNotificationEvent;
388#endif
389
390#ifndef __ITDispatchMapper_FWD_DEFINED__
391#define __ITDispatchMapper_FWD_DEFINED__
392typedef struct ITDispatchMapper ITDispatchMapper;
393#endif
394
395#ifndef __ITStreamControl_FWD_DEFINED__
396#define __ITStreamControl_FWD_DEFINED__
397typedef struct ITStreamControl ITStreamControl;
398#endif
399
400#ifndef __ITStream_FWD_DEFINED__
401#define __ITStream_FWD_DEFINED__
402typedef struct ITStream ITStream;
403#endif
404
405#ifndef __IEnumStream_FWD_DEFINED__
406#define __IEnumStream_FWD_DEFINED__
407typedef struct IEnumStream IEnumStream;
408#endif
409
410#ifndef __ITSubStreamControl_FWD_DEFINED__
411#define __ITSubStreamControl_FWD_DEFINED__
412typedef struct ITSubStreamControl ITSubStreamControl;
413#endif
414
415#ifndef __ITSubStream_FWD_DEFINED__
416#define __ITSubStream_FWD_DEFINED__
417typedef struct ITSubStream ITSubStream;
418#endif
419
420#ifndef __IEnumSubStream_FWD_DEFINED__
421#define __IEnumSubStream_FWD_DEFINED__
422typedef struct IEnumSubStream IEnumSubStream;
423#endif
424
425#ifndef __ITLegacyWaveSupport_FWD_DEFINED__
426#define __ITLegacyWaveSupport_FWD_DEFINED__
427typedef struct ITLegacyWaveSupport ITLegacyWaveSupport;
428#endif
429
430#ifndef __ITBasicCallControl2_FWD_DEFINED__
431#define __ITBasicCallControl2_FWD_DEFINED__
432typedef struct ITBasicCallControl2 ITBasicCallControl2;
433#endif
434
435#ifndef __ITScriptableAudioFormat_FWD_DEFINED__
436#define __ITScriptableAudioFormat_FWD_DEFINED__
437typedef struct ITScriptableAudioFormat ITScriptableAudioFormat;
438#endif
439
440#include "oaidl.h"
441#include "strmif.h"
442
443#ifdef __cplusplus
444extern "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