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 __oletx2xa_h__ 23 #define __oletx2xa_h__ 24 25 #ifndef __IDtcToXaMapper_FWD_DEFINED__ 26 #define __IDtcToXaMapper_FWD_DEFINED__ 27 typedef struct IDtcToXaMapper IDtcToXaMapper; 28 #endif 29 30 #ifndef __IDtcToXaHelperFactory_FWD_DEFINED__ 31 #define __IDtcToXaHelperFactory_FWD_DEFINED__ 32 typedef struct IDtcToXaHelperFactory IDtcToXaHelperFactory; 33 #endif 34 35 #ifndef __IDtcToXaHelper_FWD_DEFINED__ 36 #define __IDtcToXaHelper_FWD_DEFINED__ 37 typedef struct IDtcToXaHelper IDtcToXaHelper; 38 #endif 39 40 #ifndef __IDtcToXaHelperSinglePipe_FWD_DEFINED__ 41 #define __IDtcToXaHelperSinglePipe_FWD_DEFINED__ 42 typedef struct IDtcToXaHelperSinglePipe IDtcToXaHelperSinglePipe; 43 #endif 44 45 #include "unknwn.h" 46 #include "transact.h" 47 #include "txcoord.h" 48 #include "xa.h" 49 50 #ifdef __cplusplus 51 extern "C" { 52 #endif 53 54 #ifndef __MIDL_user_allocate_free_DEFINED__ 55 #define __MIDL_user_allocate_free_DEFINED__ 56 void *__RPC_API MIDL_user_allocate(size_t); 57 void __RPC_API MIDL_user_free(void *); 58 #endif 59 60 extern RPC_IF_HANDLE __MIDL_itf_oletx2xa_0000_v0_0_c_ifspec; 61 extern RPC_IF_HANDLE __MIDL_itf_oletx2xa_0000_v0_0_s_ifspec; 62 63 #ifndef __XaMapperTypes_INTERFACE_DEFINED__ 64 #define __XaMapperTypes_INTERFACE_DEFINED__ 65 66 typedef DWORD XA_SWITCH_FLAGS; 67 68 #define XA_SWITCH_F_DTC 0x00000001 69 #define XA_FMTID_DTC 0x00445443 70 #define XA_FMTID_DTC_VER1 0x01445443 71 72 const XID XID_NULL = {-1,0,0,'\0'}; 73 74 extern RPC_IF_HANDLE XaMapperTypes_v0_0_c_ifspec; 75 extern RPC_IF_HANDLE XaMapperTypes_v0_0_s_ifspec; 76 #endif 77 78 #ifndef __XaMapperAPIs_INTERFACE_DEFINED__ 79 #define __XaMapperAPIs_INTERFACE_DEFINED__ 80 HRESULT __cdecl GetXaSwitch(XA_SWITCH_FLAGS XaSwitchFlags,xa_switch_t **ppXaSwitch); 81 82 extern RPC_IF_HANDLE XaMapperAPIs_v0_0_c_ifspec; 83 extern RPC_IF_HANDLE XaMapperAPIs_v0_0_s_ifspec; 84 #endif 85 86 #ifndef __IDtcToXaMapper_INTERFACE_DEFINED__ 87 #define __IDtcToXaMapper_INTERFACE_DEFINED__ 88 EXTERN_C const IID IID_IDtcToXaMapper; 89 #if defined(__cplusplus) && !defined(CINTERFACE) 90 struct IDtcToXaMapper : public IUnknown { 91 public: 92 virtual HRESULT WINAPI RequestNewResourceManager(char *pszDSN,char *pszClientDllName,DWORD *pdwRMCookie) = 0; 93 virtual HRESULT WINAPI TranslateTridToXid(DWORD *pdwITransaction,DWORD dwRMCookie,XID *pXid) = 0; 94 virtual HRESULT WINAPI EnlistResourceManager(DWORD dwRMCookie,DWORD *pdwITransaction) = 0; 95 virtual HRESULT WINAPI ReleaseResourceManager(DWORD dwRMCookie) = 0; 96 }; 97 #else 98 typedef struct IDtcToXaMapperVtbl { 99 BEGIN_INTERFACE 100 HRESULT (WINAPI *QueryInterface)(IDtcToXaMapper *This,REFIID riid,void **ppvObject); 101 ULONG (WINAPI *AddRef)(IDtcToXaMapper *This); 102 ULONG (WINAPI *Release)(IDtcToXaMapper *This); 103 HRESULT (WINAPI *RequestNewResourceManager)(IDtcToXaMapper *This,char *pszDSN,char *pszClientDllName,DWORD *pdwRMCookie); 104 HRESULT (WINAPI *TranslateTridToXid)(IDtcToXaMapper *This,DWORD *pdwITransaction,DWORD dwRMCookie,XID *pXid); 105 HRESULT (WINAPI *EnlistResourceManager)(IDtcToXaMapper *This,DWORD dwRMCookie,DWORD *pdwITransaction); 106 HRESULT (WINAPI *ReleaseResourceManager)(IDtcToXaMapper *This,DWORD dwRMCookie); 107 END_INTERFACE 108 } IDtcToXaMapperVtbl; 109 struct IDtcToXaMapper { 110 CONST_VTBL struct IDtcToXaMapperVtbl *lpVtbl; 111 }; 112 #ifdef COBJMACROS 113 #define IDtcToXaMapper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 114 #define IDtcToXaMapper_AddRef(This) (This)->lpVtbl->AddRef(This) 115 #define IDtcToXaMapper_Release(This) (This)->lpVtbl->Release(This) 116 #define IDtcToXaMapper_RequestNewResourceManager(This,pszDSN,pszClientDllName,pdwRMCookie) (This)->lpVtbl->RequestNewResourceManager(This,pszDSN,pszClientDllName,pdwRMCookie) 117 #define IDtcToXaMapper_TranslateTridToXid(This,pdwITransaction,dwRMCookie,pXid) (This)->lpVtbl->TranslateTridToXid(This,pdwITransaction,dwRMCookie,pXid) 118 #define IDtcToXaMapper_EnlistResourceManager(This,dwRMCookie,pdwITransaction) (This)->lpVtbl->EnlistResourceManager(This,dwRMCookie,pdwITransaction) 119 #define IDtcToXaMapper_ReleaseResourceManager(This,dwRMCookie) (This)->lpVtbl->ReleaseResourceManager(This,dwRMCookie) 120 #endif 121 #endif 122 HRESULT WINAPI IDtcToXaMapper_RequestNewResourceManager_Proxy(IDtcToXaMapper *This,char *pszDSN,char *pszClientDllName,DWORD *pdwRMCookie); 123 void __RPC_STUB IDtcToXaMapper_RequestNewResourceManager_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 124 HRESULT WINAPI IDtcToXaMapper_TranslateTridToXid_Proxy(IDtcToXaMapper *This,DWORD *pdwITransaction,DWORD dwRMCookie,XID *pXid); 125 void __RPC_STUB IDtcToXaMapper_TranslateTridToXid_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 126 HRESULT WINAPI IDtcToXaMapper_EnlistResourceManager_Proxy(IDtcToXaMapper *This,DWORD dwRMCookie,DWORD *pdwITransaction); 127 void __RPC_STUB IDtcToXaMapper_EnlistResourceManager_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 128 HRESULT WINAPI IDtcToXaMapper_ReleaseResourceManager_Proxy(IDtcToXaMapper *This,DWORD dwRMCookie); 129 void __RPC_STUB IDtcToXaMapper_ReleaseResourceManager_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 130 #endif 131 132 #ifndef __IDtcToXaHelperFactory_INTERFACE_DEFINED__ 133 #define __IDtcToXaHelperFactory_INTERFACE_DEFINED__ 134 EXTERN_C const IID IID_IDtcToXaHelperFactory; 135 #if defined(__cplusplus) && !defined(CINTERFACE) 136 struct IDtcToXaHelperFactory : public IUnknown { 137 public: 138 virtual HRESULT WINAPI Create(char *pszDSN,char *pszClientDllName,GUID *pguidRm,IDtcToXaHelper **ppXaHelper) = 0; 139 }; 140 #else 141 typedef struct IDtcToXaHelperFactoryVtbl { 142 BEGIN_INTERFACE 143 HRESULT (WINAPI *QueryInterface)(IDtcToXaHelperFactory *This,REFIID riid,void **ppvObject); 144 ULONG (WINAPI *AddRef)(IDtcToXaHelperFactory *This); 145 ULONG (WINAPI *Release)(IDtcToXaHelperFactory *This); 146 HRESULT (WINAPI *Create)(IDtcToXaHelperFactory *This,char *pszDSN,char *pszClientDllName,GUID *pguidRm,IDtcToXaHelper **ppXaHelper); 147 END_INTERFACE 148 } IDtcToXaHelperFactoryVtbl; 149 struct IDtcToXaHelperFactory { 150 CONST_VTBL struct IDtcToXaHelperFactoryVtbl *lpVtbl; 151 }; 152 #ifdef COBJMACROS 153 #define IDtcToXaHelperFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 154 #define IDtcToXaHelperFactory_AddRef(This) (This)->lpVtbl->AddRef(This) 155 #define IDtcToXaHelperFactory_Release(This) (This)->lpVtbl->Release(This) 156 #define IDtcToXaHelperFactory_Create(This,pszDSN,pszClientDllName,pguidRm,ppXaHelper) (This)->lpVtbl->Create(This,pszDSN,pszClientDllName,pguidRm,ppXaHelper) 157 #endif 158 #endif 159 HRESULT WINAPI IDtcToXaHelperFactory_Create_Proxy(IDtcToXaHelperFactory *This,char *pszDSN,char *pszClientDllName,GUID *pguidRm,IDtcToXaHelper **ppXaHelper); 160 void __RPC_STUB IDtcToXaHelperFactory_Create_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 161 #endif 162 163 #ifndef __IDtcToXaHelper_INTERFACE_DEFINED__ 164 #define __IDtcToXaHelper_INTERFACE_DEFINED__ 165 EXTERN_C const IID IID_IDtcToXaHelper; 166 #if defined(__cplusplus) && !defined(CINTERFACE) 167 struct IDtcToXaHelper : public IUnknown { 168 public: 169 virtual HRESULT WINAPI Close(WINBOOL i_fDoRecovery) = 0; 170 virtual HRESULT WINAPI TranslateTridToXid(ITransaction *pITransaction,GUID *pguidBqual,XID *pXid) = 0; 171 }; 172 #else 173 typedef struct IDtcToXaHelperVtbl { 174 BEGIN_INTERFACE 175 HRESULT (WINAPI *QueryInterface)(IDtcToXaHelper *This,REFIID riid,void **ppvObject); 176 ULONG (WINAPI *AddRef)(IDtcToXaHelper *This); 177 ULONG (WINAPI *Release)(IDtcToXaHelper *This); 178 HRESULT (WINAPI *Close)(IDtcToXaHelper *This,WINBOOL i_fDoRecovery); 179 HRESULT (WINAPI *TranslateTridToXid)(IDtcToXaHelper *This,ITransaction *pITransaction,GUID *pguidBqual,XID *pXid); 180 END_INTERFACE 181 } IDtcToXaHelperVtbl; 182 struct IDtcToXaHelper { 183 CONST_VTBL struct IDtcToXaHelperVtbl *lpVtbl; 184 }; 185 #ifdef COBJMACROS 186 #define IDtcToXaHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 187 #define IDtcToXaHelper_AddRef(This) (This)->lpVtbl->AddRef(This) 188 #define IDtcToXaHelper_Release(This) (This)->lpVtbl->Release(This) 189 #define IDtcToXaHelper_Close(This,i_fDoRecovery) (This)->lpVtbl->Close(This,i_fDoRecovery) 190 #define IDtcToXaHelper_TranslateTridToXid(This,pITransaction,pguidBqual,pXid) (This)->lpVtbl->TranslateTridToXid(This,pITransaction,pguidBqual,pXid) 191 #endif 192 #endif 193 HRESULT WINAPI IDtcToXaHelper_Close_Proxy(IDtcToXaHelper *This,WINBOOL i_fDoRecovery); 194 void __RPC_STUB IDtcToXaHelper_Close_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 195 HRESULT WINAPI IDtcToXaHelper_TranslateTridToXid_Proxy(IDtcToXaHelper *This,ITransaction *pITransaction,GUID *pguidBqual,XID *pXid); 196 void __RPC_STUB IDtcToXaHelper_TranslateTridToXid_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 197 #endif 198 199 #ifndef __IDtcToXaHelperSinglePipe_INTERFACE_DEFINED__ 200 #define __IDtcToXaHelperSinglePipe_INTERFACE_DEFINED__ 201 EXTERN_C const IID IID_IDtcToXaHelperSinglePipe; 202 #if defined(__cplusplus) && !defined(CINTERFACE) 203 struct IDtcToXaHelperSinglePipe : public IUnknown { 204 public: 205 virtual HRESULT WINAPI XARMCreate(char *pszDSN,char *pszClientDll,DWORD *pdwRMCookie) = 0; 206 virtual HRESULT WINAPI ConvertTridToXID(DWORD *pdwITrans,DWORD dwRMCookie,XID *pxid) = 0; 207 virtual HRESULT WINAPI EnlistWithRM(DWORD dwRMCookie,ITransaction *i_pITransaction,ITransactionResourceAsync *i_pITransRes,ITransactionEnlistmentAsync **o_ppITransEnslitment) = 0; 208 virtual void WINAPI ReleaseRMCookie(DWORD i_dwRMCookie,WINBOOL i_fNormal) = 0; 209 }; 210 #else 211 typedef struct IDtcToXaHelperSinglePipeVtbl { 212 BEGIN_INTERFACE 213 HRESULT (WINAPI *QueryInterface)(IDtcToXaHelperSinglePipe *This,REFIID riid,void **ppvObject); 214 ULONG (WINAPI *AddRef)(IDtcToXaHelperSinglePipe *This); 215 ULONG (WINAPI *Release)(IDtcToXaHelperSinglePipe *This); 216 HRESULT (WINAPI *XARMCreate)(IDtcToXaHelperSinglePipe *This,char *pszDSN,char *pszClientDll,DWORD *pdwRMCookie); 217 HRESULT (WINAPI *ConvertTridToXID)(IDtcToXaHelperSinglePipe *This,DWORD *pdwITrans,DWORD dwRMCookie,XID *pxid); 218 HRESULT (WINAPI *EnlistWithRM)(IDtcToXaHelperSinglePipe *This,DWORD dwRMCookie,ITransaction *i_pITransaction,ITransactionResourceAsync *i_pITransRes,ITransactionEnlistmentAsync **o_ppITransEnslitment); 219 void (WINAPI *ReleaseRMCookie)(IDtcToXaHelperSinglePipe *This,DWORD i_dwRMCookie,WINBOOL i_fNormal); 220 END_INTERFACE 221 } IDtcToXaHelperSinglePipeVtbl; 222 struct IDtcToXaHelperSinglePipe { 223 CONST_VTBL struct IDtcToXaHelperSinglePipeVtbl *lpVtbl; 224 }; 225 #ifdef COBJMACROS 226 #define IDtcToXaHelperSinglePipe_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 227 #define IDtcToXaHelperSinglePipe_AddRef(This) (This)->lpVtbl->AddRef(This) 228 #define IDtcToXaHelperSinglePipe_Release(This) (This)->lpVtbl->Release(This) 229 #define IDtcToXaHelperSinglePipe_XARMCreate(This,pszDSN,pszClientDll,pdwRMCookie) (This)->lpVtbl->XARMCreate(This,pszDSN,pszClientDll,pdwRMCookie) 230 #define IDtcToXaHelperSinglePipe_ConvertTridToXID(This,pdwITrans,dwRMCookie,pxid) (This)->lpVtbl->ConvertTridToXID(This,pdwITrans,dwRMCookie,pxid) 231 #define IDtcToXaHelperSinglePipe_EnlistWithRM(This,dwRMCookie,i_pITransaction,i_pITransRes,o_ppITransEnslitment) (This)->lpVtbl->EnlistWithRM(This,dwRMCookie,i_pITransaction,i_pITransRes,o_ppITransEnslitment) 232 #define IDtcToXaHelperSinglePipe_ReleaseRMCookie(This,i_dwRMCookie,i_fNormal) (This)->lpVtbl->ReleaseRMCookie(This,i_dwRMCookie,i_fNormal) 233 #endif 234 #endif 235 HRESULT WINAPI IDtcToXaHelperSinglePipe_XARMCreate_Proxy(IDtcToXaHelperSinglePipe *This,char *pszDSN,char *pszClientDll,DWORD *pdwRMCookie); 236 void __RPC_STUB IDtcToXaHelperSinglePipe_XARMCreate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 237 HRESULT WINAPI IDtcToXaHelperSinglePipe_ConvertTridToXID_Proxy(IDtcToXaHelperSinglePipe *This,DWORD *pdwITrans,DWORD dwRMCookie,XID *pxid); 238 void __RPC_STUB IDtcToXaHelperSinglePipe_ConvertTridToXID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 239 HRESULT WINAPI IDtcToXaHelperSinglePipe_EnlistWithRM_Proxy(IDtcToXaHelperSinglePipe *This,DWORD dwRMCookie,ITransaction *i_pITransaction,ITransactionResourceAsync *i_pITransRes,ITransactionEnlistmentAsync **o_ppITransEnslitment); 240 void __RPC_STUB IDtcToXaHelperSinglePipe_EnlistWithRM_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 241 void WINAPI IDtcToXaHelperSinglePipe_ReleaseRMCookie_Proxy(IDtcToXaHelperSinglePipe *This,DWORD i_dwRMCookie,WINBOOL i_fNormal); 242 void __RPC_STUB IDtcToXaHelperSinglePipe_ReleaseRMCookie_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 243 #endif 244 245 DEFINE_GUID(IID_IDtcToXaMapper,0x64FFABE0,0x7CE9,0x11d0,0x8C,0xE6,0x00,0xC0,0x4F,0xDC,0x87,0x7E); 246 DEFINE_GUID(IID_IDtcToXaHelperFactory,0xadefc46a,0xcb1d,0x11d0,0xb1,0x35,0x00,0xc0,0x4f,0xc2,0xf3,0xef); 247 DEFINE_GUID(IID_IDtcToXaHelper,0xadefc46b,0xcb1d,0x11d0,0xb1,0x35,0x00,0xc0,0x4f,0xc2,0xf3,0xef); 248 DEFINE_GUID(IID_IDtcToXaHelperSinglePipe,0x47ED4971,0x53B3,0x11d1,0xBB,0xB9,0x00,0xC0,0x4F,0xD6,0x58,0xF6); 249 250 extern RPC_IF_HANDLE __MIDL_itf_oletx2xa_0126_v0_0_c_ifspec; 251 extern RPC_IF_HANDLE __MIDL_itf_oletx2xa_0126_v0_0_s_ifspec; 252 253 #ifdef __cplusplus 254 } 255 #endif 256 #endif 257