source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/transact.h@ 1186

Last change on this file since 1186 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 22.5 KB
RevLine 
[1166]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 __transact_h__
23#define __transact_h__
24
25#ifndef __ITransaction_FWD_DEFINED__
26#define __ITransaction_FWD_DEFINED__
27typedef struct ITransaction ITransaction;
28#endif
29
30#ifndef __ITransactionCloner_FWD_DEFINED__
31#define __ITransactionCloner_FWD_DEFINED__
32typedef struct ITransactionCloner ITransactionCloner;
33#endif
34
35#ifndef __ITransaction2_FWD_DEFINED__
36#define __ITransaction2_FWD_DEFINED__
37typedef struct ITransaction2 ITransaction2;
38#endif
39
40#ifndef __ITransactionDispenser_FWD_DEFINED__
41#define __ITransactionDispenser_FWD_DEFINED__
42typedef struct ITransactionDispenser ITransactionDispenser;
43#endif
44
45#ifndef __ITransactionOptions_FWD_DEFINED__
46#define __ITransactionOptions_FWD_DEFINED__
47typedef struct ITransactionOptions ITransactionOptions;
48#endif
49
50#ifndef __ITransactionOutcomeEvents_FWD_DEFINED__
51#define __ITransactionOutcomeEvents_FWD_DEFINED__
52typedef struct ITransactionOutcomeEvents ITransactionOutcomeEvents;
53#endif
54
55#ifndef __ITmNodeName_FWD_DEFINED__
56#define __ITmNodeName_FWD_DEFINED__
57typedef struct ITmNodeName ITmNodeName;
58#endif
59
60#include "unknwn.h"
61
62#ifdef __cplusplus
63extern "C" {
64#endif
65
66#ifndef __MIDL_user_allocate_free_DEFINED__
67#define __MIDL_user_allocate_free_DEFINED__
68 void *__RPC_API MIDL_user_allocate(size_t);
69 void __RPC_API MIDL_user_free(void *);
70#endif
71
72#include "winerror.h"
73
74 extern RPC_IF_HANDLE __MIDL_itf_transact_0000_v0_0_c_ifspec;
75 extern RPC_IF_HANDLE __MIDL_itf_transact_0000_v0_0_s_ifspec;
76
77#ifndef __BasicTransactionTypes_INTERFACE_DEFINED__
78#define __BasicTransactionTypes_INTERFACE_DEFINED__
79
80 typedef struct BOID {
81 byte rgb[16 ];
82 } BOID;
83
84#define BOID_NULL (*((BOID*)(&IID_NULL)))
85#ifndef MAX_TRAN_DESC_DEFINED
86#define MAX_TRAN_DESC_DEFINED
87 typedef enum TX_MISC_CONSTANTS {
88 MAX_TRAN_DESC = 40
89 } TX_MISC_CONSTANTS;
90#endif
91 typedef BOID XACTUOW;
92 typedef LONG ISOLEVEL;
93
94 typedef enum ISOLATIONLEVEL {
95 ISOLATIONLEVEL_UNSPECIFIED = 0xffffffff,ISOLATIONLEVEL_CHAOS = 0x10,ISOLATIONLEVEL_READUNCOMMITTED = 0x100,ISOLATIONLEVEL_BROWSE = 0x100,
96 ISOLATIONLEVEL_CURSORSTABILITY = 0x1000,ISOLATIONLEVEL_READCOMMITTED = 0x1000,ISOLATIONLEVEL_REPEATABLEREAD = 0x10000,
97 ISOLATIONLEVEL_SERIALIZABLE = 0x100000,ISOLATIONLEVEL_ISOLATED = 0x100000
98 } ISOLATIONLEVEL;
99
100 typedef struct XACTTRANSINFO {
101 XACTUOW uow;
102 ISOLEVEL isoLevel;
103 ULONG isoFlags;
104 DWORD grfTCSupported;
105 DWORD grfRMSupported;
106 DWORD grfTCSupportedRetaining;
107 DWORD grfRMSupportedRetaining;
108 } XACTTRANSINFO;
109
110 typedef struct XACTSTATS {
111 ULONG cOpen;
112 ULONG cCommitting;
113 ULONG cCommitted;
114 ULONG cAborting;
115 ULONG cAborted;
116 ULONG cInDoubt;
117 ULONG cHeuristicDecision;
118 FILETIME timeTransactionsUp;
119 } XACTSTATS;
120
121 typedef enum ISOFLAG {
122 ISOFLAG_RETAIN_COMMIT_DC = 1,ISOFLAG_RETAIN_COMMIT = 2,ISOFLAG_RETAIN_COMMIT_NO = 3,ISOFLAG_RETAIN_ABORT_DC = 4,ISOFLAG_RETAIN_ABORT = 8,
123 ISOFLAG_RETAIN_ABORT_NO = 12,ISOFLAG_RETAIN_DONTCARE = ISOFLAG_RETAIN_COMMIT_DC | ISOFLAG_RETAIN_ABORT_DC,
124 ISOFLAG_RETAIN_BOTH = ISOFLAG_RETAIN_COMMIT | ISOFLAG_RETAIN_ABORT,ISOFLAG_RETAIN_NONE = ISOFLAG_RETAIN_COMMIT_NO | ISOFLAG_RETAIN_ABORT_NO,ISOFLAG_OPTIMISTIC = 16,ISOFLAG_READONLY = 32
125 } ISOFLAG;
126
127 typedef enum XACTTC {
128 XACTTC_NONE = 0,XACTTC_SYNC_PHASEONE = 1,XACTTC_SYNC_PHASETWO = 2,XACTTC_SYNC = 2,XACTTC_ASYNC_PHASEONE = 4,XACTTC_ASYNC = 4
129 } XACTTC;
130
131 typedef enum XACTRM {
132 XACTRM_OPTIMISTICLASTWINS = 1,XACTRM_NOREADONLYPREPARES = 2
133 } XACTRM;
134
135 typedef enum XACTCONST {
136 XACTCONST_TIMEOUTINFINITE = 0
137 } XACTCONST;
138
139 typedef enum XACTHEURISTIC {
140 XACTHEURISTIC_ABORT = 1,XACTHEURISTIC_COMMIT = 2,XACTHEURISTIC_DAMAGE = 3,XACTHEURISTIC_DANGER = 4
141 } XACTHEURISTIC;
142
143 typedef enum XACTSTAT {
144 XACTSTAT_NONE = 0,XACTSTAT_OPENNORMAL = 0x1,XACTSTAT_OPENREFUSED = 0x2,XACTSTAT_PREPARING = 0x4,XACTSTAT_PREPARED = 0x8,XACTSTAT_PREPARERETAINING = 0x10,XACTSTAT_PREPARERETAINED = 0x20,XACTSTAT_COMMITTING = 0x40,XACTSTAT_COMMITRETAINING = 0x80,XACTSTAT_ABORTING = 0x100,XACTSTAT_ABORTED = 0x200,XACTSTAT_COMMITTED = 0x400,XACTSTAT_HEURISTIC_ABORT = 0x800,XACTSTAT_HEURISTIC_COMMIT = 0x1000,XACTSTAT_HEURISTIC_DAMAGE = 0x2000,XACTSTAT_HEURISTIC_DANGER = 0x4000,XACTSTAT_FORCED_ABORT = 0x8000,XACTSTAT_FORCED_COMMIT = 0x10000,XACTSTAT_INDOUBT = 0x20000,XACTSTAT_CLOSED = 0x40000,XACTSTAT_OPEN = 0x3,XACTSTAT_NOTPREPARED = 0x7ffc3,XACTSTAT_ALL = 0x7ffff
145 } XACTSTAT;
146
147 typedef struct XACTOPT {
148 ULONG ulTimeout;
149 char szDescription[40 ];
150 } XACTOPT;
151
152 extern RPC_IF_HANDLE BasicTransactionTypes_v0_0_c_ifspec;
153 extern RPC_IF_HANDLE BasicTransactionTypes_v0_0_s_ifspec;
154#endif
155
156#ifndef __ITransaction_INTERFACE_DEFINED__
157#define __ITransaction_INTERFACE_DEFINED__
158 EXTERN_C const IID IID_ITransaction;
159#if defined(__cplusplus) && !defined(CINTERFACE)
160 struct ITransaction : public IUnknown {
161 public:
162 virtual HRESULT WINAPI Commit(WINBOOL fRetaining,DWORD grfTC,DWORD grfRM) = 0;
163 virtual HRESULT WINAPI Abort(BOID *pboidReason,WINBOOL fRetaining,WINBOOL fAsync) = 0;
164 virtual HRESULT WINAPI GetTransactionInfo(XACTTRANSINFO *pinfo) = 0;
165 };
166#else
167 typedef struct ITransactionVtbl {
168 BEGIN_INTERFACE
169 HRESULT (WINAPI *QueryInterface)(ITransaction *This,REFIID riid,void **ppvObject);
170 ULONG (WINAPI *AddRef)(ITransaction *This);
171 ULONG (WINAPI *Release)(ITransaction *This);
172 HRESULT (WINAPI *Commit)(ITransaction *This,WINBOOL fRetaining,DWORD grfTC,DWORD grfRM);
173 HRESULT (WINAPI *Abort)(ITransaction *This,BOID *pboidReason,WINBOOL fRetaining,WINBOOL fAsync);
174 HRESULT (WINAPI *GetTransactionInfo)(ITransaction *This,XACTTRANSINFO *pinfo);
175 END_INTERFACE
176 } ITransactionVtbl;
177 struct ITransaction {
178 CONST_VTBL struct ITransactionVtbl *lpVtbl;
179 };
180#ifdef COBJMACROS
181#define ITransaction_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
182#define ITransaction_AddRef(This) (This)->lpVtbl->AddRef(This)
183#define ITransaction_Release(This) (This)->lpVtbl->Release(This)
184#define ITransaction_Commit(This,fRetaining,grfTC,grfRM) (This)->lpVtbl->Commit(This,fRetaining,grfTC,grfRM)
185#define ITransaction_Abort(This,pboidReason,fRetaining,fAsync) (This)->lpVtbl->Abort(This,pboidReason,fRetaining,fAsync)
186#define ITransaction_GetTransactionInfo(This,pinfo) (This)->lpVtbl->GetTransactionInfo(This,pinfo)
187#endif
188#endif
189 HRESULT WINAPI ITransaction_Commit_Proxy(ITransaction *This,WINBOOL fRetaining,DWORD grfTC,DWORD grfRM);
190 void __RPC_STUB ITransaction_Commit_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
191 HRESULT WINAPI ITransaction_Abort_Proxy(ITransaction *This,BOID *pboidReason,WINBOOL fRetaining,WINBOOL fAsync);
192 void __RPC_STUB ITransaction_Abort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
193 HRESULT WINAPI ITransaction_GetTransactionInfo_Proxy(ITransaction *This,XACTTRANSINFO *pinfo);
194 void __RPC_STUB ITransaction_GetTransactionInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
195#endif
196
197#ifndef __ITransactionCloner_INTERFACE_DEFINED__
198#define __ITransactionCloner_INTERFACE_DEFINED__
199 EXTERN_C const IID IID_ITransactionCloner;
200#if defined(__cplusplus) && !defined(CINTERFACE)
201 struct ITransactionCloner : public ITransaction {
202 public:
203 virtual HRESULT WINAPI CloneWithCommitDisabled(ITransaction **ppITransaction) = 0;
204 };
205#else
206 typedef struct ITransactionClonerVtbl {
207 BEGIN_INTERFACE
208 HRESULT (WINAPI *QueryInterface)(ITransactionCloner *This,REFIID riid,void **ppvObject);
209 ULONG (WINAPI *AddRef)(ITransactionCloner *This);
210 ULONG (WINAPI *Release)(ITransactionCloner *This);
211 HRESULT (WINAPI *Commit)(ITransactionCloner *This,WINBOOL fRetaining,DWORD grfTC,DWORD grfRM);
212 HRESULT (WINAPI *Abort)(ITransactionCloner *This,BOID *pboidReason,WINBOOL fRetaining,WINBOOL fAsync);
213 HRESULT (WINAPI *GetTransactionInfo)(ITransactionCloner *This,XACTTRANSINFO *pinfo);
214 HRESULT (WINAPI *CloneWithCommitDisabled)(ITransactionCloner *This,ITransaction **ppITransaction);
215 END_INTERFACE
216 } ITransactionClonerVtbl;
217 struct ITransactionCloner {
218 CONST_VTBL struct ITransactionClonerVtbl *lpVtbl;
219 };
220#ifdef COBJMACROS
221#define ITransactionCloner_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
222#define ITransactionCloner_AddRef(This) (This)->lpVtbl->AddRef(This)
223#define ITransactionCloner_Release(This) (This)->lpVtbl->Release(This)
224#define ITransactionCloner_Commit(This,fRetaining,grfTC,grfRM) (This)->lpVtbl->Commit(This,fRetaining,grfTC,grfRM)
225#define ITransactionCloner_Abort(This,pboidReason,fRetaining,fAsync) (This)->lpVtbl->Abort(This,pboidReason,fRetaining,fAsync)
226#define ITransactionCloner_GetTransactionInfo(This,pinfo) (This)->lpVtbl->GetTransactionInfo(This,pinfo)
227#define ITransactionCloner_CloneWithCommitDisabled(This,ppITransaction) (This)->lpVtbl->CloneWithCommitDisabled(This,ppITransaction)
228#endif
229#endif
230 HRESULT WINAPI ITransactionCloner_CloneWithCommitDisabled_Proxy(ITransactionCloner *This,ITransaction **ppITransaction);
231 void __RPC_STUB ITransactionCloner_CloneWithCommitDisabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
232#endif
233
234#ifndef __ITransaction2_INTERFACE_DEFINED__
235#define __ITransaction2_INTERFACE_DEFINED__
236 EXTERN_C const IID IID_ITransaction2;
237#if defined(__cplusplus) && !defined(CINTERFACE)
238 struct ITransaction2 : public ITransactionCloner {
239 public:
240 virtual HRESULT WINAPI GetTransactionInfo2(XACTTRANSINFO *pinfo) = 0;
241 };
242#else
243 typedef struct ITransaction2Vtbl {
244 BEGIN_INTERFACE
245 HRESULT (WINAPI *QueryInterface)(ITransaction2 *This,REFIID riid,void **ppvObject);
246 ULONG (WINAPI *AddRef)(ITransaction2 *This);
247 ULONG (WINAPI *Release)(ITransaction2 *This);
248 HRESULT (WINAPI *Commit)(ITransaction2 *This,WINBOOL fRetaining,DWORD grfTC,DWORD grfRM);
249 HRESULT (WINAPI *Abort)(ITransaction2 *This,BOID *pboidReason,WINBOOL fRetaining,WINBOOL fAsync);
250 HRESULT (WINAPI *GetTransactionInfo)(ITransaction2 *This,XACTTRANSINFO *pinfo);
251 HRESULT (WINAPI *CloneWithCommitDisabled)(ITransaction2 *This,ITransaction **ppITransaction);
252 HRESULT (WINAPI *GetTransactionInfo2)(ITransaction2 *This,XACTTRANSINFO *pinfo);
253 END_INTERFACE
254 } ITransaction2Vtbl;
255 struct ITransaction2 {
256 CONST_VTBL struct ITransaction2Vtbl *lpVtbl;
257 };
258#ifdef COBJMACROS
259#define ITransaction2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
260#define ITransaction2_AddRef(This) (This)->lpVtbl->AddRef(This)
261#define ITransaction2_Release(This) (This)->lpVtbl->Release(This)
262#define ITransaction2_Commit(This,fRetaining,grfTC,grfRM) (This)->lpVtbl->Commit(This,fRetaining,grfTC,grfRM)
263#define ITransaction2_Abort(This,pboidReason,fRetaining,fAsync) (This)->lpVtbl->Abort(This,pboidReason,fRetaining,fAsync)
264#define ITransaction2_GetTransactionInfo(This,pinfo) (This)->lpVtbl->GetTransactionInfo(This,pinfo)
265#define ITransaction2_CloneWithCommitDisabled(This,ppITransaction) (This)->lpVtbl->CloneWithCommitDisabled(This,ppITransaction)
266#define ITransaction2_GetTransactionInfo2(This,pinfo) (This)->lpVtbl->GetTransactionInfo2(This,pinfo)
267#endif
268#endif
269 HRESULT WINAPI ITransaction2_GetTransactionInfo2_Proxy(ITransaction2 *This,XACTTRANSINFO *pinfo);
270 void __RPC_STUB ITransaction2_GetTransactionInfo2_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
271#endif
272
273#ifndef __ITransactionDispenser_INTERFACE_DEFINED__
274#define __ITransactionDispenser_INTERFACE_DEFINED__
275 EXTERN_C const IID IID_ITransactionDispenser;
276#if defined(__cplusplus) && !defined(CINTERFACE)
277 struct ITransactionDispenser : public IUnknown {
278 public:
279 virtual HRESULT WINAPI GetOptionsObject(ITransactionOptions **ppOptions) = 0;
280 virtual HRESULT WINAPI BeginTransaction(IUnknown *punkOuter,ISOLEVEL isoLevel,ULONG isoFlags,ITransactionOptions *pOptions,ITransaction **ppTransaction) = 0;
281 };
282#else
283 typedef struct ITransactionDispenserVtbl {
284 BEGIN_INTERFACE
285 HRESULT (WINAPI *QueryInterface)(ITransactionDispenser *This,REFIID riid,void **ppvObject);
286 ULONG (WINAPI *AddRef)(ITransactionDispenser *This);
287 ULONG (WINAPI *Release)(ITransactionDispenser *This);
288 HRESULT (WINAPI *GetOptionsObject)(ITransactionDispenser *This,ITransactionOptions **ppOptions);
289 HRESULT (WINAPI *BeginTransaction)(ITransactionDispenser *This,IUnknown *punkOuter,ISOLEVEL isoLevel,ULONG isoFlags,ITransactionOptions *pOptions,ITransaction **ppTransaction);
290 END_INTERFACE
291 } ITransactionDispenserVtbl;
292 struct ITransactionDispenser {
293 CONST_VTBL struct ITransactionDispenserVtbl *lpVtbl;
294 };
295#ifdef COBJMACROS
296#define ITransactionDispenser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
297#define ITransactionDispenser_AddRef(This) (This)->lpVtbl->AddRef(This)
298#define ITransactionDispenser_Release(This) (This)->lpVtbl->Release(This)
299#define ITransactionDispenser_GetOptionsObject(This,ppOptions) (This)->lpVtbl->GetOptionsObject(This,ppOptions)
300#define ITransactionDispenser_BeginTransaction(This,punkOuter,isoLevel,isoFlags,pOptions,ppTransaction) (This)->lpVtbl->BeginTransaction(This,punkOuter,isoLevel,isoFlags,pOptions,ppTransaction)
301#endif
302#endif
303 HRESULT WINAPI ITransactionDispenser_GetOptionsObject_Proxy(ITransactionDispenser *This,ITransactionOptions **ppOptions);
304 void __RPC_STUB ITransactionDispenser_GetOptionsObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
305 HRESULT WINAPI ITransactionDispenser_BeginTransaction_Proxy(ITransactionDispenser *This,IUnknown *punkOuter,ISOLEVEL isoLevel,ULONG isoFlags,ITransactionOptions *pOptions,ITransaction **ppTransaction);
306 void __RPC_STUB ITransactionDispenser_BeginTransaction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
307#endif
308
309#ifndef __ITransactionOptions_INTERFACE_DEFINED__
310#define __ITransactionOptions_INTERFACE_DEFINED__
311 EXTERN_C const IID IID_ITransactionOptions;
312#if defined(__cplusplus) && !defined(CINTERFACE)
313 struct ITransactionOptions : public IUnknown {
314 public:
315 virtual HRESULT WINAPI SetOptions(XACTOPT *pOptions) = 0;
316 virtual HRESULT WINAPI GetOptions(XACTOPT *pOptions) = 0;
317 };
318#else
319 typedef struct ITransactionOptionsVtbl {
320 BEGIN_INTERFACE
321 HRESULT (WINAPI *QueryInterface)(ITransactionOptions *This,REFIID riid,void **ppvObject);
322 ULONG (WINAPI *AddRef)(ITransactionOptions *This);
323 ULONG (WINAPI *Release)(ITransactionOptions *This);
324 HRESULT (WINAPI *SetOptions)(ITransactionOptions *This,XACTOPT *pOptions);
325 HRESULT (WINAPI *GetOptions)(ITransactionOptions *This,XACTOPT *pOptions);
326 END_INTERFACE
327 } ITransactionOptionsVtbl;
328 struct ITransactionOptions {
329 CONST_VTBL struct ITransactionOptionsVtbl *lpVtbl;
330 };
331#ifdef COBJMACROS
332#define ITransactionOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
333#define ITransactionOptions_AddRef(This) (This)->lpVtbl->AddRef(This)
334#define ITransactionOptions_Release(This) (This)->lpVtbl->Release(This)
335#define ITransactionOptions_SetOptions(This,pOptions) (This)->lpVtbl->SetOptions(This,pOptions)
336#define ITransactionOptions_GetOptions(This,pOptions) (This)->lpVtbl->GetOptions(This,pOptions)
337#endif
338#endif
339 HRESULT WINAPI ITransactionOptions_SetOptions_Proxy(ITransactionOptions *This,XACTOPT *pOptions);
340 void __RPC_STUB ITransactionOptions_SetOptions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
341 HRESULT WINAPI ITransactionOptions_GetOptions_Proxy(ITransactionOptions *This,XACTOPT *pOptions);
342 void __RPC_STUB ITransactionOptions_GetOptions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
343#endif
344
345#ifndef __ITransactionOutcomeEvents_INTERFACE_DEFINED__
346#define __ITransactionOutcomeEvents_INTERFACE_DEFINED__
347 EXTERN_C const IID IID_ITransactionOutcomeEvents;
348#if defined(__cplusplus) && !defined(CINTERFACE)
349 struct ITransactionOutcomeEvents : public IUnknown {
350 public:
351 virtual HRESULT WINAPI Committed(WINBOOL fRetaining,XACTUOW *pNewUOW,HRESULT hr) = 0;
352 virtual HRESULT WINAPI Aborted(BOID *pboidReason,WINBOOL fRetaining,XACTUOW *pNewUOW,HRESULT hr) = 0;
353 virtual HRESULT WINAPI HeuristicDecision(DWORD dwDecision,BOID *pboidReason,HRESULT hr) = 0;
354 virtual HRESULT WINAPI Indoubt(void) = 0;
355 };
356#else
357 typedef struct ITransactionOutcomeEventsVtbl {
358 BEGIN_INTERFACE
359 HRESULT (WINAPI *QueryInterface)(ITransactionOutcomeEvents *This,REFIID riid,void **ppvObject);
360 ULONG (WINAPI *AddRef)(ITransactionOutcomeEvents *This);
361 ULONG (WINAPI *Release)(ITransactionOutcomeEvents *This);
362 HRESULT (WINAPI *Committed)(ITransactionOutcomeEvents *This,WINBOOL fRetaining,XACTUOW *pNewUOW,HRESULT hr);
363 HRESULT (WINAPI *Aborted)(ITransactionOutcomeEvents *This,BOID *pboidReason,WINBOOL fRetaining,XACTUOW *pNewUOW,HRESULT hr);
364 HRESULT (WINAPI *HeuristicDecision)(ITransactionOutcomeEvents *This,DWORD dwDecision,BOID *pboidReason,HRESULT hr);
365 HRESULT (WINAPI *Indoubt)(ITransactionOutcomeEvents *This);
366 END_INTERFACE
367 } ITransactionOutcomeEventsVtbl;
368 struct ITransactionOutcomeEvents {
369 CONST_VTBL struct ITransactionOutcomeEventsVtbl *lpVtbl;
370 };
371#ifdef COBJMACROS
372#define ITransactionOutcomeEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
373#define ITransactionOutcomeEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
374#define ITransactionOutcomeEvents_Release(This) (This)->lpVtbl->Release(This)
375#define ITransactionOutcomeEvents_Committed(This,fRetaining,pNewUOW,hr) (This)->lpVtbl->Committed(This,fRetaining,pNewUOW,hr)
376#define ITransactionOutcomeEvents_Aborted(This,pboidReason,fRetaining,pNewUOW,hr) (This)->lpVtbl->Aborted(This,pboidReason,fRetaining,pNewUOW,hr)
377#define ITransactionOutcomeEvents_HeuristicDecision(This,dwDecision,pboidReason,hr) (This)->lpVtbl->HeuristicDecision(This,dwDecision,pboidReason,hr)
378#define ITransactionOutcomeEvents_Indoubt(This) (This)->lpVtbl->Indoubt(This)
379#endif
380#endif
381 HRESULT WINAPI ITransactionOutcomeEvents_Committed_Proxy(ITransactionOutcomeEvents *This,WINBOOL fRetaining,XACTUOW *pNewUOW,HRESULT hr);
382 void __RPC_STUB ITransactionOutcomeEvents_Committed_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
383 HRESULT WINAPI ITransactionOutcomeEvents_Aborted_Proxy(ITransactionOutcomeEvents *This,BOID *pboidReason,WINBOOL fRetaining,XACTUOW *pNewUOW,HRESULT hr);
384 void __RPC_STUB ITransactionOutcomeEvents_Aborted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
385 HRESULT WINAPI ITransactionOutcomeEvents_HeuristicDecision_Proxy(ITransactionOutcomeEvents *This,DWORD dwDecision,BOID *pboidReason,HRESULT hr);
386 void __RPC_STUB ITransactionOutcomeEvents_HeuristicDecision_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
387 HRESULT WINAPI ITransactionOutcomeEvents_Indoubt_Proxy(ITransactionOutcomeEvents *This);
388 void __RPC_STUB ITransactionOutcomeEvents_Indoubt_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
389#endif
390
391#ifndef __ITmNodeName_INTERFACE_DEFINED__
392#define __ITmNodeName_INTERFACE_DEFINED__
393 EXTERN_C const IID IID_ITmNodeName;
394#if defined(__cplusplus) && !defined(CINTERFACE)
395 struct ITmNodeName : public IUnknown {
396 public:
397 virtual HRESULT WINAPI GetNodeNameSize(ULONG *pcbNodeNameSize) = 0;
398 virtual HRESULT WINAPI GetNodeName(ULONG cbNodeNameBufferSize,LPWSTR pNodeNameBuffer) = 0;
399 };
400#else
401 typedef struct ITmNodeNameVtbl {
402 BEGIN_INTERFACE
403 HRESULT (WINAPI *QueryInterface)(ITmNodeName *This,REFIID riid,void **ppvObject);
404 ULONG (WINAPI *AddRef)(ITmNodeName *This);
405 ULONG (WINAPI *Release)(ITmNodeName *This);
406 HRESULT (WINAPI *GetNodeNameSize)(ITmNodeName *This,ULONG *pcbNodeNameSize);
407 HRESULT (WINAPI *GetNodeName)(ITmNodeName *This,ULONG cbNodeNameBufferSize,LPWSTR pNodeNameBuffer);
408 END_INTERFACE
409 } ITmNodeNameVtbl;
410 struct ITmNodeName {
411 CONST_VTBL struct ITmNodeNameVtbl *lpVtbl;
412 };
413#ifdef COBJMACROS
414#define ITmNodeName_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
415#define ITmNodeName_AddRef(This) (This)->lpVtbl->AddRef(This)
416#define ITmNodeName_Release(This) (This)->lpVtbl->Release(This)
417#define ITmNodeName_GetNodeNameSize(This,pcbNodeNameSize) (This)->lpVtbl->GetNodeNameSize(This,pcbNodeNameSize)
418#define ITmNodeName_GetNodeName(This,cbNodeNameBufferSize,pNodeNameBuffer) (This)->lpVtbl->GetNodeName(This,cbNodeNameBufferSize,pNodeNameBuffer)
419#endif
420#endif
421 HRESULT WINAPI ITmNodeName_GetNodeNameSize_Proxy(ITmNodeName *This,ULONG *pcbNodeNameSize);
422 void __RPC_STUB ITmNodeName_GetNodeNameSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
423 HRESULT WINAPI ITmNodeName_GetNodeName_Proxy(ITmNodeName *This,ULONG cbNodeNameBufferSize,LPWSTR pNodeNameBuffer);
424 void __RPC_STUB ITmNodeName_GetNodeName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
425#endif
426
427 DEFINE_GUID(IID_ITransaction,0x0fb15084,0xaf41,0x11ce,0xbd,0x2b,0x20,0x4c,0x4f,0x4f,0x50,0x20);
428 DEFINE_GUID(IID_ITransactionCloner,0x02656950,0x2152,0x11d0,0x94,0x4C,0x00,0xA0,0xC9,0x05,0x41,0x6E);
429 DEFINE_GUID(IID_ITransaction2,0x34021548,0x0065,0x11d3,0xba,0xc1,0x00,0xc0,0x4f,0x79,0x7b,0xe2);
430 DEFINE_GUID(IID_ITransactionDispenser,0x3A6AD9E1,0x23B9,0x11cf,0xAD,0x60,0x00,0xAA,0x00,0xA7,0x4C,0xCD);
431 DEFINE_GUID(IID_ITransactionOptions,0x3A6AD9E0,0x23B9,0x11cf,0xAD,0x60,0x00,0xAA,0x00,0xA7,0x4C,0xCD);
432 DEFINE_GUID(IID_ITransactionOutcomeEvents,0x3A6AD9E2,0x23B9,0x11cf,0xAD,0x60,0x00,0xAA,0x00,0xA7,0x4C,0xCD);
433 DEFINE_GUID(IID_ITmNodeName,0x30274F88,0x6EE4,0x474e,0x9B,0x95,0x78,0x07,0xBC,0x9E,0xF8,0xCF);
434
435 extern RPC_IF_HANDLE __MIDL_itf_transact_0016_v0_0_c_ifspec;
436 extern RPC_IF_HANDLE __MIDL_itf_transact_0016_v0_0_s_ifspec;
437
438#ifdef __cplusplus
439}
440#endif
441#endif
Note: See TracBrowser for help on using the repository browser.