Ark Server API (ASE) - Wiki
Loading...
Searching...
No Matches
API::PdbReader Class Reference

#include <PDBReader.h>

Public Member Functions

 PdbReader ()=default
 
 ~PdbReader ()=default
 
void Read (const std::wstring &path, std::unordered_map< std::string, intptr_t > *offsets_dump, std::unordered_map< std::string, BitField > *bitfields_dump)
 

Private Member Functions

void DumpStructs (IDiaSymbol *)
 
void DumpFunctions (IDiaSymbol *)
 
void DumpGlobalVariables (IDiaSymbol *)
 
void DumpType (IDiaSymbol *, const std::string &, int) const
 
void DumpData (IDiaSymbol *, const std::string &) const
 

Static Private Member Functions

static void LoadDataFromPdb (const std::wstring &, IDiaDataSource **, IDiaSession **, IDiaSymbol **)
 
static std::string GetSymbolNameString (IDiaSymbol *)
 
static uint32_t GetSymbolId (IDiaSymbol *)
 
static void Cleanup (IDiaSymbol *, IDiaSession *, IDiaDataSource *)
 

Private Attributes

std::unordered_map< std::string, intptr_t > * offsets_dump_ {nullptr}
 
std::unordered_map< std::string, BitField > * bitfields_dump_ {nullptr}
 
std::unordered_set< uint32_t > visited_
 

Detailed Description

Definition at line 12 of file PDBReader.h.

Constructor & Destructor Documentation

◆ PdbReader()

API::PdbReader::PdbReader ( )
default

◆ ~PdbReader()

API::PdbReader::~PdbReader ( )
default

Member Function Documentation

◆ Cleanup()

void API::PdbReader::Cleanup ( IDiaSymbol * symbol,
IDiaSession * session,
IDiaDataSource * source )
staticprivate

Definition at line 365 of file PDBReader.cpp.

◆ DumpData()

void API::PdbReader::DumpData ( IDiaSymbol * symbol,
const std::string & structure ) const
private

Definition at line 289 of file PDBReader.cpp.

◆ DumpFunctions()

void API::PdbReader::DumpFunctions ( IDiaSymbol * g_symbol)
private

Definition at line 170 of file PDBReader.cpp.

◆ DumpGlobalVariables()

void API::PdbReader::DumpGlobalVariables ( IDiaSymbol * g_symbol)
private

Definition at line 219 of file PDBReader.cpp.

◆ DumpStructs()

void API::PdbReader::DumpStructs ( IDiaSymbol * g_symbol)
private

Definition at line 143 of file PDBReader.cpp.

◆ DumpType()

void API::PdbReader::DumpType ( IDiaSymbol * symbol,
const std::string & structure,
int indent ) const
private

Definition at line 254 of file PDBReader.cpp.

◆ GetSymbolId()

uint32_t API::PdbReader::GetSymbolId ( IDiaSymbol * symbol)
staticprivate

Definition at line 357 of file PDBReader.cpp.

◆ GetSymbolNameString()

std::string API::PdbReader::GetSymbolNameString ( IDiaSymbol * symbol)
staticprivate

Definition at line 337 of file PDBReader.cpp.

◆ LoadDataFromPdb()

void API::PdbReader::LoadDataFromPdb ( const std::wstring & path,
IDiaDataSource ** dia_source,
IDiaSession ** session,
IDiaSymbol ** symbol )
staticprivate

Definition at line 82 of file PDBReader.cpp.

◆ Read()

void API::PdbReader::Read ( const std::wstring & path,
std::unordered_map< std::string, intptr_t > * offsets_dump,
std::unordered_map< std::string, BitField > * bitfields_dump )

Definition at line 44 of file PDBReader.cpp.

Member Data Documentation

◆ bitfields_dump_

std::unordered_map<std::string, BitField>* API::PdbReader::bitfields_dump_ {nullptr}
private

Definition at line 36 of file PDBReader.h.

◆ offsets_dump_

std::unordered_map<std::string, intptr_t>* API::PdbReader::offsets_dump_ {nullptr}
private

Definition at line 35 of file PDBReader.h.

◆ visited_

std::unordered_set<uint32_t> API::PdbReader::visited_
private

Definition at line 38 of file PDBReader.h.


The documentation for this class was generated from the following files: