GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TParsingDiagnostics Class Reference

Detailed Description

This class gathers various diagnostics calculated during the sorting from a raw file to a fragment tree and analysis tree and provides convenient methods of printing and/or visualizing them.

Definition at line 74 of file TParsingDiagnostics.h.

Public Member Functions

 TParsingDiagnostics ()
 
 TParsingDiagnostics (const TParsingDiagnostics &)
 
 TParsingDiagnostics (TParsingDiagnostics &&) noexcept=default
 
 ~TParsingDiagnostics ()
 
void BadFragment (Short_t detType)
 
void Clear (Option_t *opt="all") override
 
void Copy (TObject &) const override
 
void Draw (Option_t *opt="") override
 
void GoodFragment (const std::shared_ptr< const TFragment > &)
 
void GoodFragment (Short_t detType)
 
Long_t NumberOfBadFragments (Short_t detType)
 
Long_t NumberOfGoodFragments (Short_t detType)
 
TParsingDiagnosticsoperator= (const TParsingDiagnostics &)=default
 
TParsingDiagnosticsoperator= (TParsingDiagnostics &&) noexcept=default
 
ULong64_t PPGCycleLength () const
 
void Print (Option_t *opt="") const override
 
void ReadPPG (TPPG *)
 
void WriteToFile (const char *) const
 

Static Public Member Functions

static TParsingDiagnosticsAddCurrent ()
 
static TParsingDiagnosticsGet (bool verbose=false)
 
static TParsingDiagnosticsGetAll ()
 
static void PrintDirectory ()
 
static void Set (TParsingDiagnostics *val)
 

Private Attributes

std::unordered_map< UInt_t, TParsingDiagnosticsDatafChannelAddressData
 
TH1F * fIdHist {nullptr}
 
time_t fMaxDaqTimeStamp {0}
 
Int_t fMaxNetworkPacketNumber {0}
 
time_t fMinDaqTimeStamp {0}
 
Int_t fMinNetworkPacketNumber {0x7fffffff}
 
std::unordered_map< Short_t, Long_t > fNumberOfBadFragments
 
std::unordered_map< Short_t, Long_t > fNumberOfGoodFragments
 
Long_t fNumberOfNetworkPackets {0}
 
ULong64_t fPPGCycleLength {0}
 

Static Private Attributes

static TDirectory * fDir
 
static TParsingDiagnosticsfSingleton
 

Friends

class TSingleton< TParsingDiagnostics >
 
+ Inheritance diagram for TParsingDiagnostics:
+ Collaboration diagram for TParsingDiagnostics:

Constructor & Destructor Documentation

◆ TParsingDiagnostics() [1/3]

TParsingDiagnostics::TParsingDiagnostics ( )

Definition at line 52 of file TParsingDiagnostics.cxx.

References Clear().

◆ TParsingDiagnostics() [2/3]

TParsingDiagnostics::TParsingDiagnostics ( const TParsingDiagnostics & )

Definition at line 57 of file TParsingDiagnostics.cxx.

References Clear().

◆ TParsingDiagnostics() [3/3]

TParsingDiagnostics::TParsingDiagnostics ( TParsingDiagnostics && )
defaultnoexcept

◆ ~TParsingDiagnostics()

TParsingDiagnostics::~TParsingDiagnostics ( )

Definition at line 62 of file TParsingDiagnostics.cxx.

References fIdHist.

Member Function Documentation

◆ AddCurrent()

static TParsingDiagnostics * TSingleton< TParsingDiagnostics >::AddCurrent ( )
inlinestaticinherited

Definition at line 141 of file TSingleton.h.

◆ BadFragment()

◆ Clear()

◆ Copy()

void TParsingDiagnostics::Copy ( TObject & obj) const
override

◆ Draw()

void TParsingDiagnostics::Draw ( Option_t * opt = "")
override

Definition at line 159 of file TParsingDiagnostics.cxx.

References fChannelAddressData, and fIdHist.

◆ Get()

◆ GetAll()

static TParsingDiagnostics * TSingleton< TParsingDiagnostics >::GetAll ( )
inlinestaticinherited

Definition at line 66 of file TSingleton.h.

◆ GoodFragment() [1/2]

◆ GoodFragment() [2/2]

void TParsingDiagnostics::GoodFragment ( Short_t detType)
inline

Definition at line 112 of file TParsingDiagnostics.h.

References fNumberOfGoodFragments.

◆ NumberOfBadFragments()

Long_t TParsingDiagnostics::NumberOfBadFragments ( Short_t detType)
inline

Definition at line 128 of file TParsingDiagnostics.h.

References fNumberOfBadFragments.

◆ NumberOfGoodFragments()

Long_t TParsingDiagnostics::NumberOfGoodFragments ( Short_t detType)
inline

Definition at line 121 of file TParsingDiagnostics.h.

References fNumberOfGoodFragments.

◆ operator=() [1/2]

TParsingDiagnostics & TParsingDiagnostics::operator= ( const TParsingDiagnostics & )
default

◆ operator=() [2/2]

TParsingDiagnostics & TParsingDiagnostics::operator= ( TParsingDiagnostics && )
defaultnoexcept

◆ PPGCycleLength()

ULong64_t TParsingDiagnostics::PPGCycleLength ( ) const
inline

Definition at line 136 of file TParsingDiagnostics.h.

References fPPGCycleLength.

◆ Print()

◆ PrintDirectory()

static void TSingleton< TParsingDiagnostics >::PrintDirectory ( )
inlinestaticinherited

Definition at line 171 of file TSingleton.h.

◆ ReadPPG()

void TParsingDiagnostics::ReadPPG ( TPPG * ppg)

store different TPPG diagnostics like cycle length, length of each state, offset, how often each state was found

Definition at line 150 of file TParsingDiagnostics.cxx.

References fPPGCycleLength, and TPPG::GetCycleLength().

Referenced by TFragWriteLoop::Write().

◆ Set()

static void TSingleton< TParsingDiagnostics >::Set ( TParsingDiagnostics * val)
inlinestaticinherited

Definition at line 133 of file TSingleton.h.

◆ WriteToFile()

void TParsingDiagnostics::WriteToFile ( const char * fileName) const

Friends And Related Symbol Documentation

◆ TSingleton< TParsingDiagnostics >

friend class TSingleton< TParsingDiagnostics >
friend

Definition at line 67 of file TParsingDiagnostics.h.

Member Data Documentation

◆ fChannelAddressData

std::unordered_map<UInt_t, TParsingDiagnosticsData> TParsingDiagnostics::fChannelAddressData
private

unordered_map of data per channel address

Definition at line 92 of file TParsingDiagnostics.h.

Referenced by Copy(), Draw(), GoodFragment(), Print(), and WriteToFile().

◆ fDir

TDirectory * TSingleton< TParsingDiagnostics >::fDir
staticprivateinherited

Definition at line 187 of file TSingleton.h.

◆ fIdHist

TH1F* TParsingDiagnostics::fIdHist {nullptr}
private

histogram of event survival

Definition at line 105 of file TParsingDiagnostics.h.

Referenced by ~TParsingDiagnostics(), Clear(), and Draw().

◆ fMaxDaqTimeStamp

time_t TParsingDiagnostics::fMaxDaqTimeStamp {0}
private

maximum daq timestamp

Definition at line 95 of file TParsingDiagnostics.h.

Referenced by Clear(), GoodFragment(), Print(), and WriteToFile().

◆ fMaxNetworkPacketNumber

Int_t TParsingDiagnostics::fMaxNetworkPacketNumber {0}
private

maximum network packet id

Definition at line 98 of file TParsingDiagnostics.h.

Referenced by Clear(), Copy(), GoodFragment(), and Print().

◆ fMinDaqTimeStamp

time_t TParsingDiagnostics::fMinDaqTimeStamp {0}
private

minimum daq timestamp

Definition at line 94 of file TParsingDiagnostics.h.

Referenced by Clear(), GoodFragment(), Print(), and WriteToFile().

◆ fMinNetworkPacketNumber

Int_t TParsingDiagnostics::fMinNetworkPacketNumber {0x7fffffff}
private

minimum network packet id

Definition at line 97 of file TParsingDiagnostics.h.

Referenced by Clear(), Copy(), GoodFragment(), and Print().

◆ fNumberOfBadFragments

std::unordered_map<Short_t, Long_t> TParsingDiagnostics::fNumberOfBadFragments
private

unordered_map of number of bad fragments per detector type

Definition at line 89 of file TParsingDiagnostics.h.

Referenced by BadFragment(), Clear(), Copy(), NumberOfBadFragments(), Print(), and WriteToFile().

◆ fNumberOfGoodFragments

std::unordered_map<Short_t, Long_t> TParsingDiagnostics::fNumberOfGoodFragments
private

unordered_map of number of good fragments per detector type

Definition at line 88 of file TParsingDiagnostics.h.

Referenced by Clear(), Copy(), GoodFragment(), GoodFragment(), NumberOfGoodFragments(), Print(), and WriteToFile().

◆ fNumberOfNetworkPackets

Long_t TParsingDiagnostics::fNumberOfNetworkPackets {0}
private

Definition at line 100 of file TParsingDiagnostics.h.

Referenced by Clear(), Copy(), GoodFragment(), and Print().

◆ fPPGCycleLength

ULong64_t TParsingDiagnostics::fPPGCycleLength {0}
private

Definition at line 103 of file TParsingDiagnostics.h.

Referenced by Clear(), Copy(), PPGCycleLength(), Print(), and ReadPPG().

◆ fSingleton

TParsingDiagnostics * TSingleton< TParsingDiagnostics >::fSingleton
staticprivateinherited

Definition at line 186 of file TSingleton.h.