PageRenderTime 40ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/mingw-w64-headers/include/rdpencomapi.h

https://gitlab.com/ubuntu-trusty/mingw-w64
C Header | 174 lines | 138 code | 25 blank | 11 comment | 0 complexity | d5f617a4d8fb1593b085b6dddd2484fe MD5 | raw file
  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 _INC_RDPENCOMAPI
  7. #define _INC_RDPENCOMAPI
  8. #if (_WIN32_WINNT >= 0x0600)
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. typedef enum _ATTENDEE_DISCONNECT_REASON {
  13. ATTENDEE_DISCONNECT_REASON_MIN = 0,
  14. ATTENDEE_DISCONNECT_REASON_APP = 0,
  15. ATTENDEE_DISCONNECT_REASON_ERR = 1,
  16. ATTENDEE_DISCONNECT_REASON_CLI = 2,
  17. ATTENDEE_DISCONNECT_REASON_MAX = 2
  18. } ATTENDEE_DISCONNECT_REASON;
  19. typedef enum _CHANNEL_ACCESS_ENUM {
  20. CHANNEL_ACCESS_ENUM_NONE = 0,
  21. CHANNEL_ACCESS_ENUM_SENDRECEIVE = 1
  22. } CHANNEL_ACCESS_ENUM;
  23. typedef enum _CHANNEL_FLAGS {
  24. CHANNEL_FLAGS_LEGACY = 0x01,
  25. CHANNEL_FLAGS_UNCOMPRESSED = 0x02
  26. } CHANNEL_FLAGS;
  27. typedef enum _CHANNEL_PRIORITY {
  28. CHANNEL_PRIORITY_LO = 0,
  29. CHANNEL_PRIORITY_MED = 1,
  30. CHANNEL_PRIORITY_HI = 2
  31. } CHANNEL_PRIORITY;
  32. typedef enum _CTRL_LEVEL {
  33. CTRL_LEVEL_MIN = 0,
  34. CTRL_LEVEL_INVALID = 0,
  35. CTRL_LEVEL_NONE = 1,
  36. CTRL_LEVEL_VIEW = 2,
  37. CTRL_LEVEL_INTERACTIVE = 3,
  38. CTRL_LEVEL_MAX = 3
  39. } CTRL_LEVEL;
  40. typedef enum _RDPENCOMAPI_ATTENDEE_FLAGS {
  41. ATTENDEE_FLAGS_LOCAL = 1
  42. } RDPENCOMAPI_ATTENDEE_FLAGS;
  43. typedef enum _RDPENCOMAPI_CONSTANTS {
  44. CONST_MAX_CHANNEL_MESSAGE_SIZE = 1024,
  45. CONST_MAX_CHANNEL_NAME_LEN = 8,
  46. CONST_MAX_LEGACY_CHANNEL_MESSAGE_SIZE = 409600,
  47. CONST_ATTENDEE_ID_EVERYONE = -1,
  48. CONST_ATTENDEE_ID_HOST = 0,
  49. CONST_CONN_INTERVAL = 50
  50. } RDPENCOMAPI_CONSTANTS;
  51. typedef enum _RDPSRAPI_APP_FLAGS {
  52. APP_FLAG_PRIVILEGED = 1
  53. } RDPSRAPI_APP_FLAGS;
  54. typedef enum _RDPSRAPI_WND_FLAGS {
  55. WND_FLAG_PRIVILEGED = 1
  56. } RDPSRAPI_WND_FLAGS;
  57. #ifdef __cplusplus
  58. }
  59. #endif
  60. #undef INTERFACE
  61. #define INTERFACE IRDPSRAPITcpConnectionInfo
  62. #ifdef __GNUC__
  63. #warning COM interfaces layout in this header has not been verified.
  64. #warning COM interfaces with incorrect layout may not work at all.
  65. __MINGW_BROKEN_INTERFACE(INTERFACE)
  66. #endif
  67. DECLARE_INTERFACE_(IRDPSRAPITcpConnectionInfo,IDispatch)
  68. {
  69. BEGIN_INTERFACE
  70. /* IUnknown methods */
  71. STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
  72. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  73. STDMETHOD_(ULONG, Release)(THIS) PURE;
  74. /* IDispatch methods */
  75. STDMETHOD_(HRESULT,GetTypeInfoCount)(THIS_ unsigned int FAR* pctinfo) PURE;
  76. STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ unsigned int iTInfo,LCID lcid,ITypeInfo FAR* FAR* ppTInfo) PURE;
  77. STDMETHOD_(HRESULT,GetIDsOfNames)(THIS_ REFIID riid,OLECHAR FAR* FAR* rgszNames,unsigned int cNames,LCID lcid,DISPID FAR* rgDispId) PURE;
  78. STDMETHOD_(HRESULT,Invoke)(THIS_ DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS FAR* pDispParams,VARIANT FAR* pVarResult,EXCEPINFO FAR* pExcepInfo,unsigned int FAR* puArgErr) PURE;
  79. /* IRDPSRAPITcpConnectionInfo methods */
  80. STDMETHOD_(HRESULT,get_Protocol)(THIS_ __LONG32 *plProtocol) PURE;
  81. STDMETHOD_(HRESULT,get_LocalPort)(THIS_ __LONG32 *plPort) PURE;
  82. STDMETHOD_(HRESULT,get_LocalIP)(THIS_ BSTR *pbstrLocalIP) PURE;
  83. STDMETHOD_(HRESULT,get_PeerPort)(THIS_ __LONG32 *plPort) PURE;
  84. STDMETHOD_(HRESULT,get_PeerIP)(THIS_ BSTR *pbstrIP) PURE;
  85. END_INTERFACE
  86. };
  87. #ifdef COBJMACROS
  88. #define IRDPSRAPITcpConnectionInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  89. #define IRDPSRAPITcpConnectionInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
  90. #define IRDPSRAPITcpConnectionInfo_Release(This) (This)->lpVtbl->Release(This)
  91. #define IRDPSRAPITcpConnectionInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  92. #define IRDPSRAPITcpConnectionInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  93. #define IRDPSRAPITcpConnectionInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  94. #define IRDPSRAPITcpConnectionInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  95. #define IRDPSRAPITcpConnectionInfo_get_Protocol(This,plProtocol) (This)->lpVtbl->get_Protocol(This,plProtocol)
  96. #define IRDPSRAPITcpConnectionInfo_get_LocalPort(This,plPort) (This)->lpVtbl->get_LocalPort(This,plPort)
  97. #define IRDPSRAPITcpConnectionInfo_get_LocalIP(This,pbstrLocalIP) (This)->lpVtbl->get_LocalIP(This,pbstrLocalIP)
  98. #define IRDPSRAPITcpConnectionInfo_get_PeerPort(This,plPort) (This)->lpVtbl->get_PeerPort(This,plPort)
  99. #define IRDPSRAPITcpConnectionInfo_get_PeerIP(This,pbstrIP) (This)->lpVtbl->get_PeerIP(This,pbstrIP)
  100. #endif /*COBJMACROS*/
  101. #undef INTERFACE
  102. #define INTERFACE IRDPSRAPIAttendee
  103. #ifdef __GNUC__
  104. #warning COM interfaces layout in this header has not been verified.
  105. #warning COM interfaces with incorrect layout may not work at all.
  106. __MINGW_BROKEN_INTERFACE(INTERFACE)
  107. #endif
  108. DECLARE_INTERFACE_(IRDPSRAPIAttendee,IDispatch)
  109. {
  110. BEGIN_INTERFACE
  111. /* IUnknown methods */
  112. STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
  113. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  114. STDMETHOD_(ULONG, Release)(THIS) PURE;
  115. /* IDispatch methods */
  116. STDMETHOD_(HRESULT,GetTypeInfoCount)(THIS_ unsigned int FAR* pctinfo) PURE;
  117. STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ unsigned int iTInfo,LCID lcid,ITypeInfo FAR* FAR* ppTInfo) PURE;
  118. STDMETHOD_(HRESULT,GetIDsOfNames)(THIS_ REFIID riid,OLECHAR FAR* FAR* rgszNames,unsigned int cNames,LCID lcid,DISPID FAR* rgDispId) PURE;
  119. STDMETHOD_(HRESULT,Invoke)(THIS_ DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS FAR* pDispParams,VARIANT FAR* pVarResult,EXCEPINFO FAR* pExcepInfo,unsigned int FAR* puArgErr) PURE;
  120. /* IRDPSRAPIAttendee methods */
  121. STDMETHOD_(HRESULT,get_Id)(THIS_ __LONG32 *pId) PURE;
  122. STDMETHOD_(HRESULT,get_RemoteName)(THIS_ BSTR *pVal) PURE;
  123. STDMETHOD_(HRESULT,get_ControlLevel)(THIS_ CTRL_LEVEL *pVal) PURE;
  124. STDMETHOD_(HRESULT,put_ControlLevel)(THIS_ CTRL_LEVEL pNewVal) PURE;
  125. STDMETHOD_(HRESULT,get_Invitation)(THIS_ IRDPSRAPIInvitation **ppVal) PURE;
  126. STDMETHOD_(HRESULT,TerminateConnection)(THIS) PURE;
  127. STDMETHOD_(HRESULT,get_Flags)(THIS_ __LONG32 *plFlags) PURE;
  128. STDMETHOD_(HRESULT,get_ConnectivityInfo)(THIS_ IUnknown **ppVal) PURE;
  129. END_INTERFACE
  130. };
  131. #ifdef COBJMACROS
  132. #define IRDPSRAPIAttendee_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  133. #define IRDPSRAPIAttendee_AddRef(This) (This)->lpVtbl->AddRef(This)
  134. #define IRDPSRAPIAttendee_Release(This) (This)->lpVtbl->Release(This)
  135. #define IRDPSRAPIAttendee_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  136. #define IRDPSRAPIAttendee_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  137. #define IRDPSRAPIAttendee_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  138. #define IRDPSRAPIAttendee_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  139. #define IRDPSRAPIAttendee_get_Id(This,pId) (This)->lpVtbl->get_Id(This,pId)
  140. #define IRDPSRAPIAttendee_get_RemoteName(This,pVal) (This)->lpVtbl->get_RemoteName(This,pVal)
  141. #define IRDPSRAPIAttendee_get_ControlLevel(This,pVal) (This)->lpVtbl->get_ControlLevel(This,pVal)
  142. #define IRDPSRAPIAttendee_put_ControlLevel(This,pNewVal) (This)->lpVtbl->put_ControlLevel(This,pNewVal)
  143. #define IRDPSRAPIAttendee_get_Invitation(This,ppVal) (This)->lpVtbl->get_Invitation(This,ppVal)
  144. #define IRDPSRAPIAttendee_TerminateConnection() (This)->lpVtbl->TerminateConnection(This)
  145. #define IRDPSRAPIAttendee_get_Flags(This,plFlags) (This)->lpVtbl->get_Flags(This,plFlags)
  146. #define IRDPSRAPIAttendee_get_ConnectivityInfo(This,ppVal) (This)->lpVtbl->get_ConnectivityInfo(This,ppVal)
  147. #endif /*COBJMACROS*/
  148. #endif /*(_WIN32_WINNT >= 0x0600)*/
  149. #endif /*_INC_RDPENCOMAPI */