ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/relogger.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 21954 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /*** Autogenerated by WIDL 6.4 from include/relogger.idl - Do not edit ***/
2
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15
16 #ifndef __relogger_h__
17 #define __relogger_h__
18
19 /* Forward declarations */
20
21 #ifndef __ITraceEvent_FWD_DEFINED__
22 #define __ITraceEvent_FWD_DEFINED__
23 typedef interface ITraceEvent ITraceEvent;
24 #ifdef __cplusplus
25 interface ITraceEvent;
26 #endif /* __cplusplus */
27 #endif
28
29 #ifndef __ITraceEventCallback_FWD_DEFINED__
30 #define __ITraceEventCallback_FWD_DEFINED__
31 typedef interface ITraceEventCallback ITraceEventCallback;
32 #ifdef __cplusplus
33 interface ITraceEventCallback;
34 #endif /* __cplusplus */
35 #endif
36
37 #ifndef __ITraceRelogger_FWD_DEFINED__
38 #define __ITraceRelogger_FWD_DEFINED__
39 typedef interface ITraceRelogger ITraceRelogger;
40 #ifdef __cplusplus
41 interface ITraceRelogger;
42 #endif /* __cplusplus */
43 #endif
44
45 #ifndef __CTraceRelogger_FWD_DEFINED__
46 #define __CTraceRelogger_FWD_DEFINED__
47 #ifdef __cplusplus
48 typedef class CTraceRelogger CTraceRelogger;
49 #else
50 typedef struct CTraceRelogger CTraceRelogger;
51 #endif /* defined __cplusplus */
52 #endif /* defined __CTraceRelogger_FWD_DEFINED__ */
53
54 /* Headers for imported files */
55
56 #include <unknwn.h>
57 #include <oaidl.h>
58 #include <ocidl.h>
59
60 #ifdef __cplusplus
61 extern "C" {
62 #endif
63
64 typedef struct _EVENT_DESCRIPTOR {
65 USHORT Id;
66 UCHAR Version;
67 UCHAR Channel;
68 UCHAR Level;
69 UCHAR Opcode;
70 USHORT Task;
71 ULONGLONG Keyword;
72 } EVENT_DESCRIPTOR;
73 typedef struct _EVENT_DESCRIPTOR *PEVENT_DESCRIPTOR;
74 typedef const EVENT_DESCRIPTOR *PCEVENT_DESCRIPTOR;
75 typedef struct _EVENT_HEADER {
76 USHORT Size;
77 USHORT HeaderType;
78 USHORT Flags;
79 USHORT EventProperty;
80 ULONG ThreadId;
81 ULONG ProcessId;
82 LARGE_INTEGER TimeStamp;
83 GUID ProviderId;
84 EVENT_DESCRIPTOR EventDescriptor;
85 union {
86 struct {
87 ULONG KernelTime;
88 ULONG UserTime;
89 } DUMMYSTRUCTNAME;
90 ULONG64 ProcessorTime;
91 } DUMMYUNIONNAME;
92 GUID ActivityId;
93 } EVENT_HEADER;
94 typedef struct _EVENT_HEADER *PEVENT_HEADER;
95 typedef struct _ETW_BUFFER_CONTEXT {
96 union {
97 struct {
98 UCHAR ProcessorNumber;
99 UCHAR Alignment;
100 } DUMMYSTRUCTNAME;
101 USHORT ProcessorIndex;
102 } DUMMYUNIONNAME;
103 USHORT LoggerId;
104 } ETW_BUFFER_CONTEXT;
105 typedef struct _ETW_BUFFER_CONTEXT *PETW_BUFFER_CONTEXT;
106 typedef struct _EVENT_HEADER_EXTENDED_DATA_ITEM {
107 USHORT Reserved1;
108 USHORT ExtType;
109 USHORT Linkage;
110 USHORT DataSize;
111 ULONGLONG DataPtr;
112 } EVENT_HEADER_EXTENDED_DATA_ITEM;
113 typedef struct _EVENT_HEADER_EXTENDED_DATA_ITEM *PEVENT_HEADER_EXTENDED_DATA_ITEM;
114 typedef struct _EVENT_RECORD {
115 EVENT_HEADER EventHeader;
116 ETW_BUFFER_CONTEXT BufferContext;
117 USHORT ExtendedDataCount;
118 USHORT UserDataLength;
119 EVENT_HEADER_EXTENDED_DATA_ITEM *ExtendedData;
120 void *UserData;
121 void *UserContext;
122 } EVENT_RECORD;
123 typedef struct _EVENT_RECORD *PEVENT_RECORD;
124 typedef ULONG64 TRACEHANDLE;
125 typedef ULONG64 *PTRACEHANDLE;
126 /*****************************************************************************
127 * ITraceEvent interface
128 */
129 #ifndef __ITraceEvent_INTERFACE_DEFINED__
130 #define __ITraceEvent_INTERFACE_DEFINED__
131
132 DEFINE_GUID(IID_ITraceEvent, 0x8cc97f40, 0x9028, 0x4ff3, 0x9b,0x62, 0x7d,0x1f,0x79,0xca,0x7b,0xcb);
133 #if defined(__cplusplus) && !defined(CINTERFACE)
134 MIDL_INTERFACE("8cc97f40-9028-4ff3-9b62-7d1f79ca7bcb")
135 ITraceEvent : public IUnknown
136 {
137 virtual HRESULT STDMETHODCALLTYPE Clone(
138 ITraceEvent **NewEvent) = 0;
139
140 virtual HRESULT STDMETHODCALLTYPE GetUserContext(
141 void **UserContext) = 0;
142
143 virtual HRESULT STDMETHODCALLTYPE GetEventRecord(
144 PEVENT_RECORD *EventRecord) = 0;
145
146 virtual HRESULT STDMETHODCALLTYPE SetPayload(
147 BYTE *Payload,
148 ULONG PayloadSize) = 0;
149
150 virtual HRESULT STDMETHODCALLTYPE SetEventDescriptor(
151 PCEVENT_DESCRIPTOR EventDescriptor) = 0;
152
153 virtual HRESULT STDMETHODCALLTYPE SetProcessId(
154 ULONG ProcessId) = 0;
155
156 virtual HRESULT STDMETHODCALLTYPE SetProcessorIndex(
157 ULONG ProcessorIndex) = 0;
158
159 virtual HRESULT STDMETHODCALLTYPE SetThreadId(
160 ULONG ThreadId) = 0;
161
162 virtual HRESULT STDMETHODCALLTYPE SetThreadTimes(
163 ULONG KernelTime,
164 ULONG UserTime) = 0;
165
166 virtual HRESULT STDMETHODCALLTYPE SetActivityId(
167 LPCGUID ActivityId) = 0;
168
169 virtual HRESULT STDMETHODCALLTYPE SetTimeStamp(
170 LARGE_INTEGER *TimeStamp) = 0;
171
172 virtual HRESULT STDMETHODCALLTYPE SetProviderId(
173 LPCGUID ProviderId) = 0;
174
175 };
176 #ifdef __CRT_UUID_DECL
177 __CRT_UUID_DECL(ITraceEvent, 0x8cc97f40, 0x9028, 0x4ff3, 0x9b,0x62, 0x7d,0x1f,0x79,0xca,0x7b,0xcb)
178 #endif
179 #else
180 typedef struct ITraceEventVtbl {
181 BEGIN_INTERFACE
182
183 /*** IUnknown methods ***/
184 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
185 ITraceEvent *This,
186 REFIID riid,
187 void **ppvObject);
188
189 ULONG (STDMETHODCALLTYPE *AddRef)(
190 ITraceEvent *This);
191
192 ULONG (STDMETHODCALLTYPE *Release)(
193 ITraceEvent *This);
194
195 /*** ITraceEvent methods ***/
196 HRESULT (STDMETHODCALLTYPE *Clone)(
197 ITraceEvent *This,
198 ITraceEvent **NewEvent);
199
200 HRESULT (STDMETHODCALLTYPE *GetUserContext)(
201 ITraceEvent *This,
202 void **UserContext);
203
204 HRESULT (STDMETHODCALLTYPE *GetEventRecord)(
205 ITraceEvent *This,
206 PEVENT_RECORD *EventRecord);
207
208 HRESULT (STDMETHODCALLTYPE *SetPayload)(
209 ITraceEvent *This,
210 BYTE *Payload,
211 ULONG PayloadSize);
212
213 HRESULT (STDMETHODCALLTYPE *SetEventDescriptor)(
214 ITraceEvent *This,
215 PCEVENT_DESCRIPTOR EventDescriptor);
216
217 HRESULT (STDMETHODCALLTYPE *SetProcessId)(
218 ITraceEvent *This,
219 ULONG ProcessId);
220
221 HRESULT (STDMETHODCALLTYPE *SetProcessorIndex)(
222 ITraceEvent *This,
223 ULONG ProcessorIndex);
224
225 HRESULT (STDMETHODCALLTYPE *SetThreadId)(
226 ITraceEvent *This,
227 ULONG ThreadId);
228
229 HRESULT (STDMETHODCALLTYPE *SetThreadTimes)(
230 ITraceEvent *This,
231 ULONG KernelTime,
232 ULONG UserTime);
233
234 HRESULT (STDMETHODCALLTYPE *SetActivityId)(
235 ITraceEvent *This,
236 LPCGUID ActivityId);
237
238 HRESULT (STDMETHODCALLTYPE *SetTimeStamp)(
239 ITraceEvent *This,
240 LARGE_INTEGER *TimeStamp);
241
242 HRESULT (STDMETHODCALLTYPE *SetProviderId)(
243 ITraceEvent *This,
244 LPCGUID ProviderId);
245
246 END_INTERFACE
247 } ITraceEventVtbl;
248
249 interface ITraceEvent {
250 CONST_VTBL ITraceEventVtbl* lpVtbl;
251 };
252
253 #ifdef COBJMACROS
254 #ifndef WIDL_C_INLINE_WRAPPERS
255 /*** IUnknown methods ***/
256 #define ITraceEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
257 #define ITraceEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
258 #define ITraceEvent_Release(This) (This)->lpVtbl->Release(This)
259 /*** ITraceEvent methods ***/
260 #define ITraceEvent_Clone(This,NewEvent) (This)->lpVtbl->Clone(This,NewEvent)
261 #define ITraceEvent_GetUserContext(This,UserContext) (This)->lpVtbl->GetUserContext(This,UserContext)
262 #define ITraceEvent_GetEventRecord(This,EventRecord) (This)->lpVtbl->GetEventRecord(This,EventRecord)
263 #define ITraceEvent_SetPayload(This,Payload,PayloadSize) (This)->lpVtbl->SetPayload(This,Payload,PayloadSize)
264 #define ITraceEvent_SetEventDescriptor(This,EventDescriptor) (This)->lpVtbl->SetEventDescriptor(This,EventDescriptor)
265 #define ITraceEvent_SetProcessId(This,ProcessId) (This)->lpVtbl->SetProcessId(This,ProcessId)
266 #define ITraceEvent_SetProcessorIndex(This,ProcessorIndex) (This)->lpVtbl->SetProcessorIndex(This,ProcessorIndex)
267 #define ITraceEvent_SetThreadId(This,ThreadId) (This)->lpVtbl->SetThreadId(This,ThreadId)
268 #define ITraceEvent_SetThreadTimes(This,KernelTime,UserTime) (This)->lpVtbl->SetThreadTimes(This,KernelTime,UserTime)
269 #define ITraceEvent_SetActivityId(This,ActivityId) (This)->lpVtbl->SetActivityId(This,ActivityId)
270 #define ITraceEvent_SetTimeStamp(This,TimeStamp) (This)->lpVtbl->SetTimeStamp(This,TimeStamp)
271 #define ITraceEvent_SetProviderId(This,ProviderId) (This)->lpVtbl->SetProviderId(This,ProviderId)
272 #else
273 /*** IUnknown methods ***/
274 static FORCEINLINE HRESULT ITraceEvent_QueryInterface(ITraceEvent* This,REFIID riid,void **ppvObject) {
275 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
276 }
277 static FORCEINLINE ULONG ITraceEvent_AddRef(ITraceEvent* This) {
278 return This->lpVtbl->AddRef(This);
279 }
280 static FORCEINLINE ULONG ITraceEvent_Release(ITraceEvent* This) {
281 return This->lpVtbl->Release(This);
282 }
283 /*** ITraceEvent methods ***/
284 static FORCEINLINE HRESULT ITraceEvent_Clone(ITraceEvent* This,ITraceEvent **NewEvent) {
285 return This->lpVtbl->Clone(This,NewEvent);
286 }
287 static FORCEINLINE HRESULT ITraceEvent_GetUserContext(ITraceEvent* This,void **UserContext) {
288 return This->lpVtbl->GetUserContext(This,UserContext);
289 }
290 static FORCEINLINE HRESULT ITraceEvent_GetEventRecord(ITraceEvent* This,PEVENT_RECORD *EventRecord) {
291 return This->lpVtbl->GetEventRecord(This,EventRecord);
292 }
293 static FORCEINLINE HRESULT ITraceEvent_SetPayload(ITraceEvent* This,BYTE *Payload,ULONG PayloadSize) {
294 return This->lpVtbl->SetPayload(This,Payload,PayloadSize);
295 }
296 static FORCEINLINE HRESULT ITraceEvent_SetEventDescriptor(ITraceEvent* This,PCEVENT_DESCRIPTOR EventDescriptor) {
297 return This->lpVtbl->SetEventDescriptor(This,EventDescriptor);
298 }
299 static FORCEINLINE HRESULT ITraceEvent_SetProcessId(ITraceEvent* This,ULONG ProcessId) {
300 return This->lpVtbl->SetProcessId(This,ProcessId);
301 }
302 static FORCEINLINE HRESULT ITraceEvent_SetProcessorIndex(ITraceEvent* This,ULONG ProcessorIndex) {
303 return This->lpVtbl->SetProcessorIndex(This,ProcessorIndex);
304 }
305 static FORCEINLINE HRESULT ITraceEvent_SetThreadId(ITraceEvent* This,ULONG ThreadId) {
306 return This->lpVtbl->SetThreadId(This,ThreadId);
307 }
308 static FORCEINLINE HRESULT ITraceEvent_SetThreadTimes(ITraceEvent* This,ULONG KernelTime,ULONG UserTime) {
309 return This->lpVtbl->SetThreadTimes(This,KernelTime,UserTime);
310 }
311 static FORCEINLINE HRESULT ITraceEvent_SetActivityId(ITraceEvent* This,LPCGUID ActivityId) {
312 return This->lpVtbl->SetActivityId(This,ActivityId);
313 }
314 static FORCEINLINE HRESULT ITraceEvent_SetTimeStamp(ITraceEvent* This,LARGE_INTEGER *TimeStamp) {
315 return This->lpVtbl->SetTimeStamp(This,TimeStamp);
316 }
317 static FORCEINLINE HRESULT ITraceEvent_SetProviderId(ITraceEvent* This,LPCGUID ProviderId) {
318 return This->lpVtbl->SetProviderId(This,ProviderId);
319 }
320 #endif
321 #endif
322
323 #endif
324
325
326 #endif /* __ITraceEvent_INTERFACE_DEFINED__ */
327
328 #ifndef __ITraceRelogger_FWD_DEFINED__
329 #define __ITraceRelogger_FWD_DEFINED__
330 typedef interface ITraceRelogger ITraceRelogger;
331 #ifdef __cplusplus
332 interface ITraceRelogger;
333 #endif /* __cplusplus */
334 #endif
335
336 /*****************************************************************************
337 * ITraceEventCallback interface
338 */
339 #ifndef __ITraceEventCallback_INTERFACE_DEFINED__
340 #define __ITraceEventCallback_INTERFACE_DEFINED__
341
342 DEFINE_GUID(IID_ITraceEventCallback, 0x3ed25501, 0x593f, 0x43e9, 0x8f,0x38, 0x3a,0xb4,0x6f,0x5a,0x4a,0x52);
343 #if defined(__cplusplus) && !defined(CINTERFACE)
344 MIDL_INTERFACE("3ed25501-593f-43e9-8f38-3ab46f5a4a52")
345 ITraceEventCallback : public IUnknown
346 {
347 virtual HRESULT STDMETHODCALLTYPE OnBeginProcessTrace(
348 ITraceEvent *HeaderEvent,
349 ITraceRelogger *Relogger) = 0;
350
351 virtual HRESULT STDMETHODCALLTYPE OnFinalizeProcessTrace(
352 ITraceRelogger *Relogger) = 0;
353
354 virtual HRESULT STDMETHODCALLTYPE OnEvent(
355 ITraceEvent *Event,
356 ITraceRelogger *Relogger) = 0;
357
358 };
359 #ifdef __CRT_UUID_DECL
360 __CRT_UUID_DECL(ITraceEventCallback, 0x3ed25501, 0x593f, 0x43e9, 0x8f,0x38, 0x3a,0xb4,0x6f,0x5a,0x4a,0x52)
361 #endif
362 #else
363 typedef struct ITraceEventCallbackVtbl {
364 BEGIN_INTERFACE
365
366 /*** IUnknown methods ***/
367 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
368 ITraceEventCallback *This,
369 REFIID riid,
370 void **ppvObject);
371
372 ULONG (STDMETHODCALLTYPE *AddRef)(
373 ITraceEventCallback *This);
374
375 ULONG (STDMETHODCALLTYPE *Release)(
376 ITraceEventCallback *This);
377
378 /*** ITraceEventCallback methods ***/
379 HRESULT (STDMETHODCALLTYPE *OnBeginProcessTrace)(
380 ITraceEventCallback *This,
381 ITraceEvent *HeaderEvent,
382 ITraceRelogger *Relogger);
383
384 HRESULT (STDMETHODCALLTYPE *OnFinalizeProcessTrace)(
385 ITraceEventCallback *This,
386 ITraceRelogger *Relogger);
387
388 HRESULT (STDMETHODCALLTYPE *OnEvent)(
389 ITraceEventCallback *This,
390 ITraceEvent *Event,
391 ITraceRelogger *Relogger);
392
393 END_INTERFACE
394 } ITraceEventCallbackVtbl;
395
396 interface ITraceEventCallback {
397 CONST_VTBL ITraceEventCallbackVtbl* lpVtbl;
398 };
399
400 #ifdef COBJMACROS
401 #ifndef WIDL_C_INLINE_WRAPPERS
402 /*** IUnknown methods ***/
403 #define ITraceEventCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
404 #define ITraceEventCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
405 #define ITraceEventCallback_Release(This) (This)->lpVtbl->Release(This)
406 /*** ITraceEventCallback methods ***/
407 #define ITraceEventCallback_OnBeginProcessTrace(This,HeaderEvent,Relogger) (This)->lpVtbl->OnBeginProcessTrace(This,HeaderEvent,Relogger)
408 #define ITraceEventCallback_OnFinalizeProcessTrace(This,Relogger) (This)->lpVtbl->OnFinalizeProcessTrace(This,Relogger)
409 #define ITraceEventCallback_OnEvent(This,Event,Relogger) (This)->lpVtbl->OnEvent(This,Event,Relogger)
410 #else
411 /*** IUnknown methods ***/
412 static FORCEINLINE HRESULT ITraceEventCallback_QueryInterface(ITraceEventCallback* This,REFIID riid,void **ppvObject) {
413 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
414 }
415 static FORCEINLINE ULONG ITraceEventCallback_AddRef(ITraceEventCallback* This) {
416 return This->lpVtbl->AddRef(This);
417 }
418 static FORCEINLINE ULONG ITraceEventCallback_Release(ITraceEventCallback* This) {
419 return This->lpVtbl->Release(This);
420 }
421 /*** ITraceEventCallback methods ***/
422 static FORCEINLINE HRESULT ITraceEventCallback_OnBeginProcessTrace(ITraceEventCallback* This,ITraceEvent *HeaderEvent,ITraceRelogger *Relogger) {
423 return This->lpVtbl->OnBeginProcessTrace(This,HeaderEvent,Relogger);
424 }
425 static FORCEINLINE HRESULT ITraceEventCallback_OnFinalizeProcessTrace(ITraceEventCallback* This,ITraceRelogger *Relogger) {
426 return This->lpVtbl->OnFinalizeProcessTrace(This,Relogger);
427 }
428 static FORCEINLINE HRESULT ITraceEventCallback_OnEvent(ITraceEventCallback* This,ITraceEvent *Event,ITraceRelogger *Relogger) {
429 return This->lpVtbl->OnEvent(This,Event,Relogger);
430 }
431 #endif
432 #endif
433
434 #endif
435
436
437 #endif /* __ITraceEventCallback_INTERFACE_DEFINED__ */
438
439 /*****************************************************************************
440 * ITraceRelogger interface
441 */
442 #ifndef __ITraceRelogger_INTERFACE_DEFINED__
443 #define __ITraceRelogger_INTERFACE_DEFINED__
444
445 DEFINE_GUID(IID_ITraceRelogger, 0xf754ad43, 0x3bcc, 0x4286, 0x80,0x09, 0x9c,0x5d,0xa2,0x14,0xe8,0x4e);
446 #if defined(__cplusplus) && !defined(CINTERFACE)
447 MIDL_INTERFACE("f754ad43-3bcc-4286-8009-9c5da214e84e")
448 ITraceRelogger : public IUnknown
449 {
450 virtual HRESULT STDMETHODCALLTYPE AddLogfileTraceStream(
451 BSTR LogfileName,
452 void *UserContext,
453 TRACEHANDLE *TraceHandle) = 0;
454
455 virtual HRESULT STDMETHODCALLTYPE AddRealtimeTraceStream(
456 BSTR LoggerName,
457 void *UserContext,
458 TRACEHANDLE *TraceHandle) = 0;
459
460 virtual HRESULT STDMETHODCALLTYPE RegisterCallback(
461 ITraceEventCallback *Callback) = 0;
462
463 virtual HRESULT STDMETHODCALLTYPE Inject(
464 ITraceEvent *Event) = 0;
465
466 virtual HRESULT STDMETHODCALLTYPE CreateEventInstance(
467 TRACEHANDLE TraceHandle,
468 ULONG Flags,
469 ITraceEvent **Event) = 0;
470
471 virtual HRESULT STDMETHODCALLTYPE ProcessTrace(
472 ) = 0;
473
474 virtual HRESULT STDMETHODCALLTYPE SetOutputFilename(
475 BSTR LogfileName) = 0;
476
477 virtual HRESULT STDMETHODCALLTYPE SetCompressionMode(
478 BOOLEAN CompressionMode) = 0;
479
480 virtual HRESULT STDMETHODCALLTYPE Cancel(
481 ) = 0;
482
483 };
484 #ifdef __CRT_UUID_DECL
485 __CRT_UUID_DECL(ITraceRelogger, 0xf754ad43, 0x3bcc, 0x4286, 0x80,0x09, 0x9c,0x5d,0xa2,0x14,0xe8,0x4e)
486 #endif
487 #else
488 typedef struct ITraceReloggerVtbl {
489 BEGIN_INTERFACE
490
491 /*** IUnknown methods ***/
492 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
493 ITraceRelogger *This,
494 REFIID riid,
495 void **ppvObject);
496
497 ULONG (STDMETHODCALLTYPE *AddRef)(
498 ITraceRelogger *This);
499
500 ULONG (STDMETHODCALLTYPE *Release)(
501 ITraceRelogger *This);
502
503 /*** ITraceRelogger methods ***/
504 HRESULT (STDMETHODCALLTYPE *AddLogfileTraceStream)(
505 ITraceRelogger *This,
506 BSTR LogfileName,
507 void *UserContext,
508 TRACEHANDLE *TraceHandle);
509
510 HRESULT (STDMETHODCALLTYPE *AddRealtimeTraceStream)(
511 ITraceRelogger *This,
512 BSTR LoggerName,
513 void *UserContext,
514 TRACEHANDLE *TraceHandle);
515
516 HRESULT (STDMETHODCALLTYPE *RegisterCallback)(
517 ITraceRelogger *This,
518 ITraceEventCallback *Callback);
519
520 HRESULT (STDMETHODCALLTYPE *Inject)(
521 ITraceRelogger *This,
522 ITraceEvent *Event);
523
524 HRESULT (STDMETHODCALLTYPE *CreateEventInstance)(
525 ITraceRelogger *This,
526 TRACEHANDLE TraceHandle,
527 ULONG Flags,
528 ITraceEvent **Event);
529
530 HRESULT (STDMETHODCALLTYPE *ProcessTrace)(
531 ITraceRelogger *This);
532
533 HRESULT (STDMETHODCALLTYPE *SetOutputFilename)(
534 ITraceRelogger *This,
535 BSTR LogfileName);
536
537 HRESULT (STDMETHODCALLTYPE *SetCompressionMode)(
538 ITraceRelogger *This,
539 BOOLEAN CompressionMode);
540
541 HRESULT (STDMETHODCALLTYPE *Cancel)(
542 ITraceRelogger *This);
543
544 END_INTERFACE
545 } ITraceReloggerVtbl;
546
547 interface ITraceRelogger {
548 CONST_VTBL ITraceReloggerVtbl* lpVtbl;
549 };
550
551 #ifdef COBJMACROS
552 #ifndef WIDL_C_INLINE_WRAPPERS
553 /*** IUnknown methods ***/
554 #define ITraceRelogger_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
555 #define ITraceRelogger_AddRef(This) (This)->lpVtbl->AddRef(This)
556 #define ITraceRelogger_Release(This) (This)->lpVtbl->Release(This)
557 /*** ITraceRelogger methods ***/
558 #define ITraceRelogger_AddLogfileTraceStream(This,LogfileName,UserContext,TraceHandle) (This)->lpVtbl->AddLogfileTraceStream(This,LogfileName,UserContext,TraceHandle)
559 #define ITraceRelogger_AddRealtimeTraceStream(This,LoggerName,UserContext,TraceHandle) (This)->lpVtbl->AddRealtimeTraceStream(This,LoggerName,UserContext,TraceHandle)
560 #define ITraceRelogger_RegisterCallback(This,Callback) (This)->lpVtbl->RegisterCallback(This,Callback)
561 #define ITraceRelogger_Inject(This,Event) (This)->lpVtbl->Inject(This,Event)
562 #define ITraceRelogger_CreateEventInstance(This,TraceHandle,Flags,Event) (This)->lpVtbl->CreateEventInstance(This,TraceHandle,Flags,Event)
563 #define ITraceRelogger_ProcessTrace(This) (This)->lpVtbl->ProcessTrace(This)
564 #define ITraceRelogger_SetOutputFilename(This,LogfileName) (This)->lpVtbl->SetOutputFilename(This,LogfileName)
565 #define ITraceRelogger_SetCompressionMode(This,CompressionMode) (This)->lpVtbl->SetCompressionMode(This,CompressionMode)
566 #define ITraceRelogger_Cancel(This) (This)->lpVtbl->Cancel(This)
567 #else
568 /*** IUnknown methods ***/
569 static FORCEINLINE HRESULT ITraceRelogger_QueryInterface(ITraceRelogger* This,REFIID riid,void **ppvObject) {
570 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
571 }
572 static FORCEINLINE ULONG ITraceRelogger_AddRef(ITraceRelogger* This) {
573 return This->lpVtbl->AddRef(This);
574 }
575 static FORCEINLINE ULONG ITraceRelogger_Release(ITraceRelogger* This) {
576 return This->lpVtbl->Release(This);
577 }
578 /*** ITraceRelogger methods ***/
579 static FORCEINLINE HRESULT ITraceRelogger_AddLogfileTraceStream(ITraceRelogger* This,BSTR LogfileName,void *UserContext,TRACEHANDLE *TraceHandle) {
580 return This->lpVtbl->AddLogfileTraceStream(This,LogfileName,UserContext,TraceHandle);
581 }
582 static FORCEINLINE HRESULT ITraceRelogger_AddRealtimeTraceStream(ITraceRelogger* This,BSTR LoggerName,void *UserContext,TRACEHANDLE *TraceHandle) {
583 return This->lpVtbl->AddRealtimeTraceStream(This,LoggerName,UserContext,TraceHandle);
584 }
585 static FORCEINLINE HRESULT ITraceRelogger_RegisterCallback(ITraceRelogger* This,ITraceEventCallback *Callback) {
586 return This->lpVtbl->RegisterCallback(This,Callback);
587 }
588 static FORCEINLINE HRESULT ITraceRelogger_Inject(ITraceRelogger* This,ITraceEvent *Event) {
589 return This->lpVtbl->Inject(This,Event);
590 }
591 static FORCEINLINE HRESULT ITraceRelogger_CreateEventInstance(ITraceRelogger* This,TRACEHANDLE TraceHandle,ULONG Flags,ITraceEvent **Event) {
592 return This->lpVtbl->CreateEventInstance(This,TraceHandle,Flags,Event);
593 }
594 static FORCEINLINE HRESULT ITraceRelogger_ProcessTrace(ITraceRelogger* This) {
595 return This->lpVtbl->ProcessTrace(This);
596 }
597 static FORCEINLINE HRESULT ITraceRelogger_SetOutputFilename(ITraceRelogger* This,BSTR LogfileName) {
598 return This->lpVtbl->SetOutputFilename(This,LogfileName);
599 }
600 static FORCEINLINE HRESULT ITraceRelogger_SetCompressionMode(ITraceRelogger* This,BOOLEAN CompressionMode) {
601 return This->lpVtbl->SetCompressionMode(This,CompressionMode);
602 }
603 static FORCEINLINE HRESULT ITraceRelogger_Cancel(ITraceRelogger* This) {
604 return This->lpVtbl->Cancel(This);
605 }
606 #endif
607 #endif
608
609 #endif
610
611
612 #endif /* __ITraceRelogger_INTERFACE_DEFINED__ */
613
614 /*****************************************************************************
615 * CTraceRelogger coclass
616 */
617
618 DEFINE_GUID(CLSID_CTraceRelogger, 0x7b40792d, 0x05ff, 0x44c4, 0x90,0x58, 0xf4,0x40,0xc7,0x1f,0x17,0xd4);
619
620 #ifdef __cplusplus
621 class DECLSPEC_UUID("7b40792d-05ff-44c4-9058-f440c71f17d4") CTraceRelogger;
622 #ifdef __CRT_UUID_DECL
623 __CRT_UUID_DECL(CTraceRelogger, 0x7b40792d, 0x05ff, 0x44c4, 0x90,0x58, 0xf4,0x40,0xc7,0x1f,0x17,0xd4)
624 #endif
625 #endif
626
627 /* Begin additional prototypes for all interfaces */
628
629
630 /* End additional prototypes */
631
632 #ifdef __cplusplus
633 }
634 #endif
635
636 #endif /* __relogger_h__ */