123 lines
2 KiB
C++
123 lines
2 KiB
C++
|
/*++
|
||
|
|
||
|
Copyright (c) 1998-1999 Microsoft Corporation
|
||
|
All rights reserved.
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
dbgback.hxx
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Debug backtrace device header file
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Steve Kiraly (SteveKi) 16-May-1998
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
#ifndef _DBGBACK_HXX_
|
||
|
#define _DBGBACK_HXX_
|
||
|
|
||
|
DEBUG_NS_BEGIN
|
||
|
|
||
|
class TDebugImagehlp;
|
||
|
|
||
|
class TDebugDeviceBacktrace : public TDebugDevice {
|
||
|
|
||
|
public:
|
||
|
|
||
|
TDebugDeviceBacktrace::
|
||
|
TDebugDeviceBacktrace(
|
||
|
IN LPCTSTR pszConfiguration,
|
||
|
IN EDebugType eDebugType
|
||
|
);
|
||
|
|
||
|
TDebugDeviceBacktrace::
|
||
|
~TDebugDeviceBacktrace(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
TDebugDeviceBacktrace::
|
||
|
bValid(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
TDebugDeviceBacktrace::
|
||
|
bOutput(
|
||
|
IN UINT uSize,
|
||
|
IN LPBYTE pBuffer
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
TDebugDeviceBacktrace::
|
||
|
InitializeOutputDevice(
|
||
|
IN UINT uDevice,
|
||
|
IN LPCTSTR pszConfiguration,
|
||
|
IN UINT uCharacterType
|
||
|
);
|
||
|
|
||
|
private:
|
||
|
|
||
|
enum Constants
|
||
|
{
|
||
|
kMaxDepth = 256,
|
||
|
kMaxSymbolName = 256,
|
||
|
};
|
||
|
|
||
|
//
|
||
|
// Copying and assignment are not defined.
|
||
|
//
|
||
|
TDebugDeviceBacktrace::
|
||
|
TDebugDeviceBacktrace(
|
||
|
const TDebugDeviceBacktrace &rhs
|
||
|
);
|
||
|
|
||
|
const TDebugDeviceBacktrace &
|
||
|
TDebugDeviceBacktrace::
|
||
|
operator=(
|
||
|
const TDebugDeviceBacktrace &rhs
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
TDebugDeviceBacktrace::
|
||
|
CollectDeviceArguments(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
TDebugDeviceBacktrace::
|
||
|
OutputBacktrace(
|
||
|
IN UINT uCount,
|
||
|
IN PVOID *apvBacktrace
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
TDebugDeviceBacktrace::
|
||
|
InitSympath(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
TDebugDeviceBacktrace::
|
||
|
WriteSympathToOutputDevice(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
TDebugImagehlp *_pDbgImagehlp;
|
||
|
BOOL _bValid;
|
||
|
BOOL _bAnsi;
|
||
|
TDebugDevice *_pDbgDevice;
|
||
|
BOOL _bDisplaySymbols;
|
||
|
TDebugString _strSympath;
|
||
|
|
||
|
};
|
||
|
|
||
|
DEBUG_NS_END
|
||
|
|
||
|
#endif
|