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