Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      7 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      8 #endif
      9 
     10 #include "rpc.h"
     11 #include "rpcndr.h"
     12 
     13 #ifndef __RPCNDR_H_VERSION__
     14 #error This stub requires an updated version of <rpcndr.h>
     15 #endif
     16 
     17 #ifndef COM_NO_WINDOWS_H
     18 #include "windows.h"
     19 #include "ole2.h"
     20 #endif
     21 
     22 #ifndef __ipmsp_h__
     23 #define __ipmsp_h__
     24 
     25 #ifndef __ITParticipant_FWD_DEFINED__
     26 #define __ITParticipant_FWD_DEFINED__
     27 typedef struct ITParticipant ITParticipant;
     28 #endif
     29 
     30 #ifndef __ITFormatControl_FWD_DEFINED__
     31 #define __ITFormatControl_FWD_DEFINED__
     32 typedef struct ITFormatControl ITFormatControl;
     33 #endif
     34 
     35 #ifndef __ITStreamQualityControl_FWD_DEFINED__
     36 #define __ITStreamQualityControl_FWD_DEFINED__
     37 typedef struct ITStreamQualityControl ITStreamQualityControl;
     38 #endif
     39 
     40 #ifndef __ITCallQualityControl_FWD_DEFINED__
     41 #define __ITCallQualityControl_FWD_DEFINED__
     42 typedef struct ITCallQualityControl ITCallQualityControl;
     43 #endif
     44 
     45 #ifndef __ITAudioDeviceControl_FWD_DEFINED__
     46 #define __ITAudioDeviceControl_FWD_DEFINED__
     47 typedef struct ITAudioDeviceControl ITAudioDeviceControl;
     48 #endif
     49 
     50 #ifndef __ITAudioSettings_FWD_DEFINED__
     51 #define __ITAudioSettings_FWD_DEFINED__
     52 typedef struct ITAudioSettings ITAudioSettings;
     53 #endif
     54 
     55 #ifndef __ITQOSApplicationID_FWD_DEFINED__
     56 #define __ITQOSApplicationID_FWD_DEFINED__
     57 typedef struct ITQOSApplicationID ITQOSApplicationID;
     58 #endif
     59 
     60 #include "tapi3if.h"
     61 
     62 #ifdef __cplusplus
     63 extern "C"{
     64 #endif
     65 
     66 #ifndef __MIDL_user_allocate_free_DEFINED__
     67 #define __MIDL_user_allocate_free_DEFINED__
     68   void *__RPC_API MIDL_user_allocate(size_t);
     69   void __RPC_API MIDL_user_free(void *);
     70 #endif
     71 
     72 #define MAX_PARTICIPANT_TYPED_INFO_LENGTH (256)
     73 
     74 #define MAX_QOS_ID_LEN (128)
     75 
     76   typedef enum PARTICIPANT_TYPED_INFO {
     77     PTI_CANONICALNAME = 0,PTI_NAME,PTI_EMAILADDRESS,PTI_PHONENUMBER,
     78     PTI_LOCATION,PTI_TOOL,PTI_NOTES,PTI_PRIVATE
     79   } PARTICIPANT_TYPED_INFO;
     80 
     81   typedef enum PARTICIPANT_EVENT {
     82     PE_NEW_PARTICIPANT = 0,PE_INFO_CHANGE,PE_PARTICIPANT_LEAVE,
     83     PE_NEW_SUBSTREAM,PE_SUBSTREAM_REMOVED,PE_SUBSTREAM_MAPPED,
     84     PE_SUBSTREAM_UNMAPPED,PE_PARTICIPANT_TIMEOUT,PE_PARTICIPANT_RECOVERED,
     85     PE_PARTICIPANT_ACTIVE,PE_PARTICIPANT_INACTIVE,PE_LOCAL_TALKING,
     86     PE_LOCAL_SILENT
     87   } PARTICIPANT_EVENT;
     88 
     89   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0000_v0_0_c_ifspec;
     90   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0000_v0_0_s_ifspec;
     91 
     92 #ifndef __ITParticipant_INTERFACE_DEFINED__
     93 #define __ITParticipant_INTERFACE_DEFINED__
     94   EXTERN_C const IID IID_ITParticipant;
     95 #if defined(__cplusplus) && !defined(CINTERFACE)
     96   struct ITParticipant : public IDispatch {
     97   public:
     98     virtual HRESULT WINAPI get_ParticipantTypedInfo(PARTICIPANT_TYPED_INFO InfoType,BSTR *ppInfo) = 0;
     99     virtual HRESULT WINAPI get_MediaTypes(__LONG32 *plMediaType) = 0;
    100     virtual HRESULT WINAPI put_Status(ITStream *pITStream,VARIANT_BOOL fEnable) = 0;
    101     virtual HRESULT WINAPI get_Status(ITStream *pITStream,VARIANT_BOOL *pStatus) = 0;
    102     virtual HRESULT WINAPI get_Streams(VARIANT *pVariant) = 0;
    103     virtual HRESULT WINAPI EnumerateStreams(IEnumStream **ppEnumStream) = 0;
    104   };
    105 #else
    106   typedef struct ITParticipantVtbl {
    107     BEGIN_INTERFACE
    108       HRESULT (WINAPI *QueryInterface)(ITParticipant *This,REFIID riid,void **ppvObject);
    109       ULONG (WINAPI *AddRef)(ITParticipant *This);
    110       ULONG (WINAPI *Release)(ITParticipant *This);
    111       HRESULT (WINAPI *GetTypeInfoCount)(ITParticipant *This,UINT *pctinfo);
    112       HRESULT (WINAPI *GetTypeInfo)(ITParticipant *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    113       HRESULT (WINAPI *GetIDsOfNames)(ITParticipant *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    114       HRESULT (WINAPI *Invoke)(ITParticipant *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    115       HRESULT (WINAPI *get_ParticipantTypedInfo)(ITParticipant *This,PARTICIPANT_TYPED_INFO InfoType,BSTR *ppInfo);
    116       HRESULT (WINAPI *get_MediaTypes)(ITParticipant *This,__LONG32 *plMediaType);
    117       HRESULT (WINAPI *put_Status)(ITParticipant *This,ITStream *pITStream,VARIANT_BOOL fEnable);
    118       HRESULT (WINAPI *get_Status)(ITParticipant *This,ITStream *pITStream,VARIANT_BOOL *pStatus);
    119       HRESULT (WINAPI *get_Streams)(ITParticipant *This,VARIANT *pVariant);
    120       HRESULT (WINAPI *EnumerateStreams)(ITParticipant *This,IEnumStream **ppEnumStream);
    121     END_INTERFACE
    122   } ITParticipantVtbl;
    123   struct ITParticipant {
    124     CONST_VTBL struct ITParticipantVtbl *lpVtbl;
    125   };
    126 #ifdef COBJMACROS
    127 #define ITParticipant_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    128 #define ITParticipant_AddRef(This) (This)->lpVtbl->AddRef(This)
    129 #define ITParticipant_Release(This) (This)->lpVtbl->Release(This)
    130 #define ITParticipant_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    131 #define ITParticipant_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    132 #define ITParticipant_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    133 #define ITParticipant_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    134 #define ITParticipant_get_ParticipantTypedInfo(This,InfoType,ppInfo) (This)->lpVtbl->get_ParticipantTypedInfo(This,InfoType,ppInfo)
    135 #define ITParticipant_get_MediaTypes(This,plMediaType) (This)->lpVtbl->get_MediaTypes(This,plMediaType)
    136 #define ITParticipant_put_Status(This,pITStream,fEnable) (This)->lpVtbl->put_Status(This,pITStream,fEnable)
    137 #define ITParticipant_get_Status(This,pITStream,pStatus) (This)->lpVtbl->get_Status(This,pITStream,pStatus)
    138 #define ITParticipant_get_Streams(This,pVariant) (This)->lpVtbl->get_Streams(This,pVariant)
    139 #define ITParticipant_EnumerateStreams(This,ppEnumStream) (This)->lpVtbl->EnumerateStreams(This,ppEnumStream)
    140 #endif
    141 #endif
    142   HRESULT WINAPI ITParticipant_get_ParticipantTypedInfo_Proxy(ITParticipant *This,PARTICIPANT_TYPED_INFO InfoType,BSTR *ppInfo);
    143   void __RPC_STUB ITParticipant_get_ParticipantTypedInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    144   HRESULT WINAPI ITParticipant_get_MediaTypes_Proxy(ITParticipant *This,__LONG32 *plMediaType);
    145   void __RPC_STUB ITParticipant_get_MediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    146   HRESULT WINAPI ITParticipant_put_Status_Proxy(ITParticipant *This,ITStream *pITStream,VARIANT_BOOL fEnable);
    147   void __RPC_STUB ITParticipant_put_Status_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    148   HRESULT WINAPI ITParticipant_get_Status_Proxy(ITParticipant *This,ITStream *pITStream,VARIANT_BOOL *pStatus);
    149   void __RPC_STUB ITParticipant_get_Status_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    150   HRESULT WINAPI ITParticipant_get_Streams_Proxy(ITParticipant *This,VARIANT *pVariant);
    151   void __RPC_STUB ITParticipant_get_Streams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    152   HRESULT WINAPI ITParticipant_EnumerateStreams_Proxy(ITParticipant *This,IEnumStream **ppEnumStream);
    153   void __RPC_STUB ITParticipant_EnumerateStreams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    154 #endif
    155 
    156 #ifndef STREAM_INTERFACES_DEFINED
    157 #define STREAM_INTERFACES_DEFINED
    158 #define MAX_DESCRIPTION_LEN (256)
    159   typedef struct _TAPI_AUDIO_STREAM_CONFIG_CAPS {
    160     WCHAR Description[256 ];
    161     ULONG MinimumChannels;
    162     ULONG MaximumChannels;
    163     ULONG ChannelsGranularity;
    164     ULONG MinimumBitsPerSample;
    165     ULONG MaximumBitsPerSample;
    166     ULONG BitsPerSampleGranularity;
    167     ULONG MinimumSampleFrequency;
    168     ULONG MaximumSampleFrequency;
    169     ULONG SampleFrequencyGranularity;
    170     ULONG MinimumAvgBytesPerSec;
    171     ULONG MaximumAvgBytesPerSec;
    172     ULONG AvgBytesPerSecGranularity;
    173   } TAPI_AUDIO_STREAM_CONFIG_CAPS;
    174 
    175   typedef struct _TAPI_AUDIO_STREAM_CONFIG_CAPS *PTAPI_AUDIO_STREAM_CONFIG_CAPS;
    176 
    177   typedef struct _TAPI_VIDEO_STREAM_CONFIG_CAPS {
    178     WCHAR Description[256 ];
    179     ULONG VideoStandard;
    180     SIZE InputSize;
    181     SIZE MinCroppingSize;
    182     SIZE MaxCroppingSize;
    183     int CropGranularityX;
    184     int CropGranularityY;
    185     int CropAlignX;
    186     int CropAlignY;
    187     SIZE MinOutputSize;
    188     SIZE MaxOutputSize;
    189     int OutputGranularityX;
    190     int OutputGranularityY;
    191     int StretchTapsX;
    192     int StretchTapsY;
    193     int ShrinkTapsX;
    194     int ShrinkTapsY;
    195     LONGLONG MinFrameInterval;
    196     LONGLONG MaxFrameInterval;
    197     LONG MinBitsPerSecond;
    198     LONG MaxBitsPerSecond;
    199   } TAPI_VIDEO_STREAM_CONFIG_CAPS;
    200 
    201   typedef struct _TAPI_VIDEO_STREAM_CONFIG_CAPS *PTAPI_VIDEO_STREAM_CONFIG_CAPS;
    202 
    203   typedef enum tagStreamConfigCapsType {
    204     AudioStreamConfigCaps = 0,VideoStreamConfigCaps = AudioStreamConfigCaps + 1
    205   } StreamConfigCapsType;
    206 
    207   typedef struct tagTAPI_STREAM_CONFIG_CAPS {
    208     StreamConfigCapsType CapsType;
    209     __C89_NAMELESS union {
    210       TAPI_VIDEO_STREAM_CONFIG_CAPS VideoCap;
    211       TAPI_AUDIO_STREAM_CONFIG_CAPS AudioCap;
    212     };
    213   } TAPI_STREAM_CONFIG_CAPS;
    214 
    215   typedef struct tagTAPI_STREAM_CONFIG_CAPS *PTAPI_STREAM_CONFIG_CAPS;
    216 
    217   typedef enum tagTAPIControlFlags {
    218     TAPIControl_Flags_None = 0,TAPIControl_Flags_Auto = 0x1,TAPIControl_Flags_Manual = 0x2
    219   } TAPIControlFlags;
    220 
    221   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0502_v0_0_c_ifspec;
    222   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0502_v0_0_s_ifspec;
    223 
    224 #ifndef __ITFormatControl_INTERFACE_DEFINED__
    225 #define __ITFormatControl_INTERFACE_DEFINED__
    226   EXTERN_C const IID IID_ITFormatControl;
    227 #if defined(__cplusplus) && !defined(CINTERFACE)
    228   struct ITFormatControl : public IUnknown {
    229   public:
    230     virtual HRESULT WINAPI GetCurrentFormat(AM_MEDIA_TYPE **ppMediaType) = 0;
    231     virtual HRESULT WINAPI ReleaseFormat(AM_MEDIA_TYPE *pMediaType) = 0;
    232     virtual HRESULT WINAPI GetNumberOfCapabilities(DWORD *pdwCount) = 0;
    233     virtual HRESULT WINAPI GetStreamCaps(DWORD dwIndex,AM_MEDIA_TYPE **ppMediaType,TAPI_STREAM_CONFIG_CAPS *pStreamConfigCaps,WINBOOL *pfEnabled) = 0;
    234     virtual HRESULT WINAPI ReOrderCapabilities(DWORD *pdwIndices,WINBOOL *pfEnabled,WINBOOL *pfPublicize,DWORD dwNumIndices) = 0;
    235   };
    236 #else
    237   typedef struct ITFormatControlVtbl {
    238     BEGIN_INTERFACE
    239       HRESULT (WINAPI *QueryInterface)(ITFormatControl *This,REFIID riid,void **ppvObject);
    240       ULONG (WINAPI *AddRef)(ITFormatControl *This);
    241       ULONG (WINAPI *Release)(ITFormatControl *This);
    242       HRESULT (WINAPI *GetCurrentFormat)(ITFormatControl *This,AM_MEDIA_TYPE **ppMediaType);
    243       HRESULT (WINAPI *ReleaseFormat)(ITFormatControl *This,AM_MEDIA_TYPE *pMediaType);
    244       HRESULT (WINAPI *GetNumberOfCapabilities)(ITFormatControl *This,DWORD *pdwCount);
    245       HRESULT (WINAPI *GetStreamCaps)(ITFormatControl *This,DWORD dwIndex,AM_MEDIA_TYPE **ppMediaType,TAPI_STREAM_CONFIG_CAPS *pStreamConfigCaps,WINBOOL *pfEnabled);
    246       HRESULT (WINAPI *ReOrderCapabilities)(ITFormatControl *This,DWORD *pdwIndices,WINBOOL *pfEnabled,WINBOOL *pfPublicize,DWORD dwNumIndices);
    247     END_INTERFACE
    248   } ITFormatControlVtbl;
    249   struct ITFormatControl {
    250     CONST_VTBL struct ITFormatControlVtbl *lpVtbl;
    251   };
    252 #ifdef COBJMACROS
    253 #define ITFormatControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    254 #define ITFormatControl_AddRef(This) (This)->lpVtbl->AddRef(This)
    255 #define ITFormatControl_Release(This) (This)->lpVtbl->Release(This)
    256 #define ITFormatControl_GetCurrentFormat(This,ppMediaType) (This)->lpVtbl->GetCurrentFormat(This,ppMediaType)
    257 #define ITFormatControl_ReleaseFormat(This,pMediaType) (This)->lpVtbl->ReleaseFormat(This,pMediaType)
    258 #define ITFormatControl_GetNumberOfCapabilities(This,pdwCount) (This)->lpVtbl->GetNumberOfCapabilities(This,pdwCount)
    259 #define ITFormatControl_GetStreamCaps(This,dwIndex,ppMediaType,pStreamConfigCaps,pfEnabled) (This)->lpVtbl->GetStreamCaps(This,dwIndex,ppMediaType,pStreamConfigCaps,pfEnabled)
    260 #define ITFormatControl_ReOrderCapabilities(This,pdwIndices,pfEnabled,pfPublicize,dwNumIndices) (This)->lpVtbl->ReOrderCapabilities(This,pdwIndices,pfEnabled,pfPublicize,dwNumIndices)
    261 #endif
    262 #endif
    263   HRESULT WINAPI ITFormatControl_GetCurrentFormat_Proxy(ITFormatControl *This,AM_MEDIA_TYPE **ppMediaType);
    264   void __RPC_STUB ITFormatControl_GetCurrentFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    265   HRESULT WINAPI ITFormatControl_ReleaseFormat_Proxy(ITFormatControl *This,AM_MEDIA_TYPE *pMediaType);
    266   void __RPC_STUB ITFormatControl_ReleaseFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    267   HRESULT WINAPI ITFormatControl_GetNumberOfCapabilities_Proxy(ITFormatControl *This,DWORD *pdwCount);
    268   void __RPC_STUB ITFormatControl_GetNumberOfCapabilities_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    269   HRESULT WINAPI ITFormatControl_GetStreamCaps_Proxy(ITFormatControl *This,DWORD dwIndex,AM_MEDIA_TYPE **ppMediaType,TAPI_STREAM_CONFIG_CAPS *pStreamConfigCaps,WINBOOL *pfEnabled);
    270   void __RPC_STUB ITFormatControl_GetStreamCaps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    271   HRESULT WINAPI ITFormatControl_ReOrderCapabilities_Proxy(ITFormatControl *This,DWORD *pdwIndices,WINBOOL *pfEnabled,WINBOOL *pfPublicize,DWORD dwNumIndices);
    272   void __RPC_STUB ITFormatControl_ReOrderCapabilities_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    273 #endif
    274 
    275   typedef enum tagStreamQualityProperty {
    276     StreamQuality_MaxBitrate = 0,StreamQuality_CurrBitrate,StreamQuality_MinFrameInterval,
    277     StreamQuality_AvgFrameInterval
    278   } StreamQualityProperty;
    279 
    280   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0503_v0_0_c_ifspec;
    281   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0503_v0_0_s_ifspec;
    282 
    283 #ifndef __ITStreamQualityControl_INTERFACE_DEFINED__
    284 #define __ITStreamQualityControl_INTERFACE_DEFINED__
    285   EXTERN_C const IID IID_ITStreamQualityControl;
    286 #if defined(__cplusplus) && !defined(CINTERFACE)
    287   struct ITStreamQualityControl : public IUnknown {
    288   public:
    289     virtual HRESULT WINAPI GetRange(StreamQualityProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags) = 0;
    290     virtual HRESULT WINAPI Get(StreamQualityProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags) = 0;
    291     virtual HRESULT WINAPI Set(StreamQualityProperty Property,__LONG32 lValue,TAPIControlFlags lFlags) = 0;
    292   };
    293 #else
    294   typedef struct ITStreamQualityControlVtbl {
    295     BEGIN_INTERFACE
    296       HRESULT (WINAPI *QueryInterface)(ITStreamQualityControl *This,REFIID riid,void **ppvObject);
    297       ULONG (WINAPI *AddRef)(ITStreamQualityControl *This);
    298       ULONG (WINAPI *Release)(ITStreamQualityControl *This);
    299       HRESULT (WINAPI *GetRange)(ITStreamQualityControl *This,StreamQualityProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    300       HRESULT (WINAPI *Get)(ITStreamQualityControl *This,StreamQualityProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    301       HRESULT (WINAPI *Set)(ITStreamQualityControl *This,StreamQualityProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    302     END_INTERFACE
    303   } ITStreamQualityControlVtbl;
    304   struct ITStreamQualityControl {
    305     CONST_VTBL struct ITStreamQualityControlVtbl *lpVtbl;
    306   };
    307 #ifdef COBJMACROS
    308 #define ITStreamQualityControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    309 #define ITStreamQualityControl_AddRef(This) (This)->lpVtbl->AddRef(This)
    310 #define ITStreamQualityControl_Release(This) (This)->lpVtbl->Release(This)
    311 #define ITStreamQualityControl_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags) (This)->lpVtbl->GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
    312 #define ITStreamQualityControl_Get(This,Property,plValue,plFlags) (This)->lpVtbl->Get(This,Property,plValue,plFlags)
    313 #define ITStreamQualityControl_Set(This,Property,lValue,lFlags) (This)->lpVtbl->Set(This,Property,lValue,lFlags)
    314 #endif
    315 #endif
    316   HRESULT WINAPI ITStreamQualityControl_GetRange_Proxy(ITStreamQualityControl *This,StreamQualityProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    317   void __RPC_STUB ITStreamQualityControl_GetRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    318   HRESULT WINAPI ITStreamQualityControl_Get_Proxy(ITStreamQualityControl *This,StreamQualityProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    319   void __RPC_STUB ITStreamQualityControl_Get_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    320   HRESULT WINAPI ITStreamQualityControl_Set_Proxy(ITStreamQualityControl *This,StreamQualityProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    321   void __RPC_STUB ITStreamQualityControl_Set_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    322 #endif
    323 
    324   typedef enum tagCallQualityProperty {
    325     CallQuality_ControlInterval = 0,CallQuality_ConfBitrate,CallQuality_MaxInputBitrate,
    326     CallQuality_CurrInputBitrate,CallQuality_MaxOutputBitrate,
    327     CallQuality_CurrOutputBitrate,CallQuality_MaxCPULoad,CallQuality_CurrCPULoad
    328   } CallQualityProperty;
    329 
    330   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0504_v0_0_c_ifspec;
    331   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0504_v0_0_s_ifspec;
    332 
    333 #ifndef __ITCallQualityControl_INTERFACE_DEFINED__
    334 #define __ITCallQualityControl_INTERFACE_DEFINED__
    335   EXTERN_C const IID IID_ITCallQualityControl;
    336 #if defined(__cplusplus) && !defined(CINTERFACE)
    337   struct ITCallQualityControl : public IUnknown {
    338   public:
    339     virtual HRESULT WINAPI GetRange(CallQualityProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags) = 0;
    340     virtual HRESULT WINAPI Get(CallQualityProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags) = 0;
    341     virtual HRESULT WINAPI Set(CallQualityProperty Property,__LONG32 lValue,TAPIControlFlags lFlags) = 0;
    342   };
    343 #else
    344   typedef struct ITCallQualityControlVtbl {
    345     BEGIN_INTERFACE
    346       HRESULT (WINAPI *QueryInterface)(ITCallQualityControl *This,REFIID riid,void **ppvObject);
    347       ULONG (WINAPI *AddRef)(ITCallQualityControl *This);
    348       ULONG (WINAPI *Release)(ITCallQualityControl *This);
    349       HRESULT (WINAPI *GetRange)(ITCallQualityControl *This,CallQualityProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    350       HRESULT (WINAPI *Get)(ITCallQualityControl *This,CallQualityProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    351       HRESULT (WINAPI *Set)(ITCallQualityControl *This,CallQualityProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    352     END_INTERFACE
    353   } ITCallQualityControlVtbl;
    354   struct ITCallQualityControl {
    355     CONST_VTBL struct ITCallQualityControlVtbl *lpVtbl;
    356   };
    357 #ifdef COBJMACROS
    358 #define ITCallQualityControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    359 #define ITCallQualityControl_AddRef(This) (This)->lpVtbl->AddRef(This)
    360 #define ITCallQualityControl_Release(This) (This)->lpVtbl->Release(This)
    361 #define ITCallQualityControl_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags) (This)->lpVtbl->GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
    362 #define ITCallQualityControl_Get(This,Property,plValue,plFlags) (This)->lpVtbl->Get(This,Property,plValue,plFlags)
    363 #define ITCallQualityControl_Set(This,Property,lValue,lFlags) (This)->lpVtbl->Set(This,Property,lValue,lFlags)
    364 #endif
    365 #endif
    366   HRESULT WINAPI ITCallQualityControl_GetRange_Proxy(ITCallQualityControl *This,CallQualityProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    367   void __RPC_STUB ITCallQualityControl_GetRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    368   HRESULT WINAPI ITCallQualityControl_Get_Proxy(ITCallQualityControl *This,CallQualityProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    369   void __RPC_STUB ITCallQualityControl_Get_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    370   HRESULT WINAPI ITCallQualityControl_Set_Proxy(ITCallQualityControl *This,CallQualityProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    371   void __RPC_STUB ITCallQualityControl_Set_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    372 #endif
    373 
    374   typedef enum tagAudioDeviceProperty {
    375     AudioDevice_DuplexMode = 0,AudioDevice_AutomaticGainControl,
    376     AudioDevice_AcousticEchoCancellation
    377   } AudioDeviceProperty;
    378 
    379   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0505_v0_0_c_ifspec;
    380   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0505_v0_0_s_ifspec;
    381 
    382 #ifndef __ITAudioDeviceControl_INTERFACE_DEFINED__
    383 #define __ITAudioDeviceControl_INTERFACE_DEFINED__
    384   EXTERN_C const IID IID_ITAudioDeviceControl;
    385 #if defined(__cplusplus) && !defined(CINTERFACE)
    386   struct ITAudioDeviceControl : public IUnknown {
    387   public:
    388     virtual HRESULT WINAPI GetRange(AudioDeviceProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags) = 0;
    389     virtual HRESULT WINAPI Get(AudioDeviceProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags) = 0;
    390     virtual HRESULT WINAPI Set(AudioDeviceProperty Property,__LONG32 lValue,TAPIControlFlags lFlags) = 0;
    391   };
    392 #else
    393   typedef struct ITAudioDeviceControlVtbl {
    394     BEGIN_INTERFACE
    395       HRESULT (WINAPI *QueryInterface)(ITAudioDeviceControl *This,REFIID riid,void **ppvObject);
    396       ULONG (WINAPI *AddRef)(ITAudioDeviceControl *This);
    397       ULONG (WINAPI *Release)(ITAudioDeviceControl *This);
    398       HRESULT (WINAPI *GetRange)(ITAudioDeviceControl *This,AudioDeviceProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    399       HRESULT (WINAPI *Get)(ITAudioDeviceControl *This,AudioDeviceProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    400       HRESULT (WINAPI *Set)(ITAudioDeviceControl *This,AudioDeviceProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    401     END_INTERFACE
    402   } ITAudioDeviceControlVtbl;
    403   struct ITAudioDeviceControl {
    404     CONST_VTBL struct ITAudioDeviceControlVtbl *lpVtbl;
    405   };
    406 #ifdef COBJMACROS
    407 #define ITAudioDeviceControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    408 #define ITAudioDeviceControl_AddRef(This) (This)->lpVtbl->AddRef(This)
    409 #define ITAudioDeviceControl_Release(This) (This)->lpVtbl->Release(This)
    410 #define ITAudioDeviceControl_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags) (This)->lpVtbl->GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
    411 #define ITAudioDeviceControl_Get(This,Property,plValue,plFlags) (This)->lpVtbl->Get(This,Property,plValue,plFlags)
    412 #define ITAudioDeviceControl_Set(This,Property,lValue,lFlags) (This)->lpVtbl->Set(This,Property,lValue,lFlags)
    413 #endif
    414 #endif
    415   HRESULT WINAPI ITAudioDeviceControl_GetRange_Proxy(ITAudioDeviceControl *This,AudioDeviceProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    416   void __RPC_STUB ITAudioDeviceControl_GetRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    417   HRESULT WINAPI ITAudioDeviceControl_Get_Proxy(ITAudioDeviceControl *This,AudioDeviceProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    418   void __RPC_STUB ITAudioDeviceControl_Get_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    419   HRESULT WINAPI ITAudioDeviceControl_Set_Proxy(ITAudioDeviceControl *This,AudioDeviceProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    420   void __RPC_STUB ITAudioDeviceControl_Set_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    421 #endif
    422 
    423   typedef enum tagAudioSettingsProperty {
    424     AudioSettings_SignalLevel = 0,AudioSettings_SilenceThreshold,
    425     AudioSettings_Volume,AudioSettings_Balance,AudioSettings_Loudness,
    426     AudioSettings_Treble,AudioSettings_Bass,AudioSettings_Mono
    427   } AudioSettingsProperty;
    428 
    429   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0506_v0_0_c_ifspec;
    430   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0506_v0_0_s_ifspec;
    431 
    432 #ifndef __ITAudioSettings_INTERFACE_DEFINED__
    433 #define __ITAudioSettings_INTERFACE_DEFINED__
    434   EXTERN_C const IID IID_ITAudioSettings;
    435 #if defined(__cplusplus) && !defined(CINTERFACE)
    436   struct ITAudioSettings : public IUnknown {
    437   public:
    438     virtual HRESULT WINAPI GetRange(AudioSettingsProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags) = 0;
    439     virtual HRESULT WINAPI Get(AudioSettingsProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags) = 0;
    440     virtual HRESULT WINAPI Set(AudioSettingsProperty Property,__LONG32 lValue,TAPIControlFlags lFlags) = 0;
    441   };
    442 #else
    443   typedef struct ITAudioSettingsVtbl {
    444     BEGIN_INTERFACE
    445       HRESULT (WINAPI *QueryInterface)(ITAudioSettings *This,REFIID riid,void **ppvObject);
    446       ULONG (WINAPI *AddRef)(ITAudioSettings *This);
    447       ULONG (WINAPI *Release)(ITAudioSettings *This);
    448       HRESULT (WINAPI *GetRange)(ITAudioSettings *This,AudioSettingsProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    449       HRESULT (WINAPI *Get)(ITAudioSettings *This,AudioSettingsProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    450       HRESULT (WINAPI *Set)(ITAudioSettings *This,AudioSettingsProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    451     END_INTERFACE
    452   } ITAudioSettingsVtbl;
    453   struct ITAudioSettings {
    454     CONST_VTBL struct ITAudioSettingsVtbl *lpVtbl;
    455   };
    456 #ifdef COBJMACROS
    457 #define ITAudioSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    458 #define ITAudioSettings_AddRef(This) (This)->lpVtbl->AddRef(This)
    459 #define ITAudioSettings_Release(This) (This)->lpVtbl->Release(This)
    460 #define ITAudioSettings_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags) (This)->lpVtbl->GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
    461 #define ITAudioSettings_Get(This,Property,plValue,plFlags) (This)->lpVtbl->Get(This,Property,plValue,plFlags)
    462 #define ITAudioSettings_Set(This,Property,lValue,lFlags) (This)->lpVtbl->Set(This,Property,lValue,lFlags)
    463 #endif
    464 #endif
    465   HRESULT WINAPI ITAudioSettings_GetRange_Proxy(ITAudioSettings *This,AudioSettingsProperty Property,__LONG32 *plMin,__LONG32 *plMax,__LONG32 *plSteppingDelta,__LONG32 *plDefault,TAPIControlFlags *plFlags);
    466   void __RPC_STUB ITAudioSettings_GetRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    467   HRESULT WINAPI ITAudioSettings_Get_Proxy(ITAudioSettings *This,AudioSettingsProperty Property,__LONG32 *plValue,TAPIControlFlags *plFlags);
    468   void __RPC_STUB ITAudioSettings_Get_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    469   HRESULT WINAPI ITAudioSettings_Set_Proxy(ITAudioSettings *This,AudioSettingsProperty Property,__LONG32 lValue,TAPIControlFlags lFlags);
    470   void __RPC_STUB ITAudioSettings_Set_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    471 #endif
    472 
    473 #ifndef __ITQOSApplicationID_INTERFACE_DEFINED__
    474 #define __ITQOSApplicationID_INTERFACE_DEFINED__
    475   EXTERN_C const IID IID_ITQOSApplicationID;
    476 #if defined(__cplusplus) && !defined(CINTERFACE)
    477   struct ITQOSApplicationID : public IDispatch {
    478   public:
    479     virtual HRESULT WINAPI SetQOSApplicationID(BSTR pApplicationID,BSTR pApplicationGUID,BSTR pSubIDs) = 0;
    480   };
    481 #else
    482   typedef struct ITQOSApplicationIDVtbl {
    483     BEGIN_INTERFACE
    484       HRESULT (WINAPI *QueryInterface)(ITQOSApplicationID *This,REFIID riid,void **ppvObject);
    485       ULONG (WINAPI *AddRef)(ITQOSApplicationID *This);
    486       ULONG (WINAPI *Release)(ITQOSApplicationID *This);
    487       HRESULT (WINAPI *GetTypeInfoCount)(ITQOSApplicationID *This,UINT *pctinfo);
    488       HRESULT (WINAPI *GetTypeInfo)(ITQOSApplicationID *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    489       HRESULT (WINAPI *GetIDsOfNames)(ITQOSApplicationID *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    490       HRESULT (WINAPI *Invoke)(ITQOSApplicationID *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    491       HRESULT (WINAPI *SetQOSApplicationID)(ITQOSApplicationID *This,BSTR pApplicationID,BSTR pApplicationGUID,BSTR pSubIDs);
    492     END_INTERFACE
    493   } ITQOSApplicationIDVtbl;
    494   struct ITQOSApplicationID {
    495     CONST_VTBL struct ITQOSApplicationIDVtbl *lpVtbl;
    496   };
    497 #ifdef COBJMACROS
    498 #define ITQOSApplicationID_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    499 #define ITQOSApplicationID_AddRef(This) (This)->lpVtbl->AddRef(This)
    500 #define ITQOSApplicationID_Release(This) (This)->lpVtbl->Release(This)
    501 #define ITQOSApplicationID_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    502 #define ITQOSApplicationID_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    503 #define ITQOSApplicationID_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    504 #define ITQOSApplicationID_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    505 #define ITQOSApplicationID_SetQOSApplicationID(This,pApplicationID,pApplicationGUID,pSubIDs) (This)->lpVtbl->SetQOSApplicationID(This,pApplicationID,pApplicationGUID,pSubIDs)
    506 #endif
    507 #endif
    508   HRESULT WINAPI ITQOSApplicationID_SetQOSApplicationID_Proxy(ITQOSApplicationID *This,BSTR pApplicationID,BSTR pApplicationGUID,BSTR pSubIDs);
    509   void __RPC_STUB ITQOSApplicationID_SetQOSApplicationID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    510 #endif
    511 #endif
    512 
    513 #ifndef RTP_MEDIATYPE_DEFINED
    514 #define RTP_MEDIATYPE_DEFINED
    515   struct MEDIATYPE_RTP_Single_Stream;
    516 #endif
    517   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0508_v0_0_c_ifspec;
    518   extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0508_v0_0_s_ifspec;
    519 
    520   ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
    521   unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
    522   unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
    523   void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
    524   ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
    525   unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
    526   unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
    527   void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
    528 
    529 #ifdef __cplusplus
    530 }
    531 #endif
    532 #endif
    533