//------------------------------------------------------------------------------ // 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 );