CbmRoot
Loading...
Searching...
No Matches
cbm::ca::tools::Debugger Class Reference

#include <CaToolsDebugger.h>

Inheritance diagram for cbm::ca::tools::Debugger:
[legend]
Collaboration diagram for cbm::ca::tools::Debugger:
[legend]

Public Member Functions

 Debugger (const char *fileName="CaDebug.root")
 Default constructor.
 
 ~Debugger ()
 Destructor.
 
 Debugger (const Debugger &other)=delete
 Copy constructor.
 
 Debugger (Debugger &&other)=delete
 Move constructor.
 
Debuggeroperator= (const Debugger &other)=delete
 Copy assignment operator.
 
Debuggeroperator= (Debugger &&other)=delete
 Move assignment operator.
 
void Write () override
 Write ntuples to the file.
 
void AddNtuple (const char *name, const char *varlist) override
 Set new ntuple.
 
void FillNtuple (const char *name, float v[]) override
 Add an entry to ntuple.
 
template<typename... Targs>
void FillNtuple (const char *name, Targs... args)
 Add an entry to ntuple.
 

Static Public Member Functions

static DebuggerInstance ()
 Instance.
 
static void SetInstance (std::shared_ptr< Debugger > instance)
 Set instance.
 

Private Member Functions

int GetNtupleIndex (const char *name)
 Get ntuple index.
 
template<typename T, typename... Targs>
void FillFloatArray (float *v, T val, Targs... args)
 
template<typename T>
void FillFloatArray (float *v, T last)
 

Private Attributes

std::string fFileName {"CaDebug.root"}
 
bool fIsWritten {0}
 
TFile * fFile {nullptr}
 
std::vector< TNtuple * > fNtuples
 

Detailed Description

Class ca::tools::Debugger helps to debug CA tracking

Definition at line 25 of file CaToolsDebugger.h.

Constructor & Destructor Documentation

◆ Debugger() [1/3]

cbm::ca::tools::Debugger::Debugger ( const char * fileName = "CaDebug.root")
inline

Default constructor.

Definition at line 33 of file CaToolsDebugger.h.

References Debugger(), and fFileName.

Referenced by Debugger(), Debugger(), Debugger(), operator=(), and operator=().

◆ ~Debugger()

Debugger::~Debugger ( )
virtual

Destructor.

Destructor

Reimplemented from cbm::algo::ca::utils::Debugger.

Definition at line 56 of file CaToolsDebugger.cxx.

References fFile, and fIsWritten.

◆ Debugger() [2/3]

cbm::ca::tools::Debugger::Debugger ( const Debugger & other)
delete

Copy constructor.

References Debugger().

◆ Debugger() [3/3]

cbm::ca::tools::Debugger::Debugger ( Debugger && other)
delete

Move constructor.

References Debugger().

Member Function Documentation

◆ AddNtuple()

void Debugger::AddNtuple ( const char * name,
const char * varlist )
overridevirtual

Set new ntuple.

add ntuple

Implements cbm::algo::ca::utils::Debugger.

Definition at line 64 of file CaToolsDebugger.cxx.

References fFile, fFileName, fNtuples, and GetNtupleIndex().

◆ FillFloatArray() [1/2]

template<typename T>
void cbm::algo::ca::utils::Debugger::FillFloatArray ( float * v,
T last )
inlineprivateinherited

Definition at line 82 of file CaDebugger.h.

References v.

◆ FillFloatArray() [2/2]

template<typename T, typename... Targs>
void cbm::algo::ca::utils::Debugger::FillFloatArray ( float * v,
T val,
Targs... args )
inlineprivateinherited

Definition at line 73 of file CaDebugger.h.

References FillFloatArray(), and v.

Referenced by FillFloatArray(), and FillNtuple().

◆ FillNtuple() [1/2]

template<typename... Targs>
void cbm::algo::ca::utils::Debugger::FillNtuple ( const char * name,
Targs... args )
inlineinherited

Add an entry to ntuple.

Definition at line 62 of file CaDebugger.h.

References FillFloatArray(), FillNtuple(), and v.

◆ FillNtuple() [2/2]

void Debugger::FillNtuple ( const char * name,
float v[] )
overridevirtual

Add an entry to ntuple.

Implements cbm::algo::ca::utils::Debugger.

Definition at line 91 of file CaToolsDebugger.cxx.

References fNtuples, GetNtupleIndex(), and v.

◆ GetNtupleIndex()

int Debugger::GetNtupleIndex ( const char * name)
private

Get ntuple index.

Definition at line 79 of file CaToolsDebugger.cxx.

References fNtuples.

Referenced by AddNtuple(), and FillNtuple().

◆ Instance()

◆ operator=() [1/2]

Debugger & cbm::ca::tools::Debugger::operator= ( const Debugger & other)
delete

Copy assignment operator.

References Debugger().

◆ operator=() [2/2]

Debugger & cbm::ca::tools::Debugger::operator= ( Debugger && other)
delete

Move assignment operator.

References Debugger(), and v.

◆ SetInstance()

void cbm::algo::ca::utils::Debugger::SetInstance ( std::shared_ptr< Debugger > instance)
staticinherited

Set instance.

Definition at line 57 of file CaDebugger.cxx.

References cbm::algo::ca::utils::gInstance.

Referenced by DebuggerInitialiser::DebuggerInitialiser().

◆ Write()

void Debugger::Write ( )
overridevirtual

Write ntuples to the file.

Write data to file

Implements cbm::algo::ca::utils::Debugger.

Definition at line 42 of file CaToolsDebugger.cxx.

References fFile, fIsWritten, and fNtuples.

Member Data Documentation

◆ fFile

TFile* cbm::ca::tools::Debugger::fFile {nullptr}
private

Definition at line 67 of file CaToolsDebugger.h.

Referenced by AddNtuple(), Write(), and ~Debugger().

◆ fFileName

std::string cbm::ca::tools::Debugger::fFileName {"CaDebug.root"}
private

Definition at line 65 of file CaToolsDebugger.h.

Referenced by AddNtuple(), and Debugger().

◆ fIsWritten

bool cbm::ca::tools::Debugger::fIsWritten {0}
private

Definition at line 66 of file CaToolsDebugger.h.

Referenced by Write(), and ~Debugger().

◆ fNtuples

std::vector<TNtuple*> cbm::ca::tools::Debugger::fNtuples
private

Definition at line 68 of file CaToolsDebugger.h.

Referenced by AddNtuple(), FillNtuple(), GetNtupleIndex(), and Write().


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