Files
UnrealEngineUWP/Engine/Source/Developer/CrashDebugHelper/Private/Windows/WindowsPlatformStackWalkExt.h
Ben Marsh 149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00

43 lines
1.0 KiB
C++

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#pragma once
#undef PLATFORM_SUPPORTS_STACK_SYMBOLS
#define PLATFORM_SUPPORTS_STACK_SYMBOLS 1
class FCrashInfo;
class FCrashModuleInfo;
/**
* Windows implementation of stack walking using the COM interface IDebugClient5.
*/
struct FWindowsPlatformStackWalkExt
{
/** Default constructor. */
FWindowsPlatformStackWalkExt( FCrashInfo& InCrashInfo );
/** Destructor. */
~FWindowsPlatformStackWalkExt();
bool InitStackWalking();
void ShutdownStackWalking();
void GetExeFileVersionAndModuleList( FCrashModuleInfo& out_ExeFileVersion );
void InitSymbols();
bool OpenDumpFile( const FString& DumpFileName );
void SetSymbolPathsFromModules();
void GetModuleInfoDetailed();
void GetSystemInfo();
void GetThreadInfo();
void GetExceptionInfo();
bool GetCallstacks();
bool IsOffsetWithinModules( uint64 Offset );
static FString ExtractRelativePath( const TCHAR* BaseName, TCHAR* FullName );
protected:
/** Reference to the crash info. */
FCrashInfo& CrashInfo;
};