57 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			57 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								//------------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								// File: perflog.h
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// Desc: Performance logging framework.
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// Copyright (c) 1992-2001 Microsoft Corporation.  All rights reserved.
							 | 
						||
| 
								 | 
							
								//------------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								typedef struct _PERFLOG_LOGGING_PARAMS {
							 | 
						||
| 
								 | 
							
								    GUID ControlGuid;
							 | 
						||
| 
								 | 
							
								    void (*OnStateChanged)(void);
							 | 
						||
| 
								 | 
							
								    ULONG NumberOfTraceGuids;
							 | 
						||
| 
								 | 
							
								    TRACE_GUID_REGISTRATION TraceGuids[ANYSIZE_ARRAY];
							 | 
						||
| 
								 | 
							
								} PERFLOG_LOGGING_PARAMS, *PPERFLOG_LOGGING_PARAMS;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								BOOL
							 | 
						||
| 
								 | 
							
								PerflogInitIfEnabled(
							 | 
						||
| 
								 | 
							
								    IN HINSTANCE hInstance,
							 | 
						||
| 
								 | 
							
								    __in PPERFLOG_LOGGING_PARAMS LogParams
							 | 
						||
| 
								 | 
							
								    );
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								BOOL
							 | 
						||
| 
								 | 
							
								PerflogInitialize (
							 | 
						||
| 
								 | 
							
								    __in PPERFLOG_LOGGING_PARAMS LogParams
							 | 
						||
| 
								 | 
							
								    );
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								VOID
							 | 
						||
| 
								 | 
							
								PerflogShutdown (
							 | 
						||
| 
								 | 
							
								    VOID
							 | 
						||
| 
								 | 
							
								    );
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								VOID
							 | 
						||
| 
								 | 
							
								PerflogTraceEvent (
							 | 
						||
| 
								 | 
							
								    __in PEVENT_TRACE_HEADER Event
							 | 
						||
| 
								 | 
							
								    );
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								extern ULONG PerflogEnableFlags;
							 | 
						||
| 
								 | 
							
								extern UCHAR PerflogEnableLevel;
							 | 
						||
| 
								 | 
							
								extern ULONG PerflogModuleLevel;
							 | 
						||
| 
								 | 
							
								extern TRACEHANDLE PerflogTraceHandle;
							 | 
						||
| 
								 | 
							
								extern TRACEHANDLE PerflogRegHandle;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define PerflogTracingEnabled() (PerflogTraceHandle != 0)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define PerflogEvent( _x_ ) PerflogTraceEventLevel _x_
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								VOID
							 | 
						||
| 
								 | 
							
								PerflogTraceEventLevel(
							 | 
						||
| 
								 | 
							
								    ULONG Level,
							 | 
						||
| 
								 | 
							
								    __in PEVENT_TRACE_HEADER Event
							 | 
						||
| 
								 | 
							
								    );
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								VOID
							 | 
						||
| 
								 | 
							
								PerflogTraceEvent (
							 | 
						||
| 
								 | 
							
								    __in PEVENT_TRACE_HEADER Event
							 | 
						||
| 
								 | 
							
								    );
							 |