57 lines
1.2 KiB
C
57 lines
1.2 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
|
|
);
|