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