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.
63 lines
2.3 KiB
63 lines
2.3 KiB
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//////////////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Written by Zoltan Csizmadia, [email protected]
|
|
// For companies(Austin,TX): If you would like to get my resume, send an email.
|
|
//
|
|
// The source is free, but if you want to use it, mention my name and e-mail address
|
|
//
|
|
// History:
|
|
// 1.0 Initial version Zoltan Csizmadia
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// ExtendedTrace.h
|
|
//
|
|
|
|
#ifndef EXTENDEDTRACE_H_INCLUDED
|
|
#define EXTENDEDTRACE_H_INCLUDED
|
|
|
|
#if defined(_DEBUG) && defined(WIN32)
|
|
|
|
|
|
#pragma comment( lib, "imagehlp.lib" )
|
|
|
|
#if defined(_AFX) || defined(_AFXDLL)
|
|
#define TRACEF TRACE
|
|
#else
|
|
#define TRACEF OutputDebugStringFormat
|
|
void OutputDebugStringFormat( PRINTF_FORMAT_STRING LPCTSTR, ... );
|
|
#endif
|
|
|
|
#define EXTENDEDTRACEINITIALIZE( IniSymbolPath ) InitSymInfo( IniSymbolPath )
|
|
#define EXTENDEDTRACEUNINITIALIZE() UninitSymInfo()
|
|
#define SRCLINKTRACECUSTOM( Msg, File, Line) SrcLinkTrace( Msg, File, Line )
|
|
#define SRCLINKTRACE( Msg ) SrcLinkTrace( Msg, __FILE__, __LINE__ )
|
|
#define FNPARAMTRACE() FunctionParameterInfo()
|
|
#define STACKTRACEMSG( Msg ) StackTrace( Msg )
|
|
#define STACKTRACE() StackTrace( GetCurrentThread(), _T("") )
|
|
#define THREADSTACKTRACEMSG( hThread, Msg ) StackTrace( hThread, Msg )
|
|
#define THREADSTACKTRACE( hThread ) StackTrace( hThread, _T("") )
|
|
|
|
BOOL InitSymInfo( PCSTR );
|
|
BOOL UninitSymInfo();
|
|
void SrcLinkTrace( LPCTSTR, LPCTSTR, ULONG );
|
|
void StackTrace( HANDLE, LPCTSTR );
|
|
void FunctionParameterInfo();
|
|
|
|
#else
|
|
|
|
#define EXTENDEDTRACEINITIALIZE( IniSymbolPath ) ((void)0)
|
|
#define EXTENDEDTRACEUNINITIALIZE() ((void)0)
|
|
#define TRACEF ((void)0)
|
|
#define SRCLINKTRACECUSTOM( Msg, File, Line) ((void)0)
|
|
#define SRCLINKTRACE( Msg ) ((void)0)
|
|
#define FNPARAMTRACE() ((void)0)
|
|
#define STACKTRACEMSG( Msg ) ((void)0)
|
|
#define STACKTRACE() ((void)0)
|
|
#define THREADSTACKTRACEMSG( hThread, Msg ) ((void)0)
|
|
#define THREADSTACKTRACE( hThread ) ((void)0)
|
|
|
|
#endif
|
|
|
|
#endif
|