windows-nt/Source/XPSP1/NT/net/atm/lane/sys/tracelog.h
2020-09-26 16:20:57 +08:00

47 lines
1 KiB
C

//
// 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_