CbmRoot
|
#include <CbmMcbm2019CheckTimingPairs.h>
Public Member Functions | |
CbmMcbm2019CheckTimingPairs () | |
CbmMcbm2019CheckTimingPairs (const CbmMcbm2019CheckTimingPairs &)=delete | |
CbmMcbm2019CheckTimingPairs | operator= (const CbmMcbm2019CheckTimingPairs &)=delete |
~CbmMcbm2019CheckTimingPairs () | |
virtual InitStatus | Init () |
virtual InitStatus | ReInit () |
virtual void | Exec (Option_t *) |
virtual void | SetParContainers () |
virtual void | Finish () |
void | SetStsOffsetSearchRange (Double_t val=1000) |
void | SetMuchOffsetSearchRange (Double_t val=1000) |
void | SetTrdOffsetSearchRange (Double_t val=1000) |
void | SetTofOffsetSearchRange (Double_t val=1000) |
void | SetRichOffsetSearchRange (Double_t val=1000) |
void | SetPsdOffsetSearchRange (Double_t val=1000) |
void | SetBmonPulserTotLimits (UInt_t uMin, UInt_t uMax) |
void | SetStsPulserAdcLimits (UInt_t uMin, UInt_t uMax) |
void | SetMuchPulserAdcLimits (UInt_t uMin, UInt_t uMax) |
void | SetTrdPulserChargeLimits (UInt_t uMin, UInt_t uMax) |
void | SetTofPulserTotLimits (UInt_t uMin, UInt_t uMax) |
void | SetRichPulserTotLimits (UInt_t uMin, UInt_t uMax) |
void | SetPsdPulserAdcLimits (UInt_t uMin, UInt_t uMax) |
void | SetOutFilename (TString sNameIn) |
void | SetStsAddress (UInt_t uAddress) |
void | SetMuchAsic (UInt_t uAsic) |
void | SetMuchChanRange (UInt_t uFirstChan, UInt_t uLastChan=kuNbChanSMX) |
void | SetTrdAddress (UInt_t uAddress) |
void | SetPsdAddress (UInt_t uAddress) |
Private Member Functions | |
void | CreateHistos () |
void | WriteHistos () |
template<class Digi > | |
UInt_t | FillCorrBuffer (Double_t dTimeBmon, UInt_t uIndexStart, Double_t dWinStartTime, Double_t dWinStopTime, std::vector< std::vector< Digi > > &vDigi, ECbmModuleId iDetId=ECbmModuleId::kLastModule) |
template<class DigiA > | |
void | FillHistosInter (UInt_t uIndexBmon, UInt_t uIndexA, UInt_t uIndexB, std::vector< DigiA > &vCorrDigA, UInt_t uHistoIdx) |
template<class DigiA , class DigiB > | |
void | FillHistos (UInt_t uIndexBmon, UInt_t uIndexA, UInt_t uIndexB, std::vector< DigiA > &vCorrDigA, std::vector< DigiB > &vCorrDigB, UInt_t uHistoIdx) |
ClassDef (CbmMcbm2019CheckTimingPairs, 1) | |
Private Attributes | |
CbmDigiManager * | fDigiMan = nullptr |
const std::vector< CbmTofDigi > * | fBmonDigiVector = nullptr |
TClonesArray * | fBmonDigiArray = nullptr |
TClonesArray * | fTimeSliceMetaDataArray = nullptr |
const TimesliceMetaData * | pTsMetaData = nullptr |
std::vector< std::string > | fvsDetectors = {"STS", "MUCH", "TRD", "TOF", "RICH", "PSD"} |
List of detectors. | |
UInt_t | fuNbDetectors = fvsDetectors.size() |
Double_t | fPrevTimeBmon = 0. |
Variables to store the previous digi time. | |
std::vector< Double_t > | fvPrevTimeDet = std::vector<Double_t>(fuNbDetectors, 0.0) |
std::vector< UInt_t > | fvuPrevBmonFirstDigiDet = std::vector<UInt_t>(fuNbDetectors, 0) |
std::vector< CbmTofDigi > | fvDigisBmon = {} |
Variable to store correlated Digis. | |
std::vector< std::vector< CbmStsDigi > > | fvDigisSts = {} |
std::vector< std::vector< CbmMuchBeamTimeDigi > > | fvDigisMuch = {} |
std::vector< std::vector< CbmTrdDigi > > | fvDigisTrd = {} |
std::vector< std::vector< CbmTofDigi > > | fvDigisTof = {} |
std::vector< std::vector< CbmRichDigi > > | fvDigisRich = {} |
std::vector< std::vector< CbmPsdDigi > > | fvDigisPsd = {} |
UInt_t | fuNbDigisWithCoincBmon = 0 |
Variable to store counts of Bmon with at least one coincidence. | |
UInt_t | fuNbCoincDigisSts = 0 |
Variable to store counts of Bmon with at least one coincidence. | |
UInt_t | fuNbCoincDigisMuch = 0 |
UInt_t | fuNbCoincDigisTrd = 0 |
UInt_t | fuNbCoincDigisTof = 0 |
UInt_t | fuNbCoincDigisRich = 0 |
UInt_t | fuNbCoincDigisPsd = 0 |
UInt_t | fuMinTotPulserBmon = 182 |
UInt_t | fuMaxTotPulserBmon = 190 |
UInt_t | fuMinAdcPulserSts = 90 |
UInt_t | fuMaxAdcPulserSts = 100 |
UInt_t | fuMinAdcPulserMuch = 5 |
UInt_t | fuMaxAdcPulserMuch = 15 |
UInt_t | fuMinChargePulserTrd = 700000 |
UInt_t | fuMaxChargePulserTrd = 0 |
Default: No cut. | |
UInt_t | fuMinTotPulserTof = 182 |
Default: No cut. | |
UInt_t | fuMaxTotPulserTof = 190 |
UInt_t | fuMinTotPulserRich = 700000 |
UInt_t | fuMaxTotPulserRich = 0 |
Default: No cut. | |
UInt_t | fuMinAdcPulserPsd = 700000 |
Default: No cut. | |
UInt_t | fuMaxAdcPulserPsd = 0 |
Default: No cut. | |
UInt_t | fuStsAddress = kuDefaultAddress |
UInt_t | fuStsFirstCha = kuMaxChannelSts |
UInt_t | fuStsLastChan = kuMaxChannelSts |
UInt_t | fuMuchAsic = kuMaxNbMuchAsics |
UInt_t | fuMuchFirstCha = kuNbChanSMX |
UInt_t | fuMuchLastChan = kuNbChanSMX |
UInt_t | fuTrdAddress = kuDefaultAddress |
UInt_t | fuPsdAddress = kuDefaultAddress |
Int_t | fNrTs = 0 |
Double_t | fdStsTimeWin = kdDefaultTimeWin |
Double_t | fdMuchTimeWin = kdDefaultTimeWin |
Double_t | fdTrdTimeWin = kdDefaultTimeWin |
Double_t | fdTofTimeWin = kdDefaultTimeWin |
Double_t | fdRichTimeWin = kdDefaultTimeWin |
Double_t | fdPsdTimeWin = kdDefaultTimeWin |
Int_t | fBinWidth = 1 |
std::vector< TH1 * > | fhDtADtB = {} |
TString | fOutFileName {"data/HistosTimingPairs.root"} |
Static Private Attributes | |
static const UInt_t | kuNbChanSMX = 128 |
Constants. | |
static const UInt_t | kuMaxNbStsDpbs = 2 |
static const UInt_t | kuMaxNbMuchDpbs = 6 |
static const UInt_t | kuMaxNbMuchAsics = 36 |
static const UInt_t | kuDefaultAddress = 0xFFFFFFFF |
static const UInt_t | kuMaxChannelSts = 3000 |
static const UInt_t | kuNbBinsDefault = 2000 |
static constexpr Double_t | kdClockCycle = 3.125 |
static constexpr Double_t | kdDefaultTimeWin = kdClockCycle * kuNbBinsDefault / 2 |
Definition at line 34 of file CbmMcbm2019CheckTimingPairs.h.
CbmMcbm2019CheckTimingPairs::CbmMcbm2019CheckTimingPairs | ( | ) |
Definition at line 29 of file CbmMcbm2019CheckTimingPairs.cxx.
|
delete |
CbmMcbm2019CheckTimingPairs::~CbmMcbm2019CheckTimingPairs | ( | ) |
Constructor with parameters (Optional) Destructor
Definition at line 32 of file CbmMcbm2019CheckTimingPairs.cxx.
|
private |
|
private |
Register the histos in the HTTP server
Definition at line 95 of file CbmMcbm2019CheckTimingPairs.cxx.
References fhDtADtB, fvsDetectors, kdClockCycle, kdDefaultTimeWin, and kuNbBinsDefault.
Referenced by Init().
|
virtual |
Executed for each event.
Fill buffers of hits in correlation to Bmon
Store also the Bmon Hit if any STS or MUCH coincidence
Make sure we keep both vector in sync at the same size
Fill plots from buffers f correlated hits
Cleanup buffers
Cleanup buffers
Definition at line 127 of file CbmMcbm2019CheckTimingPairs.cxx.
References fBmonDigiArray, fBmonDigiVector, fdMuchTimeWin, fdPsdTimeWin, fdRichTimeWin, fdStsTimeWin, fdTofTimeWin, fdTrdTimeWin, FillCorrBuffer(), FillHistosInter(), fNrTs, fuNbCoincDigisMuch, fuNbCoincDigisPsd, fuNbCoincDigisRich, fuNbCoincDigisSts, fuNbCoincDigisTof, fuNbCoincDigisTrd, fuNbDigisWithCoincBmon, fvDigisBmon, fvDigisMuch, fvDigisPsd, fvDigisRich, fvDigisSts, fvDigisTof, fvDigisTrd, fvsDetectors, fvuPrevBmonFirstDigiDet, CbmTofDigi::GetTime(), kMuch, kPsd, kRich, kSts, kTof, kTrd, and WriteHistos().
|
private |
< Silicon Tracking System
Reject pulser digis
Concidence candidate, store it!
< Muon detection system
Reject pulser digis
Concidence candidate, store it!
< Time-of-flight Detector
Concidence candidate, store it!
< Time-of-flight Detector
Reject pulser digis
Concidence candidate, store it!
< Ring-Imaging Cherenkov Detector
Reject pulser digis
Concidence candidate, store it!
< Projectile spectator detector
Reject pulser digis
Concidence candidate, store it!
Definition at line 265 of file CbmMcbm2019CheckTimingPairs.cxx.
References fDigiMan, fuMaxAdcPulserPsd, fuMaxTotPulserRich, fuMaxTotPulserTof, fuMinAdcPulserPsd, fuMinTotPulserRich, fuMinTotPulserTof, fuMuchAsic, fuNbCoincDigisMuch, fuNbCoincDigisPsd, fuNbCoincDigisRich, fuNbCoincDigisSts, fuNbCoincDigisTof, fuNbCoincDigisTrd, fuNbDigisWithCoincBmon, fuPsdAddress, fuStsAddress, CbmDigiManager::Get(), CbmStsDigi::GetAddress(), CbmDigiManager::GetNofDigis(), kMuch, kPsd, kRich, kSts, kTof, kTrd, kuDefaultAddress, and kuMaxNbMuchAsics.
Referenced by Exec().
|
private |
Definition at line 441 of file CbmMcbm2019CheckTimingPairs.cxx.
References fhDtADtB, and fvDigisBmon.
Referenced by FillHistosInter().
|
private |
Definition at line 415 of file CbmMcbm2019CheckTimingPairs.cxx.
References FillHistos(), fvDigisMuch, fvDigisPsd, fvDigisRich, fvDigisSts, fvDigisTof, fvDigisTrd, and fvsDetectors.
Referenced by Exec().
|
virtual |
Finish task called at the end of the run
Definition at line 518 of file CbmMcbm2019CheckTimingPairs.cxx.
References WriteHistos().
|
virtual |
Initiliazation of task at the beginning of a run
Access the TS metadata to know TS start tim
Definition at line 48 of file CbmMcbm2019CheckTimingPairs.cxx.
References CreateHistos(), fBmonDigiArray, fBmonDigiVector, fDigiMan, fTimeSliceMetaDataArray, CbmDigiManager::Init(), CbmDigiManager::Instance(), CbmDigiManager::IsPresent(), kMuch, kPsd, kRich, kSts, kTof, kTrd, and CbmDigiManager::UseMuchBeamTimeDigi().
|
delete |
|
virtual |
ReInitiliazation of task when the runID changes
Definition at line 124 of file CbmMcbm2019CheckTimingPairs.cxx.
|
inline |
Definition at line 77 of file CbmMcbm2019CheckTimingPairs.h.
References fuMaxTotPulserBmon, and fuMinTotPulserBmon.
|
inline |
Definition at line 116 of file CbmMcbm2019CheckTimingPairs.h.
References fuMuchAsic.
|
inline |
Definition at line 117 of file CbmMcbm2019CheckTimingPairs.h.
References fuMuchFirstCha, and fuMuchLastChan.
|
inline |
Definition at line 67 of file CbmMcbm2019CheckTimingPairs.h.
References fdMuchTimeWin.
|
inline |
Definition at line 87 of file CbmMcbm2019CheckTimingPairs.h.
References fuMaxAdcPulserMuch, and fuMinAdcPulserMuch.
|
inline |
Definition at line 113 of file CbmMcbm2019CheckTimingPairs.h.
References fOutFileName.
|
virtual |
Load the parameter container from the runtime database
Definition at line 35 of file CbmMcbm2019CheckTimingPairs.cxx.
|
inline |
Definition at line 123 of file CbmMcbm2019CheckTimingPairs.h.
References fuPsdAddress.
|
inline |
Definition at line 75 of file CbmMcbm2019CheckTimingPairs.h.
References fdPsdTimeWin.
|
inline |
Definition at line 107 of file CbmMcbm2019CheckTimingPairs.h.
References fuMaxAdcPulserPsd, and fuMinAdcPulserPsd.
|
inline |
Definition at line 73 of file CbmMcbm2019CheckTimingPairs.h.
References fdRichTimeWin.
|
inline |
Definition at line 102 of file CbmMcbm2019CheckTimingPairs.h.
References fuMaxTotPulserRich, and fuMinTotPulserRich.
|
inline |
Definition at line 115 of file CbmMcbm2019CheckTimingPairs.h.
References fuStsAddress.
|
inline |
Definition at line 65 of file CbmMcbm2019CheckTimingPairs.h.
References fdStsTimeWin.
|
inline |
Definition at line 82 of file CbmMcbm2019CheckTimingPairs.h.
References fuMaxAdcPulserSts, and fuMinAdcPulserSts.
|
inline |
Definition at line 71 of file CbmMcbm2019CheckTimingPairs.h.
References fdTofTimeWin.
|
inline |
Definition at line 97 of file CbmMcbm2019CheckTimingPairs.h.
References fuMaxTotPulserTof, and fuMinTotPulserTof.
|
inline |
Definition at line 122 of file CbmMcbm2019CheckTimingPairs.h.
References fuTrdAddress.
|
inline |
Definition at line 69 of file CbmMcbm2019CheckTimingPairs.h.
References fdTrdTimeWin.
|
inline |
Definition at line 92 of file CbmMcbm2019CheckTimingPairs.h.
References fuMaxChargePulserTrd, and fuMinChargePulserTrd.
|
private |
Definition at line 520 of file CbmMcbm2019CheckTimingPairs.cxx.
References fhDtADtB, and fOutFileName.
|
private |
Definition at line 224 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Definition at line 142 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Definition at line 141 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Digi data
Definition at line 140 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and Init().
|
private |
Definition at line 218 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and SetMuchOffsetSearchRange().
|
private |
Definition at line 222 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and SetPsdOffsetSearchRange().
|
private |
Definition at line 221 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and SetRichOffsetSearchRange().
|
private |
Definition at line 217 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and SetStsOffsetSearchRange().
|
private |
Definition at line 220 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and SetTofOffsetSearchRange().
|
private |
Definition at line 219 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and SetTrdOffsetSearchRange().
|
private |
Definition at line 226 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by CreateHistos(), FillHistos(), and WriteHistos().
|
private |
Definition at line 215 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec().
|
private |
Definition at line 228 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetOutFilename(), and WriteHistos().
|
private |
Variables to store the previous digi time.
Definition at line 162 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Definition at line 143 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Init().
|
private |
Definition at line 195 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetMuchPulserAdcLimits().
|
private |
Default: No cut.
Definition at line 203 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetPsdPulserAdcLimits().
|
private |
Definition at line 193 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetStsPulserAdcLimits().
|
private |
Default: No cut.
Definition at line 197 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetTrdPulserChargeLimits().
|
private |
Definition at line 191 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetBmonPulserTotLimits().
|
private |
Default: No cut.
Definition at line 201 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetRichPulserTotLimits().
|
private |
Definition at line 199 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetTofPulserTotLimits().
|
private |
Definition at line 194 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetMuchPulserAdcLimits().
|
private |
Default: No cut.
Definition at line 202 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetPsdPulserAdcLimits().
|
private |
Definition at line 192 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetStsPulserAdcLimits().
|
private |
Definition at line 196 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetTrdPulserChargeLimits().
|
private |
User settings: Data correction parameters Charge cut
Definition at line 190 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetBmonPulserTotLimits().
|
private |
Definition at line 200 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetRichPulserTotLimits().
|
private |
Default: No cut.
Definition at line 198 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetTofPulserTotLimits().
|
private |
Definition at line 208 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetMuchAsic().
|
private |
Definition at line 209 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetMuchChanRange().
|
private |
Definition at line 210 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetMuchChanRange().
|
private |
Definition at line 182 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillCorrBuffer().
|
private |
Definition at line 186 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillCorrBuffer().
|
private |
Definition at line 185 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillCorrBuffer().
|
private |
Variable to store counts of Bmon with at least one coincidence.
Definition at line 181 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillCorrBuffer().
|
private |
Definition at line 184 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillCorrBuffer().
|
private |
Definition at line 183 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillCorrBuffer().
|
private |
Definition at line 159 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Variable to store counts of Bmon with at least one coincidence.
Definition at line 179 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillCorrBuffer().
|
private |
Definition at line 212 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetPsdAddress().
|
private |
Default: No cut Channel selection
Definition at line 205 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer(), and SetStsAddress().
|
private |
Definition at line 206 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Definition at line 207 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Definition at line 211 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by SetTrdAddress().
|
private |
Variable to store correlated Digis.
Definition at line 170 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillHistos().
|
private |
Definition at line 172 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillHistosInter().
|
private |
Definition at line 176 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillHistosInter().
|
private |
Definition at line 175 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillHistosInter().
|
private |
Definition at line 171 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillHistosInter().
|
private |
Definition at line 174 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillHistosInter().
|
private |
Definition at line 173 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec(), and FillHistosInter().
|
private |
Definition at line 163 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
List of detectors.
Definition at line 158 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by CreateHistos(), Exec(), and FillHistosInter().
|
private |
Variables to store the first digi fitting the previous Bmon hits => Time-order means the time window for following one can only be in a later digi
Definition at line 167 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by Exec().
|
staticconstexprprivate |
Definition at line 154 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by CreateHistos().
|
staticconstexprprivate |
Definition at line 155 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by CreateHistos().
|
staticprivate |
Definition at line 151 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer().
|
staticprivate |
Definition at line 152 of file CbmMcbm2019CheckTimingPairs.h.
|
staticprivate |
Definition at line 150 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by FillCorrBuffer().
|
staticprivate |
Definition at line 149 of file CbmMcbm2019CheckTimingPairs.h.
|
staticprivate |
Definition at line 148 of file CbmMcbm2019CheckTimingPairs.h.
|
staticprivate |
Definition at line 153 of file CbmMcbm2019CheckTimingPairs.h.
Referenced by CreateHistos().
|
staticprivate |
Constants.
Definition at line 147 of file CbmMcbm2019CheckTimingPairs.h.
|
private |
Definition at line 144 of file CbmMcbm2019CheckTimingPairs.h.