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