ipmsp.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:48k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for ipmsp.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext, robust
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __ipmsp_h__
  27. #define __ipmsp_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */ 
  32. #ifndef __ITParticipant_FWD_DEFINED__
  33. #define __ITParticipant_FWD_DEFINED__
  34. typedef interface ITParticipant ITParticipant;
  35. #endif  /* __ITParticipant_FWD_DEFINED__ */
  36. #ifndef __ITFormatControl_FWD_DEFINED__
  37. #define __ITFormatControl_FWD_DEFINED__
  38. typedef interface ITFormatControl ITFormatControl;
  39. #endif  /* __ITFormatControl_FWD_DEFINED__ */
  40. #ifndef __ITStreamQualityControl_FWD_DEFINED__
  41. #define __ITStreamQualityControl_FWD_DEFINED__
  42. typedef interface ITStreamQualityControl ITStreamQualityControl;
  43. #endif  /* __ITStreamQualityControl_FWD_DEFINED__ */
  44. #ifndef __ITCallQualityControl_FWD_DEFINED__
  45. #define __ITCallQualityControl_FWD_DEFINED__
  46. typedef interface ITCallQualityControl ITCallQualityControl;
  47. #endif  /* __ITCallQualityControl_FWD_DEFINED__ */
  48. #ifndef __ITAudioDeviceControl_FWD_DEFINED__
  49. #define __ITAudioDeviceControl_FWD_DEFINED__
  50. typedef interface ITAudioDeviceControl ITAudioDeviceControl;
  51. #endif  /* __ITAudioDeviceControl_FWD_DEFINED__ */
  52. #ifndef __ITAudioSettings_FWD_DEFINED__
  53. #define __ITAudioSettings_FWD_DEFINED__
  54. typedef interface ITAudioSettings ITAudioSettings;
  55. #endif  /* __ITAudioSettings_FWD_DEFINED__ */
  56. #ifndef __ITQOSApplicationID_FWD_DEFINED__
  57. #define __ITQOSApplicationID_FWD_DEFINED__
  58. typedef interface ITQOSApplicationID ITQOSApplicationID;
  59. #endif  /* __ITQOSApplicationID_FWD_DEFINED__ */
  60. /* header files for imported files */
  61. #include "tapi3if.h"
  62. #ifdef __cplusplus
  63. extern "C"{
  64. #endif 
  65. void * __RPC_USER MIDL_user_allocate(size_t);
  66. void __RPC_USER MIDL_user_free( void * ); 
  67. /* interface __MIDL_itf_ipmsp_0000 */
  68. /* [local] */ 
  69. #define MAX_PARTICIPANT_TYPED_INFO_LENGTH ( 256 )
  70. #define MAX_QOS_ID_LEN ( 128 )
  71. typedef 
  72. enum PARTICIPANT_TYPED_INFO
  73.     { PTI_CANONICALNAME = 0,
  74. PTI_NAME = PTI_CANONICALNAME + 1,
  75. PTI_EMAILADDRESS = PTI_NAME + 1,
  76. PTI_PHONENUMBER = PTI_EMAILADDRESS + 1,
  77. PTI_LOCATION = PTI_PHONENUMBER + 1,
  78. PTI_TOOL = PTI_LOCATION + 1,
  79. PTI_NOTES = PTI_TOOL + 1,
  80. PTI_PRIVATE = PTI_NOTES + 1
  81.     }  PARTICIPANT_TYPED_INFO;
  82. typedef 
  83. enum PARTICIPANT_EVENT
  84.     { PE_NEW_PARTICIPANT = 0,
  85. PE_INFO_CHANGE = PE_NEW_PARTICIPANT + 1,
  86. PE_PARTICIPANT_LEAVE = PE_INFO_CHANGE + 1,
  87. PE_NEW_SUBSTREAM = PE_PARTICIPANT_LEAVE + 1,
  88. PE_SUBSTREAM_REMOVED = PE_NEW_SUBSTREAM + 1,
  89. PE_SUBSTREAM_MAPPED = PE_SUBSTREAM_REMOVED + 1,
  90. PE_SUBSTREAM_UNMAPPED = PE_SUBSTREAM_MAPPED + 1,
  91. PE_PARTICIPANT_TIMEOUT = PE_SUBSTREAM_UNMAPPED + 1,
  92. PE_PARTICIPANT_RECOVERED = PE_PARTICIPANT_TIMEOUT + 1,
  93. PE_PARTICIPANT_ACTIVE = PE_PARTICIPANT_RECOVERED + 1,
  94. PE_PARTICIPANT_INACTIVE = PE_PARTICIPANT_ACTIVE + 1,
  95. PE_LOCAL_TALKING = PE_PARTICIPANT_INACTIVE + 1,
  96. PE_LOCAL_SILENT = PE_LOCAL_TALKING + 1
  97.     }  PARTICIPANT_EVENT;
  98. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0000_v0_0_c_ifspec;
  99. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0000_v0_0_s_ifspec;
  100. #ifndef __ITParticipant_INTERFACE_DEFINED__
  101. #define __ITParticipant_INTERFACE_DEFINED__
  102. /* interface ITParticipant */
  103. /* [object][dual][unique][helpstring][uuid] */ 
  104. EXTERN_C const IID IID_ITParticipant;
  105. #if defined(__cplusplus) && !defined(CINTERFACE)
  106.     
  107.     MIDL_INTERFACE("5899b820-5a34-11d2-95a0-00a0244d2298")
  108.     ITParticipant : public IDispatch
  109.     {
  110.     public:
  111.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParticipantTypedInfo( 
  112.             /* [in] */ PARTICIPANT_TYPED_INFO InfoType,
  113.             /* [retval][out] */ BSTR *ppInfo) = 0;
  114.         
  115.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaTypes( 
  116.             /* [retval][out] */ long *plMediaType) = 0;
  117.         
  118.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Status( 
  119.             /* [in] */ ITStream *pITStream,
  120.             /* [in] */ VARIANT_BOOL fEnable) = 0;
  121.         
  122.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
  123.             /* [in] */ ITStream *pITStream,
  124.             /* [retval][out] */ VARIANT_BOOL *pStatus) = 0;
  125.         
  126.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Streams( 
  127.             /* [retval][out] */ VARIANT *pVariant) = 0;
  128.         
  129.         virtual /* [hidden][id] */ HRESULT STDMETHODCALLTYPE EnumerateStreams( 
  130.             /* [retval][out] */ IEnumStream **ppEnumStream) = 0;
  131.         
  132.     };
  133.     
  134. #else  /* C style interface */
  135.     typedef struct ITParticipantVtbl
  136.     {
  137.         BEGIN_INTERFACE
  138.         
  139.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  140.             ITParticipant * This,
  141.             /* [in] */ REFIID riid,
  142.             /* [iid_is][out] */ void **ppvObject);
  143.         
  144.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  145.             ITParticipant * This);
  146.         
  147.         ULONG ( STDMETHODCALLTYPE *Release )( 
  148.             ITParticipant * This);
  149.         
  150.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  151.             ITParticipant * This,
  152.             /* [out] */ UINT *pctinfo);
  153.         
  154.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  155.             ITParticipant * This,
  156.             /* [in] */ UINT iTInfo,
  157.             /* [in] */ LCID lcid,
  158.             /* [out] */ ITypeInfo **ppTInfo);
  159.         
  160.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  161.             ITParticipant * This,
  162.             /* [in] */ REFIID riid,
  163.             /* [size_is][in] */ LPOLESTR *rgszNames,
  164.             /* [in] */ UINT cNames,
  165.             /* [in] */ LCID lcid,
  166.             /* [size_is][out] */ DISPID *rgDispId);
  167.         
  168.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  169.             ITParticipant * This,
  170.             /* [in] */ DISPID dispIdMember,
  171.             /* [in] */ REFIID riid,
  172.             /* [in] */ LCID lcid,
  173.             /* [in] */ WORD wFlags,
  174.             /* [out][in] */ DISPPARAMS *pDispParams,
  175.             /* [out] */ VARIANT *pVarResult,
  176.             /* [out] */ EXCEPINFO *pExcepInfo,
  177.             /* [out] */ UINT *puArgErr);
  178.         
  179.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ParticipantTypedInfo )( 
  180.             ITParticipant * This,
  181.             /* [in] */ PARTICIPANT_TYPED_INFO InfoType,
  182.             /* [retval][out] */ BSTR *ppInfo);
  183.         
  184.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaTypes )( 
  185.             ITParticipant * This,
  186.             /* [retval][out] */ long *plMediaType);
  187.         
  188.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Status )( 
  189.             ITParticipant * This,
  190.             /* [in] */ ITStream *pITStream,
  191.             /* [in] */ VARIANT_BOOL fEnable);
  192.         
  193.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  194.             ITParticipant * This,
  195.             /* [in] */ ITStream *pITStream,
  196.             /* [retval][out] */ VARIANT_BOOL *pStatus);
  197.         
  198.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Streams )( 
  199.             ITParticipant * This,
  200.             /* [retval][out] */ VARIANT *pVariant);
  201.         
  202.         /* [hidden][id] */ HRESULT ( STDMETHODCALLTYPE *EnumerateStreams )( 
  203.             ITParticipant * This,
  204.             /* [retval][out] */ IEnumStream **ppEnumStream);
  205.         
  206.         END_INTERFACE
  207.     } ITParticipantVtbl;
  208.     interface ITParticipant
  209.     {
  210.         CONST_VTBL struct ITParticipantVtbl *lpVtbl;
  211.     };
  212.     
  213. #ifdef COBJMACROS
  214. #define ITParticipant_QueryInterface(This,riid,ppvObject)
  215.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  216. #define ITParticipant_AddRef(This)
  217.     (This)->lpVtbl -> AddRef(This)
  218. #define ITParticipant_Release(This)
  219.     (This)->lpVtbl -> Release(This)
  220. #define ITParticipant_GetTypeInfoCount(This,pctinfo)
  221.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  222. #define ITParticipant_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  223.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  224. #define ITParticipant_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  225.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  226. #define ITParticipant_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  227.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  228. #define ITParticipant_get_ParticipantTypedInfo(This,InfoType,ppInfo)
  229.     (This)->lpVtbl -> get_ParticipantTypedInfo(This,InfoType,ppInfo)
  230. #define ITParticipant_get_MediaTypes(This,plMediaType)
  231.     (This)->lpVtbl -> get_MediaTypes(This,plMediaType)
  232. #define ITParticipant_put_Status(This,pITStream,fEnable)
  233.     (This)->lpVtbl -> put_Status(This,pITStream,fEnable)
  234. #define ITParticipant_get_Status(This,pITStream,pStatus)
  235.     (This)->lpVtbl -> get_Status(This,pITStream,pStatus)
  236. #define ITParticipant_get_Streams(This,pVariant)
  237.     (This)->lpVtbl -> get_Streams(This,pVariant)
  238. #define ITParticipant_EnumerateStreams(This,ppEnumStream)
  239.     (This)->lpVtbl -> EnumerateStreams(This,ppEnumStream)
  240. #endif /* COBJMACROS */
  241. #endif  /* C style interface */
  242. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITParticipant_get_ParticipantTypedInfo_Proxy( 
  243.     ITParticipant * This,
  244.     /* [in] */ PARTICIPANT_TYPED_INFO InfoType,
  245.     /* [retval][out] */ BSTR *ppInfo);
  246. void __RPC_STUB ITParticipant_get_ParticipantTypedInfo_Stub(
  247.     IRpcStubBuffer *This,
  248.     IRpcChannelBuffer *_pRpcChannelBuffer,
  249.     PRPC_MESSAGE _pRpcMessage,
  250.     DWORD *_pdwStubPhase);
  251. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITParticipant_get_MediaTypes_Proxy( 
  252.     ITParticipant * This,
  253.     /* [retval][out] */ long *plMediaType);
  254. void __RPC_STUB ITParticipant_get_MediaTypes_Stub(
  255.     IRpcStubBuffer *This,
  256.     IRpcChannelBuffer *_pRpcChannelBuffer,
  257.     PRPC_MESSAGE _pRpcMessage,
  258.     DWORD *_pdwStubPhase);
  259. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITParticipant_put_Status_Proxy( 
  260.     ITParticipant * This,
  261.     /* [in] */ ITStream *pITStream,
  262.     /* [in] */ VARIANT_BOOL fEnable);
  263. void __RPC_STUB ITParticipant_put_Status_Stub(
  264.     IRpcStubBuffer *This,
  265.     IRpcChannelBuffer *_pRpcChannelBuffer,
  266.     PRPC_MESSAGE _pRpcMessage,
  267.     DWORD *_pdwStubPhase);
  268. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITParticipant_get_Status_Proxy( 
  269.     ITParticipant * This,
  270.     /* [in] */ ITStream *pITStream,
  271.     /* [retval][out] */ VARIANT_BOOL *pStatus);
  272. void __RPC_STUB ITParticipant_get_Status_Stub(
  273.     IRpcStubBuffer *This,
  274.     IRpcChannelBuffer *_pRpcChannelBuffer,
  275.     PRPC_MESSAGE _pRpcMessage,
  276.     DWORD *_pdwStubPhase);
  277. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITParticipant_get_Streams_Proxy( 
  278.     ITParticipant * This,
  279.     /* [retval][out] */ VARIANT *pVariant);
  280. void __RPC_STUB ITParticipant_get_Streams_Stub(
  281.     IRpcStubBuffer *This,
  282.     IRpcChannelBuffer *_pRpcChannelBuffer,
  283.     PRPC_MESSAGE _pRpcMessage,
  284.     DWORD *_pdwStubPhase);
  285. /* [hidden][id] */ HRESULT STDMETHODCALLTYPE ITParticipant_EnumerateStreams_Proxy( 
  286.     ITParticipant * This,
  287.     /* [retval][out] */ IEnumStream **ppEnumStream);
  288. void __RPC_STUB ITParticipant_EnumerateStreams_Stub(
  289.     IRpcStubBuffer *This,
  290.     IRpcChannelBuffer *_pRpcChannelBuffer,
  291.     PRPC_MESSAGE _pRpcMessage,
  292.     DWORD *_pdwStubPhase);
  293. #endif  /* __ITParticipant_INTERFACE_DEFINED__ */
  294. /* interface __MIDL_itf_ipmsp_0484 */
  295. /* [local] */ 
  296. #ifndef STREAM_INTERFACES_DEFINED
  297. #define STREAM_INTERFACES_DEFINED
  298. #define MAX_DESCRIPTION_LEN ( 256 )
  299. typedef struct _TAPI_AUDIO_STREAM_CONFIG_CAPS
  300.     {
  301.     WCHAR Description[ 256 ];
  302.     ULONG MinimumChannels;
  303.     ULONG MaximumChannels;
  304.     ULONG ChannelsGranularity;
  305.     ULONG MinimumBitsPerSample;
  306.     ULONG MaximumBitsPerSample;
  307.     ULONG BitsPerSampleGranularity;
  308.     ULONG MinimumSampleFrequency;
  309.     ULONG MaximumSampleFrequency;
  310.     ULONG SampleFrequencyGranularity;
  311.     ULONG MinimumAvgBytesPerSec;
  312.     ULONG MaximumAvgBytesPerSec;
  313.     ULONG AvgBytesPerSecGranularity;
  314.     }  TAPI_AUDIO_STREAM_CONFIG_CAPS;
  315. typedef struct _TAPI_AUDIO_STREAM_CONFIG_CAPS *PTAPI_AUDIO_STREAM_CONFIG_CAPS;
  316. typedef struct _TAPI_VIDEO_STREAM_CONFIG_CAPS
  317.     {
  318.     WCHAR Description[ 256 ];
  319.     ULONG VideoStandard;
  320.     SIZE InputSize;
  321.     SIZE MinCroppingSize;
  322.     SIZE MaxCroppingSize;
  323.     int CropGranularityX;
  324.     int CropGranularityY;
  325.     int CropAlignX;
  326.     int CropAlignY;
  327.     SIZE MinOutputSize;
  328.     SIZE MaxOutputSize;
  329.     int OutputGranularityX;
  330.     int OutputGranularityY;
  331.     int StretchTapsX;
  332.     int StretchTapsY;
  333.     int ShrinkTapsX;
  334.     int ShrinkTapsY;
  335.     LONGLONG MinFrameInterval;
  336.     LONGLONG MaxFrameInterval;
  337.     LONG MinBitsPerSecond;
  338.     LONG MaxBitsPerSecond;
  339.     }  TAPI_VIDEO_STREAM_CONFIG_CAPS;
  340. typedef struct _TAPI_VIDEO_STREAM_CONFIG_CAPS *PTAPI_VIDEO_STREAM_CONFIG_CAPS;
  341. typedef 
  342. enum tagStreamConfigCapsType
  343.     { AudioStreamConfigCaps = 0,
  344. VideoStreamConfigCaps = AudioStreamConfigCaps + 1
  345.     }  StreamConfigCapsType;
  346. typedef struct tagTAPI_STREAM_CONFIG_CAPS
  347.     {
  348.     StreamConfigCapsType CapsType;
  349.     union 
  350.         {
  351.         TAPI_VIDEO_STREAM_CONFIG_CAPS VideoCap;
  352.         TAPI_AUDIO_STREAM_CONFIG_CAPS AudioCap;
  353.         }  ;
  354.     }  TAPI_STREAM_CONFIG_CAPS;
  355. typedef struct tagTAPI_STREAM_CONFIG_CAPS *PTAPI_STREAM_CONFIG_CAPS;
  356. typedef 
  357. enum tagTAPIControlFlags
  358.     { TAPIControl_Flags_None = 0,
  359. TAPIControl_Flags_Auto = 0x1,
  360. TAPIControl_Flags_Manual = 0x2
  361.     }  TAPIControlFlags;
  362. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0484_v0_0_c_ifspec;
  363. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0484_v0_0_s_ifspec;
  364. #ifndef __ITFormatControl_INTERFACE_DEFINED__
  365. #define __ITFormatControl_INTERFACE_DEFINED__
  366. /* interface ITFormatControl */
  367. /* [hidden][unique][uuid][local][object] */ 
  368. EXTERN_C const IID IID_ITFormatControl;
  369. #if defined(__cplusplus) && !defined(CINTERFACE)
  370.     
  371.     MIDL_INTERFACE("6c0ab6c1-21e3-11d3-a577-00c04f8ef6e3")
  372.     ITFormatControl : public IUnknown
  373.     {
  374.     public:
  375.         virtual HRESULT STDMETHODCALLTYPE GetCurrentFormat( 
  376.             /* [out] */ AM_MEDIA_TYPE **ppMediaType) = 0;
  377.         
  378.         virtual HRESULT STDMETHODCALLTYPE ReleaseFormat( 
  379.             /* [in] */ AM_MEDIA_TYPE *pMediaType) = 0;
  380.         
  381.         virtual HRESULT STDMETHODCALLTYPE GetNumberOfCapabilities( 
  382.             /* [out] */ DWORD *pdwCount) = 0;
  383.         
  384.         virtual HRESULT STDMETHODCALLTYPE GetStreamCaps( 
  385.             /* [in] */ DWORD dwIndex,
  386.             /* [out] */ AM_MEDIA_TYPE **ppMediaType,
  387.             /* [out] */ TAPI_STREAM_CONFIG_CAPS *pStreamConfigCaps,
  388.             /* [out] */ BOOL *pfEnabled) = 0;
  389.         
  390.         virtual HRESULT STDMETHODCALLTYPE ReOrderCapabilities( 
  391.             /* [in] */ DWORD *pdwIndices,
  392.             /* [in] */ BOOL *pfEnabled,
  393.             /* [in] */ BOOL *pfPublicize,
  394.             /* [in] */ DWORD dwNumIndices) = 0;
  395.         
  396.     };
  397.     
  398. #else  /* C style interface */
  399.     typedef struct ITFormatControlVtbl
  400.     {
  401.         BEGIN_INTERFACE
  402.         
  403.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  404.             ITFormatControl * This,
  405.             /* [in] */ REFIID riid,
  406.             /* [iid_is][out] */ void **ppvObject);
  407.         
  408.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  409.             ITFormatControl * This);
  410.         
  411.         ULONG ( STDMETHODCALLTYPE *Release )( 
  412.             ITFormatControl * This);
  413.         
  414.         HRESULT ( STDMETHODCALLTYPE *GetCurrentFormat )( 
  415.             ITFormatControl * This,
  416.             /* [out] */ AM_MEDIA_TYPE **ppMediaType);
  417.         
  418.         HRESULT ( STDMETHODCALLTYPE *ReleaseFormat )( 
  419.             ITFormatControl * This,
  420.             /* [in] */ AM_MEDIA_TYPE *pMediaType);
  421.         
  422.         HRESULT ( STDMETHODCALLTYPE *GetNumberOfCapabilities )( 
  423.             ITFormatControl * This,
  424.             /* [out] */ DWORD *pdwCount);
  425.         
  426.         HRESULT ( STDMETHODCALLTYPE *GetStreamCaps )( 
  427.             ITFormatControl * This,
  428.             /* [in] */ DWORD dwIndex,
  429.             /* [out] */ AM_MEDIA_TYPE **ppMediaType,
  430.             /* [out] */ TAPI_STREAM_CONFIG_CAPS *pStreamConfigCaps,
  431.             /* [out] */ BOOL *pfEnabled);
  432.         
  433.         HRESULT ( STDMETHODCALLTYPE *ReOrderCapabilities )( 
  434.             ITFormatControl * This,
  435.             /* [in] */ DWORD *pdwIndices,
  436.             /* [in] */ BOOL *pfEnabled,
  437.             /* [in] */ BOOL *pfPublicize,
  438.             /* [in] */ DWORD dwNumIndices);
  439.         
  440.         END_INTERFACE
  441.     } ITFormatControlVtbl;
  442.     interface ITFormatControl
  443.     {
  444.         CONST_VTBL struct ITFormatControlVtbl *lpVtbl;
  445.     };
  446.     
  447. #ifdef COBJMACROS
  448. #define ITFormatControl_QueryInterface(This,riid,ppvObject)
  449.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  450. #define ITFormatControl_AddRef(This)
  451.     (This)->lpVtbl -> AddRef(This)
  452. #define ITFormatControl_Release(This)
  453.     (This)->lpVtbl -> Release(This)
  454. #define ITFormatControl_GetCurrentFormat(This,ppMediaType)
  455.     (This)->lpVtbl -> GetCurrentFormat(This,ppMediaType)
  456. #define ITFormatControl_ReleaseFormat(This,pMediaType)
  457.     (This)->lpVtbl -> ReleaseFormat(This,pMediaType)
  458. #define ITFormatControl_GetNumberOfCapabilities(This,pdwCount)
  459.     (This)->lpVtbl -> GetNumberOfCapabilities(This,pdwCount)
  460. #define ITFormatControl_GetStreamCaps(This,dwIndex,ppMediaType,pStreamConfigCaps,pfEnabled)
  461.     (This)->lpVtbl -> GetStreamCaps(This,dwIndex,ppMediaType,pStreamConfigCaps,pfEnabled)
  462. #define ITFormatControl_ReOrderCapabilities(This,pdwIndices,pfEnabled,pfPublicize,dwNumIndices)
  463.     (This)->lpVtbl -> ReOrderCapabilities(This,pdwIndices,pfEnabled,pfPublicize,dwNumIndices)
  464. #endif /* COBJMACROS */
  465. #endif  /* C style interface */
  466. HRESULT STDMETHODCALLTYPE ITFormatControl_GetCurrentFormat_Proxy( 
  467.     ITFormatControl * This,
  468.     /* [out] */ AM_MEDIA_TYPE **ppMediaType);
  469. void __RPC_STUB ITFormatControl_GetCurrentFormat_Stub(
  470.     IRpcStubBuffer *This,
  471.     IRpcChannelBuffer *_pRpcChannelBuffer,
  472.     PRPC_MESSAGE _pRpcMessage,
  473.     DWORD *_pdwStubPhase);
  474. HRESULT STDMETHODCALLTYPE ITFormatControl_ReleaseFormat_Proxy( 
  475.     ITFormatControl * This,
  476.     /* [in] */ AM_MEDIA_TYPE *pMediaType);
  477. void __RPC_STUB ITFormatControl_ReleaseFormat_Stub(
  478.     IRpcStubBuffer *This,
  479.     IRpcChannelBuffer *_pRpcChannelBuffer,
  480.     PRPC_MESSAGE _pRpcMessage,
  481.     DWORD *_pdwStubPhase);
  482. HRESULT STDMETHODCALLTYPE ITFormatControl_GetNumberOfCapabilities_Proxy( 
  483.     ITFormatControl * This,
  484.     /* [out] */ DWORD *pdwCount);
  485. void __RPC_STUB ITFormatControl_GetNumberOfCapabilities_Stub(
  486.     IRpcStubBuffer *This,
  487.     IRpcChannelBuffer *_pRpcChannelBuffer,
  488.     PRPC_MESSAGE _pRpcMessage,
  489.     DWORD *_pdwStubPhase);
  490. HRESULT STDMETHODCALLTYPE ITFormatControl_GetStreamCaps_Proxy( 
  491.     ITFormatControl * This,
  492.     /* [in] */ DWORD dwIndex,
  493.     /* [out] */ AM_MEDIA_TYPE **ppMediaType,
  494.     /* [out] */ TAPI_STREAM_CONFIG_CAPS *pStreamConfigCaps,
  495.     /* [out] */ BOOL *pfEnabled);
  496. void __RPC_STUB ITFormatControl_GetStreamCaps_Stub(
  497.     IRpcStubBuffer *This,
  498.     IRpcChannelBuffer *_pRpcChannelBuffer,
  499.     PRPC_MESSAGE _pRpcMessage,
  500.     DWORD *_pdwStubPhase);
  501. HRESULT STDMETHODCALLTYPE ITFormatControl_ReOrderCapabilities_Proxy( 
  502.     ITFormatControl * This,
  503.     /* [in] */ DWORD *pdwIndices,
  504.     /* [in] */ BOOL *pfEnabled,
  505.     /* [in] */ BOOL *pfPublicize,
  506.     /* [in] */ DWORD dwNumIndices);
  507. void __RPC_STUB ITFormatControl_ReOrderCapabilities_Stub(
  508.     IRpcStubBuffer *This,
  509.     IRpcChannelBuffer *_pRpcChannelBuffer,
  510.     PRPC_MESSAGE _pRpcMessage,
  511.     DWORD *_pdwStubPhase);
  512. #endif  /* __ITFormatControl_INTERFACE_DEFINED__ */
  513. /* interface __MIDL_itf_ipmsp_0485 */
  514. /* [local] */ 
  515. typedef 
  516. enum tagStreamQualityProperty
  517.     { StreamQuality_MaxBitrate = 0,
  518. StreamQuality_CurrBitrate = StreamQuality_MaxBitrate + 1,
  519. StreamQuality_MinFrameInterval = StreamQuality_CurrBitrate + 1,
  520. StreamQuality_AvgFrameInterval = StreamQuality_MinFrameInterval + 1
  521.     }  StreamQualityProperty;
  522. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0485_v0_0_c_ifspec;
  523. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0485_v0_0_s_ifspec;
  524. #ifndef __ITStreamQualityControl_INTERFACE_DEFINED__
  525. #define __ITStreamQualityControl_INTERFACE_DEFINED__
  526. /* interface ITStreamQualityControl */
  527. /* [hidden][unique][uuid][local][object] */ 
  528. EXTERN_C const IID IID_ITStreamQualityControl;
  529. #if defined(__cplusplus) && !defined(CINTERFACE)
  530.     
  531.     MIDL_INTERFACE("6c0ab6c2-21e3-11d3-a577-00c04f8ef6e3")
  532.     ITStreamQualityControl : public IUnknown
  533.     {
  534.     public:
  535.         virtual HRESULT STDMETHODCALLTYPE GetRange( 
  536.             /* [in] */ StreamQualityProperty Property,
  537.             /* [out] */ long *plMin,
  538.             /* [out] */ long *plMax,
  539.             /* [out] */ long *plSteppingDelta,
  540.             /* [out] */ long *plDefault,
  541.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  542.         
  543.         virtual HRESULT STDMETHODCALLTYPE Get( 
  544.             /* [in] */ StreamQualityProperty Property,
  545.             /* [out] */ long *plValue,
  546.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  547.         
  548.         virtual HRESULT STDMETHODCALLTYPE Set( 
  549.             /* [in] */ StreamQualityProperty Property,
  550.             /* [in] */ long lValue,
  551.             /* [in] */ TAPIControlFlags lFlags) = 0;
  552.         
  553.     };
  554.     
  555. #else  /* C style interface */
  556.     typedef struct ITStreamQualityControlVtbl
  557.     {
  558.         BEGIN_INTERFACE
  559.         
  560.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  561.             ITStreamQualityControl * This,
  562.             /* [in] */ REFIID riid,
  563.             /* [iid_is][out] */ void **ppvObject);
  564.         
  565.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  566.             ITStreamQualityControl * This);
  567.         
  568.         ULONG ( STDMETHODCALLTYPE *Release )( 
  569.             ITStreamQualityControl * This);
  570.         
  571.         HRESULT ( STDMETHODCALLTYPE *GetRange )( 
  572.             ITStreamQualityControl * This,
  573.             /* [in] */ StreamQualityProperty Property,
  574.             /* [out] */ long *plMin,
  575.             /* [out] */ long *plMax,
  576.             /* [out] */ long *plSteppingDelta,
  577.             /* [out] */ long *plDefault,
  578.             /* [out] */ TAPIControlFlags *plFlags);
  579.         
  580.         HRESULT ( STDMETHODCALLTYPE *Get )( 
  581.             ITStreamQualityControl * This,
  582.             /* [in] */ StreamQualityProperty Property,
  583.             /* [out] */ long *plValue,
  584.             /* [out] */ TAPIControlFlags *plFlags);
  585.         
  586.         HRESULT ( STDMETHODCALLTYPE *Set )( 
  587.             ITStreamQualityControl * This,
  588.             /* [in] */ StreamQualityProperty Property,
  589.             /* [in] */ long lValue,
  590.             /* [in] */ TAPIControlFlags lFlags);
  591.         
  592.         END_INTERFACE
  593.     } ITStreamQualityControlVtbl;
  594.     interface ITStreamQualityControl
  595.     {
  596.         CONST_VTBL struct ITStreamQualityControlVtbl *lpVtbl;
  597.     };
  598.     
  599. #ifdef COBJMACROS
  600. #define ITStreamQualityControl_QueryInterface(This,riid,ppvObject)
  601.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  602. #define ITStreamQualityControl_AddRef(This)
  603.     (This)->lpVtbl -> AddRef(This)
  604. #define ITStreamQualityControl_Release(This)
  605.     (This)->lpVtbl -> Release(This)
  606. #define ITStreamQualityControl_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  607.     (This)->lpVtbl -> GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  608. #define ITStreamQualityControl_Get(This,Property,plValue,plFlags)
  609.     (This)->lpVtbl -> Get(This,Property,plValue,plFlags)
  610. #define ITStreamQualityControl_Set(This,Property,lValue,lFlags)
  611.     (This)->lpVtbl -> Set(This,Property,lValue,lFlags)
  612. #endif /* COBJMACROS */
  613. #endif  /* C style interface */
  614. HRESULT STDMETHODCALLTYPE ITStreamQualityControl_GetRange_Proxy( 
  615.     ITStreamQualityControl * This,
  616.     /* [in] */ StreamQualityProperty Property,
  617.     /* [out] */ long *plMin,
  618.     /* [out] */ long *plMax,
  619.     /* [out] */ long *plSteppingDelta,
  620.     /* [out] */ long *plDefault,
  621.     /* [out] */ TAPIControlFlags *plFlags);
  622. void __RPC_STUB ITStreamQualityControl_GetRange_Stub(
  623.     IRpcStubBuffer *This,
  624.     IRpcChannelBuffer *_pRpcChannelBuffer,
  625.     PRPC_MESSAGE _pRpcMessage,
  626.     DWORD *_pdwStubPhase);
  627. HRESULT STDMETHODCALLTYPE ITStreamQualityControl_Get_Proxy( 
  628.     ITStreamQualityControl * This,
  629.     /* [in] */ StreamQualityProperty Property,
  630.     /* [out] */ long *plValue,
  631.     /* [out] */ TAPIControlFlags *plFlags);
  632. void __RPC_STUB ITStreamQualityControl_Get_Stub(
  633.     IRpcStubBuffer *This,
  634.     IRpcChannelBuffer *_pRpcChannelBuffer,
  635.     PRPC_MESSAGE _pRpcMessage,
  636.     DWORD *_pdwStubPhase);
  637. HRESULT STDMETHODCALLTYPE ITStreamQualityControl_Set_Proxy( 
  638.     ITStreamQualityControl * This,
  639.     /* [in] */ StreamQualityProperty Property,
  640.     /* [in] */ long lValue,
  641.     /* [in] */ TAPIControlFlags lFlags);
  642. void __RPC_STUB ITStreamQualityControl_Set_Stub(
  643.     IRpcStubBuffer *This,
  644.     IRpcChannelBuffer *_pRpcChannelBuffer,
  645.     PRPC_MESSAGE _pRpcMessage,
  646.     DWORD *_pdwStubPhase);
  647. #endif  /* __ITStreamQualityControl_INTERFACE_DEFINED__ */
  648. /* interface __MIDL_itf_ipmsp_0486 */
  649. /* [local] */ 
  650. typedef 
  651. enum tagCallQualityProperty
  652.     { CallQuality_ControlInterval = 0,
  653. CallQuality_ConfBitrate = CallQuality_ControlInterval + 1,
  654. CallQuality_MaxInputBitrate = CallQuality_ConfBitrate + 1,
  655. CallQuality_CurrInputBitrate = CallQuality_MaxInputBitrate + 1,
  656. CallQuality_MaxOutputBitrate = CallQuality_CurrInputBitrate + 1,
  657. CallQuality_CurrOutputBitrate = CallQuality_MaxOutputBitrate + 1,
  658. CallQuality_MaxCPULoad = CallQuality_CurrOutputBitrate + 1,
  659. CallQuality_CurrCPULoad = CallQuality_MaxCPULoad + 1
  660.     }  CallQualityProperty;
  661. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0486_v0_0_c_ifspec;
  662. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0486_v0_0_s_ifspec;
  663. #ifndef __ITCallQualityControl_INTERFACE_DEFINED__
  664. #define __ITCallQualityControl_INTERFACE_DEFINED__
  665. /* interface ITCallQualityControl */
  666. /* [hidden][unique][uuid][local][object] */ 
  667. EXTERN_C const IID IID_ITCallQualityControl;
  668. #if defined(__cplusplus) && !defined(CINTERFACE)
  669.     
  670.     MIDL_INTERFACE("fe1d8ae0-edc4-49b5-8f8c-4de40f9cdfaf")
  671.     ITCallQualityControl : public IUnknown
  672.     {
  673.     public:
  674.         virtual HRESULT STDMETHODCALLTYPE GetRange( 
  675.             /* [in] */ CallQualityProperty Property,
  676.             /* [out] */ long *plMin,
  677.             /* [out] */ long *plMax,
  678.             /* [out] */ long *plSteppingDelta,
  679.             /* [out] */ long *plDefault,
  680.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  681.         
  682.         virtual HRESULT STDMETHODCALLTYPE Get( 
  683.             /* [in] */ CallQualityProperty Property,
  684.             /* [out] */ long *plValue,
  685.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  686.         
  687.         virtual HRESULT STDMETHODCALLTYPE Set( 
  688.             /* [in] */ CallQualityProperty Property,
  689.             /* [in] */ long lValue,
  690.             /* [in] */ TAPIControlFlags lFlags) = 0;
  691.         
  692.     };
  693.     
  694. #else  /* C style interface */
  695.     typedef struct ITCallQualityControlVtbl
  696.     {
  697.         BEGIN_INTERFACE
  698.         
  699.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  700.             ITCallQualityControl * This,
  701.             /* [in] */ REFIID riid,
  702.             /* [iid_is][out] */ void **ppvObject);
  703.         
  704.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  705.             ITCallQualityControl * This);
  706.         
  707.         ULONG ( STDMETHODCALLTYPE *Release )( 
  708.             ITCallQualityControl * This);
  709.         
  710.         HRESULT ( STDMETHODCALLTYPE *GetRange )( 
  711.             ITCallQualityControl * This,
  712.             /* [in] */ CallQualityProperty Property,
  713.             /* [out] */ long *plMin,
  714.             /* [out] */ long *plMax,
  715.             /* [out] */ long *plSteppingDelta,
  716.             /* [out] */ long *plDefault,
  717.             /* [out] */ TAPIControlFlags *plFlags);
  718.         
  719.         HRESULT ( STDMETHODCALLTYPE *Get )( 
  720.             ITCallQualityControl * This,
  721.             /* [in] */ CallQualityProperty Property,
  722.             /* [out] */ long *plValue,
  723.             /* [out] */ TAPIControlFlags *plFlags);
  724.         
  725.         HRESULT ( STDMETHODCALLTYPE *Set )( 
  726.             ITCallQualityControl * This,
  727.             /* [in] */ CallQualityProperty Property,
  728.             /* [in] */ long lValue,
  729.             /* [in] */ TAPIControlFlags lFlags);
  730.         
  731.         END_INTERFACE
  732.     } ITCallQualityControlVtbl;
  733.     interface ITCallQualityControl
  734.     {
  735.         CONST_VTBL struct ITCallQualityControlVtbl *lpVtbl;
  736.     };
  737.     
  738. #ifdef COBJMACROS
  739. #define ITCallQualityControl_QueryInterface(This,riid,ppvObject)
  740.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  741. #define ITCallQualityControl_AddRef(This)
  742.     (This)->lpVtbl -> AddRef(This)
  743. #define ITCallQualityControl_Release(This)
  744.     (This)->lpVtbl -> Release(This)
  745. #define ITCallQualityControl_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  746.     (This)->lpVtbl -> GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  747. #define ITCallQualityControl_Get(This,Property,plValue,plFlags)
  748.     (This)->lpVtbl -> Get(This,Property,plValue,plFlags)
  749. #define ITCallQualityControl_Set(This,Property,lValue,lFlags)
  750.     (This)->lpVtbl -> Set(This,Property,lValue,lFlags)
  751. #endif /* COBJMACROS */
  752. #endif  /* C style interface */
  753. HRESULT STDMETHODCALLTYPE ITCallQualityControl_GetRange_Proxy( 
  754.     ITCallQualityControl * This,
  755.     /* [in] */ CallQualityProperty Property,
  756.     /* [out] */ long *plMin,
  757.     /* [out] */ long *plMax,
  758.     /* [out] */ long *plSteppingDelta,
  759.     /* [out] */ long *plDefault,
  760.     /* [out] */ TAPIControlFlags *plFlags);
  761. void __RPC_STUB ITCallQualityControl_GetRange_Stub(
  762.     IRpcStubBuffer *This,
  763.     IRpcChannelBuffer *_pRpcChannelBuffer,
  764.     PRPC_MESSAGE _pRpcMessage,
  765.     DWORD *_pdwStubPhase);
  766. HRESULT STDMETHODCALLTYPE ITCallQualityControl_Get_Proxy( 
  767.     ITCallQualityControl * This,
  768.     /* [in] */ CallQualityProperty Property,
  769.     /* [out] */ long *plValue,
  770.     /* [out] */ TAPIControlFlags *plFlags);
  771. void __RPC_STUB ITCallQualityControl_Get_Stub(
  772.     IRpcStubBuffer *This,
  773.     IRpcChannelBuffer *_pRpcChannelBuffer,
  774.     PRPC_MESSAGE _pRpcMessage,
  775.     DWORD *_pdwStubPhase);
  776. HRESULT STDMETHODCALLTYPE ITCallQualityControl_Set_Proxy( 
  777.     ITCallQualityControl * This,
  778.     /* [in] */ CallQualityProperty Property,
  779.     /* [in] */ long lValue,
  780.     /* [in] */ TAPIControlFlags lFlags);
  781. void __RPC_STUB ITCallQualityControl_Set_Stub(
  782.     IRpcStubBuffer *This,
  783.     IRpcChannelBuffer *_pRpcChannelBuffer,
  784.     PRPC_MESSAGE _pRpcMessage,
  785.     DWORD *_pdwStubPhase);
  786. #endif  /* __ITCallQualityControl_INTERFACE_DEFINED__ */
  787. /* interface __MIDL_itf_ipmsp_0487 */
  788. /* [local] */ 
  789. typedef 
  790. enum tagAudioDeviceProperty
  791.     { AudioDevice_DuplexMode = 0,
  792. AudioDevice_AutomaticGainControl = AudioDevice_DuplexMode + 1,
  793. AudioDevice_AcousticEchoCancellation = AudioDevice_AutomaticGainControl + 1
  794.     }  AudioDeviceProperty;
  795. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0487_v0_0_c_ifspec;
  796. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0487_v0_0_s_ifspec;
  797. #ifndef __ITAudioDeviceControl_INTERFACE_DEFINED__
  798. #define __ITAudioDeviceControl_INTERFACE_DEFINED__
  799. /* interface ITAudioDeviceControl */
  800. /* [hidden][unique][uuid][local][object] */ 
  801. EXTERN_C const IID IID_ITAudioDeviceControl;
  802. #if defined(__cplusplus) && !defined(CINTERFACE)
  803.     
  804.     MIDL_INTERFACE("6c0ab6c5-21e3-11d3-a577-00c04f8ef6e3")
  805.     ITAudioDeviceControl : public IUnknown
  806.     {
  807.     public:
  808.         virtual HRESULT STDMETHODCALLTYPE GetRange( 
  809.             /* [in] */ AudioDeviceProperty Property,
  810.             /* [out] */ long *plMin,
  811.             /* [out] */ long *plMax,
  812.             /* [out] */ long *plSteppingDelta,
  813.             /* [out] */ long *plDefault,
  814.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  815.         
  816.         virtual HRESULT STDMETHODCALLTYPE Get( 
  817.             /* [in] */ AudioDeviceProperty Property,
  818.             /* [out] */ long *plValue,
  819.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  820.         
  821.         virtual HRESULT STDMETHODCALLTYPE Set( 
  822.             /* [in] */ AudioDeviceProperty Property,
  823.             /* [in] */ long lValue,
  824.             /* [in] */ TAPIControlFlags lFlags) = 0;
  825.         
  826.     };
  827.     
  828. #else  /* C style interface */
  829.     typedef struct ITAudioDeviceControlVtbl
  830.     {
  831.         BEGIN_INTERFACE
  832.         
  833.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  834.             ITAudioDeviceControl * This,
  835.             /* [in] */ REFIID riid,
  836.             /* [iid_is][out] */ void **ppvObject);
  837.         
  838.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  839.             ITAudioDeviceControl * This);
  840.         
  841.         ULONG ( STDMETHODCALLTYPE *Release )( 
  842.             ITAudioDeviceControl * This);
  843.         
  844.         HRESULT ( STDMETHODCALLTYPE *GetRange )( 
  845.             ITAudioDeviceControl * This,
  846.             /* [in] */ AudioDeviceProperty Property,
  847.             /* [out] */ long *plMin,
  848.             /* [out] */ long *plMax,
  849.             /* [out] */ long *plSteppingDelta,
  850.             /* [out] */ long *plDefault,
  851.             /* [out] */ TAPIControlFlags *plFlags);
  852.         
  853.         HRESULT ( STDMETHODCALLTYPE *Get )( 
  854.             ITAudioDeviceControl * This,
  855.             /* [in] */ AudioDeviceProperty Property,
  856.             /* [out] */ long *plValue,
  857.             /* [out] */ TAPIControlFlags *plFlags);
  858.         
  859.         HRESULT ( STDMETHODCALLTYPE *Set )( 
  860.             ITAudioDeviceControl * This,
  861.             /* [in] */ AudioDeviceProperty Property,
  862.             /* [in] */ long lValue,
  863.             /* [in] */ TAPIControlFlags lFlags);
  864.         
  865.         END_INTERFACE
  866.     } ITAudioDeviceControlVtbl;
  867.     interface ITAudioDeviceControl
  868.     {
  869.         CONST_VTBL struct ITAudioDeviceControlVtbl *lpVtbl;
  870.     };
  871.     
  872. #ifdef COBJMACROS
  873. #define ITAudioDeviceControl_QueryInterface(This,riid,ppvObject)
  874.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  875. #define ITAudioDeviceControl_AddRef(This)
  876.     (This)->lpVtbl -> AddRef(This)
  877. #define ITAudioDeviceControl_Release(This)
  878.     (This)->lpVtbl -> Release(This)
  879. #define ITAudioDeviceControl_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  880.     (This)->lpVtbl -> GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  881. #define ITAudioDeviceControl_Get(This,Property,plValue,plFlags)
  882.     (This)->lpVtbl -> Get(This,Property,plValue,plFlags)
  883. #define ITAudioDeviceControl_Set(This,Property,lValue,lFlags)
  884.     (This)->lpVtbl -> Set(This,Property,lValue,lFlags)
  885. #endif /* COBJMACROS */
  886. #endif  /* C style interface */
  887. HRESULT STDMETHODCALLTYPE ITAudioDeviceControl_GetRange_Proxy( 
  888.     ITAudioDeviceControl * This,
  889.     /* [in] */ AudioDeviceProperty Property,
  890.     /* [out] */ long *plMin,
  891.     /* [out] */ long *plMax,
  892.     /* [out] */ long *plSteppingDelta,
  893.     /* [out] */ long *plDefault,
  894.     /* [out] */ TAPIControlFlags *plFlags);
  895. void __RPC_STUB ITAudioDeviceControl_GetRange_Stub(
  896.     IRpcStubBuffer *This,
  897.     IRpcChannelBuffer *_pRpcChannelBuffer,
  898.     PRPC_MESSAGE _pRpcMessage,
  899.     DWORD *_pdwStubPhase);
  900. HRESULT STDMETHODCALLTYPE ITAudioDeviceControl_Get_Proxy( 
  901.     ITAudioDeviceControl * This,
  902.     /* [in] */ AudioDeviceProperty Property,
  903.     /* [out] */ long *plValue,
  904.     /* [out] */ TAPIControlFlags *plFlags);
  905. void __RPC_STUB ITAudioDeviceControl_Get_Stub(
  906.     IRpcStubBuffer *This,
  907.     IRpcChannelBuffer *_pRpcChannelBuffer,
  908.     PRPC_MESSAGE _pRpcMessage,
  909.     DWORD *_pdwStubPhase);
  910. HRESULT STDMETHODCALLTYPE ITAudioDeviceControl_Set_Proxy( 
  911.     ITAudioDeviceControl * This,
  912.     /* [in] */ AudioDeviceProperty Property,
  913.     /* [in] */ long lValue,
  914.     /* [in] */ TAPIControlFlags lFlags);
  915. void __RPC_STUB ITAudioDeviceControl_Set_Stub(
  916.     IRpcStubBuffer *This,
  917.     IRpcChannelBuffer *_pRpcChannelBuffer,
  918.     PRPC_MESSAGE _pRpcMessage,
  919.     DWORD *_pdwStubPhase);
  920. #endif  /* __ITAudioDeviceControl_INTERFACE_DEFINED__ */
  921. /* interface __MIDL_itf_ipmsp_0488 */
  922. /* [local] */ 
  923. typedef 
  924. enum tagAudioSettingsProperty
  925.     { AudioSettings_SignalLevel = 0,
  926. AudioSettings_SilenceThreshold = AudioSettings_SignalLevel + 1,
  927. AudioSettings_Volume = AudioSettings_SilenceThreshold + 1,
  928. AudioSettings_Balance = AudioSettings_Volume + 1,
  929. AudioSettings_Loudness = AudioSettings_Balance + 1,
  930. AudioSettings_Treble = AudioSettings_Loudness + 1,
  931. AudioSettings_Bass = AudioSettings_Treble + 1,
  932. AudioSettings_Mono = AudioSettings_Bass + 1
  933.     }  AudioSettingsProperty;
  934. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0488_v0_0_c_ifspec;
  935. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0488_v0_0_s_ifspec;
  936. #ifndef __ITAudioSettings_INTERFACE_DEFINED__
  937. #define __ITAudioSettings_INTERFACE_DEFINED__
  938. /* interface ITAudioSettings */
  939. /* [hidden][unique][uuid][local][object] */ 
  940. EXTERN_C const IID IID_ITAudioSettings;
  941. #if defined(__cplusplus) && !defined(CINTERFACE)
  942.     
  943.     MIDL_INTERFACE("6c0ab6c6-21e3-11d3-a577-00c04f8ef6e3")
  944.     ITAudioSettings : public IUnknown
  945.     {
  946.     public:
  947.         virtual HRESULT STDMETHODCALLTYPE GetRange( 
  948.             /* [in] */ AudioSettingsProperty Property,
  949.             /* [out] */ long *plMin,
  950.             /* [out] */ long *plMax,
  951.             /* [out] */ long *plSteppingDelta,
  952.             /* [out] */ long *plDefault,
  953.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  954.         
  955.         virtual HRESULT STDMETHODCALLTYPE Get( 
  956.             /* [in] */ AudioSettingsProperty Property,
  957.             /* [out] */ long *plValue,
  958.             /* [out] */ TAPIControlFlags *plFlags) = 0;
  959.         
  960.         virtual HRESULT STDMETHODCALLTYPE Set( 
  961.             /* [in] */ AudioSettingsProperty Property,
  962.             /* [in] */ long lValue,
  963.             /* [in] */ TAPIControlFlags lFlags) = 0;
  964.         
  965.     };
  966.     
  967. #else  /* C style interface */
  968.     typedef struct ITAudioSettingsVtbl
  969.     {
  970.         BEGIN_INTERFACE
  971.         
  972.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  973.             ITAudioSettings * This,
  974.             /* [in] */ REFIID riid,
  975.             /* [iid_is][out] */ void **ppvObject);
  976.         
  977.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  978.             ITAudioSettings * This);
  979.         
  980.         ULONG ( STDMETHODCALLTYPE *Release )( 
  981.             ITAudioSettings * This);
  982.         
  983.         HRESULT ( STDMETHODCALLTYPE *GetRange )( 
  984.             ITAudioSettings * This,
  985.             /* [in] */ AudioSettingsProperty Property,
  986.             /* [out] */ long *plMin,
  987.             /* [out] */ long *plMax,
  988.             /* [out] */ long *plSteppingDelta,
  989.             /* [out] */ long *plDefault,
  990.             /* [out] */ TAPIControlFlags *plFlags);
  991.         
  992.         HRESULT ( STDMETHODCALLTYPE *Get )( 
  993.             ITAudioSettings * This,
  994.             /* [in] */ AudioSettingsProperty Property,
  995.             /* [out] */ long *plValue,
  996.             /* [out] */ TAPIControlFlags *plFlags);
  997.         
  998.         HRESULT ( STDMETHODCALLTYPE *Set )( 
  999.             ITAudioSettings * This,
  1000.             /* [in] */ AudioSettingsProperty Property,
  1001.             /* [in] */ long lValue,
  1002.             /* [in] */ TAPIControlFlags lFlags);
  1003.         
  1004.         END_INTERFACE
  1005.     } ITAudioSettingsVtbl;
  1006.     interface ITAudioSettings
  1007.     {
  1008.         CONST_VTBL struct ITAudioSettingsVtbl *lpVtbl;
  1009.     };
  1010.     
  1011. #ifdef COBJMACROS
  1012. #define ITAudioSettings_QueryInterface(This,riid,ppvObject)
  1013.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1014. #define ITAudioSettings_AddRef(This)
  1015.     (This)->lpVtbl -> AddRef(This)
  1016. #define ITAudioSettings_Release(This)
  1017.     (This)->lpVtbl -> Release(This)
  1018. #define ITAudioSettings_GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  1019.     (This)->lpVtbl -> GetRange(This,Property,plMin,plMax,plSteppingDelta,plDefault,plFlags)
  1020. #define ITAudioSettings_Get(This,Property,plValue,plFlags)
  1021.     (This)->lpVtbl -> Get(This,Property,plValue,plFlags)
  1022. #define ITAudioSettings_Set(This,Property,lValue,lFlags)
  1023.     (This)->lpVtbl -> Set(This,Property,lValue,lFlags)
  1024. #endif /* COBJMACROS */
  1025. #endif  /* C style interface */
  1026. HRESULT STDMETHODCALLTYPE ITAudioSettings_GetRange_Proxy( 
  1027.     ITAudioSettings * This,
  1028.     /* [in] */ AudioSettingsProperty Property,
  1029.     /* [out] */ long *plMin,
  1030.     /* [out] */ long *plMax,
  1031.     /* [out] */ long *plSteppingDelta,
  1032.     /* [out] */ long *plDefault,
  1033.     /* [out] */ TAPIControlFlags *plFlags);
  1034. void __RPC_STUB ITAudioSettings_GetRange_Stub(
  1035.     IRpcStubBuffer *This,
  1036.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1037.     PRPC_MESSAGE _pRpcMessage,
  1038.     DWORD *_pdwStubPhase);
  1039. HRESULT STDMETHODCALLTYPE ITAudioSettings_Get_Proxy( 
  1040.     ITAudioSettings * This,
  1041.     /* [in] */ AudioSettingsProperty Property,
  1042.     /* [out] */ long *plValue,
  1043.     /* [out] */ TAPIControlFlags *plFlags);
  1044. void __RPC_STUB ITAudioSettings_Get_Stub(
  1045.     IRpcStubBuffer *This,
  1046.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1047.     PRPC_MESSAGE _pRpcMessage,
  1048.     DWORD *_pdwStubPhase);
  1049. HRESULT STDMETHODCALLTYPE ITAudioSettings_Set_Proxy( 
  1050.     ITAudioSettings * This,
  1051.     /* [in] */ AudioSettingsProperty Property,
  1052.     /* [in] */ long lValue,
  1053.     /* [in] */ TAPIControlFlags lFlags);
  1054. void __RPC_STUB ITAudioSettings_Set_Stub(
  1055.     IRpcStubBuffer *This,
  1056.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1057.     PRPC_MESSAGE _pRpcMessage,
  1058.     DWORD *_pdwStubPhase);
  1059. #endif  /* __ITAudioSettings_INTERFACE_DEFINED__ */
  1060. #ifndef __ITQOSApplicationID_INTERFACE_DEFINED__
  1061. #define __ITQOSApplicationID_INTERFACE_DEFINED__
  1062. /* interface ITQOSApplicationID */
  1063. /* [object][dual][unique][helpstring][uuid] */ 
  1064. EXTERN_C const IID IID_ITQOSApplicationID;
  1065. #if defined(__cplusplus) && !defined(CINTERFACE)
  1066.     
  1067.     MIDL_INTERFACE("e8c89d27-a3bd-47d5-a6fc-d2ae40cdbc6e")
  1068.     ITQOSApplicationID : public IDispatch
  1069.     {
  1070.     public:
  1071.         virtual HRESULT STDMETHODCALLTYPE SetQOSApplicationID( 
  1072.             /* [in] */ BSTR pApplicationID,
  1073.             /* [in] */ BSTR pApplicationGUID,
  1074.             /* [in] */ BSTR pSubIDs) = 0;
  1075.         
  1076.     };
  1077.     
  1078. #else  /* C style interface */
  1079.     typedef struct ITQOSApplicationIDVtbl
  1080.     {
  1081.         BEGIN_INTERFACE
  1082.         
  1083.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1084.             ITQOSApplicationID * This,
  1085.             /* [in] */ REFIID riid,
  1086.             /* [iid_is][out] */ void **ppvObject);
  1087.         
  1088.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1089.             ITQOSApplicationID * This);
  1090.         
  1091.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1092.             ITQOSApplicationID * This);
  1093.         
  1094.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1095.             ITQOSApplicationID * This,
  1096.             /* [out] */ UINT *pctinfo);
  1097.         
  1098.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1099.             ITQOSApplicationID * This,
  1100.             /* [in] */ UINT iTInfo,
  1101.             /* [in] */ LCID lcid,
  1102.             /* [out] */ ITypeInfo **ppTInfo);
  1103.         
  1104.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1105.             ITQOSApplicationID * This,
  1106.             /* [in] */ REFIID riid,
  1107.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1108.             /* [in] */ UINT cNames,
  1109.             /* [in] */ LCID lcid,
  1110.             /* [size_is][out] */ DISPID *rgDispId);
  1111.         
  1112.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1113.             ITQOSApplicationID * This,
  1114.             /* [in] */ DISPID dispIdMember,
  1115.             /* [in] */ REFIID riid,
  1116.             /* [in] */ LCID lcid,
  1117.             /* [in] */ WORD wFlags,
  1118.             /* [out][in] */ DISPPARAMS *pDispParams,
  1119.             /* [out] */ VARIANT *pVarResult,
  1120.             /* [out] */ EXCEPINFO *pExcepInfo,
  1121.             /* [out] */ UINT *puArgErr);
  1122.         
  1123.         HRESULT ( STDMETHODCALLTYPE *SetQOSApplicationID )( 
  1124.             ITQOSApplicationID * This,
  1125.             /* [in] */ BSTR pApplicationID,
  1126.             /* [in] */ BSTR pApplicationGUID,
  1127.             /* [in] */ BSTR pSubIDs);
  1128.         
  1129.         END_INTERFACE
  1130.     } ITQOSApplicationIDVtbl;
  1131.     interface ITQOSApplicationID
  1132.     {
  1133.         CONST_VTBL struct ITQOSApplicationIDVtbl *lpVtbl;
  1134.     };
  1135.     
  1136. #ifdef COBJMACROS
  1137. #define ITQOSApplicationID_QueryInterface(This,riid,ppvObject)
  1138.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1139. #define ITQOSApplicationID_AddRef(This)
  1140.     (This)->lpVtbl -> AddRef(This)
  1141. #define ITQOSApplicationID_Release(This)
  1142.     (This)->lpVtbl -> Release(This)
  1143. #define ITQOSApplicationID_GetTypeInfoCount(This,pctinfo)
  1144.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1145. #define ITQOSApplicationID_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1146.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1147. #define ITQOSApplicationID_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1148.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1149. #define ITQOSApplicationID_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1150.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1151. #define ITQOSApplicationID_SetQOSApplicationID(This,pApplicationID,pApplicationGUID,pSubIDs)
  1152.     (This)->lpVtbl -> SetQOSApplicationID(This,pApplicationID,pApplicationGUID,pSubIDs)
  1153. #endif /* COBJMACROS */
  1154. #endif  /* C style interface */
  1155. HRESULT STDMETHODCALLTYPE ITQOSApplicationID_SetQOSApplicationID_Proxy( 
  1156.     ITQOSApplicationID * This,
  1157.     /* [in] */ BSTR pApplicationID,
  1158.     /* [in] */ BSTR pApplicationGUID,
  1159.     /* [in] */ BSTR pSubIDs);
  1160. void __RPC_STUB ITQOSApplicationID_SetQOSApplicationID_Stub(
  1161.     IRpcStubBuffer *This,
  1162.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1163.     PRPC_MESSAGE _pRpcMessage,
  1164.     DWORD *_pdwStubPhase);
  1165. #endif  /* __ITQOSApplicationID_INTERFACE_DEFINED__ */
  1166. /* interface __MIDL_itf_ipmsp_0490 */
  1167. /* [local] */ 
  1168. #endif // STREAM_INTERFACES_DEFINED
  1169. #ifndef RTP_MEDIATYPE_DEFINED
  1170. #define RTP_MEDIATYPE_DEFINED
  1171. struct DECLSPEC_UUID("14099BC0-787B-11d0-9CD3-00A0C9081C19") MEDIATYPE_RTP_Single_Stream;
  1172. #endif //RTP_MEDIATYPE_DEFINED
  1173. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0490_v0_0_c_ifspec;
  1174. extern RPC_IF_HANDLE __MIDL_itf_ipmsp_0490_v0_0_s_ifspec;
  1175. /* Additional Prototypes for ALL interfaces */
  1176. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
  1177. unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
  1178. unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
  1179. void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 
  1180. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long *, unsigned long            , VARIANT * ); 
  1181. unsigned char * __RPC_USER  VARIANT_UserMarshal(  unsigned long *, unsigned char *, VARIANT * ); 
  1182. unsigned char * __RPC_USER  VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * ); 
  1183. void                      __RPC_USER  VARIANT_UserFree(     unsigned long *, VARIANT * ); 
  1184. /* end of Additional Prototypes */
  1185. #ifdef __cplusplus
  1186. }
  1187. #endif
  1188. #endif