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 __tapi3_h__
23#define __tapi3_h__
24
25#ifndef __ITAgent_FWD_DEFINED__
26#define __ITAgent_FWD_DEFINED__
27typedef struct ITAgent ITAgent;
28#endif
29
30#ifndef __ITAgentSession_FWD_DEFINED__
31#define __ITAgentSession_FWD_DEFINED__
32typedef struct ITAgentSession ITAgentSession;
33#endif
34
35#ifndef __ITACDGroup_FWD_DEFINED__
36#define __ITACDGroup_FWD_DEFINED__
37typedef struct ITACDGroup ITACDGroup;
38#endif
39
40#ifndef __ITQueue_FWD_DEFINED__
41#define __ITQueue_FWD_DEFINED__
42typedef struct ITQueue ITQueue;
43#endif
44
45#ifndef __ITAgentEvent_FWD_DEFINED__
46#define __ITAgentEvent_FWD_DEFINED__
47typedef struct ITAgentEvent ITAgentEvent;
48#endif
49
50#ifndef __ITAgentSessionEvent_FWD_DEFINED__
51#define __ITAgentSessionEvent_FWD_DEFINED__
52typedef struct ITAgentSessionEvent ITAgentSessionEvent;
53#endif
54
55#ifndef __ITACDGroupEvent_FWD_DEFINED__
56#define __ITACDGroupEvent_FWD_DEFINED__
57typedef struct ITACDGroupEvent ITACDGroupEvent;
58#endif
59
60#ifndef __ITQueueEvent_FWD_DEFINED__
61#define __ITQueueEvent_FWD_DEFINED__
62typedef struct ITQueueEvent ITQueueEvent;
63#endif
64
65#ifndef __ITAgentHandlerEvent_FWD_DEFINED__
66#define __ITAgentHandlerEvent_FWD_DEFINED__
67typedef struct ITAgentHandlerEvent ITAgentHandlerEvent;
68#endif
69
70#ifndef __ITTAPICallCenter_FWD_DEFINED__
71#define __ITTAPICallCenter_FWD_DEFINED__
72typedef struct ITTAPICallCenter ITTAPICallCenter;
73#endif
74
75#ifndef __ITAgentHandler_FWD_DEFINED__
76#define __ITAgentHandler_FWD_DEFINED__
77typedef struct ITAgentHandler ITAgentHandler;
78#endif
79
80#ifndef __IEnumAgent_FWD_DEFINED__
81#define __IEnumAgent_FWD_DEFINED__
82typedef struct IEnumAgent IEnumAgent;
83#endif
84
85#ifndef __IEnumAgentSession_FWD_DEFINED__
86#define __IEnumAgentSession_FWD_DEFINED__
87typedef struct IEnumAgentSession IEnumAgentSession;
88#endif
89
90#ifndef __IEnumQueue_FWD_DEFINED__
91#define __IEnumQueue_FWD_DEFINED__
92typedef struct IEnumQueue IEnumQueue;
93#endif
94
95#ifndef __IEnumACDGroup_FWD_DEFINED__
96#define __IEnumACDGroup_FWD_DEFINED__
97typedef struct IEnumACDGroup IEnumACDGroup;
98#endif
99
100#ifndef __IEnumAgentHandler_FWD_DEFINED__
101#define __IEnumAgentHandler_FWD_DEFINED__
102typedef struct IEnumAgentHandler IEnumAgentHandler;
103#endif
104
105#ifndef __ITAMMediaFormat_FWD_DEFINED__
106#define __ITAMMediaFormat_FWD_DEFINED__
107typedef struct ITAMMediaFormat ITAMMediaFormat;
108#endif
109
110#ifndef __ITAllocatorProperties_FWD_DEFINED__
111#define __ITAllocatorProperties_FWD_DEFINED__
112typedef struct ITAllocatorProperties ITAllocatorProperties;
113#endif
114
115#ifndef __ITPluggableTerminalEventSink_FWD_DEFINED__
116#define __ITPluggableTerminalEventSink_FWD_DEFINED__
117typedef struct ITPluggableTerminalEventSink ITPluggableTerminalEventSink;
118#endif
119
120#ifndef __ITPluggableTerminalEventSinkRegistration_FWD_DEFINED__
121#define __ITPluggableTerminalEventSinkRegistration_FWD_DEFINED__
122typedef struct ITPluggableTerminalEventSinkRegistration ITPluggableTerminalEventSinkRegistration;
123#endif
124
125#ifndef __ITMSPAddress_FWD_DEFINED__
126#define __ITMSPAddress_FWD_DEFINED__
127typedef struct ITMSPAddress ITMSPAddress;
128#endif
129
130#ifndef __ITAgent_FWD_DEFINED__
131#define __ITAgent_FWD_DEFINED__
132typedef struct ITAgent ITAgent;
133#endif
134
135#ifndef __ITAgentEvent_FWD_DEFINED__
136#define __ITAgentEvent_FWD_DEFINED__
137typedef struct ITAgentEvent ITAgentEvent;
138#endif
139
140#ifndef __ITAgentSession_FWD_DEFINED__
141#define __ITAgentSession_FWD_DEFINED__
142typedef struct ITAgentSession ITAgentSession;
143#endif
144
145#ifndef __ITAgentSessionEvent_FWD_DEFINED__
146#define __ITAgentSessionEvent_FWD_DEFINED__
147typedef struct ITAgentSessionEvent ITAgentSessionEvent;
148#endif
149
150#ifndef __ITACDGroup_FWD_DEFINED__
151#define __ITACDGroup_FWD_DEFINED__
152typedef struct ITACDGroup ITACDGroup;
153#endif
154
155#ifndef __ITACDGroupEvent_FWD_DEFINED__
156#define __ITACDGroupEvent_FWD_DEFINED__
157typedef struct ITACDGroupEvent ITACDGroupEvent;
158#endif
159
160#ifndef __ITQueue_FWD_DEFINED__
161#define __ITQueue_FWD_DEFINED__
162typedef struct ITQueue ITQueue;
163#endif
164
165#ifndef __ITQueueEvent_FWD_DEFINED__
166#define __ITQueueEvent_FWD_DEFINED__
167typedef struct ITQueueEvent ITQueueEvent;
168#endif
169
170#ifndef __ITTAPICallCenter_FWD_DEFINED__
171#define __ITTAPICallCenter_FWD_DEFINED__
172typedef struct ITTAPICallCenter ITTAPICallCenter;
173#endif
174
175#ifndef __ITAgentHandler_FWD_DEFINED__
176#define __ITAgentHandler_FWD_DEFINED__
177typedef struct ITAgentHandler ITAgentHandler;
178#endif
179
180#ifndef __ITAgentHandlerEvent_FWD_DEFINED__
181#define __ITAgentHandlerEvent_FWD_DEFINED__
182typedef struct ITAgentHandlerEvent ITAgentHandlerEvent;
183#endif
184
185#ifndef __ITTAPIDispatchEventNotification_FWD_DEFINED__
186#define __ITTAPIDispatchEventNotification_FWD_DEFINED__
187typedef struct ITTAPIDispatchEventNotification ITTAPIDispatchEventNotification;
188#endif
189
190#ifndef __TAPI_FWD_DEFINED__
191#define __TAPI_FWD_DEFINED__
192
193#ifdef __cplusplus
194typedef class TAPI TAPI;
195#else
196typedef struct TAPI TAPI;
197#endif
198#endif
199
200#ifndef __DispatchMapper_FWD_DEFINED__
201#define __DispatchMapper_FWD_DEFINED__
202#ifdef __cplusplus
203typedef class DispatchMapper DispatchMapper;
204#else
205typedef struct DispatchMapper DispatchMapper;
206#endif
207#endif
208
209#ifndef __RequestMakeCall_FWD_DEFINED__
210#define __RequestMakeCall_FWD_DEFINED__
211#ifdef __cplusplus
212typedef class RequestMakeCall RequestMakeCall;
213#else
214typedef struct RequestMakeCall RequestMakeCall;
215#endif
216#endif
217
218#ifndef __ITTAPIDispatchEventNotification_FWD_DEFINED__
219#define __ITTAPIDispatchEventNotification_FWD_DEFINED__
220typedef struct ITTAPIDispatchEventNotification ITTAPIDispatchEventNotification;
221#endif
222
223#include "oaidl.h"
224#include "ocidl.h"
225#include "tapi3if.h"
226
227#ifdef __cplusplus
228extern "C" {
229#endif
230
231#ifndef __MIDL_user_allocate_free_DEFINED__
232#define __MIDL_user_allocate_free_DEFINED__
233  void *__RPC_API MIDL_user_allocate(size_t);
234  void __RPC_API MIDL_user_free(void *);
235#endif
236
237  typedef enum AGENT_EVENT {
238    AE_NOT_READY = 0,
239    AE_READY,AE_BUSY_ACD,AE_BUSY_INCOMING,AE_BUSY_OUTGOING,AE_UNKNOWN
240  } AGENT_EVENT;
241
242  typedef enum AGENT_STATE {
243    AS_NOT_READY = 0,
244    AS_READY,AS_BUSY_ACD,AS_BUSY_INCOMING,AS_BUSY_OUTGOING,AS_UNKNOWN
245  } AGENT_STATE;
246
247  typedef enum AGENT_SESSION_EVENT {
248    ASE_NEW_SESSION = 0,
249    ASE_NOT_READY,ASE_READY,ASE_BUSY,ASE_WRAPUP,ASE_END
250  } AGENT_SESSION_EVENT;
251
252  typedef enum AGENT_SESSION_STATE {
253    ASST_NOT_READY = 0,
254    ASST_READY,ASST_BUSY_ON_CALL,ASST_BUSY_WRAPUP,ASST_SESSION_ENDED
255  } AGENT_SESSION_STATE;
256
257  typedef enum AGENTHANDLER_EVENT {
258    AHE_NEW_AGENTHANDLER = 0,
259    AHE_AGENTHANDLER_REMOVED
260  } AGENTHANDLER_EVENT;
261
262  typedef enum ACDGROUP_EVENT {
263    ACDGE_NEW_GROUP = 0,
264    ACDGE_GROUP_REMOVED
265  } ACDGROUP_EVENT;
266
267  typedef enum ACDQUEUE_EVENT {
268    ACDQE_NEW_QUEUE = 0,
269    ACDQE_QUEUE_REMOVED
270  } ACDQUEUE_EVENT;
271
272  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0000_v0_0_c_ifspec;
273  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0000_v0_0_s_ifspec;
274#ifndef __ITAgent_INTERFACE_DEFINED__
275#define __ITAgent_INTERFACE_DEFINED__
276  EXTERN_C const IID IID_ITAgent;
277#if defined(__cplusplus) && !defined(CINTERFACE)
278  struct ITAgent : public IDispatch {
279  public:
280    virtual HRESULT WINAPI EnumerateAgentSessions(IEnumAgentSession **ppEnumAgentSession) = 0;
281    virtual HRESULT WINAPI CreateSession(ITACDGroup *pACDGroup,ITAddress *pAddress,ITAgentSession **ppAgentSession) = 0;
282    virtual HRESULT WINAPI CreateSessionWithPIN(ITACDGroup *pACDGroup,ITAddress *pAddress,BSTR pPIN,ITAgentSession **ppAgentSession) = 0;
283    virtual HRESULT WINAPI get_ID(BSTR *ppID) = 0;
284    virtual HRESULT WINAPI get_User(BSTR *ppUser) = 0;
285    virtual HRESULT WINAPI put_State(AGENT_STATE AgentState) = 0;
286    virtual HRESULT WINAPI get_State(AGENT_STATE *pAgentState) = 0;
287    virtual HRESULT WINAPI put_MeasurementPeriod(__LONG32 lPeriod) = 0;
288    virtual HRESULT WINAPI get_MeasurementPeriod(__LONG32 *plPeriod) = 0;
289    virtual HRESULT WINAPI get_OverallCallRate(CURRENCY *pcyCallrate) = 0;
290    virtual HRESULT WINAPI get_NumberOfACDCalls(__LONG32 *plCalls) = 0;
291    virtual HRESULT WINAPI get_NumberOfIncomingCalls(__LONG32 *plCalls) = 0;
292    virtual HRESULT WINAPI get_NumberOfOutgoingCalls(__LONG32 *plCalls) = 0;
293    virtual HRESULT WINAPI get_TotalACDTalkTime(__LONG32 *plTalkTime) = 0;
294    virtual HRESULT WINAPI get_TotalACDCallTime(__LONG32 *plCallTime) = 0;
295    virtual HRESULT WINAPI get_TotalWrapUpTime(__LONG32 *plWrapUpTime) = 0;
296    virtual HRESULT WINAPI get_AgentSessions(VARIANT *pVariant) = 0;
297  };
298#else
299  typedef struct ITAgentVtbl {
300    BEGIN_INTERFACE
301      HRESULT (WINAPI *QueryInterface)(ITAgent *This,REFIID riid,void **ppvObject);
302      ULONG (WINAPI *AddRef)(ITAgent *This);
303      ULONG (WINAPI *Release)(ITAgent *This);
304      HRESULT (WINAPI *GetTypeInfoCount)(ITAgent *This,UINT *pctinfo);
305      HRESULT (WINAPI *GetTypeInfo)(ITAgent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
306      HRESULT (WINAPI *GetIDsOfNames)(ITAgent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
307      HRESULT (WINAPI *Invoke)(ITAgent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
308      HRESULT (WINAPI *EnumerateAgentSessions)(ITAgent *This,IEnumAgentSession **ppEnumAgentSession);
309      HRESULT (WINAPI *CreateSession)(ITAgent *This,ITACDGroup *pACDGroup,ITAddress *pAddress,ITAgentSession **ppAgentSession);
310      HRESULT (WINAPI *CreateSessionWithPIN)(ITAgent *This,ITACDGroup *pACDGroup,ITAddress *pAddress,BSTR pPIN,ITAgentSession **ppAgentSession);
311      HRESULT (WINAPI *get_ID)(ITAgent *This,BSTR *ppID);
312      HRESULT (WINAPI *get_User)(ITAgent *This,BSTR *ppUser);
313      HRESULT (WINAPI *put_State)(ITAgent *This,AGENT_STATE AgentState);
314      HRESULT (WINAPI *get_State)(ITAgent *This,AGENT_STATE *pAgentState);
315      HRESULT (WINAPI *put_MeasurementPeriod)(ITAgent *This,__LONG32 lPeriod);
316      HRESULT (WINAPI *get_MeasurementPeriod)(ITAgent *This,__LONG32 *plPeriod);
317      HRESULT (WINAPI *get_OverallCallRate)(ITAgent *This,CURRENCY *pcyCallrate);
318      HRESULT (WINAPI *get_NumberOfACDCalls)(ITAgent *This,__LONG32 *plCalls);
319      HRESULT (WINAPI *get_NumberOfIncomingCalls)(ITAgent *This,__LONG32 *plCalls);
320      HRESULT (WINAPI *get_NumberOfOutgoingCalls)(ITAgent *This,__LONG32 *plCalls);
321      HRESULT (WINAPI *get_TotalACDTalkTime)(ITAgent *This,__LONG32 *plTalkTime);
322      HRESULT (WINAPI *get_TotalACDCallTime)(ITAgent *This,__LONG32 *plCallTime);
323      HRESULT (WINAPI *get_TotalWrapUpTime)(ITAgent *This,__LONG32 *plWrapUpTime);
324      HRESULT (WINAPI *get_AgentSessions)(ITAgent *This,VARIANT *pVariant);
325    END_INTERFACE
326  } ITAgentVtbl;
327  struct ITAgent {
328    CONST_VTBL struct ITAgentVtbl *lpVtbl;
329  };
330#ifdef COBJMACROS
331#define ITAgent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
332#define ITAgent_AddRef(This) (This)->lpVtbl->AddRef(This)
333#define ITAgent_Release(This) (This)->lpVtbl->Release(This)
334#define ITAgent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
335#define ITAgent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
336#define ITAgent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
337#define ITAgent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
338#define ITAgent_EnumerateAgentSessions(This,ppEnumAgentSession) (This)->lpVtbl->EnumerateAgentSessions(This,ppEnumAgentSession)
339#define ITAgent_CreateSession(This,pACDGroup,pAddress,ppAgentSession) (This)->lpVtbl->CreateSession(This,pACDGroup,pAddress,ppAgentSession)
340#define ITAgent_CreateSessionWithPIN(This,pACDGroup,pAddress,pPIN,ppAgentSession) (This)->lpVtbl->CreateSessionWithPIN(This,pACDGroup,pAddress,pPIN,ppAgentSession)
341#define ITAgent_get_ID(This,ppID) (This)->lpVtbl->get_ID(This,ppID)
342#define ITAgent_get_User(This,ppUser) (This)->lpVtbl->get_User(This,ppUser)
343#define ITAgent_put_State(This,AgentState) (This)->lpVtbl->put_State(This,AgentState)
344#define ITAgent_get_State(This,pAgentState) (This)->lpVtbl->get_State(This,pAgentState)
345#define ITAgent_put_MeasurementPeriod(This,lPeriod) (This)->lpVtbl->put_MeasurementPeriod(This,lPeriod)
346#define ITAgent_get_MeasurementPeriod(This,plPeriod) (This)->lpVtbl->get_MeasurementPeriod(This,plPeriod)
347#define ITAgent_get_OverallCallRate(This,pcyCallrate) (This)->lpVtbl->get_OverallCallRate(This,pcyCallrate)
348#define ITAgent_get_NumberOfACDCalls(This,plCalls) (This)->lpVtbl->get_NumberOfACDCalls(This,plCalls)
349#define ITAgent_get_NumberOfIncomingCalls(This,plCalls) (This)->lpVtbl->get_NumberOfIncomingCalls(This,plCalls)
350#define ITAgent_get_NumberOfOutgoingCalls(This,plCalls) (This)->lpVtbl->get_NumberOfOutgoingCalls(This,plCalls)
351#define ITAgent_get_TotalACDTalkTime(This,plTalkTime) (This)->lpVtbl->get_TotalACDTalkTime(This,plTalkTime)
352#define ITAgent_get_TotalACDCallTime(This,plCallTime) (This)->lpVtbl->get_TotalACDCallTime(This,plCallTime)
353#define ITAgent_get_TotalWrapUpTime(This,plWrapUpTime) (This)->lpVtbl->get_TotalWrapUpTime(This,plWrapUpTime)
354#define ITAgent_get_AgentSessions(This,pVariant) (This)->lpVtbl->get_AgentSessions(This,pVariant)
355#endif
356#endif
357  HRESULT WINAPI ITAgent_EnumerateAgentSessions_Proxy(ITAgent *This,IEnumAgentSession **ppEnumAgentSession);
358  void __RPC_STUB ITAgent_EnumerateAgentSessions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
359  HRESULT WINAPI ITAgent_CreateSession_Proxy(ITAgent *This,ITACDGroup *pACDGroup,ITAddress *pAddress,ITAgentSession **ppAgentSession);
360  void __RPC_STUB ITAgent_CreateSession_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
361  HRESULT WINAPI ITAgent_CreateSessionWithPIN_Proxy(ITAgent *This,ITACDGroup *pACDGroup,ITAddress *pAddress,BSTR pPIN,ITAgentSession **ppAgentSession);
362  void __RPC_STUB ITAgent_CreateSessionWithPIN_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
363  HRESULT WINAPI ITAgent_get_ID_Proxy(ITAgent *This,BSTR *ppID);
364  void __RPC_STUB ITAgent_get_ID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
365  HRESULT WINAPI ITAgent_get_User_Proxy(ITAgent *This,BSTR *ppUser);
366  void __RPC_STUB ITAgent_get_User_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
367  HRESULT WINAPI ITAgent_put_State_Proxy(ITAgent *This,AGENT_STATE AgentState);
368  void __RPC_STUB ITAgent_put_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
369  HRESULT WINAPI ITAgent_get_State_Proxy(ITAgent *This,AGENT_STATE *pAgentState);
370  void __RPC_STUB ITAgent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
371  HRESULT WINAPI ITAgent_put_MeasurementPeriod_Proxy(ITAgent *This,__LONG32 lPeriod);
372  void __RPC_STUB ITAgent_put_MeasurementPeriod_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
373  HRESULT WINAPI ITAgent_get_MeasurementPeriod_Proxy(ITAgent *This,__LONG32 *plPeriod);
374  void __RPC_STUB ITAgent_get_MeasurementPeriod_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
375  HRESULT WINAPI ITAgent_get_OverallCallRate_Proxy(ITAgent *This,CURRENCY *pcyCallrate);
376  void __RPC_STUB ITAgent_get_OverallCallRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
377  HRESULT WINAPI ITAgent_get_NumberOfACDCalls_Proxy(ITAgent *This,__LONG32 *plCalls);
378  void __RPC_STUB ITAgent_get_NumberOfACDCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
379  HRESULT WINAPI ITAgent_get_NumberOfIncomingCalls_Proxy(ITAgent *This,__LONG32 *plCalls);
380  void __RPC_STUB ITAgent_get_NumberOfIncomingCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
381  HRESULT WINAPI ITAgent_get_NumberOfOutgoingCalls_Proxy(ITAgent *This,__LONG32 *plCalls);
382  void __RPC_STUB ITAgent_get_NumberOfOutgoingCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
383  HRESULT WINAPI ITAgent_get_TotalACDTalkTime_Proxy(ITAgent *This,__LONG32 *plTalkTime);
384  void __RPC_STUB ITAgent_get_TotalACDTalkTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
385  HRESULT WINAPI ITAgent_get_TotalACDCallTime_Proxy(ITAgent *This,__LONG32 *plCallTime);
386  void __RPC_STUB ITAgent_get_TotalACDCallTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
387  HRESULT WINAPI ITAgent_get_TotalWrapUpTime_Proxy(ITAgent *This,__LONG32 *plWrapUpTime);
388  void __RPC_STUB ITAgent_get_TotalWrapUpTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
389  HRESULT WINAPI ITAgent_get_AgentSessions_Proxy(ITAgent *This,VARIANT *pVariant);
390  void __RPC_STUB ITAgent_get_AgentSessions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
391#endif
392
393#ifndef __ITAgentSession_INTERFACE_DEFINED__
394#define __ITAgentSession_INTERFACE_DEFINED__
395  EXTERN_C const IID IID_ITAgentSession;
396#if defined(__cplusplus) && !defined(CINTERFACE)
397  struct ITAgentSession : public IDispatch {
398  public:
399    virtual HRESULT WINAPI get_Agent(ITAgent **ppAgent) = 0;
400    virtual HRESULT WINAPI get_Address(ITAddress **ppAddress) = 0;
401    virtual HRESULT WINAPI get_ACDGroup(ITACDGroup **ppACDGroup) = 0;
402    virtual HRESULT WINAPI put_State(AGENT_SESSION_STATE SessionState) = 0;
403    virtual HRESULT WINAPI get_State(AGENT_SESSION_STATE *pSessionState) = 0;
404    virtual HRESULT WINAPI get_SessionStartTime(DATE *pdateSessionStart) = 0;
405    virtual HRESULT WINAPI get_SessionDuration(__LONG32 *plDuration) = 0;
406    virtual HRESULT WINAPI get_NumberOfCalls(__LONG32 *plCalls) = 0;
407    virtual HRESULT WINAPI get_TotalTalkTime(__LONG32 *plTalkTime) = 0;
408    virtual HRESULT WINAPI get_AverageTalkTime(__LONG32 *plTalkTime) = 0;
409    virtual HRESULT WINAPI get_TotalCallTime(__LONG32 *plCallTime) = 0;
410    virtual HRESULT WINAPI get_AverageCallTime(__LONG32 *plCallTime) = 0;
411    virtual HRESULT WINAPI get_TotalWrapUpTime(__LONG32 *plWrapUpTime) = 0;
412    virtual HRESULT WINAPI get_AverageWrapUpTime(__LONG32 *plWrapUpTime) = 0;
413    virtual HRESULT WINAPI get_ACDCallRate(CURRENCY *pcyCallrate) = 0;
414    virtual HRESULT WINAPI get_LongestTimeToAnswer(__LONG32 *plAnswerTime) = 0;
415    virtual HRESULT WINAPI get_AverageTimeToAnswer(__LONG32 *plAnswerTime) = 0;
416  };
417#else
418  typedef struct ITAgentSessionVtbl {
419    BEGIN_INTERFACE
420      HRESULT (WINAPI *QueryInterface)(ITAgentSession *This,REFIID riid,void **ppvObject);
421      ULONG (WINAPI *AddRef)(ITAgentSession *This);
422      ULONG (WINAPI *Release)(ITAgentSession *This);
423      HRESULT (WINAPI *GetTypeInfoCount)(ITAgentSession *This,UINT *pctinfo);
424      HRESULT (WINAPI *GetTypeInfo)(ITAgentSession *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
425      HRESULT (WINAPI *GetIDsOfNames)(ITAgentSession *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
426      HRESULT (WINAPI *Invoke)(ITAgentSession *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
427      HRESULT (WINAPI *get_Agent)(ITAgentSession *This,ITAgent **ppAgent);
428      HRESULT (WINAPI *get_Address)(ITAgentSession *This,ITAddress **ppAddress);
429      HRESULT (WINAPI *get_ACDGroup)(ITAgentSession *This,ITACDGroup **ppACDGroup);
430      HRESULT (WINAPI *put_State)(ITAgentSession *This,AGENT_SESSION_STATE SessionState);
431      HRESULT (WINAPI *get_State)(ITAgentSession *This,AGENT_SESSION_STATE *pSessionState);
432      HRESULT (WINAPI *get_SessionStartTime)(ITAgentSession *This,DATE *pdateSessionStart);
433      HRESULT (WINAPI *get_SessionDuration)(ITAgentSession *This,__LONG32 *plDuration);
434      HRESULT (WINAPI *get_NumberOfCalls)(ITAgentSession *This,__LONG32 *plCalls);
435      HRESULT (WINAPI *get_TotalTalkTime)(ITAgentSession *This,__LONG32 *plTalkTime);
436      HRESULT (WINAPI *get_AverageTalkTime)(ITAgentSession *This,__LONG32 *plTalkTime);
437      HRESULT (WINAPI *get_TotalCallTime)(ITAgentSession *This,__LONG32 *plCallTime);
438      HRESULT (WINAPI *get_AverageCallTime)(ITAgentSession *This,__LONG32 *plCallTime);
439      HRESULT (WINAPI *get_TotalWrapUpTime)(ITAgentSession *This,__LONG32 *plWrapUpTime);
440      HRESULT (WINAPI *get_AverageWrapUpTime)(ITAgentSession *This,__LONG32 *plWrapUpTime);
441      HRESULT (WINAPI *get_ACDCallRate)(ITAgentSession *This,CURRENCY *pcyCallrate);
442      HRESULT (WINAPI *get_LongestTimeToAnswer)(ITAgentSession *This,__LONG32 *plAnswerTime);
443      HRESULT (WINAPI *get_AverageTimeToAnswer)(ITAgentSession *This,__LONG32 *plAnswerTime);
444    END_INTERFACE
445  } ITAgentSessionVtbl;
446  struct ITAgentSession {
447    CONST_VTBL struct ITAgentSessionVtbl *lpVtbl;
448  };
449#ifdef COBJMACROS
450#define ITAgentSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
451#define ITAgentSession_AddRef(This) (This)->lpVtbl->AddRef(This)
452#define ITAgentSession_Release(This) (This)->lpVtbl->Release(This)
453#define ITAgentSession_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
454#define ITAgentSession_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
455#define ITAgentSession_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
456#define ITAgentSession_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
457#define ITAgentSession_get_Agent(This,ppAgent) (This)->lpVtbl->get_Agent(This,ppAgent)
458#define ITAgentSession_get_Address(This,ppAddress) (This)->lpVtbl->get_Address(This,ppAddress)
459#define ITAgentSession_get_ACDGroup(This,ppACDGroup) (This)->lpVtbl->get_ACDGroup(This,ppACDGroup)
460#define ITAgentSession_put_State(This,SessionState) (This)->lpVtbl->put_State(This,SessionState)
461#define ITAgentSession_get_State(This,pSessionState) (This)->lpVtbl->get_State(This,pSessionState)
462#define ITAgentSession_get_SessionStartTime(This,pdateSessionStart) (This)->lpVtbl->get_SessionStartTime(This,pdateSessionStart)
463#define ITAgentSession_get_SessionDuration(This,plDuration) (This)->lpVtbl->get_SessionDuration(This,plDuration)
464#define ITAgentSession_get_NumberOfCalls(This,plCalls) (This)->lpVtbl->get_NumberOfCalls(This,plCalls)
465#define ITAgentSession_get_TotalTalkTime(This,plTalkTime) (This)->lpVtbl->get_TotalTalkTime(This,plTalkTime)
466#define ITAgentSession_get_AverageTalkTime(This,plTalkTime) (This)->lpVtbl->get_AverageTalkTime(This,plTalkTime)
467#define ITAgentSession_get_TotalCallTime(This,plCallTime) (This)->lpVtbl->get_TotalCallTime(This,plCallTime)
468#define ITAgentSession_get_AverageCallTime(This,plCallTime) (This)->lpVtbl->get_AverageCallTime(This,plCallTime)
469#define ITAgentSession_get_TotalWrapUpTime(This,plWrapUpTime) (This)->lpVtbl->get_TotalWrapUpTime(This,plWrapUpTime)
470#define ITAgentSession_get_AverageWrapUpTime(This,plWrapUpTime) (This)->lpVtbl->get_AverageWrapUpTime(This,plWrapUpTime)
471#define ITAgentSession_get_ACDCallRate(This,pcyCallrate) (This)->lpVtbl->get_ACDCallRate(This,pcyCallrate)
472#define ITAgentSession_get_LongestTimeToAnswer(This,plAnswerTime) (This)->lpVtbl->get_LongestTimeToAnswer(This,plAnswerTime)
473#define ITAgentSession_get_AverageTimeToAnswer(This,plAnswerTime) (This)->lpVtbl->get_AverageTimeToAnswer(This,plAnswerTime)
474#endif
475#endif
476  HRESULT WINAPI ITAgentSession_get_Agent_Proxy(ITAgentSession *This,ITAgent **ppAgent);
477  void __RPC_STUB ITAgentSession_get_Agent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
478  HRESULT WINAPI ITAgentSession_get_Address_Proxy(ITAgentSession *This,ITAddress **ppAddress);
479  void __RPC_STUB ITAgentSession_get_Address_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
480  HRESULT WINAPI ITAgentSession_get_ACDGroup_Proxy(ITAgentSession *This,ITACDGroup **ppACDGroup);
481  void __RPC_STUB ITAgentSession_get_ACDGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
482  HRESULT WINAPI ITAgentSession_put_State_Proxy(ITAgentSession *This,AGENT_SESSION_STATE SessionState);
483  void __RPC_STUB ITAgentSession_put_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
484  HRESULT WINAPI ITAgentSession_get_State_Proxy(ITAgentSession *This,AGENT_SESSION_STATE *pSessionState);
485  void __RPC_STUB ITAgentSession_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
486  HRESULT WINAPI ITAgentSession_get_SessionStartTime_Proxy(ITAgentSession *This,DATE *pdateSessionStart);
487  void __RPC_STUB ITAgentSession_get_SessionStartTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
488  HRESULT WINAPI ITAgentSession_get_SessionDuration_Proxy(ITAgentSession *This,__LONG32 *plDuration);
489  void __RPC_STUB ITAgentSession_get_SessionDuration_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
490  HRESULT WINAPI ITAgentSession_get_NumberOfCalls_Proxy(ITAgentSession *This,__LONG32 *plCalls);
491  void __RPC_STUB ITAgentSession_get_NumberOfCalls_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
492  HRESULT WINAPI ITAgentSession_get_TotalTalkTime_Proxy(ITAgentSession *This,__LONG32 *plTalkTime);
493  void __RPC_STUB ITAgentSession_get_TotalTalkTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
494  HRESULT WINAPI ITAgentSession_get_AverageTalkTime_Proxy(ITAgentSession *This,__LONG32 *plTalkTime);
495  void __RPC_STUB ITAgentSession_get_AverageTalkTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
496  HRESULT WINAPI ITAgentSession_get_TotalCallTime_Proxy(ITAgentSession *This,__LONG32 *plCallTime);
497  void __RPC_STUB ITAgentSession_get_TotalCallTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
498  HRESULT WINAPI ITAgentSession_get_AverageCallTime_Proxy(ITAgentSession *This,__LONG32 *plCallTime);
499  void __RPC_STUB ITAgentSession_get_AverageCallTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
500  HRESULT WINAPI ITAgentSession_get_TotalWrapUpTime_Proxy(ITAgentSession *This,__LONG32 *plWrapUpTime);
501  void __RPC_STUB ITAgentSession_get_TotalWrapUpTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
502  HRESULT WINAPI ITAgentSession_get_AverageWrapUpTime_Proxy(ITAgentSession *This,__LONG32 *plWrapUpTime);
503  void __RPC_STUB ITAgentSession_get_AverageWrapUpTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
504  HRESULT WINAPI ITAgentSession_get_ACDCallRate_Proxy(ITAgentSession *This,CURRENCY *pcyCallrate);
505  void __RPC_STUB ITAgentSession_get_ACDCallRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
506  HRESULT WINAPI ITAgentSession_get_LongestTimeToAnswer_Proxy(ITAgentSession *This,__LONG32 *plAnswerTime);
507  void __RPC_STUB ITAgentSession_get_LongestTimeToAnswer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
508  HRESULT WINAPI ITAgentSession_get_AverageTimeToAnswer_Proxy(ITAgentSession *This,__LONG32 *plAnswerTime);
509  void __RPC_STUB ITAgentSession_get_AverageTimeToAnswer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
510#endif
511
512#ifndef __ITACDGroup_INTERFACE_DEFINED__
513#define __ITACDGroup_INTERFACE_DEFINED__
514  EXTERN_C const IID IID_ITACDGroup;
515#if defined(__cplusplus) && !defined(CINTERFACE)
516  struct ITACDGroup : public IDispatch {
517  public:
518    virtual HRESULT WINAPI get_Name(BSTR *ppName) = 0;
519    virtual HRESULT WINAPI EnumerateQueues(IEnumQueue **ppEnumQueue) = 0;
520    virtual HRESULT WINAPI get_Queues(VARIANT *pVariant) = 0;
521  };
522#else
523  typedef struct ITACDGroupVtbl {
524    BEGIN_INTERFACE
525      HRESULT (WINAPI *QueryInterface)(ITACDGroup *This,REFIID riid,void **ppvObject);
526      ULONG (WINAPI *AddRef)(ITACDGroup *This);
527      ULONG (WINAPI *Release)(ITACDGroup *This);
528      HRESULT (WINAPI *GetTypeInfoCount)(ITACDGroup *This,UINT *pctinfo);
529      HRESULT (WINAPI *GetTypeInfo)(ITACDGroup *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
530      HRESULT (WINAPI *GetIDsOfNames)(ITACDGroup *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
531      HRESULT (WINAPI *Invoke)(ITACDGroup *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
532      HRESULT (WINAPI *get_Name)(ITACDGroup *This,BSTR *ppName);
533      HRESULT (WINAPI *EnumerateQueues)(ITACDGroup *This,IEnumQueue **ppEnumQueue);
534      HRESULT (WINAPI *get_Queues)(ITACDGroup *This,VARIANT *pVariant);
535    END_INTERFACE
536  } ITACDGroupVtbl;
537  struct ITACDGroup {
538    CONST_VTBL struct ITACDGroupVtbl *lpVtbl;
539  };
540#ifdef COBJMACROS
541#define ITACDGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
542#define ITACDGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
543#define ITACDGroup_Release(This) (This)->lpVtbl->Release(This)
544#define ITACDGroup_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
545#define ITACDGroup_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
546#define ITACDGroup_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
547#define ITACDGroup_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
548#define ITACDGroup_get_Name(This,ppName) (This)->lpVtbl->get_Name(This,ppName)
549#define ITACDGroup_EnumerateQueues(This,ppEnumQueue) (This)->lpVtbl->EnumerateQueues(This,ppEnumQueue)
550#define ITACDGroup_get_Queues(This,pVariant) (This)->lpVtbl->get_Queues(This,pVariant)
551#endif
552#endif
553  HRESULT WINAPI ITACDGroup_get_Name_Proxy(ITACDGroup *This,BSTR *ppName);
554  void __RPC_STUB ITACDGroup_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
555  HRESULT WINAPI ITACDGroup_EnumerateQueues_Proxy(ITACDGroup *This,IEnumQueue **ppEnumQueue);
556  void __RPC_STUB ITACDGroup_EnumerateQueues_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
557  HRESULT WINAPI ITACDGroup_get_Queues_Proxy(ITACDGroup *This,VARIANT *pVariant);
558  void __RPC_STUB ITACDGroup_get_Queues_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
559#endif
560
561#ifndef __ITQueue_INTERFACE_DEFINED__
562#define __ITQueue_INTERFACE_DEFINED__
563  EXTERN_C const IID IID_ITQueue;
564#if defined(__cplusplus) && !defined(CINTERFACE)
565  struct ITQueue : public IDispatch {
566  public:
567    virtual HRESULT WINAPI put_MeasurementPeriod(__LONG32 lPeriod) = 0;
568    virtual HRESULT WINAPI get_MeasurementPeriod(__LONG32 *plPeriod) = 0;
569    virtual HRESULT WINAPI get_TotalCallsQueued(__LONG32 *plCalls) = 0;
570    virtual HRESULT WINAPI get_CurrentCallsQueued(__LONG32 *plCalls) = 0;
571    virtual HRESULT WINAPI get_TotalCallsAbandoned(__LONG32 *plCalls) = 0;
572    virtual HRESULT WINAPI get_TotalCallsFlowedIn(__LONG32 *plCalls) = 0;
573    virtual HRESULT WINAPI get_TotalCallsFlowedOut(__LONG32 *plCalls) = 0;
574    virtual HRESULT WINAPI get_LongestEverWaitTime(__LONG32 *plWaitTime) = 0;
575    virtual HRESULT WINAPI get_CurrentLongestWaitTime(__LONG32 *plWaitTime) = 0;
576    virtual HRESULT WINAPI get_AverageWaitTime(__LONG32 *plWaitTime) = 0;
577    virtual HRESULT WINAPI get_FinalDisposition(__LONG32 *plCalls) = 0;
578    virtual HRESULT WINAPI get_Name(BSTR *ppName) = 0;
579  };
580#else
581  typedef struct ITQueueVtbl {
582    BEGIN_INTERFACE
583      HRESULT (WINAPI *QueryInterface)(ITQueue *This,REFIID riid,void **ppvObject);
584      ULONG (WINAPI *AddRef)(ITQueue *This);
585      ULONG (WINAPI *Release)(ITQueue *This);
586      HRESULT (WINAPI *GetTypeInfoCount)(ITQueue *This,UINT *pctinfo);
587      HRESULT (WINAPI *GetTypeInfo)(ITQueue *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
588      HRESULT (WINAPI *GetIDsOfNames)(ITQueue *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
589      HRESULT (WINAPI *Invoke)(ITQueue *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
590      HRESULT (WINAPI *put_MeasurementPeriod)(ITQueue *This,__LONG32 lPeriod);
591      HRESULT (WINAPI *get_MeasurementPeriod)(ITQueue *This,__LONG32 *plPeriod);
592      HRESULT (WINAPI *get_TotalCallsQueued)(ITQueue *This,__LONG32 *plCalls);
593      HRESULT (WINAPI *get_CurrentCallsQueued)(ITQueue *This,__LONG32 *plCalls);
594      HRESULT (WINAPI *get_TotalCallsAbandoned)(ITQueue *This,__LONG32 *plCalls);
595      HRESULT (WINAPI *get_TotalCallsFlowedIn)(ITQueue *This,__LONG32 *plCalls);
596      HRESULT (WINAPI *get_TotalCallsFlowedOut)(ITQueue *This,__LONG32 *plCalls);
597      HRESULT (WINAPI *get_LongestEverWaitTime)(ITQueue *This,__LONG32 *plWaitTime);
598      HRESULT (WINAPI *get_CurrentLongestWaitTime)(ITQueue *This,__LONG32 *plWaitTime);
599      HRESULT (WINAPI *get_AverageWaitTime)(ITQueue *This,__LONG32 *plWaitTime);
600      HRESULT (WINAPI *get_FinalDisposition)(ITQueue *This,__LONG32 *plCalls);
601      HRESULT (WINAPI *get_Name)(ITQueue *This,BSTR *ppName);
602    END_INTERFACE
603  } ITQueueVtbl;
604  struct ITQueue {
605    CONST_VTBL struct ITQueueVtbl *lpVtbl;
606  };
607#ifdef COBJMACROS
608#define ITQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
609#define ITQueue_AddRef(This) (This)->lpVtbl->AddRef(This)
610#define ITQueue_Release(This) (This)->lpVtbl->Release(This)
611#define ITQueue_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
612#define ITQueue_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
613#define ITQueue_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
614#define ITQueue_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
615#define ITQueue_put_MeasurementPeriod(This,lPeriod) (This)->lpVtbl->put_MeasurementPeriod(This,lPeriod)
616#define ITQueue_get_MeasurementPeriod(This,plPeriod) (This)->lpVtbl->get_MeasurementPeriod(This,plPeriod)
617#define ITQueue_get_TotalCallsQueued(This,plCalls) (This)->lpVtbl->get_TotalCallsQueued(This,plCalls)
618#define ITQueue_get_CurrentCallsQueued(This,plCalls) (This)->lpVtbl->get_CurrentCallsQueued(This,plCalls)
619#define ITQueue_get_TotalCallsAbandoned(This,plCalls) (This)->lpVtbl->get_TotalCallsAbandoned(This,plCalls)
620#define ITQueue_get_TotalCallsFlowedIn(This,plCalls) (This)->lpVtbl->get_TotalCallsFlowedIn(This,plCalls)
621#define ITQueue_get_TotalCallsFlowedOut(This,plCalls) (This)->lpVtbl->get_TotalCallsFlowedOut(This,plCalls)
622#define ITQueue_get_LongestEverWaitTime(This,plWaitTime) (This)->lpVtbl->get_LongestEverWaitTime(This,plWaitTime)
623#define ITQueue_get_CurrentLongestWaitTime(This,plWaitTime) (This)->lpVtbl->get_CurrentLongestWaitTime(This,plWaitTime)
624#define ITQueue_get_AverageWaitTime(This,plWaitTime) (This)->lpVtbl->get_AverageWaitTime(This,plWaitTime)
625#define ITQueue_get_FinalDisposition(This,plCalls) (This)->lpVtbl->get_FinalDisposition(This,plCalls)
626#define ITQueue_get_Name(This,ppName) (This)->lpVtbl->get_Name(This,ppName)
627#endif
628#endif
629  HRESULT WINAPI ITQueue_put_MeasurementPeriod_Proxy(ITQueue *This,__LONG32 lPeriod);
630  void __RPC_STUB ITQueue_put_MeasurementPeriod_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
631  HRESULT WINAPI ITQueue_get_MeasurementPeriod_Proxy(ITQueue *This,__LONG32 *plPeriod);
632  void __RPC_STUB ITQueue_get_MeasurementPeriod_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
633  HRESULT WINAPI ITQueue_get_TotalCallsQueued_Proxy(ITQueue *This,__LONG32 *plCalls);
634  void __RPC_STUB ITQueue_get_TotalCallsQueued_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
635  HRESULT WINAPI ITQueue_get_CurrentCallsQueued_Proxy(ITQueue *This,__LONG32 *plCalls);
636  void __RPC_STUB ITQueue_get_CurrentCallsQueued_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
637  HRESULT WINAPI ITQueue_get_TotalCallsAbandoned_Proxy(ITQueue *This,__LONG32 *plCalls);
638  void __RPC_STUB ITQueue_get_TotalCallsAbandoned_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
639  HRESULT WINAPI ITQueue_get_TotalCallsFlowedIn_Proxy(ITQueue *This,__LONG32 *plCalls);
640  void __RPC_STUB ITQueue_get_TotalCallsFlowedIn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
641  HRESULT WINAPI ITQueue_get_TotalCallsFlowedOut_Proxy(ITQueue *This,__LONG32 *plCalls);
642  void __RPC_STUB ITQueue_get_TotalCallsFlowedOut_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
643  HRESULT WINAPI ITQueue_get_LongestEverWaitTime_Proxy(ITQueue *This,__LONG32 *plWaitTime);
644  void __RPC_STUB ITQueue_get_LongestEverWaitTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
645  HRESULT WINAPI ITQueue_get_CurrentLongestWaitTime_Proxy(ITQueue *This,__LONG32 *plWaitTime);
646  void __RPC_STUB ITQueue_get_CurrentLongestWaitTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
647  HRESULT WINAPI ITQueue_get_AverageWaitTime_Proxy(ITQueue *This,__LONG32 *plWaitTime);
648  void __RPC_STUB ITQueue_get_AverageWaitTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
649  HRESULT WINAPI ITQueue_get_FinalDisposition_Proxy(ITQueue *This,__LONG32 *plCalls);
650  void __RPC_STUB ITQueue_get_FinalDisposition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
651  HRESULT WINAPI ITQueue_get_Name_Proxy(ITQueue *This,BSTR *ppName);
652  void __RPC_STUB ITQueue_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
653#endif
654
655#ifndef __ITAgentEvent_INTERFACE_DEFINED__
656#define __ITAgentEvent_INTERFACE_DEFINED__
657  EXTERN_C const IID IID_ITAgentEvent;
658#if defined(__cplusplus) && !defined(CINTERFACE)
659  struct ITAgentEvent : public IDispatch {
660  public:
661    virtual HRESULT WINAPI get_Agent(ITAgent **ppAgent) = 0;
662    virtual HRESULT WINAPI get_Event(AGENT_EVENT *pEvent) = 0;
663  };
664#else
665  typedef struct ITAgentEventVtbl {
666    BEGIN_INTERFACE
667      HRESULT (WINAPI *QueryInterface)(ITAgentEvent *This,REFIID riid,void **ppvObject);
668      ULONG (WINAPI *AddRef)(ITAgentEvent *This);
669      ULONG (WINAPI *Release)(ITAgentEvent *This);
670      HRESULT (WINAPI *GetTypeInfoCount)(ITAgentEvent *This,UINT *pctinfo);
671      HRESULT (WINAPI *GetTypeInfo)(ITAgentEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
672      HRESULT (WINAPI *GetIDsOfNames)(ITAgentEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
673      HRESULT (WINAPI *Invoke)(ITAgentEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
674      HRESULT (WINAPI *get_Agent)(ITAgentEvent *This,ITAgent **ppAgent);
675      HRESULT (WINAPI *get_Event)(ITAgentEvent *This,AGENT_EVENT *pEvent);
676    END_INTERFACE
677  } ITAgentEventVtbl;
678  struct ITAgentEvent {
679    CONST_VTBL struct ITAgentEventVtbl *lpVtbl;
680  };
681#ifdef COBJMACROS
682#define ITAgentEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
683#define ITAgentEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
684#define ITAgentEvent_Release(This) (This)->lpVtbl->Release(This)
685#define ITAgentEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
686#define ITAgentEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
687#define ITAgentEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
688#define ITAgentEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
689#define ITAgentEvent_get_Agent(This,ppAgent) (This)->lpVtbl->get_Agent(This,ppAgent)
690#define ITAgentEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
691#endif
692#endif
693  HRESULT WINAPI ITAgentEvent_get_Agent_Proxy(ITAgentEvent *This,ITAgent **ppAgent);
694  void __RPC_STUB ITAgentEvent_get_Agent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
695  HRESULT WINAPI ITAgentEvent_get_Event_Proxy(ITAgentEvent *This,AGENT_EVENT *pEvent);
696  void __RPC_STUB ITAgentEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
697#endif
698
699#ifndef __ITAgentSessionEvent_INTERFACE_DEFINED__
700#define __ITAgentSessionEvent_INTERFACE_DEFINED__
701  EXTERN_C const IID IID_ITAgentSessionEvent;
702#if defined(__cplusplus) && !defined(CINTERFACE)
703  struct ITAgentSessionEvent : public IDispatch {
704  public:
705    virtual HRESULT WINAPI get_Session(ITAgentSession **ppSession) = 0;
706    virtual HRESULT WINAPI get_Event(AGENT_SESSION_EVENT *pEvent) = 0;
707  };
708#else
709  typedef struct ITAgentSessionEventVtbl {
710    BEGIN_INTERFACE
711      HRESULT (WINAPI *QueryInterface)(ITAgentSessionEvent *This,REFIID riid,void **ppvObject);
712      ULONG (WINAPI *AddRef)(ITAgentSessionEvent *This);
713      ULONG (WINAPI *Release)(ITAgentSessionEvent *This);
714      HRESULT (WINAPI *GetTypeInfoCount)(ITAgentSessionEvent *This,UINT *pctinfo);
715      HRESULT (WINAPI *GetTypeInfo)(ITAgentSessionEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
716      HRESULT (WINAPI *GetIDsOfNames)(ITAgentSessionEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
717      HRESULT (WINAPI *Invoke)(ITAgentSessionEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
718      HRESULT (WINAPI *get_Session)(ITAgentSessionEvent *This,ITAgentSession **ppSession);
719      HRESULT (WINAPI *get_Event)(ITAgentSessionEvent *This,AGENT_SESSION_EVENT *pEvent);
720    END_INTERFACE
721  } ITAgentSessionEventVtbl;
722  struct ITAgentSessionEvent {
723    CONST_VTBL struct ITAgentSessionEventVtbl *lpVtbl;
724  };
725#ifdef COBJMACROS
726#define ITAgentSessionEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
727#define ITAgentSessionEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
728#define ITAgentSessionEvent_Release(This) (This)->lpVtbl->Release(This)
729#define ITAgentSessionEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
730#define ITAgentSessionEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
731#define ITAgentSessionEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
732#define ITAgentSessionEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
733#define ITAgentSessionEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession)
734#define ITAgentSessionEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
735#endif
736#endif
737  HRESULT WINAPI ITAgentSessionEvent_get_Session_Proxy(ITAgentSessionEvent *This,ITAgentSession **ppSession);
738  void __RPC_STUB ITAgentSessionEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
739  HRESULT WINAPI ITAgentSessionEvent_get_Event_Proxy(ITAgentSessionEvent *This,AGENT_SESSION_EVENT *pEvent);
740  void __RPC_STUB ITAgentSessionEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
741#endif
742
743#ifndef __ITACDGroupEvent_INTERFACE_DEFINED__
744#define __ITACDGroupEvent_INTERFACE_DEFINED__
745  EXTERN_C const IID IID_ITACDGroupEvent;
746#if defined(__cplusplus) && !defined(CINTERFACE)
747  struct ITACDGroupEvent : public IDispatch {
748  public:
749    virtual HRESULT WINAPI get_Group(ITACDGroup **ppGroup) = 0;
750    virtual HRESULT WINAPI get_Event(ACDGROUP_EVENT *pEvent) = 0;
751  };
752#else
753  typedef struct ITACDGroupEventVtbl {
754    BEGIN_INTERFACE
755      HRESULT (WINAPI *QueryInterface)(ITACDGroupEvent *This,REFIID riid,void **ppvObject);
756      ULONG (WINAPI *AddRef)(ITACDGroupEvent *This);
757      ULONG (WINAPI *Release)(ITACDGroupEvent *This);
758      HRESULT (WINAPI *GetTypeInfoCount)(ITACDGroupEvent *This,UINT *pctinfo);
759      HRESULT (WINAPI *GetTypeInfo)(ITACDGroupEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
760      HRESULT (WINAPI *GetIDsOfNames)(ITACDGroupEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
761      HRESULT (WINAPI *Invoke)(ITACDGroupEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
762      HRESULT (WINAPI *get_Group)(ITACDGroupEvent *This,ITACDGroup **ppGroup);
763      HRESULT (WINAPI *get_Event)(ITACDGroupEvent *This,ACDGROUP_EVENT *pEvent);
764    END_INTERFACE
765  } ITACDGroupEventVtbl;
766  struct ITACDGroupEvent {
767    CONST_VTBL struct ITACDGroupEventVtbl *lpVtbl;
768  };
769#ifdef COBJMACROS
770#define ITACDGroupEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
771#define ITACDGroupEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
772#define ITACDGroupEvent_Release(This) (This)->lpVtbl->Release(This)
773#define ITACDGroupEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
774#define ITACDGroupEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
775#define ITACDGroupEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
776#define ITACDGroupEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
777#define ITACDGroupEvent_get_Group(This,ppGroup) (This)->lpVtbl->get_Group(This,ppGroup)
778#define ITACDGroupEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
779#endif
780#endif
781  HRESULT WINAPI ITACDGroupEvent_get_Group_Proxy(ITACDGroupEvent *This,ITACDGroup **ppGroup);
782  void __RPC_STUB ITACDGroupEvent_get_Group_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
783  HRESULT WINAPI ITACDGroupEvent_get_Event_Proxy(ITACDGroupEvent *This,ACDGROUP_EVENT *pEvent);
784  void __RPC_STUB ITACDGroupEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
785#endif
786
787#ifndef __ITQueueEvent_INTERFACE_DEFINED__
788#define __ITQueueEvent_INTERFACE_DEFINED__
789  EXTERN_C const IID IID_ITQueueEvent;
790#if defined(__cplusplus) && !defined(CINTERFACE)
791  struct ITQueueEvent : public IDispatch {
792  public:
793    virtual HRESULT WINAPI get_Queue(ITQueue **ppQueue) = 0;
794    virtual HRESULT WINAPI get_Event(ACDQUEUE_EVENT *pEvent) = 0;
795  };
796#else
797  typedef struct ITQueueEventVtbl {
798    BEGIN_INTERFACE
799      HRESULT (WINAPI *QueryInterface)(ITQueueEvent *This,REFIID riid,void **ppvObject);
800      ULONG (WINAPI *AddRef)(ITQueueEvent *This);
801      ULONG (WINAPI *Release)(ITQueueEvent *This);
802      HRESULT (WINAPI *GetTypeInfoCount)(ITQueueEvent *This,UINT *pctinfo);
803      HRESULT (WINAPI *GetTypeInfo)(ITQueueEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
804      HRESULT (WINAPI *GetIDsOfNames)(ITQueueEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
805      HRESULT (WINAPI *Invoke)(ITQueueEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
806      HRESULT (WINAPI *get_Queue)(ITQueueEvent *This,ITQueue **ppQueue);
807      HRESULT (WINAPI *get_Event)(ITQueueEvent *This,ACDQUEUE_EVENT *pEvent);
808    END_INTERFACE
809  } ITQueueEventVtbl;
810  struct ITQueueEvent {
811    CONST_VTBL struct ITQueueEventVtbl *lpVtbl;
812  };
813#ifdef COBJMACROS
814#define ITQueueEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
815#define ITQueueEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
816#define ITQueueEvent_Release(This) (This)->lpVtbl->Release(This)
817#define ITQueueEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
818#define ITQueueEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
819#define ITQueueEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
820#define ITQueueEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
821#define ITQueueEvent_get_Queue(This,ppQueue) (This)->lpVtbl->get_Queue(This,ppQueue)
822#define ITQueueEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
823#endif
824#endif
825  HRESULT WINAPI ITQueueEvent_get_Queue_Proxy(ITQueueEvent *This,ITQueue **ppQueue);
826  void __RPC_STUB ITQueueEvent_get_Queue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
827  HRESULT WINAPI ITQueueEvent_get_Event_Proxy(ITQueueEvent *This,ACDQUEUE_EVENT *pEvent);
828  void __RPC_STUB ITQueueEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
829#endif
830
831#ifndef __ITAgentHandlerEvent_INTERFACE_DEFINED__
832#define __ITAgentHandlerEvent_INTERFACE_DEFINED__
833  EXTERN_C const IID IID_ITAgentHandlerEvent;
834#if defined(__cplusplus) && !defined(CINTERFACE)
835  struct ITAgentHandlerEvent : public IDispatch {
836  public:
837    virtual HRESULT WINAPI get_AgentHandler(ITAgentHandler **ppAgentHandler) = 0;
838    virtual HRESULT WINAPI get_Event(AGENTHANDLER_EVENT *pEvent) = 0;
839  };
840#else
841  typedef struct ITAgentHandlerEventVtbl {
842    BEGIN_INTERFACE
843      HRESULT (WINAPI *QueryInterface)(ITAgentHandlerEvent *This,REFIID riid,void **ppvObject);
844      ULONG (WINAPI *AddRef)(ITAgentHandlerEvent *This);
845      ULONG (WINAPI *Release)(ITAgentHandlerEvent *This);
846      HRESULT (WINAPI *GetTypeInfoCount)(ITAgentHandlerEvent *This,UINT *pctinfo);
847      HRESULT (WINAPI *GetTypeInfo)(ITAgentHandlerEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
848      HRESULT (WINAPI *GetIDsOfNames)(ITAgentHandlerEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
849      HRESULT (WINAPI *Invoke)(ITAgentHandlerEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
850      HRESULT (WINAPI *get_AgentHandler)(ITAgentHandlerEvent *This,ITAgentHandler **ppAgentHandler);
851      HRESULT (WINAPI *get_Event)(ITAgentHandlerEvent *This,AGENTHANDLER_EVENT *pEvent);
852    END_INTERFACE
853  } ITAgentHandlerEventVtbl;
854  struct ITAgentHandlerEvent {
855    CONST_VTBL struct ITAgentHandlerEventVtbl *lpVtbl;
856  };
857#ifdef COBJMACROS
858#define ITAgentHandlerEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
859#define ITAgentHandlerEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
860#define ITAgentHandlerEvent_Release(This) (This)->lpVtbl->Release(This)
861#define ITAgentHandlerEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
862#define ITAgentHandlerEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
863#define ITAgentHandlerEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
864#define ITAgentHandlerEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
865#define ITAgentHandlerEvent_get_AgentHandler(This,ppAgentHandler) (This)->lpVtbl->get_AgentHandler(This,ppAgentHandler)
866#define ITAgentHandlerEvent_get_Event(This,pEvent) (This)->lpVtbl->get_Event(This,pEvent)
867#endif
868#endif
869  HRESULT WINAPI ITAgentHandlerEvent_get_AgentHandler_Proxy(ITAgentHandlerEvent *This,ITAgentHandler **ppAgentHandler);
870  void __RPC_STUB ITAgentHandlerEvent_get_AgentHandler_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
871  HRESULT WINAPI ITAgentHandlerEvent_get_Event_Proxy(ITAgentHandlerEvent *This,AGENTHANDLER_EVENT *pEvent);
872  void __RPC_STUB ITAgentHandlerEvent_get_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
873#endif
874
875#ifndef __ITTAPICallCenter_INTERFACE_DEFINED__
876#define __ITTAPICallCenter_INTERFACE_DEFINED__
877  EXTERN_C const IID IID_ITTAPICallCenter;
878#if defined(__cplusplus) && !defined(CINTERFACE)
879  struct ITTAPICallCenter : public IDispatch {
880  public:
881    virtual HRESULT WINAPI EnumerateAgentHandlers(IEnumAgentHandler **ppEnumHandler) = 0;
882    virtual HRESULT WINAPI get_AgentHandlers(VARIANT *pVariant) = 0;
883  };
884#else
885  typedef struct ITTAPICallCenterVtbl {
886    BEGIN_INTERFACE
887      HRESULT (WINAPI *QueryInterface)(ITTAPICallCenter *This,REFIID riid,void **ppvObject);
888      ULONG (WINAPI *AddRef)(ITTAPICallCenter *This);
889      ULONG (WINAPI *Release)(ITTAPICallCenter *This);
890      HRESULT (WINAPI *GetTypeInfoCount)(ITTAPICallCenter *This,UINT *pctinfo);
891      HRESULT (WINAPI *GetTypeInfo)(ITTAPICallCenter *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
892      HRESULT (WINAPI *GetIDsOfNames)(ITTAPICallCenter *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
893      HRESULT (WINAPI *Invoke)(ITTAPICallCenter *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
894      HRESULT (WINAPI *EnumerateAgentHandlers)(ITTAPICallCenter *This,IEnumAgentHandler **ppEnumHandler);
895      HRESULT (WINAPI *get_AgentHandlers)(ITTAPICallCenter *This,VARIANT *pVariant);
896    END_INTERFACE
897  } ITTAPICallCenterVtbl;
898  struct ITTAPICallCenter {
899    CONST_VTBL struct ITTAPICallCenterVtbl *lpVtbl;
900  };
901#ifdef COBJMACROS
902#define ITTAPICallCenter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
903#define ITTAPICallCenter_AddRef(This) (This)->lpVtbl->AddRef(This)
904#define ITTAPICallCenter_Release(This) (This)->lpVtbl->Release(This)
905#define ITTAPICallCenter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
906#define ITTAPICallCenter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
907#define ITTAPICallCenter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
908#define ITTAPICallCenter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
909#define ITTAPICallCenter_EnumerateAgentHandlers(This,ppEnumHandler) (This)->lpVtbl->EnumerateAgentHandlers(This,ppEnumHandler)
910#define ITTAPICallCenter_get_AgentHandlers(This,pVariant) (This)->lpVtbl->get_AgentHandlers(This,pVariant)
911#endif
912#endif
913  HRESULT WINAPI ITTAPICallCenter_EnumerateAgentHandlers_Proxy(ITTAPICallCenter *This,IEnumAgentHandler **ppEnumHandler);
914  void __RPC_STUB ITTAPICallCenter_EnumerateAgentHandlers_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
915  HRESULT WINAPI ITTAPICallCenter_get_AgentHandlers_Proxy(ITTAPICallCenter *This,VARIANT *pVariant);
916  void __RPC_STUB ITTAPICallCenter_get_AgentHandlers_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
917#endif
918
919#ifndef __ITAgentHandler_INTERFACE_DEFINED__
920#define __ITAgentHandler_INTERFACE_DEFINED__
921  EXTERN_C const IID IID_ITAgentHandler;
922#if defined(__cplusplus) && !defined(CINTERFACE)
923  struct ITAgentHandler : public IDispatch {
924  public:
925    virtual HRESULT WINAPI get_Name(BSTR *ppName) = 0;
926    virtual HRESULT WINAPI CreateAgent(ITAgent **ppAgent) = 0;
927    virtual HRESULT WINAPI CreateAgentWithID(BSTR pID,BSTR pPIN,ITAgent **ppAgent) = 0;
928    virtual HRESULT WINAPI EnumerateACDGroups(IEnumACDGroup **ppEnumACDGroup) = 0;
929    virtual HRESULT WINAPI EnumerateUsableAddresses(IEnumAddress **ppEnumAddress) = 0;
930    virtual HRESULT WINAPI get_ACDGroups(VARIANT *pVariant) = 0;
931    virtual HRESULT WINAPI get_UsableAddresses(VARIANT *pVariant) = 0;
932  };
933#else
934  typedef struct ITAgentHandlerVtbl {
935    BEGIN_INTERFACE
936      HRESULT (WINAPI *QueryInterface)(ITAgentHandler *This,REFIID riid,void **ppvObject);
937      ULONG (WINAPI *AddRef)(ITAgentHandler *This);
938      ULONG (WINAPI *Release)(ITAgentHandler *This);
939      HRESULT (WINAPI *GetTypeInfoCount)(ITAgentHandler *This,UINT *pctinfo);
940      HRESULT (WINAPI *GetTypeInfo)(ITAgentHandler *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
941      HRESULT (WINAPI *GetIDsOfNames)(ITAgentHandler *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
942      HRESULT (WINAPI *Invoke)(ITAgentHandler *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
943      HRESULT (WINAPI *get_Name)(ITAgentHandler *This,BSTR *ppName);
944      HRESULT (WINAPI *CreateAgent)(ITAgentHandler *This,ITAgent **ppAgent);
945      HRESULT (WINAPI *CreateAgentWithID)(ITAgentHandler *This,BSTR pID,BSTR pPIN,ITAgent **ppAgent);
946      HRESULT (WINAPI *EnumerateACDGroups)(ITAgentHandler *This,IEnumACDGroup **ppEnumACDGroup);
947      HRESULT (WINAPI *EnumerateUsableAddresses)(ITAgentHandler *This,IEnumAddress **ppEnumAddress);
948      HRESULT (WINAPI *get_ACDGroups)(ITAgentHandler *This,VARIANT *pVariant);
949      HRESULT (WINAPI *get_UsableAddresses)(ITAgentHandler *This,VARIANT *pVariant);
950    END_INTERFACE
951  } ITAgentHandlerVtbl;
952  struct ITAgentHandler {
953    CONST_VTBL struct ITAgentHandlerVtbl *lpVtbl;
954  };
955#ifdef COBJMACROS
956#define ITAgentHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
957#define ITAgentHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
958#define ITAgentHandler_Release(This) (This)->lpVtbl->Release(This)
959#define ITAgentHandler_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
960#define ITAgentHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
961#define ITAgentHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
962#define ITAgentHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
963#define ITAgentHandler_get_Name(This,ppName) (This)->lpVtbl->get_Name(This,ppName)
964#define ITAgentHandler_CreateAgent(This,ppAgent) (This)->lpVtbl->CreateAgent(This,ppAgent)
965#define ITAgentHandler_CreateAgentWithID(This,pID,pPIN,ppAgent) (This)->lpVtbl->CreateAgentWithID(This,pID,pPIN,ppAgent)
966#define ITAgentHandler_EnumerateACDGroups(This,ppEnumACDGroup) (This)->lpVtbl->EnumerateACDGroups(This,ppEnumACDGroup)
967#define ITAgentHandler_EnumerateUsableAddresses(This,ppEnumAddress) (This)->lpVtbl->EnumerateUsableAddresses(This,ppEnumAddress)
968#define ITAgentHandler_get_ACDGroups(This,pVariant) (This)->lpVtbl->get_ACDGroups(This,pVariant)
969#define ITAgentHandler_get_UsableAddresses(This,pVariant) (This)->lpVtbl->get_UsableAddresses(This,pVariant)
970#endif
971#endif
972  HRESULT WINAPI ITAgentHandler_get_Name_Proxy(ITAgentHandler *This,BSTR *ppName);
973  void __RPC_STUB ITAgentHandler_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
974  HRESULT WINAPI ITAgentHandler_CreateAgent_Proxy(ITAgentHandler *This,ITAgent **ppAgent);
975  void __RPC_STUB ITAgentHandler_CreateAgent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
976  HRESULT WINAPI ITAgentHandler_CreateAgentWithID_Proxy(ITAgentHandler *This,BSTR pID,BSTR pPIN,ITAgent **ppAgent);
977  void __RPC_STUB ITAgentHandler_CreateAgentWithID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
978  HRESULT WINAPI ITAgentHandler_EnumerateACDGroups_Proxy(ITAgentHandler *This,IEnumACDGroup **ppEnumACDGroup);
979  void __RPC_STUB ITAgentHandler_EnumerateACDGroups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
980  HRESULT WINAPI ITAgentHandler_EnumerateUsableAddresses_Proxy(ITAgentHandler *This,IEnumAddress **ppEnumAddress);
981  void __RPC_STUB ITAgentHandler_EnumerateUsableAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
982  HRESULT WINAPI ITAgentHandler_get_ACDGroups_Proxy(ITAgentHandler *This,VARIANT *pVariant);
983  void __RPC_STUB ITAgentHandler_get_ACDGroups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
984  HRESULT WINAPI ITAgentHandler_get_UsableAddresses_Proxy(ITAgentHandler *This,VARIANT *pVariant);
985  void __RPC_STUB ITAgentHandler_get_UsableAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
986#endif
987
988#ifndef __IEnumAgent_INTERFACE_DEFINED__
989#define __IEnumAgent_INTERFACE_DEFINED__
990  EXTERN_C const IID IID_IEnumAgent;
991#if defined(__cplusplus) && !defined(CINTERFACE)
992  struct IEnumAgent : public IUnknown {
993  public:
994    virtual HRESULT WINAPI Next(ULONG celt,ITAgent **ppElements,ULONG *pceltFetched) = 0;
995    virtual HRESULT WINAPI Reset(void) = 0;
996    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
997    virtual HRESULT WINAPI Clone(IEnumAgent **ppEnum) = 0;
998  };
999#else
1000  typedef struct IEnumAgentVtbl {
1001    BEGIN_INTERFACE
1002      HRESULT (WINAPI *QueryInterface)(IEnumAgent *This,REFIID riid,void **ppvObject);
1003      ULONG (WINAPI *AddRef)(IEnumAgent *This);
1004      ULONG (WINAPI *Release)(IEnumAgent *This);
1005      HRESULT (WINAPI *Next)(IEnumAgent *This,ULONG celt,ITAgent **ppElements,ULONG *pceltFetched);
1006      HRESULT (WINAPI *Reset)(IEnumAgent *This);
1007      HRESULT (WINAPI *Skip)(IEnumAgent *This,ULONG celt);
1008      HRESULT (WINAPI *Clone)(IEnumAgent *This,IEnumAgent **ppEnum);
1009    END_INTERFACE
1010  } IEnumAgentVtbl;
1011  struct IEnumAgent {
1012    CONST_VTBL struct IEnumAgentVtbl *lpVtbl;
1013  };
1014#ifdef COBJMACROS
1015#define IEnumAgent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1016#define IEnumAgent_AddRef(This) (This)->lpVtbl->AddRef(This)
1017#define IEnumAgent_Release(This) (This)->lpVtbl->Release(This)
1018#define IEnumAgent_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
1019#define IEnumAgent_Reset(This) (This)->lpVtbl->Reset(This)
1020#define IEnumAgent_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
1021#define IEnumAgent_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
1022#endif
1023#endif
1024  HRESULT WINAPI IEnumAgent_Next_Proxy(IEnumAgent *This,ULONG celt,ITAgent **ppElements,ULONG *pceltFetched);
1025  void __RPC_STUB IEnumAgent_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1026  HRESULT WINAPI IEnumAgent_Reset_Proxy(IEnumAgent *This);
1027  void __RPC_STUB IEnumAgent_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1028  HRESULT WINAPI IEnumAgent_Skip_Proxy(IEnumAgent *This,ULONG celt);
1029  void __RPC_STUB IEnumAgent_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1030  HRESULT WINAPI IEnumAgent_Clone_Proxy(IEnumAgent *This,IEnumAgent **ppEnum);
1031  void __RPC_STUB IEnumAgent_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1032#endif
1033
1034#ifndef __IEnumAgentSession_INTERFACE_DEFINED__
1035#define __IEnumAgentSession_INTERFACE_DEFINED__
1036  EXTERN_C const IID IID_IEnumAgentSession;
1037#if defined(__cplusplus) && !defined(CINTERFACE)
1038  struct IEnumAgentSession : public IUnknown {
1039  public:
1040    virtual HRESULT WINAPI Next(ULONG celt,ITAgentSession **ppElements,ULONG *pceltFetched) = 0;
1041    virtual HRESULT WINAPI Reset(void) = 0;
1042    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
1043    virtual HRESULT WINAPI Clone(IEnumAgentSession **ppEnum) = 0;
1044  };
1045#else
1046  typedef struct IEnumAgentSessionVtbl {
1047    BEGIN_INTERFACE
1048      HRESULT (WINAPI *QueryInterface)(IEnumAgentSession *This,REFIID riid,void **ppvObject);
1049      ULONG (WINAPI *AddRef)(IEnumAgentSession *This);
1050      ULONG (WINAPI *Release)(IEnumAgentSession *This);
1051      HRESULT (WINAPI *Next)(IEnumAgentSession *This,ULONG celt,ITAgentSession **ppElements,ULONG *pceltFetched);
1052      HRESULT (WINAPI *Reset)(IEnumAgentSession *This);
1053      HRESULT (WINAPI *Skip)(IEnumAgentSession *This,ULONG celt);
1054      HRESULT (WINAPI *Clone)(IEnumAgentSession *This,IEnumAgentSession **ppEnum);
1055    END_INTERFACE
1056  } IEnumAgentSessionVtbl;
1057  struct IEnumAgentSession {
1058    CONST_VTBL struct IEnumAgentSessionVtbl *lpVtbl;
1059  };
1060#ifdef COBJMACROS
1061#define IEnumAgentSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1062#define IEnumAgentSession_AddRef(This) (This)->lpVtbl->AddRef(This)
1063#define IEnumAgentSession_Release(This) (This)->lpVtbl->Release(This)
1064#define IEnumAgentSession_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
1065#define IEnumAgentSession_Reset(This) (This)->lpVtbl->Reset(This)
1066#define IEnumAgentSession_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
1067#define IEnumAgentSession_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
1068#endif
1069#endif
1070  HRESULT WINAPI IEnumAgentSession_Next_Proxy(IEnumAgentSession *This,ULONG celt,ITAgentSession **ppElements,ULONG *pceltFetched);
1071  void __RPC_STUB IEnumAgentSession_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1072  HRESULT WINAPI IEnumAgentSession_Reset_Proxy(IEnumAgentSession *This);
1073  void __RPC_STUB IEnumAgentSession_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1074  HRESULT WINAPI IEnumAgentSession_Skip_Proxy(IEnumAgentSession *This,ULONG celt);
1075  void __RPC_STUB IEnumAgentSession_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1076  HRESULT WINAPI IEnumAgentSession_Clone_Proxy(IEnumAgentSession *This,IEnumAgentSession **ppEnum);
1077  void __RPC_STUB IEnumAgentSession_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1078#endif
1079
1080#ifndef __IEnumQueue_INTERFACE_DEFINED__
1081#define __IEnumQueue_INTERFACE_DEFINED__
1082  EXTERN_C const IID IID_IEnumQueue;
1083#if defined(__cplusplus) && !defined(CINTERFACE)
1084  struct IEnumQueue : public IUnknown {
1085  public:
1086    virtual HRESULT WINAPI Next(ULONG celt,ITQueue **ppElements,ULONG *pceltFetched) = 0;
1087    virtual HRESULT WINAPI Reset(void) = 0;
1088    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
1089    virtual HRESULT WINAPI Clone(IEnumQueue **ppEnum) = 0;
1090  };
1091#else
1092  typedef struct IEnumQueueVtbl {
1093    BEGIN_INTERFACE
1094      HRESULT (WINAPI *QueryInterface)(IEnumQueue *This,REFIID riid,void **ppvObject);
1095      ULONG (WINAPI *AddRef)(IEnumQueue *This);
1096      ULONG (WINAPI *Release)(IEnumQueue *This);
1097      HRESULT (WINAPI *Next)(IEnumQueue *This,ULONG celt,ITQueue **ppElements,ULONG *pceltFetched);
1098      HRESULT (WINAPI *Reset)(IEnumQueue *This);
1099      HRESULT (WINAPI *Skip)(IEnumQueue *This,ULONG celt);
1100      HRESULT (WINAPI *Clone)(IEnumQueue *This,IEnumQueue **ppEnum);
1101    END_INTERFACE
1102  } IEnumQueueVtbl;
1103  struct IEnumQueue {
1104    CONST_VTBL struct IEnumQueueVtbl *lpVtbl;
1105  };
1106#ifdef COBJMACROS
1107#define IEnumQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1108#define IEnumQueue_AddRef(This) (This)->lpVtbl->AddRef(This)
1109#define IEnumQueue_Release(This) (This)->lpVtbl->Release(This)
1110#define IEnumQueue_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
1111#define IEnumQueue_Reset(This) (This)->lpVtbl->Reset(This)
1112#define IEnumQueue_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
1113#define IEnumQueue_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
1114#endif
1115#endif
1116  HRESULT WINAPI IEnumQueue_Next_Proxy(IEnumQueue *This,ULONG celt,ITQueue **ppElements,ULONG *pceltFetched);
1117  void __RPC_STUB IEnumQueue_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1118  HRESULT WINAPI IEnumQueue_Reset_Proxy(IEnumQueue *This);
1119  void __RPC_STUB IEnumQueue_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1120  HRESULT WINAPI IEnumQueue_Skip_Proxy(IEnumQueue *This,ULONG celt);
1121  void __RPC_STUB IEnumQueue_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1122  HRESULT WINAPI IEnumQueue_Clone_Proxy(IEnumQueue *This,IEnumQueue **ppEnum);
1123  void __RPC_STUB IEnumQueue_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1124#endif
1125
1126#ifndef __IEnumACDGroup_INTERFACE_DEFINED__
1127#define __IEnumACDGroup_INTERFACE_DEFINED__
1128  EXTERN_C const IID IID_IEnumACDGroup;
1129#if defined(__cplusplus) && !defined(CINTERFACE)
1130  struct IEnumACDGroup : public IUnknown {
1131  public:
1132    virtual HRESULT WINAPI Next(ULONG celt,ITACDGroup **ppElements,ULONG *pceltFetched) = 0;
1133    virtual HRESULT WINAPI Reset(void) = 0;
1134    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
1135    virtual HRESULT WINAPI Clone(IEnumACDGroup **ppEnum) = 0;
1136  };
1137#else
1138  typedef struct IEnumACDGroupVtbl {
1139    BEGIN_INTERFACE
1140      HRESULT (WINAPI *QueryInterface)(IEnumACDGroup *This,REFIID riid,void **ppvObject);
1141      ULONG (WINAPI *AddRef)(IEnumACDGroup *This);
1142      ULONG (WINAPI *Release)(IEnumACDGroup *This);
1143      HRESULT (WINAPI *Next)(IEnumACDGroup *This,ULONG celt,ITACDGroup **ppElements,ULONG *pceltFetched);
1144      HRESULT (WINAPI *Reset)(IEnumACDGroup *This);
1145      HRESULT (WINAPI *Skip)(IEnumACDGroup *This,ULONG celt);
1146      HRESULT (WINAPI *Clone)(IEnumACDGroup *This,IEnumACDGroup **ppEnum);
1147    END_INTERFACE
1148  } IEnumACDGroupVtbl;
1149  struct IEnumACDGroup {
1150    CONST_VTBL struct IEnumACDGroupVtbl *lpVtbl;
1151  };
1152#ifdef COBJMACROS
1153#define IEnumACDGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1154#define IEnumACDGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
1155#define IEnumACDGroup_Release(This) (This)->lpVtbl->Release(This)
1156#define IEnumACDGroup_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
1157#define IEnumACDGroup_Reset(This) (This)->lpVtbl->Reset(This)
1158#define IEnumACDGroup_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
1159#define IEnumACDGroup_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
1160#endif
1161#endif
1162  HRESULT WINAPI IEnumACDGroup_Next_Proxy(IEnumACDGroup *This,ULONG celt,ITACDGroup **ppElements,ULONG *pceltFetched);
1163  void __RPC_STUB IEnumACDGroup_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1164  HRESULT WINAPI IEnumACDGroup_Reset_Proxy(IEnumACDGroup *This);
1165  void __RPC_STUB IEnumACDGroup_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1166  HRESULT WINAPI IEnumACDGroup_Skip_Proxy(IEnumACDGroup *This,ULONG celt);
1167  void __RPC_STUB IEnumACDGroup_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1168  HRESULT WINAPI IEnumACDGroup_Clone_Proxy(IEnumACDGroup *This,IEnumACDGroup **ppEnum);
1169  void __RPC_STUB IEnumACDGroup_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1170#endif
1171
1172#ifndef __IEnumAgentHandler_INTERFACE_DEFINED__
1173#define __IEnumAgentHandler_INTERFACE_DEFINED__
1174  EXTERN_C const IID IID_IEnumAgentHandler;
1175#if defined(__cplusplus) && !defined(CINTERFACE)
1176  struct IEnumAgentHandler : public IUnknown {
1177  public:
1178    virtual HRESULT WINAPI Next(ULONG celt,ITAgentHandler **ppElements,ULONG *pceltFetched) = 0;
1179    virtual HRESULT WINAPI Reset(void) = 0;
1180    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
1181    virtual HRESULT WINAPI Clone(IEnumAgentHandler **ppEnum) = 0;
1182  };
1183#else
1184  typedef struct IEnumAgentHandlerVtbl {
1185    BEGIN_INTERFACE
1186      HRESULT (WINAPI *QueryInterface)(IEnumAgentHandler *This,REFIID riid,void **ppvObject);
1187      ULONG (WINAPI *AddRef)(IEnumAgentHandler *This);
1188      ULONG (WINAPI *Release)(IEnumAgentHandler *This);
1189      HRESULT (WINAPI *Next)(IEnumAgentHandler *This,ULONG celt,ITAgentHandler **ppElements,ULONG *pceltFetched);
1190      HRESULT (WINAPI *Reset)(IEnumAgentHandler *This);
1191      HRESULT (WINAPI *Skip)(IEnumAgentHandler *This,ULONG celt);
1192      HRESULT (WINAPI *Clone)(IEnumAgentHandler *This,IEnumAgentHandler **ppEnum);
1193    END_INTERFACE
1194  } IEnumAgentHandlerVtbl;
1195  struct IEnumAgentHandler {
1196    CONST_VTBL struct IEnumAgentHandlerVtbl *lpVtbl;
1197  };
1198#ifdef COBJMACROS
1199#define IEnumAgentHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1200#define IEnumAgentHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
1201#define IEnumAgentHandler_Release(This) (This)->lpVtbl->Release(This)
1202#define IEnumAgentHandler_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched)
1203#define IEnumAgentHandler_Reset(This) (This)->lpVtbl->Reset(This)
1204#define IEnumAgentHandler_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
1205#define IEnumAgentHandler_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
1206#endif
1207#endif
1208  HRESULT WINAPI IEnumAgentHandler_Next_Proxy(IEnumAgentHandler *This,ULONG celt,ITAgentHandler **ppElements,ULONG *pceltFetched);
1209  void __RPC_STUB IEnumAgentHandler_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1210  HRESULT WINAPI IEnumAgentHandler_Reset_Proxy(IEnumAgentHandler *This);
1211  void __RPC_STUB IEnumAgentHandler_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1212  HRESULT WINAPI IEnumAgentHandler_Skip_Proxy(IEnumAgentHandler *This,ULONG celt);
1213  void __RPC_STUB IEnumAgentHandler_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1214  HRESULT WINAPI IEnumAgentHandler_Clone_Proxy(IEnumAgentHandler *This,IEnumAgentHandler **ppEnum);
1215  void __RPC_STUB IEnumAgentHandler_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1216#endif
1217
1218  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0520_v0_0_c_ifspec;
1219  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0520_v0_0_s_ifspec;
1220#ifndef __ITAMMediaFormat_INTERFACE_DEFINED__
1221#define __ITAMMediaFormat_INTERFACE_DEFINED__
1222  EXTERN_C const IID IID_ITAMMediaFormat;
1223#if defined(__cplusplus) && !defined(CINTERFACE)
1224  struct ITAMMediaFormat : public IUnknown {
1225  public:
1226    virtual HRESULT WINAPI get_MediaFormat(AM_MEDIA_TYPE **ppmt) = 0;
1227    virtual HRESULT WINAPI put_MediaFormat(const AM_MEDIA_TYPE *pmt) = 0;
1228  };
1229#else
1230  typedef struct ITAMMediaFormatVtbl {
1231    BEGIN_INTERFACE
1232      HRESULT (WINAPI *QueryInterface)(ITAMMediaFormat *This,REFIID riid,void **ppvObject);
1233      ULONG (WINAPI *AddRef)(ITAMMediaFormat *This);
1234      ULONG (WINAPI *Release)(ITAMMediaFormat *This);
1235      HRESULT (WINAPI *get_MediaFormat)(ITAMMediaFormat *This,AM_MEDIA_TYPE **ppmt);
1236      HRESULT (WINAPI *put_MediaFormat)(ITAMMediaFormat *This,const AM_MEDIA_TYPE *pmt);
1237    END_INTERFACE
1238  } ITAMMediaFormatVtbl;
1239  struct ITAMMediaFormat {
1240    CONST_VTBL struct ITAMMediaFormatVtbl *lpVtbl;
1241  };
1242#ifdef COBJMACROS
1243#define ITAMMediaFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1244#define ITAMMediaFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
1245#define ITAMMediaFormat_Release(This) (This)->lpVtbl->Release(This)
1246#define ITAMMediaFormat_get_MediaFormat(This,ppmt) (This)->lpVtbl->get_MediaFormat(This,ppmt)
1247#define ITAMMediaFormat_put_MediaFormat(This,pmt) (This)->lpVtbl->put_MediaFormat(This,pmt)
1248#endif
1249#endif
1250  HRESULT WINAPI ITAMMediaFormat_get_MediaFormat_Proxy(ITAMMediaFormat *This,AM_MEDIA_TYPE **ppmt);
1251  void __RPC_STUB ITAMMediaFormat_get_MediaFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1252  HRESULT WINAPI ITAMMediaFormat_put_MediaFormat_Proxy(ITAMMediaFormat *This,const AM_MEDIA_TYPE *pmt);
1253  void __RPC_STUB ITAMMediaFormat_put_MediaFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1254#endif
1255
1256#ifndef __ITAllocatorProperties_INTERFACE_DEFINED__
1257#define __ITAllocatorProperties_INTERFACE_DEFINED__
1258  EXTERN_C const IID IID_ITAllocatorProperties;
1259#if defined(__cplusplus) && !defined(CINTERFACE)
1260  struct ITAllocatorProperties : public IUnknown {
1261  public:
1262    virtual HRESULT WINAPI SetAllocatorProperties(ALLOCATOR_PROPERTIES *pAllocProperties) = 0;
1263    virtual HRESULT WINAPI GetAllocatorProperties(ALLOCATOR_PROPERTIES *pAllocProperties) = 0;
1264    virtual HRESULT WINAPI SetAllocateBuffers(WINBOOL bAllocBuffers) = 0;
1265    virtual HRESULT WINAPI GetAllocateBuffers(WINBOOL *pbAllocBuffers) = 0;
1266    virtual HRESULT WINAPI SetBufferSize(DWORD BufferSize) = 0;
1267    virtual HRESULT WINAPI GetBufferSize(DWORD *pBufferSize) = 0;
1268  };
1269#else
1270  typedef struct ITAllocatorPropertiesVtbl {
1271    BEGIN_INTERFACE
1272      HRESULT (WINAPI *QueryInterface)(ITAllocatorProperties *This,REFIID riid,void **ppvObject);
1273      ULONG (WINAPI *AddRef)(ITAllocatorProperties *This);
1274      ULONG (WINAPI *Release)(ITAllocatorProperties *This);
1275      HRESULT (WINAPI *SetAllocatorProperties)(ITAllocatorProperties *This,ALLOCATOR_PROPERTIES *pAllocProperties);
1276      HRESULT (WINAPI *GetAllocatorProperties)(ITAllocatorProperties *This,ALLOCATOR_PROPERTIES *pAllocProperties);
1277      HRESULT (WINAPI *SetAllocateBuffers)(ITAllocatorProperties *This,WINBOOL bAllocBuffers);
1278      HRESULT (WINAPI *GetAllocateBuffers)(ITAllocatorProperties *This,WINBOOL *pbAllocBuffers);
1279      HRESULT (WINAPI *SetBufferSize)(ITAllocatorProperties *This,DWORD BufferSize);
1280      HRESULT (WINAPI *GetBufferSize)(ITAllocatorProperties *This,DWORD *pBufferSize);
1281    END_INTERFACE
1282  } ITAllocatorPropertiesVtbl;
1283  struct ITAllocatorProperties {
1284    CONST_VTBL struct ITAllocatorPropertiesVtbl *lpVtbl;
1285  };
1286#ifdef COBJMACROS
1287#define ITAllocatorProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1288#define ITAllocatorProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
1289#define ITAllocatorProperties_Release(This) (This)->lpVtbl->Release(This)
1290#define ITAllocatorProperties_SetAllocatorProperties(This,pAllocProperties) (This)->lpVtbl->SetAllocatorProperties(This,pAllocProperties)
1291#define ITAllocatorProperties_GetAllocatorProperties(This,pAllocProperties) (This)->lpVtbl->GetAllocatorProperties(This,pAllocProperties)
1292#define ITAllocatorProperties_SetAllocateBuffers(This,bAllocBuffers) (This)->lpVtbl->SetAllocateBuffers(This,bAllocBuffers)
1293#define ITAllocatorProperties_GetAllocateBuffers(This,pbAllocBuffers) (This)->lpVtbl->GetAllocateBuffers(This,pbAllocBuffers)
1294#define ITAllocatorProperties_SetBufferSize(This,BufferSize) (This)->lpVtbl->SetBufferSize(This,BufferSize)
1295#define ITAllocatorProperties_GetBufferSize(This,pBufferSize) (This)->lpVtbl->GetBufferSize(This,pBufferSize)
1296#endif
1297#endif
1298  HRESULT WINAPI ITAllocatorProperties_SetAllocatorProperties_Proxy(ITAllocatorProperties *This,ALLOCATOR_PROPERTIES *pAllocProperties);
1299  void __RPC_STUB ITAllocatorProperties_SetAllocatorProperties_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1300  HRESULT WINAPI ITAllocatorProperties_GetAllocatorProperties_Proxy(ITAllocatorProperties *This,ALLOCATOR_PROPERTIES *pAllocProperties);
1301  void __RPC_STUB ITAllocatorProperties_GetAllocatorProperties_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1302  HRESULT WINAPI ITAllocatorProperties_SetAllocateBuffers_Proxy(ITAllocatorProperties *This,WINBOOL bAllocBuffers);
1303  void __RPC_STUB ITAllocatorProperties_SetAllocateBuffers_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1304  HRESULT WINAPI ITAllocatorProperties_GetAllocateBuffers_Proxy(ITAllocatorProperties *This,WINBOOL *pbAllocBuffers);
1305  void __RPC_STUB ITAllocatorProperties_GetAllocateBuffers_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1306  HRESULT WINAPI ITAllocatorProperties_SetBufferSize_Proxy(ITAllocatorProperties *This,DWORD BufferSize);
1307  void __RPC_STUB ITAllocatorProperties_SetBufferSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1308  HRESULT WINAPI ITAllocatorProperties_GetBufferSize_Proxy(ITAllocatorProperties *This,DWORD *pBufferSize);
1309  void __RPC_STUB ITAllocatorProperties_GetBufferSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1310#endif
1311
1312  typedef __LONG32 *MSP_HANDLE;
1313
1314  typedef enum __MIDL___MIDL_itf_tapi3_0524_0001 {
1315    ADDRESS_TERMINAL_AVAILABLE = 0,
1316    ADDRESS_TERMINAL_UNAVAILABLE
1317  } MSP_ADDRESS_EVENT;
1318
1319  typedef enum __MIDL___MIDL_itf_tapi3_0524_0002 {
1320    CALL_NEW_STREAM = 0,
1321    CALL_STREAM_FAIL,CALL_TERMINAL_FAIL,CALL_STREAM_NOT_USED,CALL_STREAM_ACTIVE,
1322    CALL_STREAM_INACTIVE
1323  } MSP_CALL_EVENT;
1324
1325  typedef enum __MIDL___MIDL_itf_tapi3_0524_0003 {
1326    CALL_CAUSE_UNKNOWN = 0,
1327    CALL_CAUSE_BAD_DEVICE,CALL_CAUSE_CONNECT_FAIL,CALL_CAUSE_LOCAL_REQUEST,CALL_CAUSE_REMOTE_REQUEST,
1328    CALL_CAUSE_MEDIA_TIMEOUT,CALL_CAUSE_MEDIA_RECOVERED,CALL_CAUSE_QUALITY_OF_SERVICE
1329  } MSP_CALL_EVENT_CAUSE;
1330
1331  typedef enum __MIDL___MIDL_itf_tapi3_0524_0004 {
1332    ME_ADDRESS_EVENT = 0,
1333    ME_CALL_EVENT,ME_TSP_DATA,ME_PRIVATE_EVENT,ME_ASR_TERMINAL_EVENT,
1334    ME_TTS_TERMINAL_EVENT,ME_FILE_TERMINAL_EVENT,ME_TONE_TERMINAL_EVENT
1335  } MSP_EVENT;
1336
1337  typedef struct __MIDL___MIDL_itf_tapi3_0524_0005 {
1338    DWORD dwSize;
1339    MSP_EVENT Event;
1340    MSP_HANDLE hCall;
1341    __C89_NAMELESS union {
1342      struct {
1343	MSP_ADDRESS_EVENT Type;
1344	ITTerminal *pTerminal;
1345      } MSP_ADDRESS_EVENT_INFO;
1346      struct {
1347	MSP_CALL_EVENT Type;
1348	MSP_CALL_EVENT_CAUSE Cause;
1349	ITStream *pStream;
1350	ITTerminal *pTerminal;
1351	HRESULT hrError;
1352      } MSP_CALL_EVENT_INFO;
1353      struct {
1354	DWORD dwBufferSize;
1355	BYTE pBuffer[1 ];
1356      } MSP_TSP_DATA;
1357      struct {
1358	IDispatch *pEvent;
1359	__LONG32 lEventCode;
1360      } MSP_PRIVATE_EVENT_INFO;
1361      struct {
1362	ITTerminal *pParentFileTerminal;
1363	ITFileTrack *pFileTrack;
1364	TERMINAL_MEDIA_STATE TerminalMediaState;
1365	FT_STATE_EVENT_CAUSE ftecEventCause;
1366	HRESULT hrErrorCode;
1367      } MSP_FILE_TERMINAL_EVENT_INFO;
1368      struct {
1369	ITTerminal *pASRTerminal;
1370	HRESULT hrErrorCode;
1371      } MSP_ASR_TERMINAL_EVENT_INFO;
1372      struct {
1373	ITTerminal *pTTSTerminal;
1374	HRESULT hrErrorCode;
1375      } MSP_TTS_TERMINAL_EVENT_INFO;
1376      struct {
1377	ITTerminal *pToneTerminal;
1378	HRESULT hrErrorCode;
1379      } MSP_TONE_TERMINAL_EVENT_INFO;
1380    };
1381  } MSP_EVENT_INFO;
1382
1383  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0524_v0_0_c_ifspec;
1384  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0524_v0_0_s_ifspec;
1385#ifndef __ITPluggableTerminalEventSink_INTERFACE_DEFINED__
1386#define __ITPluggableTerminalEventSink_INTERFACE_DEFINED__
1387  EXTERN_C const IID IID_ITPluggableTerminalEventSink;
1388#if defined(__cplusplus) && !defined(CINTERFACE)
1389  struct ITPluggableTerminalEventSink : public IUnknown {
1390  public:
1391    virtual HRESULT WINAPI FireEvent(const MSP_EVENT_INFO *pMspEventInfo) = 0;
1392  };
1393#else
1394  typedef struct ITPluggableTerminalEventSinkVtbl {
1395    BEGIN_INTERFACE
1396      HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalEventSink *This,REFIID riid,void **ppvObject);
1397      ULONG (WINAPI *AddRef)(ITPluggableTerminalEventSink *This);
1398      ULONG (WINAPI *Release)(ITPluggableTerminalEventSink *This);
1399      HRESULT (WINAPI *FireEvent)(ITPluggableTerminalEventSink *This,const MSP_EVENT_INFO *pMspEventInfo);
1400    END_INTERFACE
1401  } ITPluggableTerminalEventSinkVtbl;
1402  struct ITPluggableTerminalEventSink {
1403    CONST_VTBL struct ITPluggableTerminalEventSinkVtbl *lpVtbl;
1404  };
1405#ifdef COBJMACROS
1406#define ITPluggableTerminalEventSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1407#define ITPluggableTerminalEventSink_AddRef(This) (This)->lpVtbl->AddRef(This)
1408#define ITPluggableTerminalEventSink_Release(This) (This)->lpVtbl->Release(This)
1409#define ITPluggableTerminalEventSink_FireEvent(This,pMspEventInfo) (This)->lpVtbl->FireEvent(This,pMspEventInfo)
1410#endif
1411#endif
1412  HRESULT WINAPI ITPluggableTerminalEventSink_FireEvent_Proxy(ITPluggableTerminalEventSink *This,const MSP_EVENT_INFO *pMspEventInfo);
1413  void __RPC_STUB ITPluggableTerminalEventSink_FireEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1414#endif
1415
1416#ifndef __ITPluggableTerminalEventSinkRegistration_INTERFACE_DEFINED__
1417#define __ITPluggableTerminalEventSinkRegistration_INTERFACE_DEFINED__
1418  EXTERN_C const IID IID_ITPluggableTerminalEventSinkRegistration;
1419#if defined(__cplusplus) && !defined(CINTERFACE)
1420  struct ITPluggableTerminalEventSinkRegistration : public IUnknown {
1421  public:
1422    virtual HRESULT WINAPI RegisterSink(ITPluggableTerminalEventSink *pEventSink) = 0;
1423    virtual HRESULT WINAPI UnregisterSink(void) = 0;
1424  };
1425#else
1426  typedef struct ITPluggableTerminalEventSinkRegistrationVtbl {
1427    BEGIN_INTERFACE
1428      HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalEventSinkRegistration *This,REFIID riid,void **ppvObject);
1429      ULONG (WINAPI *AddRef)(ITPluggableTerminalEventSinkRegistration *This);
1430      ULONG (WINAPI *Release)(ITPluggableTerminalEventSinkRegistration *This);
1431      HRESULT (WINAPI *RegisterSink)(ITPluggableTerminalEventSinkRegistration *This,ITPluggableTerminalEventSink *pEventSink);
1432      HRESULT (WINAPI *UnregisterSink)(ITPluggableTerminalEventSinkRegistration *This);
1433    END_INTERFACE
1434  } ITPluggableTerminalEventSinkRegistrationVtbl;
1435  struct ITPluggableTerminalEventSinkRegistration {
1436    CONST_VTBL struct ITPluggableTerminalEventSinkRegistrationVtbl *lpVtbl;
1437  };
1438#ifdef COBJMACROS
1439#define ITPluggableTerminalEventSinkRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1440#define ITPluggableTerminalEventSinkRegistration_AddRef(This) (This)->lpVtbl->AddRef(This)
1441#define ITPluggableTerminalEventSinkRegistration_Release(This) (This)->lpVtbl->Release(This)
1442#define ITPluggableTerminalEventSinkRegistration_RegisterSink(This,pEventSink) (This)->lpVtbl->RegisterSink(This,pEventSink)
1443#define ITPluggableTerminalEventSinkRegistration_UnregisterSink(This) (This)->lpVtbl->UnregisterSink(This)
1444#endif
1445#endif
1446  HRESULT WINAPI ITPluggableTerminalEventSinkRegistration_RegisterSink_Proxy(ITPluggableTerminalEventSinkRegistration *This,ITPluggableTerminalEventSink *pEventSink);
1447  void __RPC_STUB ITPluggableTerminalEventSinkRegistration_RegisterSink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1448  HRESULT WINAPI ITPluggableTerminalEventSinkRegistration_UnregisterSink_Proxy(ITPluggableTerminalEventSinkRegistration *This);
1449  void __RPC_STUB ITPluggableTerminalEventSinkRegistration_UnregisterSink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1450#endif
1451
1452#ifndef __ITMSPAddress_INTERFACE_DEFINED__
1453#define __ITMSPAddress_INTERFACE_DEFINED__
1454  EXTERN_C const IID IID_ITMSPAddress;
1455#if defined(__cplusplus) && !defined(CINTERFACE)
1456  struct ITMSPAddress : public IUnknown {
1457  public:
1458    virtual HRESULT WINAPI Initialize(MSP_HANDLE hEvent) = 0;
1459    virtual HRESULT WINAPI Shutdown(void) = 0;
1460    virtual HRESULT WINAPI CreateMSPCall(MSP_HANDLE hCall,DWORD dwReserved,DWORD dwMediaType,IUnknown *pOuterUnknown,IUnknown **ppStreamControl) = 0;
1461    virtual HRESULT WINAPI ShutdownMSPCall(IUnknown *pStreamControl) = 0;
1462    virtual HRESULT WINAPI ReceiveTSPData(IUnknown *pMSPCall,BYTE *pBuffer,DWORD dwSize) = 0;
1463    virtual HRESULT WINAPI GetEvent(DWORD *pdwSize,byte *pEventBuffer) = 0;
1464  };
1465#else
1466  typedef struct ITMSPAddressVtbl {
1467    BEGIN_INTERFACE
1468      HRESULT (WINAPI *QueryInterface)(ITMSPAddress *This,REFIID riid,void **ppvObject);
1469      ULONG (WINAPI *AddRef)(ITMSPAddress *This);
1470      ULONG (WINAPI *Release)(ITMSPAddress *This);
1471      HRESULT (WINAPI *Initialize)(ITMSPAddress *This,MSP_HANDLE hEvent);
1472      HRESULT (WINAPI *Shutdown)(ITMSPAddress *This);
1473      HRESULT (WINAPI *CreateMSPCall)(ITMSPAddress *This,MSP_HANDLE hCall,DWORD dwReserved,DWORD dwMediaType,IUnknown *pOuterUnknown,IUnknown **ppStreamControl);
1474      HRESULT (WINAPI *ShutdownMSPCall)(ITMSPAddress *This,IUnknown *pStreamControl);
1475      HRESULT (WINAPI *ReceiveTSPData)(ITMSPAddress *This,IUnknown *pMSPCall,BYTE *pBuffer,DWORD dwSize);
1476      HRESULT (WINAPI *GetEvent)(ITMSPAddress *This,DWORD *pdwSize,byte *pEventBuffer);
1477    END_INTERFACE
1478  } ITMSPAddressVtbl;
1479  struct ITMSPAddress {
1480    CONST_VTBL struct ITMSPAddressVtbl *lpVtbl;
1481  };
1482#ifdef COBJMACROS
1483#define ITMSPAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1484#define ITMSPAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
1485#define ITMSPAddress_Release(This) (This)->lpVtbl->Release(This)
1486#define ITMSPAddress_Initialize(This,hEvent) (This)->lpVtbl->Initialize(This,hEvent)
1487#define ITMSPAddress_Shutdown(This) (This)->lpVtbl->Shutdown(This)
1488#define ITMSPAddress_CreateMSPCall(This,hCall,dwReserved,dwMediaType,pOuterUnknown,ppStreamControl) (This)->lpVtbl->CreateMSPCall(This,hCall,dwReserved,dwMediaType,pOuterUnknown,ppStreamControl)
1489#define ITMSPAddress_ShutdownMSPCall(This,pStreamControl) (This)->lpVtbl->ShutdownMSPCall(This,pStreamControl)
1490#define ITMSPAddress_ReceiveTSPData(This,pMSPCall,pBuffer,dwSize) (This)->lpVtbl->ReceiveTSPData(This,pMSPCall,pBuffer,dwSize)
1491#define ITMSPAddress_GetEvent(This,pdwSize,pEventBuffer) (This)->lpVtbl->GetEvent(This,pdwSize,pEventBuffer)
1492#endif
1493#endif
1494  HRESULT WINAPI ITMSPAddress_Initialize_Proxy(ITMSPAddress *This,MSP_HANDLE hEvent);
1495  void __RPC_STUB ITMSPAddress_Initialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1496  HRESULT WINAPI ITMSPAddress_Shutdown_Proxy(ITMSPAddress *This);
1497  void __RPC_STUB ITMSPAddress_Shutdown_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1498  HRESULT WINAPI ITMSPAddress_CreateMSPCall_Proxy(ITMSPAddress *This,MSP_HANDLE hCall,DWORD dwReserved,DWORD dwMediaType,IUnknown *pOuterUnknown,IUnknown **ppStreamControl);
1499  void __RPC_STUB ITMSPAddress_CreateMSPCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1500  HRESULT WINAPI ITMSPAddress_ShutdownMSPCall_Proxy(ITMSPAddress *This,IUnknown *pStreamControl);
1501  void __RPC_STUB ITMSPAddress_ShutdownMSPCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1502  HRESULT WINAPI ITMSPAddress_ReceiveTSPData_Proxy(ITMSPAddress *This,IUnknown *pMSPCall,BYTE *pBuffer,DWORD dwSize);
1503  void __RPC_STUB ITMSPAddress_ReceiveTSPData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1504  HRESULT WINAPI ITMSPAddress_GetEvent_Proxy(ITMSPAddress *This,DWORD *pdwSize,byte *pEventBuffer);
1505  void __RPC_STUB ITMSPAddress_GetEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
1506#endif
1507
1508#ifndef __TAPI3Lib_LIBRARY_DEFINED__
1509#define __TAPI3Lib_LIBRARY_DEFINED__
1510  EXTERN_C const IID LIBID_TAPI3Lib;
1511#ifndef __ITTAPIDispatchEventNotification_DISPINTERFACE_DEFINED__
1512#define __ITTAPIDispatchEventNotification_DISPINTERFACE_DEFINED__
1513  EXTERN_C const IID DIID_ITTAPIDispatchEventNotification;
1514#if defined(__cplusplus) && !defined(CINTERFACE)
1515  struct ITTAPIDispatchEventNotification : public IDispatch {
1516  };
1517#else
1518  typedef struct ITTAPIDispatchEventNotificationVtbl {
1519    BEGIN_INTERFACE
1520      HRESULT (WINAPI *QueryInterface)(ITTAPIDispatchEventNotification *This,REFIID riid,void **ppvObject);
1521      ULONG (WINAPI *AddRef)(ITTAPIDispatchEventNotification *This);
1522      ULONG (WINAPI *Release)(ITTAPIDispatchEventNotification *This);
1523      HRESULT (WINAPI *GetTypeInfoCount)(ITTAPIDispatchEventNotification *This,UINT *pctinfo);
1524      HRESULT (WINAPI *GetTypeInfo)(ITTAPIDispatchEventNotification *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
1525      HRESULT (WINAPI *GetIDsOfNames)(ITTAPIDispatchEventNotification *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
1526      HRESULT (WINAPI *Invoke)(ITTAPIDispatchEventNotification *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
1527    END_INTERFACE
1528  } ITTAPIDispatchEventNotificationVtbl;
1529  struct ITTAPIDispatchEventNotification {
1530    CONST_VTBL struct ITTAPIDispatchEventNotificationVtbl *lpVtbl;
1531  };
1532#ifdef COBJMACROS
1533#define ITTAPIDispatchEventNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1534#define ITTAPIDispatchEventNotification_AddRef(This) (This)->lpVtbl->AddRef(This)
1535#define ITTAPIDispatchEventNotification_Release(This) (This)->lpVtbl->Release(This)
1536#define ITTAPIDispatchEventNotification_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1537#define ITTAPIDispatchEventNotification_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1538#define ITTAPIDispatchEventNotification_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1539#define ITTAPIDispatchEventNotification_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1540#endif
1541#endif
1542#endif
1543
1544  EXTERN_C const CLSID CLSID_TAPI;
1545#ifdef __cplusplus
1546  class TAPI;
1547#endif
1548  EXTERN_C const CLSID CLSID_DispatchMapper;
1549#ifdef __cplusplus
1550  class DispatchMapper;
1551#endif
1552  EXTERN_C const CLSID CLSID_RequestMakeCall;
1553#ifdef __cplusplus
1554  class RequestMakeCall;
1555#endif
1556#ifndef __TapiConstants_MODULE_DEFINED__
1557#define __TapiConstants_MODULE_DEFINED__
1558  const BSTR CLSID_String_VideoWindowTerm = L"{F7438990-D6EB-11D0-82A6-00AA00B5CA1B}";
1559  const BSTR CLSID_String_VideoInputTerminal = L"{AAF578EC-DC70-11D0-8ED3-00C04FB6809F}";
1560  const BSTR CLSID_String_HandsetTerminal = L"{AAF578EB-DC70-11D0-8ED3-00C04FB6809F}";
1561  const BSTR CLSID_String_HeadsetTerminal = L"{AAF578ED-DC70-11D0-8ED3-00C04FB6809F}";
1562  const BSTR CLSID_String_SpeakerphoneTerminal = L"{AAF578EE-DC70-11D0-8ED3-00C04FB6809F}";
1563  const BSTR CLSID_String_MicrophoneTerminal = L"{AAF578EF-DC70-11D0-8ED3-00C04FB6809F}";
1564  const BSTR CLSID_String_SpeakersTerminal = L"{AAF578F0-DC70-11D0-8ED3-00C04FB6809F}";
1565  const BSTR CLSID_String_MediaStreamTerminal = L"{E2F7AEF7-4971-11D1-A671-006097C9A2E8}";
1566  const BSTR CLSID_String_FileRecordingTerminal = L"{521F3D06-C3D0-4511-8617-86B9A783DA77}";
1567  const BSTR CLSID_String_FilePlaybackTerminal = L"{0CB9914C-79CD-47DC-ADB0-327F47CEFB20}";
1568  const BSTR TAPIPROTOCOL_String_PSTN = L"{831CE2D6-83B5-11D1-BB5C-00C04FB6809F}";
1569  const BSTR TAPIPROTOCOL_String_H323 = L"{831CE2D7-83B5-11D1-BB5C-00C04FB6809F}";
1570  const BSTR TAPIPROTOCOL_String_Multicast = L"{831CE2D8-83B5-11D1-BB5C-00C04FB6809F}";
1571  const __LONG32 LINEADDRESSTYPE_PHONENUMBER = 0x1;
1572  const __LONG32 LINEADDRESSTYPE_SDP = 0x2;
1573  const __LONG32 LINEADDRESSTYPE_EMAILNAME = 0x4;
1574  const __LONG32 LINEADDRESSTYPE_DOMAINNAME = 0x8;
1575  const __LONG32 LINEADDRESSTYPE_IPADDRESS = 0x10;
1576  const __LONG32 LINEDIGITMODE_PULSE = 0x1;
1577  const __LONG32 LINEDIGITMODE_DTMF = 0x2;
1578  const __LONG32 LINEDIGITMODE_DTMFEND = 0x4;
1579  const __LONG32 TAPIMEDIATYPE_AUDIO = 0x8;
1580  const __LONG32 TAPIMEDIATYPE_VIDEO = 0x8000;
1581  const __LONG32 TAPIMEDIATYPE_DATAMODEM = 0x10;
1582  const __LONG32 TAPIMEDIATYPE_G3FAX = 0x20;
1583  const __LONG32 TAPIMEDIATYPE_MULTITRACK = 0x10000;
1584#endif
1585#endif
1586
1587#define TAPI_CURRENT_VERSION 0x00030001
1588#include <tapi.h>
1589#include <tapi3err.h>
1590
1591  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0530_v0_0_c_ifspec;
1592  extern RPC_IF_HANDLE __MIDL_itf_tapi3_0530_v0_0_s_ifspec;
1593
1594  ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
1595  unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
1596  unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
1597  void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
1598  ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
1599  unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
1600  unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
1601  void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
1602
1603#ifdef __cplusplus
1604}
1605#endif
1606#endif
1607