ipmsp.h 31 KB

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