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

模拟服务器

开发平台:

C/C++

  1. //
  2. // Copyright (c) Microsoft Corporation. All rights reserved.
  3. cpp_quote("/* Copyright (c) Microsoft Corporation. All rights reserved.*/")
  4. ///////////////////////////////////////////////////////////////////////////
  5. // confpriv.idl : IDL source for IPconf msp private interfaces
  6. /////////////////////////////////////////////////////////////////////////////
  7. #ifndef __IPCONF_PRIVATE_IDL__
  8. #define __IPCONF_PRIVATE_IDL__
  9. import "ipmsp.idl";
  10. typedef enum MULTICAST_LOOPBACK_MODE
  11. {
  12.     MM_NO_LOOPBACK,
  13.     MM_FULL_LOOPBACK,
  14.     MM_SELECTIVE_LOOPBACK
  15. } MULTICAST_LOOPBACK_MODE;
  16. /////////////////////////////////////////////////////////////////////////////
  17. // Interface definitions
  18. /////////////////////////////////////////////////////////////////////////////
  19. [
  20.     uuid(0d7ca54a-d252-4fcb-9104-f6ddd310b3f9),
  21.     helpstring("IDummy interface"),
  22.     pointer_default(unique),
  23. ]
  24. interface IDummy : IUnknown
  25. {
  26. }
  27. [
  28.     uuid(39cbf055-f77a-11d2-a824-00c04f8ef6e3),
  29.     helpstring("ITLocalParticipant interface"),
  30.     pointer_default(unique),
  31.     dual
  32. ]
  33. interface ITLocalParticipant : IDispatch
  34. {
  35.     [propget, id(1), helpstring("property LocalParticipantTypedInfo")]
  36.     HRESULT LocalParticipantTypedInfo(
  37.         [in] PARTICIPANT_TYPED_INFO InfoType,
  38.         [out, retval] BSTR * ppInfo
  39.         );
  40.     [propput, id(1), helpstring("property LocalParticipantTypedInfo")]
  41.     HRESULT LocalParticipantTypedInfo(
  42.         [in] PARTICIPANT_TYPED_INFO InfoType,
  43.         [in] BSTR pInfo
  44.         );
  45. }
  46. [
  47.     uuid(0a91b56c-5a35-11d2-95a0-00a0244d2298),
  48.     helpstring("IEnumParticipant Interface"),
  49.     hidden,
  50.     pointer_default(unique)
  51. ]
  52. interface IEnumParticipant : IUnknown
  53. {
  54.     HRESULT Next(
  55.             [in] ULONG celt,
  56.             [out] ITParticipant ** ppElements,
  57.             [in,out,ptr] ULONG * pceltFetched
  58.             );
  59.     HRESULT Reset( void );
  60.     HRESULT Skip (
  61.             [in] ULONG celt
  62.             );
  63.     HRESULT Clone (
  64.             [out, retval] IEnumParticipant ** ppEnum
  65.             );
  66. }
  67. [
  68.     uuid(d2ee6684-5a34-11d2-95a0-00a0244d2298),
  69.     helpstring("ITParticipantControl Interface"),
  70.     pointer_default(unique),
  71.     dual
  72. ]
  73. interface ITParticipantControl : IDispatch
  74. {
  75.     [id(1), hidden]
  76.     HRESULT EnumerateParticipants(
  77.             [out, retval] IEnumParticipant ** ppEnumParticipants
  78.             );
  79.     [propget, id(2), helpstring("an ITCollection of participants")]
  80.     HRESULT Participants(
  81.             [out, retval] VARIANT * pVariant
  82.             );
  83. }
  84. [
  85.     uuid(2c679108-5a35-11d2-95a0-00a0244d2298),
  86.     helpstring("ITParticipantSubStreamControl Interface"),
  87.     pointer_default(unique),
  88.     dual
  89. ]
  90. interface ITParticipantSubStreamControl : IDispatch
  91. {
  92.     [propget, id(1), helpstring("the substream that renders a participant")]
  93.     HRESULT SubStreamFromParticipant(
  94.             [in] ITParticipant * pParticipant,
  95.             [out, retval] ITSubStream ** ppITSubStream
  96.             );
  97.     [propget, id(2), helpstring("the participant rendered on a sub stream")]
  98.     HRESULT ParticipantFromSubStream(
  99.             [in] ITSubStream * pITSubStream,
  100.             [out, retval] ITParticipant ** ppParticipant 
  101.             );
  102.     [id(3), helpstring("set participant on a sub stream")]
  103.     HRESULT SwitchTerminalToSubStream(
  104.             [in] ITTerminal * pITTerminal,
  105.             [in] ITSubStream * pITSubStream
  106.             );
  107. }
  108. [
  109.     uuid(8bb35070-2dad-11d3-a580-00c04f8ef6e3),
  110.     helpstring("ITParticipantEvent Interface"),
  111.     pointer_default(unique),
  112.     dual
  113. ]
  114. interface ITParticipantEvent : IDispatch
  115. {
  116.     [propget, id(2), helpstring("property Event")]
  117.     HRESULT Event(
  118. [out, retval] PARTICIPANT_EVENT * pParticipantEvent
  119. );
  120.     
  121.     [propget, id(3), helpstring("property participant")]
  122.     HRESULT Participant(
  123.             [out, retval] ITParticipant** ppParticipant
  124.             );
  125.     
  126.     [propget, id(4), helpstring("property SubStream")]
  127.     HRESULT SubStream(
  128.             [out, retval] ITSubStream** ppSubStream
  129.             );
  130. }
  131. [
  132.     uuid(410fa507-4dc6-415a-9014-633875d5406e),
  133.     helpstring("IMulticastControl Interface"),
  134.     pointer_default(unique),
  135.     dual
  136. ]
  137. interface IMulticastControl : IDispatch
  138. {
  139.     [propget, id(1), helpstring("property Loopback mode")]
  140.     HRESULT LoopbackMode(
  141. [out, retval] MULTICAST_LOOPBACK_MODE * pMode
  142. );
  143.     [propput, id(1), helpstring("property Loopback mode")]
  144.     HRESULT LoopbackMode(
  145. [in] MULTICAST_LOOPBACK_MODE mode
  146. );
  147. }
  148. #endif // __IPCONF_PRIVATE_IDL__