Windows2003-3790/sdktools/systrack/debug.hxx
2020-09-30 16:53:55 +02:00

59 lines
1.6 KiB
C++

//
// Debugging information header
// Copyright (c) Microsoft Corporation, 1997
//
//
// header: debug.hxx
// author: silviuc
// created: Thu Jun 05 18:34:28 1997
//
#ifndef _DEBUG_HXX_INCLUDED_
#define _DEBUG_HXX_INCLUDED_
//
// This debugging header should be included in every module of a project
// in which debugging information is required.
// The module that will contain definitions from `debug.hxx'
// should contain the following definition before the inclusion:
//
// #define DEBUGINFO_DEFINITION_MODULE
//
// The main purpose is to offer some global values that can be queried
// after a debug break, especially a non-source level debugger (kdbg, ntsd).
// This is a very natural thing to do for programs in stress environments
// where you usually debug the test through a kernel debugger.
//
//
// DEFINE_DEBUGINFO_VARIABLE (name, type, default)
//
// Defines a variable having a name starting with `debuginfo'.
//
#ifdef DEBUGINFO_DEFINITION_MODULE
#define DEFINE_DEBUGINFO_VARIABLE(name, type, default) \
type debuginfo_##name = default
#else
#define DEFINE_DEBUGINFO_VARIABLE(name, type, default) \
extern type debuginfo_##name = default
#endif // #ifdef DEBUGINFO_DEFINITION_MODULE
//
// Here come the definitions of debug variables ...
//
// Example: DEFINE_DEBUGINFO_VARIABLE (status, char *, "alive");
//
DEFINE_DEBUGINFO_VARIABLE (status, char *, "alive");
// ...
#endif // #ifndef _DEBUG_HXX_INCLUDED_
//
// end of header: debug.hxx
//