GRSISort
Created by P.C. Bender
Developement Team: P.C. Bender, R. Dunlop, V. Bildstein
An extension of the ROOT analysis Framework
TParsingDiagnostics Class Reference

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 70 of file TParsingDiagnostics.h.

Public Member Functions

 TParsingDiagnostics ()
 
 TParsingDiagnostics (const TParsingDiagnostics &)
 
 ~TParsingDiagnostics () override
 
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)
 
ULong64_t PPGCycleLength ()
 
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
 
time_t fMaxDaqTimeStamp
 
Int_t fMaxNetworkPacketNumber
 
time_t fMinDaqTimeStamp
 
Int_t fMinNetworkPacketNumber
 
std::unordered_map< Short_t, Long_t > fNumberOfBadFragments
 
std::unordered_map< Short_t, Long_t > fNumberOfGoodFragments
 
Long_t fNumberOfNetworkPackets
 
ULong64_t fPPGCycleLength
 

Friends

class TSingleton< TParsingDiagnostics >
 

#include <TParsingDiagnostics.h>

+ Inheritance diagram for TParsingDiagnostics:
+ Collaboration diagram for TParsingDiagnostics:

Constructor & Destructor Documentation

◆ TParsingDiagnostics() [1/2]

TParsingDiagnostics::TParsingDiagnostics ( )

Definition at line 69 of file TParsingDiagnostics.cxx.

References Clear(), and fIdHist.

◆ TParsingDiagnostics() [2/2]

TParsingDiagnostics::TParsingDiagnostics ( const TParsingDiagnostics )

Definition at line 75 of file TParsingDiagnostics.cxx.

References Clear(), and fIdHist.

◆ ~TParsingDiagnostics()

TParsingDiagnostics::~TParsingDiagnostics ( )
override

Definition at line 81 of file TParsingDiagnostics.cxx.

References fIdHist.

Member Function Documentation

◆ AddCurrent()

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

◆ BadFragment()

◆ Clear()

void TParsingDiagnostics::Clear ( Option_t *  opt = "all")
override

◆ Copy()

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

◆ Draw()

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

Definition at line 178 of file TParsingDiagnostics.cxx.

References fChannelAddressData, and fIdHist.

◆ Get()

◆ GetAll()

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

◆ GoodFragment() [1/2]

◆ GoodFragment() [2/2]

void TParsingDiagnostics::GoodFragment ( Short_t  detType)
inline

Definition at line 106 of file TParsingDiagnostics.h.

References fNumberOfGoodFragments.

◆ NumberOfBadFragments()

Long_t TParsingDiagnostics::NumberOfBadFragments ( Short_t  detType)
inline

Definition at line 119 of file TParsingDiagnostics.h.

References fNumberOfBadFragments.

◆ NumberOfGoodFragments()

Long_t TParsingDiagnostics::NumberOfGoodFragments ( Short_t  detType)
inline

Definition at line 112 of file TParsingDiagnostics.h.

References fNumberOfGoodFragments.

◆ PPGCycleLength()

ULong64_t TParsingDiagnostics::PPGCycleLength ( )
inline

Definition at line 127 of file TParsingDiagnostics.h.

References fPPGCycleLength.

◆ Print()

void TParsingDiagnostics::Print ( Option_t *  opt = "") const
override

◆ PrintDirectory()

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

Definition at line 166 of file TSingleton.h.

References TSingleton< T >::fDir, and TSingleton< T >::fSingleton.

◆ 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 169 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 129 of file TSingleton.h.

References TSingleton< T >::fSingleton.

◆ WriteToFile()

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

Friends And Related Function Documentation

◆ TSingleton< TParsingDiagnostics >

friend class TSingleton< TParsingDiagnostics >
friend

Definition at line 72 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 85 of file TParsingDiagnostics.h.

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

◆ fIdHist

TH1F* TParsingDiagnostics::fIdHist
private

histogram of event survival

Definition at line 99 of file TParsingDiagnostics.h.

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

◆ fMaxDaqTimeStamp

time_t TParsingDiagnostics::fMaxDaqTimeStamp
private

maximum daq timestamp

Definition at line 88 of file TParsingDiagnostics.h.

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

◆ fMaxNetworkPacketNumber

Int_t TParsingDiagnostics::fMaxNetworkPacketNumber
private

maximum network packet id

Definition at line 91 of file TParsingDiagnostics.h.

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

◆ fMinDaqTimeStamp

time_t TParsingDiagnostics::fMinDaqTimeStamp
private

minimum daq timestamp

Definition at line 87 of file TParsingDiagnostics.h.

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

◆ fMinNetworkPacketNumber

Int_t TParsingDiagnostics::fMinNetworkPacketNumber
private

minimum network packet id

Definition at line 90 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 82 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 81 of file TParsingDiagnostics.h.

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

◆ fNumberOfNetworkPackets

Long_t TParsingDiagnostics::fNumberOfNetworkPackets
private

Definition at line 93 of file TParsingDiagnostics.h.

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

◆ fPPGCycleLength

ULong64_t TParsingDiagnostics::fPPGCycleLength
private

Definition at line 96 of file TParsingDiagnostics.h.

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