bidispl.h 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  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 __bidispl_h__
  19. #define __bidispl_h__
  20. #ifndef __IBidiRequest_FWD_DEFINED__
  21. #define __IBidiRequest_FWD_DEFINED__
  22. typedef struct IBidiRequest IBidiRequest;
  23. #endif
  24. #ifndef __IBidiRequestContainer_FWD_DEFINED__
  25. #define __IBidiRequestContainer_FWD_DEFINED__
  26. typedef struct IBidiRequestContainer IBidiRequestContainer;
  27. #endif
  28. #ifndef __IBidiSpl_FWD_DEFINED__
  29. #define __IBidiSpl_FWD_DEFINED__
  30. typedef struct IBidiSpl IBidiSpl;
  31. #endif
  32. #ifndef __BidiRequest_FWD_DEFINED__
  33. #define __BidiRequest_FWD_DEFINED__
  34. #ifdef __cplusplus
  35. typedef class BidiRequest BidiRequest;
  36. #else
  37. typedef struct BidiRequest BidiRequest;
  38. #endif
  39. #endif
  40. #ifndef __BidiRequestContainer_FWD_DEFINED__
  41. #define __BidiRequestContainer_FWD_DEFINED__
  42. #ifdef __cplusplus
  43. typedef class BidiRequestContainer BidiRequestContainer;
  44. #else
  45. typedef struct BidiRequestContainer BidiRequestContainer;
  46. #endif
  47. #endif
  48. #ifndef __BidiSpl_FWD_DEFINED__
  49. #define __BidiSpl_FWD_DEFINED__
  50. #ifdef __cplusplus
  51. typedef class BidiSpl BidiSpl;
  52. #else
  53. typedef struct BidiSpl BidiSpl;
  54. #endif
  55. #endif
  56. #include "oaidl.h"
  57. #include "ocidl.h"
  58. #ifdef __cplusplus
  59. extern "C"{
  60. #endif
  61. #ifndef __MIDL_user_allocate_free_DEFINED__
  62. #define __MIDL_user_allocate_free_DEFINED__
  63. void *__RPC_API MIDL_user_allocate(size_t);
  64. void __RPC_API MIDL_user_free(void *);
  65. #endif
  66. #ifndef __IBidiRequest_INTERFACE_DEFINED__
  67. #define __IBidiRequest_INTERFACE_DEFINED__
  68. EXTERN_C const IID IID_IBidiRequest;
  69. #if defined(__cplusplus) && !defined(CINTERFACE)
  70. struct IBidiRequest : public IUnknown {
  71. public:
  72. virtual HRESULT WINAPI SetSchema(const LPCWSTR pszSchema) = 0;
  73. virtual HRESULT WINAPI SetInputData(const DWORD dwType,const BYTE *pData,const UINT uSize) = 0;
  74. virtual HRESULT WINAPI GetResult(HRESULT *phr) = 0;
  75. virtual HRESULT WINAPI GetOutputData(const DWORD dwIndex,LPWSTR *ppszSchema,DWORD *pdwType,BYTE **ppData,ULONG *uSize) = 0;
  76. virtual HRESULT WINAPI GetEnumCount(DWORD *pdwTotal) = 0;
  77. };
  78. #else
  79. typedef struct IBidiRequestVtbl {
  80. BEGIN_INTERFACE
  81. HRESULT (WINAPI *QueryInterface)(IBidiRequest *This,REFIID riid,void **ppvObject);
  82. ULONG (WINAPI *AddRef)(IBidiRequest *This);
  83. ULONG (WINAPI *Release)(IBidiRequest *This);
  84. HRESULT (WINAPI *SetSchema)(IBidiRequest *This,const LPCWSTR pszSchema);
  85. HRESULT (WINAPI *SetInputData)(IBidiRequest *This,const DWORD dwType,const BYTE *pData,const UINT uSize);
  86. HRESULT (WINAPI *GetResult)(IBidiRequest *This,HRESULT *phr);
  87. HRESULT (WINAPI *GetOutputData)(IBidiRequest *This,const DWORD dwIndex,LPWSTR *ppszSchema,DWORD *pdwType,BYTE **ppData,ULONG *uSize);
  88. HRESULT (WINAPI *GetEnumCount)(IBidiRequest *This,DWORD *pdwTotal);
  89. END_INTERFACE
  90. } IBidiRequestVtbl;
  91. struct IBidiRequest {
  92. CONST_VTBL struct IBidiRequestVtbl *lpVtbl;
  93. };
  94. #ifdef COBJMACROS
  95. #define IBidiRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  96. #define IBidiRequest_AddRef(This) (This)->lpVtbl->AddRef(This)
  97. #define IBidiRequest_Release(This) (This)->lpVtbl->Release(This)
  98. #define IBidiRequest_SetSchema(This,pszSchema) (This)->lpVtbl->SetSchema(This,pszSchema)
  99. #define IBidiRequest_SetInputData(This,dwType,pData,uSize) (This)->lpVtbl->SetInputData(This,dwType,pData,uSize)
  100. #define IBidiRequest_GetResult(This,phr) (This)->lpVtbl->GetResult(This,phr)
  101. #define IBidiRequest_GetOutputData(This,dwIndex,ppszSchema,pdwType,ppData,uSize) (This)->lpVtbl->GetOutputData(This,dwIndex,ppszSchema,pdwType,ppData,uSize)
  102. #define IBidiRequest_GetEnumCount(This,pdwTotal) (This)->lpVtbl->GetEnumCount(This,pdwTotal)
  103. #endif
  104. #endif
  105. HRESULT WINAPI IBidiRequest_SetSchema_Proxy(IBidiRequest *This,const LPCWSTR pszSchema);
  106. void __RPC_STUB IBidiRequest_SetSchema_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  107. HRESULT WINAPI IBidiRequest_SetInputData_Proxy(IBidiRequest *This,const DWORD dwType,const BYTE *pData,const UINT uSize);
  108. void __RPC_STUB IBidiRequest_SetInputData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  109. HRESULT WINAPI IBidiRequest_GetResult_Proxy(IBidiRequest *This,HRESULT *phr);
  110. void __RPC_STUB IBidiRequest_GetResult_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  111. HRESULT WINAPI IBidiRequest_GetOutputData_Proxy(IBidiRequest *This,const DWORD dwIndex,LPWSTR *ppszSchema,DWORD *pdwType,BYTE **ppData,ULONG *uSize);
  112. void __RPC_STUB IBidiRequest_GetOutputData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  113. HRESULT WINAPI IBidiRequest_GetEnumCount_Proxy(IBidiRequest *This,DWORD *pdwTotal);
  114. void __RPC_STUB IBidiRequest_GetEnumCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  115. #endif
  116. #ifndef __IBidiRequestContainer_INTERFACE_DEFINED__
  117. #define __IBidiRequestContainer_INTERFACE_DEFINED__
  118. EXTERN_C const IID IID_IBidiRequestContainer;
  119. #if defined(__cplusplus) && !defined(CINTERFACE)
  120. struct IBidiRequestContainer : public IUnknown {
  121. public:
  122. virtual HRESULT WINAPI AddRequest(IBidiRequest *pRequest) = 0;
  123. virtual HRESULT WINAPI GetEnumObject(IEnumUnknown **ppenum) = 0;
  124. virtual HRESULT WINAPI GetRequestCount(ULONG *puCount) = 0;
  125. };
  126. #else
  127. typedef struct IBidiRequestContainerVtbl {
  128. BEGIN_INTERFACE
  129. HRESULT (WINAPI *QueryInterface)(IBidiRequestContainer *This,REFIID riid,void **ppvObject);
  130. ULONG (WINAPI *AddRef)(IBidiRequestContainer *This);
  131. ULONG (WINAPI *Release)(IBidiRequestContainer *This);
  132. HRESULT (WINAPI *AddRequest)(IBidiRequestContainer *This,IBidiRequest *pRequest);
  133. HRESULT (WINAPI *GetEnumObject)(IBidiRequestContainer *This,IEnumUnknown **ppenum);
  134. HRESULT (WINAPI *GetRequestCount)(IBidiRequestContainer *This,ULONG *puCount);
  135. END_INTERFACE
  136. } IBidiRequestContainerVtbl;
  137. struct IBidiRequestContainer {
  138. CONST_VTBL struct IBidiRequestContainerVtbl *lpVtbl;
  139. };
  140. #ifdef COBJMACROS
  141. #define IBidiRequestContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  142. #define IBidiRequestContainer_AddRef(This) (This)->lpVtbl->AddRef(This)
  143. #define IBidiRequestContainer_Release(This) (This)->lpVtbl->Release(This)
  144. #define IBidiRequestContainer_AddRequest(This,pRequest) (This)->lpVtbl->AddRequest(This,pRequest)
  145. #define IBidiRequestContainer_GetEnumObject(This,ppenum) (This)->lpVtbl->GetEnumObject(This,ppenum)
  146. #define IBidiRequestContainer_GetRequestCount(This,puCount) (This)->lpVtbl->GetRequestCount(This,puCount)
  147. #endif
  148. #endif
  149. HRESULT WINAPI IBidiRequestContainer_AddRequest_Proxy(IBidiRequestContainer *This,IBidiRequest *pRequest);
  150. void __RPC_STUB IBidiRequestContainer_AddRequest_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  151. HRESULT WINAPI IBidiRequestContainer_GetEnumObject_Proxy(IBidiRequestContainer *This,IEnumUnknown **ppenum);
  152. void __RPC_STUB IBidiRequestContainer_GetEnumObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  153. HRESULT WINAPI IBidiRequestContainer_GetRequestCount_Proxy(IBidiRequestContainer *This,ULONG *puCount);
  154. void __RPC_STUB IBidiRequestContainer_GetRequestCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  155. #endif
  156. #ifndef __IBidiSpl_INTERFACE_DEFINED__
  157. #define __IBidiSpl_INTERFACE_DEFINED__
  158. EXTERN_C const IID IID_IBidiSpl;
  159. #if defined(__cplusplus) && !defined(CINTERFACE)
  160. struct IBidiSpl : public IUnknown {
  161. public:
  162. virtual HRESULT WINAPI BindDevice(const LPCWSTR pszDeviceName,const DWORD dwAccess) = 0;
  163. virtual HRESULT WINAPI UnbindDevice(void) = 0;
  164. virtual HRESULT WINAPI SendRecv(const LPCWSTR pszAction,IBidiRequest *pRequest) = 0;
  165. virtual HRESULT WINAPI MultiSendRecv(const LPCWSTR pszAction,IBidiRequestContainer *pRequestContainer) = 0;
  166. };
  167. #else
  168. typedef struct IBidiSplVtbl {
  169. BEGIN_INTERFACE
  170. HRESULT (WINAPI *QueryInterface)(IBidiSpl *This,REFIID riid,void **ppvObject);
  171. ULONG (WINAPI *AddRef)(IBidiSpl *This);
  172. ULONG (WINAPI *Release)(IBidiSpl *This);
  173. HRESULT (WINAPI *BindDevice)(IBidiSpl *This,const LPCWSTR pszDeviceName,const DWORD dwAccess);
  174. HRESULT (WINAPI *UnbindDevice)(IBidiSpl *This);
  175. HRESULT (WINAPI *SendRecv)(IBidiSpl *This,const LPCWSTR pszAction,IBidiRequest *pRequest);
  176. HRESULT (WINAPI *MultiSendRecv)(IBidiSpl *This,const LPCWSTR pszAction,IBidiRequestContainer *pRequestContainer);
  177. END_INTERFACE
  178. } IBidiSplVtbl;
  179. struct IBidiSpl {
  180. CONST_VTBL struct IBidiSplVtbl *lpVtbl;
  181. };
  182. #ifdef COBJMACROS
  183. #define IBidiSpl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  184. #define IBidiSpl_AddRef(This) (This)->lpVtbl->AddRef(This)
  185. #define IBidiSpl_Release(This) (This)->lpVtbl->Release(This)
  186. #define IBidiSpl_BindDevice(This,pszDeviceName,dwAccess) (This)->lpVtbl->BindDevice(This,pszDeviceName,dwAccess)
  187. #define IBidiSpl_UnbindDevice(This) (This)->lpVtbl->UnbindDevice(This)
  188. #define IBidiSpl_SendRecv(This,pszAction,pRequest) (This)->lpVtbl->SendRecv(This,pszAction,pRequest)
  189. #define IBidiSpl_MultiSendRecv(This,pszAction,pRequestContainer) (This)->lpVtbl->MultiSendRecv(This,pszAction,pRequestContainer)
  190. #endif
  191. #endif
  192. HRESULT WINAPI IBidiSpl_BindDevice_Proxy(IBidiSpl *This,const LPCWSTR pszDeviceName,const DWORD dwAccess);
  193. void __RPC_STUB IBidiSpl_BindDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  194. HRESULT WINAPI IBidiSpl_UnbindDevice_Proxy(IBidiSpl *This);
  195. void __RPC_STUB IBidiSpl_UnbindDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  196. HRESULT WINAPI IBidiSpl_SendRecv_Proxy(IBidiSpl *This,const LPCWSTR pszAction,IBidiRequest *pRequest);
  197. void __RPC_STUB IBidiSpl_SendRecv_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  198. HRESULT WINAPI IBidiSpl_MultiSendRecv_Proxy(IBidiSpl *This,const LPCWSTR pszAction,IBidiRequestContainer *pRequestContainer);
  199. void __RPC_STUB IBidiSpl_MultiSendRecv_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  200. #endif
  201. #ifndef __IBidiSplLib_LIBRARY_DEFINED__
  202. #define __IBidiSplLib_LIBRARY_DEFINED__
  203. EXTERN_C const IID LIBID_IBidiSplLib;
  204. EXTERN_C const CLSID CLSID_BidiRequest;
  205. #ifdef __cplusplus
  206. class BidiRequest;
  207. #endif
  208. EXTERN_C const CLSID CLSID_BidiRequestContainer;
  209. #ifdef __cplusplus
  210. class BidiRequestContainer;
  211. #endif
  212. EXTERN_C const CLSID CLSID_BidiSpl;
  213. #ifdef __cplusplus
  214. class BidiSpl;
  215. #endif
  216. #endif
  217. #ifdef __cplusplus
  218. }
  219. #endif
  220. #endif