Source code of Windows XP (NT5)
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.
|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1995.
//
// File: debugp.h
//
// Contents:
//
// Classes:
//
// Functions:
//
// History: 3-21-95 RichardW Created
//
//----------------------------------------------------------------------------
#ifndef __DEBUGP_H__
#define __DEBUGP_H__
#define DEBUGMOD_CHANGE_INFOLEVEL 0x00000001
#define DEBUGMOD_BUILTIN_MODULE 0x00000002
struct _DebugHeader;
typedef struct _DebugModule { struct _DebugModule * pNext; DWORD * pInfoLevel; DWORD fModule; DWORD InfoLevel; struct _DebugHeader * pHeader; DWORD TotalOutput; DWORD Reserved; PCHAR pModuleName; PCHAR TagLevels[32]; } DebugModule, * PDebugModule;
#define DEBUG_TAG 'gubD'
#define DEBUG_NO_DEBUGIO 0x00000001 // Do not use OutputDebugString
#define DEBUG_TIMESTAMP 0x00000002 // Stamp date/time
#define DEBUG_DEBUGGER_OK 0x00000004 // We're running in a debugger
#define DEBUG_LOGFILE 0x00000008 // Send to log file
#define DEBUG_AUTO_DEBUG 0x00000010 // Start up in debugger
#define DEBUG_USE_KDEBUG 0x00000020 // Use KD
#define DEBUG_DISABLE_ASRT 0x00000100 // Disable asserts
#define DEBUG_PROMPTS 0x00000200 // No prompts for asserts
#define DEBUG_MODULE_NAME "DsysDebug"
typedef BOOLEAN (NTAPI * HEAPVALIDATE)(VOID);
#define DEBUG_TEXT_BUFFER_SIZE (512 - sizeof( PVOID ))
typedef struct _DEBUG_TEXT_BUFFER { struct _DEBUG_TEXT_BUFFER * Next ; CHAR TextBuffer[ DEBUG_TEXT_BUFFER_SIZE ]; } DEBUG_TEXT_BUFFER, * PDEBUG_TEXT_BUFFER ;
typedef struct _DebugHeader { DWORD Tag; // Check tag
DWORD fDebug; // Global Flags
PVOID pvSection; // Base address of section
HANDLE hMapping; // Mapping handle
HANDLE hLogFile; // Log file handle
PDebugModule pGlobalModule; // Global Flags module
PDebugModule pModules; // List of modules
HEAPVALIDATE pfnValidate; // Heap Validator
PVOID pFreeList; // Free list for allocator
PCHAR pszExeName; // Exe Name
PDEBUG_TEXT_BUFFER pBufferList ; // List of debug string buffers
CRITICAL_SECTION csDebug; // Critical section
DWORD CommitRange; // Range of memory committed
DWORD ReserveRange; // Range of memory reserved
DWORD PageSize; // Page size;
DWORD TotalWritten; // Total Output of debug stuff
DWORD ModuleCount ; // Module Count (not including builtins)
DEBUG_TEXT_BUFFER DefaultBuffer ; // One default buffer
} DebugHeader, * PDebugHeader;
#endif
|