/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER.PD within this package. */ #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include "rpc.h" #include "rpcndr.h" #ifndef __RPCNDR_H_VERSION__ #error This stub requires an updated version of <rpcndr.h> #endif #ifndef COM_NO_WINDOWS_H #include "windows.h" #include "ole2.h" #endif #ifndef __msp_h__ #define __msp_h__ #ifndef __ITPluggableTerminalEventSink_FWD_DEFINED__ #define __ITPluggableTerminalEventSink_FWD_DEFINED__ typedef struct ITPluggableTerminalEventSink ITPluggableTerminalEventSink; #endif #ifndef __ITPluggableTerminalEventSinkRegistration_FWD_DEFINED__ #define __ITPluggableTerminalEventSinkRegistration_FWD_DEFINED__ typedef struct ITPluggableTerminalEventSinkRegistration ITPluggableTerminalEventSinkRegistration; #endif #ifndef __ITMSPAddress_FWD_DEFINED__ #define __ITMSPAddress_FWD_DEFINED__ typedef struct ITMSPAddress ITMSPAddress; #endif #include "tapi3if.h" #ifdef __cplusplus extern "C" { #endif #ifndef __MIDL_user_allocate_free_DEFINED__ #define __MIDL_user_allocate_free_DEFINED__ void *__RPC_API MIDL_user_allocate(size_t); void __RPC_API MIDL_user_free(void *); #endif typedef __LONG32 *MSP_HANDLE; typedef enum __MIDL___MIDL_itf_msp_0000_0001 { ADDRESS_TERMINAL_AVAILABLE = 0,ADDRESS_TERMINAL_UNAVAILABLE } MSP_ADDRESS_EVENT; typedef enum __MIDL___MIDL_itf_msp_0000_0002 { CALL_NEW_STREAM = 0,CALL_STREAM_FAIL,CALL_TERMINAL_FAIL, CALL_STREAM_NOT_USED,CALL_STREAM_ACTIVE,CALL_STREAM_INACTIVE } MSP_CALL_EVENT; typedef enum __MIDL___MIDL_itf_msp_0000_0003 { CALL_CAUSE_UNKNOWN = 0,CALL_CAUSE_BAD_DEVICE,CALL_CAUSE_CONNECT_FAIL, CALL_CAUSE_LOCAL_REQUEST,CALL_CAUSE_REMOTE_REQUEST, CALL_CAUSE_MEDIA_TIMEOUT,CALL_CAUSE_MEDIA_RECOVERED, CALL_CAUSE_QUALITY_OF_SERVICE } MSP_CALL_EVENT_CAUSE; typedef enum __MIDL___MIDL_itf_msp_0000_0004 { ME_ADDRESS_EVENT = 0,ME_CALL_EVENT,ME_TSP_DATA,ME_PRIVATE_EVENT, ME_ASR_TERMINAL_EVENT,ME_TTS_TERMINAL_EVENT,ME_FILE_TERMINAL_EVENT, ME_TONE_TERMINAL_EVENT } MSP_EVENT; typedef struct __MIDL___MIDL_itf_msp_0000_0005 { DWORD dwSize; MSP_EVENT Event; MSP_HANDLE hCall; __C89_NAMELESS union { struct { MSP_ADDRESS_EVENT Type; ITTerminal *pTerminal; } MSP_ADDRESS_EVENT_INFO; struct { MSP_CALL_EVENT Type; MSP_CALL_EVENT_CAUSE Cause; ITStream *pStream; ITTerminal *pTerminal; HRESULT hrError; } MSP_CALL_EVENT_INFO; struct { DWORD dwBufferSize; BYTE pBuffer[1 ]; } MSP_TSP_DATA; struct { IDispatch *pEvent; __LONG32 lEventCode; } MSP_PRIVATE_EVENT_INFO; struct { ITTerminal *pParentFileTerminal; ITFileTrack *pFileTrack; TERMINAL_MEDIA_STATE TerminalMediaState; FT_STATE_EVENT_CAUSE ftecEventCause; HRESULT hrErrorCode; } MSP_FILE_TERMINAL_EVENT_INFO; struct { ITTerminal *pASRTerminal; HRESULT hrErrorCode; } MSP_ASR_TERMINAL_EVENT_INFO; struct { ITTerminal *pTTSTerminal; HRESULT hrErrorCode; } MSP_TTS_TERMINAL_EVENT_INFO; struct { ITTerminal *pToneTerminal; HRESULT hrErrorCode; } MSP_TONE_TERMINAL_EVENT_INFO; }; } MSP_EVENT_INFO; extern RPC_IF_HANDLE __MIDL_itf_msp_0000_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_msp_0000_v0_0_s_ifspec; #ifndef __ITPluggableTerminalEventSink_INTERFACE_DEFINED__ #define __ITPluggableTerminalEventSink_INTERFACE_DEFINED__ EXTERN_C const IID IID_ITPluggableTerminalEventSink; #if defined(__cplusplus) && !defined(CINTERFACE) struct ITPluggableTerminalEventSink : public IUnknown { public: virtual HRESULT WINAPI FireEvent(const MSP_EVENT_INFO *pMspEventInfo) = 0; }; #else typedef struct ITPluggableTerminalEventSinkVtbl { BEGIN_INTERFACE HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalEventSink *This,REFIID riid,void **ppvObject); ULONG (WINAPI *AddRef)(ITPluggableTerminalEventSink *This); ULONG (WINAPI *Release)(ITPluggableTerminalEventSink *This); HRESULT (WINAPI *FireEvent)(ITPluggableTerminalEventSink *This,const MSP_EVENT_INFO *pMspEventInfo); END_INTERFACE } ITPluggableTerminalEventSinkVtbl; struct ITPluggableTerminalEventSink { CONST_VTBL struct ITPluggableTerminalEventSinkVtbl *lpVtbl; }; #ifdef COBJMACROS #define ITPluggableTerminalEventSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITPluggableTerminalEventSink_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITPluggableTerminalEventSink_Release(This) (This)->lpVtbl->Release(This) #define ITPluggableTerminalEventSink_FireEvent(This,pMspEventInfo) (This)->lpVtbl->FireEvent(This,pMspEventInfo) #endif #endif HRESULT WINAPI ITPluggableTerminalEventSink_FireEvent_Proxy(ITPluggableTerminalEventSink *This,const MSP_EVENT_INFO *pMspEventInfo); void __RPC_STUB ITPluggableTerminalEventSink_FireEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); #endif #ifndef __ITPluggableTerminalEventSinkRegistration_INTERFACE_DEFINED__ #define __ITPluggableTerminalEventSinkRegistration_INTERFACE_DEFINED__ EXTERN_C const IID IID_ITPluggableTerminalEventSinkRegistration; #if defined(__cplusplus) && !defined(CINTERFACE) struct ITPluggableTerminalEventSinkRegistration : public IUnknown { public: virtual HRESULT WINAPI RegisterSink(ITPluggableTerminalEventSink *pEventSink) = 0; virtual HRESULT WINAPI UnregisterSink(void) = 0; }; #else typedef struct ITPluggableTerminalEventSinkRegistrationVtbl { BEGIN_INTERFACE HRESULT (WINAPI *QueryInterface)(ITPluggableTerminalEventSinkRegistration *This,REFIID riid,void **ppvObject); ULONG (WINAPI *AddRef)(ITPluggableTerminalEventSinkRegistration *This); ULONG (WINAPI *Release)(ITPluggableTerminalEventSinkRegistration *This); HRESULT (WINAPI *RegisterSink)(ITPluggableTerminalEventSinkRegistration *This,ITPluggableTerminalEventSink *pEventSink); HRESULT (WINAPI *UnregisterSink)(ITPluggableTerminalEventSinkRegistration *This); END_INTERFACE } ITPluggableTerminalEventSinkRegistrationVtbl; struct ITPluggableTerminalEventSinkRegistration { CONST_VTBL struct ITPluggableTerminalEventSinkRegistrationVtbl *lpVtbl; }; #ifdef COBJMACROS #define ITPluggableTerminalEventSinkRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITPluggableTerminalEventSinkRegistration_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITPluggableTerminalEventSinkRegistration_Release(This) (This)->lpVtbl->Release(This) #define ITPluggableTerminalEventSinkRegistration_RegisterSink(This,pEventSink) (This)->lpVtbl->RegisterSink(This,pEventSink) #define ITPluggableTerminalEventSinkRegistration_UnregisterSink(This) (This)->lpVtbl->UnregisterSink(This) #endif #endif HRESULT WINAPI ITPluggableTerminalEventSinkRegistration_RegisterSink_Proxy(ITPluggableTerminalEventSinkRegistration *This,ITPluggableTerminalEventSink *pEventSink); void __RPC_STUB ITPluggableTerminalEventSinkRegistration_RegisterSink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); HRESULT WINAPI ITPluggableTerminalEventSinkRegistration_UnregisterSink_Proxy(ITPluggableTerminalEventSinkRegistration *This); void __RPC_STUB ITPluggableTerminalEventSinkRegistration_UnregisterSink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); #endif #ifndef __ITMSPAddress_INTERFACE_DEFINED__ #define __ITMSPAddress_INTERFACE_DEFINED__ EXTERN_C const IID IID_ITMSPAddress; #if defined(__cplusplus) && !defined(CINTERFACE) struct ITMSPAddress : public IUnknown { public: virtual HRESULT WINAPI Initialize(MSP_HANDLE hEvent) = 0; virtual HRESULT WINAPI Shutdown(void) = 0; virtual HRESULT WINAPI CreateMSPCall(MSP_HANDLE hCall,DWORD dwReserved,DWORD dwMediaType,IUnknown *pOuterUnknown,IUnknown **ppStreamControl) = 0; virtual HRESULT WINAPI ShutdownMSPCall(IUnknown *pStreamControl) = 0; virtual HRESULT WINAPI ReceiveTSPData(IUnknown *pMSPCall,BYTE *pBuffer,DWORD dwSize) = 0; virtual HRESULT WINAPI GetEvent(DWORD *pdwSize,byte *pEventBuffer) = 0; }; #else typedef struct ITMSPAddressVtbl { BEGIN_INTERFACE HRESULT (WINAPI *QueryInterface)(ITMSPAddress *This,REFIID riid,void **ppvObject); ULONG (WINAPI *AddRef)(ITMSPAddress *This); ULONG (WINAPI *Release)(ITMSPAddress *This); HRESULT (WINAPI *Initialize)(ITMSPAddress *This,MSP_HANDLE hEvent); HRESULT (WINAPI *Shutdown)(ITMSPAddress *This); HRESULT (WINAPI *CreateMSPCall)(ITMSPAddress *This,MSP_HANDLE hCall,DWORD dwReserved,DWORD dwMediaType,IUnknown *pOuterUnknown,IUnknown **ppStreamControl); HRESULT (WINAPI *ShutdownMSPCall)(ITMSPAddress *This,IUnknown *pStreamControl); HRESULT (WINAPI *ReceiveTSPData)(ITMSPAddress *This,IUnknown *pMSPCall,BYTE *pBuffer,DWORD dwSize); HRESULT (WINAPI *GetEvent)(ITMSPAddress *This,DWORD *pdwSize,byte *pEventBuffer); END_INTERFACE } ITMSPAddressVtbl; struct ITMSPAddress { CONST_VTBL struct ITMSPAddressVtbl *lpVtbl; }; #ifdef COBJMACROS #define ITMSPAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITMSPAddress_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITMSPAddress_Release(This) (This)->lpVtbl->Release(This) #define ITMSPAddress_Initialize(This,hEvent) (This)->lpVtbl->Initialize(This,hEvent) #define ITMSPAddress_Shutdown(This) (This)->lpVtbl->Shutdown(This) #define ITMSPAddress_CreateMSPCall(This,hCall,dwReserved,dwMediaType,pOuterUnknown,ppStreamControl) (This)->lpVtbl->CreateMSPCall(This,hCall,dwReserved,dwMediaType,pOuterUnknown,ppStreamControl) #define ITMSPAddress_ShutdownMSPCall(This,pStreamControl) (This)->lpVtbl->ShutdownMSPCall(This,pStreamControl) #define ITMSPAddress_ReceiveTSPData(This,pMSPCall,pBuffer,dwSize) (This)->lpVtbl->ReceiveTSPData(This,pMSPCall,pBuffer,dwSize) #define ITMSPAddress_GetEvent(This,pdwSize,pEventBuffer) (This)->lpVtbl->GetEvent(This,pdwSize,pEventBuffer) #endif #endif HRESULT WINAPI ITMSPAddress_Initialize_Proxy(ITMSPAddress *This,MSP_HANDLE hEvent); void __RPC_STUB ITMSPAddress_Initialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); HRESULT WINAPI ITMSPAddress_Shutdown_Proxy(ITMSPAddress *This); void __RPC_STUB ITMSPAddress_Shutdown_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); HRESULT WINAPI ITMSPAddress_CreateMSPCall_Proxy(ITMSPAddress *This,MSP_HANDLE hCall,DWORD dwReserved,DWORD dwMediaType,IUnknown *pOuterUnknown,IUnknown **ppStreamControl); void __RPC_STUB ITMSPAddress_CreateMSPCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); HRESULT WINAPI ITMSPAddress_ShutdownMSPCall_Proxy(ITMSPAddress *This,IUnknown *pStreamControl); void __RPC_STUB ITMSPAddress_ShutdownMSPCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); HRESULT WINAPI ITMSPAddress_ReceiveTSPData_Proxy(ITMSPAddress *This,IUnknown *pMSPCall,BYTE *pBuffer,DWORD dwSize); void __RPC_STUB ITMSPAddress_ReceiveTSPData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); HRESULT WINAPI ITMSPAddress_GetEvent_Proxy(ITMSPAddress *This,DWORD *pdwSize,byte *pEventBuffer); void __RPC_STUB ITMSPAddress_GetEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); #endif #ifdef __cplusplus } #endif #endif