mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.0 KiB
46 lines
1.0 KiB
//
|
|
// tracelog.h
|
|
//
|
|
// Copyright (c) 1996 FORE Systems, Inc.
|
|
// All rights reserved.
|
|
//
|
|
// THIS SOURCE CODE CONTAINS CONFIDENTIAL INFORMATION THAT IS OWNED BY FORE
|
|
// SYSTEMS, INC. AND MAY NOT BE COPIED, DISCLOSED OR OTHERWISE USED WITHOUT
|
|
// THE EXPRESS WRITTEN CONSENT OF FORE SYSTEMS, INC.
|
|
//
|
|
|
|
#ifndef _FORE_TRACELOG_H_
|
|
#define _FORE_TRACELOG_H_
|
|
|
|
#define MAX_TRACELOG_PARAMS 8
|
|
|
|
#define TL_GET_PARAM_COUNT(eid) ((eid)&0xF)
|
|
#define TL_GET_EVENT(eid) ((eid)>>4)
|
|
#define TL_BUILD_EVENT_ID(ev,p) (((ev)<<4)|((p)&0xF))
|
|
|
|
typedef struct _TraceEntry
|
|
{
|
|
unsigned long EventId;
|
|
unsigned long Time;
|
|
unsigned long Params[MAX_TRACELOG_PARAMS];
|
|
} TRACEENTRY, *PTRACEENTRY;
|
|
|
|
typedef struct _TraceLog
|
|
{
|
|
unsigned char *Storage;
|
|
unsigned long StorageSizeBytes;
|
|
PTRACEENTRY First;
|
|
PTRACEENTRY Last;
|
|
PTRACEENTRY Current;
|
|
} TRACELOG, *PTRACELOG;
|
|
|
|
extern void
|
|
InitTraceLog(PTRACELOG TraceLog, unsigned char *Storage,
|
|
unsigned long StorageSizeBytes);
|
|
|
|
extern void
|
|
TraceLogWrite(PTRACELOG TraceLog, unsigned long EventId, ...);
|
|
|
|
#endif // _FORE_TRACELOG_H_
|
|
|
|
|