Tracer  v0.0.1
A platform independant stack trace generator
tracer::Tracer Class Reference

Backtrace generator. More...

#include <Tracer.hpp>

Public Member Functions

 Tracer (TraceerEngines engine, DebuggerEngines debugger)
 Constructor, Sets the engines. More...
 
 Tracer ()
 Default constructor; uses the first entrie from getAvaliableEngines and getAvaliableDebuggers.
 
 Tracer (const Tracer &)=delete
 
 Tracer (Tracer &&)=delete
 
Traceroperator= (const Tracer &)=delete
 
Traceroperator= (Tracer &&)=delete
 
std::vector< Frame > * trace ()
 Generates the stack trace. More...
 
std::vector< Frame > * getFrames ()
 Returns a pointer to the stack frames.
 
std::vector< Frame > * operator() ()
 Wrapper for trace.
 
AbstractTracergetTracerEngine ()
 Returns the internal tracer engine.
 
AbstractDebugInfogetDebuggerEngine ()
 Returns the internal debug engine.
 

Static Public Member Functions

static std::vector< TraceerEnginesgetAvailableEngines ()
 Returns a list of available tracer engines.
 
static std::vector< DebuggerEnginesgetAvailableDebuggers ()
 Returns a list of available debug info engines.
 

Detailed Description

Backtrace generator.

This class generates a Backtrace using different backends and stores it in the platform independent Frame struct

Definition at line 48 of file Tracer.hpp.

Constructor & Destructor Documentation

◆ Tracer()

Tracer::Tracer ( TraceerEngines  engine,
DebuggerEngines  debugger 
)

Constructor, Sets the engines.

Parameters
engineThe tracer engine to use
debuggerThe debugger engine to use
Note
Both engine and debugger must be in the list returned form getAvaliableEngines and getAvaliableDebuggers
If not the dummy engines will be used

Definition at line 73 of file Tracer.cpp.

Member Function Documentation

◆ trace()

vector< Frame > * Tracer::trace ( )

Generates the stack trace.

Returns
A pointer to the generated frames

Definition at line 145 of file Tracer.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

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