CbmRoot
|
#include <CbmMcbm2018MonitorMuchLite.h>
Public Member Functions | |
CbmMcbm2018MonitorMuchLite () | |
virtual | ~CbmMcbm2018MonitorMuchLite () |
virtual Bool_t | Init () |
virtual Bool_t | DoUnpack (const fles::Timeslice &ts, size_t component) |
virtual void | Reset () |
virtual void | Finish () |
void | SetParContainers () |
Bool_t | InitContainers () |
Bool_t | ReInitContainers () |
virtual void | AddMsComponentToList (size_t component, UShort_t usDetectorId) |
virtual void | SetNbMsInTs (size_t uCoreMsNb, size_t uOverlapMsNb) |
void | SetMsOverlap (size_t uOverlapMsNb=1) |
size_t | GetMsOverlap () |
void | SetRunStart (Int_t dateIn, Int_t timeIn, Int_t iBinSize=5) |
void | ResetAllHistos () |
void | SaveAllHistos (TString sFileName="") |
void | SaveHistos (TString sFileName="") |
void | SetHistoFileName (TString sFileName="data/SetupHistos.root") |
void | SetPrintMessage (Bool_t bPrintMessOn=kTRUE, stsxyter::MessagePrintMask ctrl=stsxyter::MessagePrintMask::msg_print_Hex|stsxyter::MessagePrintMask::msg_print_Human) |
void | SetMuchMode (Bool_t bMuchMode=kTRUE) |
void | UseDaqBuffer (Bool_t) |
void | SetBinningFwFlag (Bool_t bEnable=kTRUE) |
=> Quick and dirty hack for binning FW!!! | |
Private Member Functions | |
Bool_t | InitMuchParameters () |
void | CreateHistograms () |
Bool_t | ProcessMuchMs (const fles::Timeslice &ts, size_t uMsComp, UInt_t uMsIdx) |
void | FillHitInfo (stsxyter::Message mess, const UShort_t &usElinkIdx, const UInt_t &uAsicIdx, const UInt_t &uMsIdx) |
void | FillTsMsbInfo (stsxyter::Message mess, UInt_t uMessIdx=0, UInt_t uMsIdx=0) |
void | FillEpochInfo (stsxyter::Message mess) |
void | ResetMuchHistos () |
void | SaveMuchHistos (TString sFileName="") |
Bool_t | ScanForNoisyChannels (Double_t dNoiseThreshold=1e3) |
---------------------------------------------------------------—/// | |
CbmMcbm2018MonitorMuchLite (const CbmMcbm2018MonitorMuchLite &) | |
CbmMcbm2018MonitorMuchLite | operator= (const CbmMcbm2018MonitorMuchLite &) |
Private Attributes | |
Bool_t | fbMuchMode |
std::vector< Bool_t > | fvbMaskedComponents |
Bool_t | fbBinningFw = kFALSE |
=> Quick and dirty hack for binning FW!!! | |
std::vector< size_t > | fvMsComponentsList |
size_t | fuNbCoreMsPerTs |
size_t | fuNbOverMsPerTs |
Bool_t | fbIgnoreOverlapMs |
CbmMcbm2018MuchPar * | fUnpackParMuch |
/** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **/ | |
UInt_t | fuNrOfDpbs |
std::map< UInt_t, UInt_t > | fDpbIdIndexMap |
Total number of STS DPBs in system. | |
std::vector< std::vector< Bool_t > > | fvbCrobActiveFlag |
Map of DPB Identifier to DPB index. | |
UInt_t | fuNbFebs |
Array to hold the active flag for all CROBs, [ NbDpb ][ NbCrobPerDpb ]. | |
UInt_t | fuNbStsXyters |
Number of StsXyter ASICs. | |
TString | fsHistoFileFullname |
Bool_t | fbPrintMessages |
Task configuration values. | |
stsxyter::MessagePrintMask | fPrintMessCtrl |
ULong64_t | fulCurrentTsIdx |
TS/MS info. | |
ULong64_t | fulCurrentMsIdx |
std::map< stsxyter::MessType, UInt_t > | fmMsgCounter |
Current data properties. | |
UInt_t | fuCurrentEquipmentId |
UInt_t | fuCurrDpbId |
Current equipment ID, tells from which DPB the current MS is originating. | |
UInt_t | fuCurrDpbIdx |
Temp holder until Current equipment ID is properly filled in MS. | |
Int_t | fiRunStartDateTimeSec |
Index of the DPB from which the MS currently unpacked is coming. | |
Int_t | fiBinSizeDatePlots |
Start of run time since "epoch" in s, for the plots with date as X axis. | |
std::vector< ULong64_t > | fvulCurrentTsMsb |
Bin size in s for the plots with date as X axis. | |
std::vector< UInt_t > | fvuCurrentTsMsbCycle |
Current TS MSB for each DPB. | |
std::vector< UInt_t > | fvuInitialHeaderDone |
Current TS MSB cycle for DPB. | |
std::vector< UInt_t > | fvuInitialTsMsbCycleHeader |
Flag set after seeing MS header in 1st MS for DPB. | |
std::vector< UInt_t > | fvuElinkLastTsHit |
TS MSB cycle from MS header in 1st MS for DPB. | |
std::vector< std::vector< ULong64_t > > | fvulChanLastHitTime |
std::vector< std::vector< Double_t > > | fvdChanLastHitTime |
Last hit time in bins for each Channel. | |
std::vector< Double_t > | fvdPrevMsTime |
Last hit time in ns for each Channel. | |
std::vector< Double_t > | fvdMsTime |
Header time of previous MS per link. | |
std::vector< std::vector< std::vector< UInt_t > > > | fvuChanNbHitsInMs |
Header time of each MS. | |
std::vector< std::vector< std::vector< Double_t > > > | fvdChanLastHitTimeInMs |
Number of hits in each MS for each Channel. | |
std::vector< std::vector< std::vector< UShort_t > > > | fvusChanLastHitAdcInMs |
Last hit time in bins in each MS for each Channel. | |
Long64_t | prevtime_new |
Last hit ADC in bins in each MS for each Channel. | |
Long64_t | prevTime |
UInt_t | prevAsic |
UInt_t | prevChan |
Double_t | fdStartTime |
Double_t | fdStartTimeMsSz |
std::chrono::steady_clock::time_point | ftStartTimeUnix |
std::vector< stsxyter::FinalHit > | fvmHitsInMs |
Hits time-sorting. | |
std::vector< std::vector< stsxyter::FinalHit > > | fvmAsicHitsInMs |
All hits (time in bins, ADC in bins, asic, channel) in last TS, sorted with "<" operator. | |
std::vector< std::vector< stsxyter::FinalHit > > | fvmFebHitsInMs |
All hits (time in bins, ADC in bins, asic, channel) in last TS, per ASIC, sorted with "<" operator. | |
UInt_t | fuMaxNbMicroslices |
Int_t | fiTimeIntervalRateUpdate |
Mean Rate per channel plots. | |
std::vector< Int_t > | fviFebTimeSecLastRateUpdate |
std::vector< Int_t > | fviFebCountsSinceLastRateUpdate |
std::vector< std::vector< Double_t > > | fvdFebChanCountsSinceLastRateUpdate |
UInt_t | Counter |
Rate evolution histos. | |
UInt_t | Counter1 |
CbmHistManager * | fHM |
Coincidences in sorted hits. | |
TH1 * | fhMuchMessType |
Histogram manager. | |
TH1 * | fhMuchSysMessType |
TH1 * | fhMuchFebChanAdcRaw_combined |
TH2 * | fhMuchMessTypePerDpb |
TH2 * | fhMuchSysMessTypePerDpb |
TH2 * | fhStatusMessType |
TH2 * | fhMsStatusFieldType |
TH2 * | fhMuchHitsElinkPerDpb |
TH1 * | fhRate |
TH1 * | fhRateAdcCut |
TH1 * | fhFEBcount = nullptr |
std::vector< TH2 * > | fHistPadDistr |
Plots per FEB-8. | |
std::vector< TH2 * > | fRealHistPadDistr |
std::vector< TH1 * > | fhMuchFebChanCntRaw |
std::vector< TH1 * > | fhMuchFebSpill = {} |
std::vector< TH2 * > | fhMuchFebADC = {} |
std::vector< TH2 * > | fhMuchFebChanAdcRaw |
std::vector< TProfile * > | fhMuchFebChanAdcRawProf |
std::vector< TH2 * > | fhMuchFebChanRawTs |
std::vector< TH2 * > | fhMuchChannelTime = {} |
std::vector< TH2 * > | fhMuchFebChanHitRateEvo |
std::vector< TProfile * > | fhMuchFebChanHitRateProf |
std::vector< TH1 * > | fhMuchFebHitRateEvo |
std::vector< TH1 * > | fhMuchFebHitRateEvo_mskch |
std::vector< TH1 * > | fhMuchFebHitRateEvo_mskch_adccut |
std::vector< TH1 * > | fhMuchFebHitRateEvo_WithoutDupli |
std::vector< std::vector< Double_t > > | fdMuchFebChanLastTimeForDist |
std::vector< TH2 * > | fhMuchFebChanDistT |
std::vector< TProfile * > | fhMuchFebDuplicateHitProf |
TH2 * | fhDpbMsErrors = nullptr |
Binning FW error flag. | |
TCanvas * | fcMsSizeAll |
TH1 * | fhMsSz [kiMaxNbFlibLinks] |
TProfile * | fhMsSzTime [kiMaxNbFlibLinks] |
Static Private Attributes | |
static const Int_t | kiMaxNbFlibLinks = 32 |
Number of StsXyter ASICs. | |
static const UInt_t | kuBytesPerMessage = 4 |
Definition at line 40 of file CbmMcbm2018MonitorMuchLite.h.
CbmMcbm2018MonitorMuchLite::CbmMcbm2018MonitorMuchLite | ( | ) |
Definition at line 54 of file CbmMcbm2018MonitorMuchLite.cxx.
|
virtual |
Definition at line 162 of file CbmMcbm2018MonitorMuchLite.cxx.
|
private |
|
virtual |
Check for duplicates and ignore if it is the case
Check if this does not go above hardcoded limits
Add to list
Create MS size monitoring histos
Implements CbmMcbmUnpack.
Definition at line 321 of file CbmMcbm2018MonitorMuchLite.cxx.
References CbmHistManager::Add(), fcMsSizeAll, fHM, fhMsSz, fhMsSzTime, fvMsComponentsList, and kiMaxNbFlibLinks.
|
private |
Raw Ts Distribution
FEB wise Duplicate Hit profile for each Module (If same hit at same time, same channel and same FEB)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++///
All histos per FEB: with channels or ASIC as axis!!
Channel counts
Raw Adc Distribution
Raw Adc Distribution profile
Cal Adc Distribution
Cal Adc Distribution profile
Raw Ts Distribution
Hit rates evo per channel
Hit rates profile per channel
Hit rates evo per StsXyter
Hit rates evo per FEB
Hit rates evo per FEB for Mask Channel
Hit rates evo per FEB for Mask Channel with ADC Cut
Hit rates evo per FEB
Hit rates evo per channel, 1 minute bins, 24h
Hit rates evo per channel, 1 minute bins, 24h
Hit rates evo per FEB, 1 minute bins, 24h
Distance between hits on same channel
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++///
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++///
Create summary Canvases for mCBM 2019
Recovers/Create Ms Size Canvase for CERN 2016
Definition at line 411 of file CbmMcbm2018MonitorMuchLite.cxx.
References fcMsSizeAll, fhDpbMsErrors, fhFEBcount, fHistPadDistr, fhMsStatusFieldType, fhMsSz, fhMsSzTime, fhMuchChannelTime, fhMuchFebADC, fhMuchFebChanAdcRaw, fhMuchFebChanAdcRaw_combined, fhMuchFebChanAdcRawProf, fhMuchFebChanCntRaw, fhMuchFebChanDistT, fhMuchFebChanHitRateEvo, fhMuchFebChanHitRateProf, fhMuchFebChanRawTs, fhMuchFebDuplicateHitProf, fhMuchFebHitRateEvo, fhMuchFebHitRateEvo_mskch, fhMuchFebHitRateEvo_mskch_adccut, fhMuchFebHitRateEvo_WithoutDupli, fhMuchFebSpill, fhMuchHitsElinkPerDpb, fhMuchMessType, fhMuchMessTypePerDpb, fhMuchSysMessType, fhMuchSysMessTypePerDpb, fhRate, fhRateAdcCut, fhStatusMessType, fRealHistPadDistr, fuNbFebs, fuNbStsXyters, fUnpackParMuch, fuNrOfDpbs, CbmMcbm2018MuchPar::GetNbChanPerFeb(), CbmMcbm2018MuchPar::IsFebActive(), kiMaxNbFlibLinks, stsxyter::kuHitNbAdcBins, and stsxyter::kuHitNbTsBins.
Referenced by InitContainers().
|
virtual |
Pulses time difference calculation and plotting
Data in vector are not needed anymore as all possible matches are already checked
=> Quick and dirty hack for binning FW!!!
Implements CbmMcbmUnpack.
Definition at line 855 of file CbmMcbm2018MonitorMuchLite.cxx.
References bMcbm2018ResetMuchLite, bMcbm2018ScanNoisyMuchLite, bMcbm2018WriteMuchLite, fbBinningFw, fbIgnoreOverlapMs, fDpbIdIndexMap, FormatMsHeaderPrintout(), fsHistoFileFullname, fuCurrDpbIdx, fulCurrentTsIdx, fuMaxNbMicroslices, fuNbCoreMsPerTs, fuNbOverMsPerTs, fUnpackParMuch, fuNrOfDpbs, fvdMsTime, fvmAsicHitsInMs, fvmFebHitsInMs, fvmHitsInMs, fvMsComponentsList, fvuCurrentTsMsbCycle, fvulCurrentTsMsb, CbmMcbm2018MuchPar::GetNbAsicsPerFeb(), stsxyter::kdClockCycleNs, stsxyter::kuHitNbTsBins, stsxyter::kuHitNbTsBinsBinning, stsxyter::kulTsCycleNbBins, stsxyter::kulTsCycleNbBinsBinning, ProcessMuchMs(), ResetAllHistos(), SaveAllHistos(), and ScanForNoisyChannels().
|
private |
Definition at line 1407 of file CbmMcbm2018MonitorMuchLite.cxx.
Referenced by ProcessMuchMs().
|
private |
=> Quick and dirty hack for binning FW!!!
=> Quick and dirty hack for binning FW!!!
Definition at line 1224 of file CbmMcbm2018MonitorMuchLite.cxx.
References Counter, Counter1, fbBinningFw, fdStartTime, fhFEBcount, fhMuchChannelTime, fhMuchFebADC, fhMuchFebChanCntRaw, fhMuchFebSpill, fuCurrDpbIdx, fUnpackParMuch, fvdChanLastHitTime, fvdChanLastHitTimeInMs, fvdFebChanCountsSinceLastRateUpdate, fviFebCountsSinceLastRateUpdate, fvmHitsInMs, fvuChanNbHitsInMs, fvuCurrentTsMsbCycle, fvulChanLastHitTime, fvulCurrentTsMsb, fvusChanLastHitAdcInMs, CbmMcbm2018MuchPar::GetFebId(), stsxyter::Message::GetHitAdc(), stsxyter::Message::GetHitChannel(), stsxyter::Message::GetHitTime(), stsxyter::Message::GetHitTimeBinning(), CbmMcbm2018MuchPar::GetModule(), CbmMcbm2018MuchPar::GetNbAsicsPerFeb(), CbmMcbm2018MuchPar::GetNbChanPerAsic(), CbmMcbm2018MuchPar::GetPadXA(), CbmMcbm2018MuchPar::GetPadYA(), CbmMcbm2018MuchPar::GetRealPadSize(), CbmMcbm2018MuchPar::GetRealX(), stsxyter::kdClockCycleNs, stsxyter::kuHitNbTsBins, stsxyter::kuHitNbTsBinsBinning, stsxyter::kulTsCycleNbBins, stsxyter::kulTsCycleNbBinsBinning, prevAsic, prevChan, prevTime, and prevtime_new.
Referenced by ProcessMuchMs().
|
private |
=> Quick and dirty hack for binning FW!!!
Definition at line 1387 of file CbmMcbm2018MonitorMuchLite.cxx.
References fbBinningFw, fuCurrDpbIdx, fvuCurrentTsMsbCycle, fvulCurrentTsMsb, stsxyter::Message::GetTsMsbVal(), and stsxyter::Message::GetTsMsbValBinning().
Referenced by ProcessMuchMs().
|
virtual |
Implements CbmMcbmUnpack.
Definition at line 1415 of file CbmMcbm2018MonitorMuchLite.cxx.
References stsxyter::Dummy, stsxyter::Empty, stsxyter::Epoch, fmMsgCounter, fsHistoFileFullname, stsxyter::Hit, SaveAllHistos(), and stsxyter::TsMsb.
|
inline |
Definition at line 62 of file CbmMcbm2018MonitorMuchLite.h.
References fuNbOverMsPerTs.
|
virtual |
Implements CbmMcbmUnpack.
Definition at line 165 of file CbmMcbm2018MonitorMuchLite.cxx.
|
virtual |
Reimplemented from CbmMcbmUnpack.
Definition at line 181 of file CbmMcbm2018MonitorMuchLite.cxx.
References CreateHistograms(), and InitMuchParameters().
|
private |
--------------— SXM 2.0 Logic Error Tagging -----------------—///
---------------------------------------------------------------—///
Definition at line 199 of file CbmMcbm2018MonitorMuchLite.cxx.
References fbBinningFw, fdMuchFebChanLastTimeForDist, fDpbIdIndexMap, fuMaxNbMicroslices, fuNbFebs, fuNbStsXyters, fUnpackParMuch, fuNrOfDpbs, fvbCrobActiveFlag, fvdChanLastHitTime, fvdChanLastHitTimeInMs, fvdFebChanCountsSinceLastRateUpdate, fvdMsTime, fvdPrevMsTime, fviFebCountsSinceLastRateUpdate, fviFebTimeSecLastRateUpdate, fvmAsicHitsInMs, fvmFebHitsInMs, fvuChanNbHitsInMs, fvuCurrentTsMsbCycle, fvuElinkLastTsHit, fvuInitialHeaderDone, fvuInitialTsMsbCycleHeader, fvulChanLastHitTime, fvulCurrentTsMsb, fvusChanLastHitAdcInMs, CbmMcbm2018MuchPar::GetDpbId(), CbmMcbm2018MuchPar::GetNbChanPerAsic(), CbmMcbm2018MuchPar::GetNbChanPerFeb(), CbmMcbm2018MuchPar::GetNbCrobsPerDpb(), CbmMcbm2018MuchPar::GetNrOfAsics(), CbmMcbm2018MuchPar::GetNrOfDpbs(), CbmMcbm2018MuchPar::GetNrOfFebs(), CbmMcbm2018MuchPar::IsCrobActive(), and kiMaxNbFlibLinks.
Referenced by InitContainers(), and ReInitContainers().
|
private |
|
private |
Plots in [X/s] update
"new second"
Ignore first interval is not clue how late the data taking was started
Jump empty FEBs without looping over channels
Check Flags field of MS header
Check the current TS_MSb cycle and correct it if wrong
=> Quick and dirty hack for binning FW!!!
=> Quick and dirty hack for binning FW!!!
Always print status messages... or not?
Definition at line 987 of file CbmMcbm2018MonitorMuchLite.cxx.
References stsxyter::Dummy, CbmMcbm2018MuchPar::ElinkIdxToAsicIdx(), CbmMcbm2018MuchPar::ElinkIdxToFebIdx(), stsxyter::Empty, stsxyter::EndOfMs, stsxyter::Epoch, fbBinningFw, fbMuchMode, fbPrintMessages, fDpbIdIndexMap, fdStartTimeMsSz, fhDpbMsErrors, fhMsStatusFieldType, fhMsSz, fhMsSzTime, fhMuchFebChanHitRateProf, fhMuchHitsElinkPerDpb, FillEpochInfo(), FillHitInfo(), FillTsMsbInfo(), fiTimeIntervalRateUpdate, fmMsgCounter, FormatMsHeaderPrintout(), fPrintMessCtrl, fuCurrDpbId, fuCurrDpbIdx, fuCurrentEquipmentId, fulCurrentMsIdx, fulCurrentTsIdx, fUnpackParMuch, fvbMaskedComponents, fvdFebChanCountsSinceLastRateUpdate, fvdPrevMsTime, fviFebCountsSinceLastRateUpdate, fviFebTimeSecLastRateUpdate, fvuCurrentTsMsbCycle, fvuInitialHeaderDone, fvuInitialTsMsbCycleHeader, fvulCurrentTsMsb, stsxyter::Message::GetLinkIndex(), stsxyter::Message::GetLinkIndexHitBinning(), stsxyter::Message::GetMessType(), stsxyter::Message::GetMsErrorType(), CbmMcbm2018MuchPar::GetNbAsicsPerCrob(), CbmMcbm2018MuchPar::GetNbChanPerFeb(), CbmMcbm2018MuchPar::GetNbCrobsPerDpb(), CbmMcbm2018MuchPar::GetNbElinkPerCrob(), CbmMcbm2018MuchPar::GetNbFebsPerDpb(), stsxyter::Hit, stsxyter::Message::IsMsErrorFlagOn(), stsxyter::kdClockCycleNs, kiMaxNbFlibLinks, kuBytesPerMessage, stsxyter::kulTsCycleNbBins, stsxyter::kulTsCycleNbBinsBinning, stsxyter::Message::PrintMess(), stsxyter::Status, and stsxyter::TsMsb.
Referenced by DoUnpack().
|
virtual |
Reimplemented from CbmMcbmUnpack.
Definition at line 191 of file CbmMcbm2018MonitorMuchLite.cxx.
References InitMuchParameters().
|
virtual |
Implements CbmMcbmUnpack.
Definition at line 1413 of file CbmMcbm2018MonitorMuchLite.cxx.
void CbmMcbm2018MonitorMuchLite::ResetAllHistos | ( | ) |
Definition at line 1529 of file CbmMcbm2018MonitorMuchLite.cxx.
References CbmHistManager::Exists(), fdStartTime, fdStartTimeMsSz, fhDpbMsErrors, fhFEBcount, fHM, fhMsStatusFieldType, fhMuchChannelTime, fhMuchFebADC, fhMuchFebChanCntRaw, fhMuchFebDuplicateHitProf, fhMuchFebSpill, fhMuchHitsElinkPerDpb, fuNbFebs, fUnpackParMuch, CbmHistManager::H1(), CbmMcbm2018MuchPar::IsFebActive(), kiMaxNbFlibLinks, and CbmHistManager::P1().
Referenced by DoUnpack().
|
private |
void CbmMcbm2018MonitorMuchLite::SaveAllHistos | ( | TString | sFileName = "" | ) |
Save old global file and folder pointer to avoid messing with FairRoot
Restore old global file and folder pointer to avoid messing with FairRoot
Definition at line 1433 of file CbmMcbm2018MonitorMuchLite.cxx.
References CbmHistManager::Exists(), fhDpbMsErrors, fhFEBcount, fHM, fhMsStatusFieldType, fhMuchChannelTime, fhMuchFebADC, fhMuchFebChanCntRaw, fhMuchFebSpill, fhMuchHitsElinkPerDpb, fuNbFebs, fUnpackParMuch, CbmHistManager::H1(), CbmMcbm2018MuchPar::IsFebActive(), kiMaxNbFlibLinks, and CbmHistManager::P1().
Referenced by DoUnpack(), and Finish().
void CbmMcbm2018MonitorMuchLite::SaveHistos | ( | TString | sFileName = "" | ) |
|
private |
|
private |
---------------------------------------------------------------—///
Definition at line 1604 of file CbmMcbm2018MonitorMuchLite.cxx.
References fhMuchFebChanHitRateProf, fuNbFebs, fUnpackParMuch, CbmMcbm2018MuchPar::GetNbAsicsPerFeb(), CbmMcbm2018MuchPar::GetNbChanPerAsic(), and CbmMcbm2018MuchPar::IsFebActive().
Referenced by DoUnpack().
|
inline |
=> Quick and dirty hack for binning FW!!!
Definition at line 90 of file CbmMcbm2018MonitorMuchLite.h.
References fbBinningFw.
|
inline |
Definition at line 69 of file CbmMcbm2018MonitorMuchLite.h.
References fsHistoFileFullname.
|
inline |
Definition at line 61 of file CbmMcbm2018MonitorMuchLite.h.
References fuNbOverMsPerTs.
|
inline |
Definition at line 84 of file CbmMcbm2018MonitorMuchLite.h.
References fbMuchMode.
|
virtual |
Implements CbmMcbmUnpack.
Definition at line 370 of file CbmMcbm2018MonitorMuchLite.cxx.
References fuMaxNbMicroslices, fuNbCoreMsPerTs, fuNbOverMsPerTs, fuNbStsXyters, fUnpackParMuch, fvdChanLastHitTimeInMs, fvdMsTime, fvuChanNbHitsInMs, fvusChanLastHitAdcInMs, and CbmMcbm2018MuchPar::GetNbChanPerAsic().
|
virtual |
Implements CbmMcbmUnpack.
Definition at line 175 of file CbmMcbm2018MonitorMuchLite.cxx.
References fUnpackParMuch.
|
inline |
Definition at line 71 of file CbmMcbm2018MonitorMuchLite.h.
References fbPrintMessages, and fPrintMessCtrl.
void CbmMcbm2018MonitorMuchLite::SetRunStart | ( | Int_t | dateIn, |
Int_t | timeIn, | ||
Int_t | iBinSize = 5 ) |
Definition at line 1594 of file CbmMcbm2018MonitorMuchLite.cxx.
References fiBinSizeDatePlots, and fiRunStartDateTimeSec.
|
inline |
Definition at line 87 of file CbmMcbm2018MonitorMuchLite.h.
|
private |
Rate evolution histos.
Definition at line 186 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo().
|
private |
Definition at line 187 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo().
|
private |
=> Quick and dirty hack for binning FW!!!
Definition at line 98 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), FillHitInfo(), FillTsMsbInfo(), InitMuchParameters(), ProcessMuchMs(), and SetBinningFwFlag().
|
private |
Definition at line 104 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack().
|
private |
Definition at line 95 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs(), and SetMuchMode().
|
private |
Task configuration values.
Definition at line 124 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs(), and SetPrintMessage().
|
private |
Definition at line 250 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by AddMsComponentToList(), and CreateHistograms().
|
private |
Definition at line 241 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by InitMuchParameters().
|
private |
Total number of STS DPBs in system.
Definition at line 108 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), InitMuchParameters(), and ProcessMuchMs().
|
private |
previous channel
Definition at line 162 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), and ResetAllHistos().
|
private |
Time of first valid hit (TS_MSB available), used as reference for evolution plots
Definition at line 163 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs(), and ResetAllHistos().
|
private |
Binning FW error flag.
Definition at line 248 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), ProcessMuchMs(), ResetAllHistos(), and SaveAllHistos().
|
private |
Definition at line 207 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), FillHitInfo(), ResetAllHistos(), and SaveAllHistos().
|
private |
Plots per FEB-8.
Definition at line 213 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Coincidences in sorted hits.
Histograms
Definition at line 195 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by AddMsComponentToList(), ResetAllHistos(), and SaveAllHistos().
|
private |
Definition at line 202 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), ProcessMuchMs(), ResetAllHistos(), and SaveAllHistos().
|
private |
Definition at line 251 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by AddMsComponentToList(), CreateHistograms(), and ProcessMuchMs().
|
private |
Definition at line 252 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by AddMsComponentToList(), CreateHistograms(), and ProcessMuchMs().
|
private |
Definition at line 226 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), FillHitInfo(), ResetAllHistos(), and SaveAllHistos().
|
private |
Definition at line 219 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), FillHitInfo(), ResetAllHistos(), and SaveAllHistos().
|
private |
Definition at line 221 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 198 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 222 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 217 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), FillHitInfo(), ResetAllHistos(), and SaveAllHistos().
|
private |
Definition at line 242 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 231 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 232 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), ProcessMuchMs(), and ScanForNoisyChannels().
|
private |
Definition at line 225 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 245 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), and ResetAllHistos().
|
private |
Definition at line 234 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 235 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 236 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 237 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 218 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), FillHitInfo(), ResetAllHistos(), and SaveAllHistos().
|
private |
Definition at line 203 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), ProcessMuchMs(), ResetAllHistos(), and SaveAllHistos().
|
private |
Histogram manager.
Definition at line 196 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 199 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 197 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 200 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 205 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 206 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Definition at line 201 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Start of run time since "epoch" in s, for the plots with date as X axis.
Definition at line 136 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by SetRunStart().
|
private |
Index of the DPB from which the MS currently unpacked is coming.
Definition at line 135 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by SetRunStart().
|
private |
Mean Rate per channel plots.
Definition at line 177 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs().
|
private |
Current data properties.
Definition at line 131 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by Finish(), and ProcessMuchMs().
|
private |
Definition at line 125 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs(), and SetPrintMessage().
|
private |
Definition at line 214 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms().
|
private |
Internal Control/status of monitor Histo File name and path
Definition at line 122 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), Finish(), and SetHistoFileName().
|
private |
Time of first microslice, used as reference for evolution plots
Definition at line 165 of file CbmMcbm2018MonitorMuchLite.h.
|
private |
Current equipment ID, tells from which DPB the current MS is originating.
Definition at line 133 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs().
|
private |
Temp holder until Current equipment ID is properly filled in MS.
Definition at line 134 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), FillHitInfo(), FillTsMsbInfo(), and ProcessMuchMs().
|
private |
Definition at line 132 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs().
|
private |
Definition at line 129 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs().
|
private |
TS/MS info.
Definition at line 128 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), and ProcessMuchMs().
|
private |
All hits (time in bins, ADC in bins, asic, channel) in last TS, per FEB, sorted with "<" operator Coincidence histos
Definition at line 175 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), InitMuchParameters(), and SetNbMsInTs().
|
private |
Definition at line 102 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), and SetNbMsInTs().
|
private |
Array to hold the active flag for all CROBs, [ NbDpb ][ NbCrobPerDpb ].
Definition at line 111 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), InitMuchParameters(), ResetAllHistos(), SaveAllHistos(), and ScanForNoisyChannels().
|
private |
Definition at line 103 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), GetMsOverlap(), SetMsOverlap(), and SetNbMsInTs().
|
private |
Number of StsXyter ASICs.
Definition at line 112 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), InitMuchParameters(), and SetNbMsInTs().
|
private |
/** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **/
Definition at line 106 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), DoUnpack(), FillHitInfo(), InitMuchParameters(), ProcessMuchMs(), ResetAllHistos(), SaveAllHistos(), ScanForNoisyChannels(), SetNbMsInTs(), and SetParContainers().
|
private |
Definition at line 107 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by CreateHistograms(), DoUnpack(), and InitMuchParameters().
|
private |
Map of DPB Identifier to DPB index.
Definition at line 110 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by InitMuchParameters().
|
private |
Definition at line 96 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs().
|
private |
Last hit time in bins for each Channel.
Definition at line 147 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), and InitMuchParameters().
|
private |
Number of hits in each MS for each Channel.
Definition at line 152 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), InitMuchParameters(), and SetNbMsInTs().
|
private |
Definition at line 180 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), InitMuchParameters(), and ProcessMuchMs().
|
private |
Header time of previous MS per link.
Definition at line 149 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), InitMuchParameters(), and SetNbMsInTs().
|
private |
Last hit time in ns for each Channel.
Definition at line 148 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by InitMuchParameters(), and ProcessMuchMs().
|
private |
Definition at line 179 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), InitMuchParameters(), and ProcessMuchMs().
|
private |
Definition at line 178 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by InitMuchParameters(), and ProcessMuchMs().
|
private |
All hits (time in bins, ADC in bins, asic, channel) in last TS, sorted with "<" operator.
Definition at line 171 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), and InitMuchParameters().
|
private |
All hits (time in bins, ADC in bins, asic, channel) in last TS, per ASIC, sorted with "<" operator.
Definition at line 173 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), and InitMuchParameters().
|
private |
Hits time-sorting.
Time of run Start from UNIX system, used as reference for long evolution plots against reception time
Definition at line 169 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), and FillHitInfo().
|
private |
Definition at line 101 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by AddMsComponentToList(), and DoUnpack().
|
private |
Header time of each MS.
Definition at line 150 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), InitMuchParameters(), and SetNbMsInTs().
|
private |
Current TS MSB for each DPB.
Definition at line 140 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), FillHitInfo(), FillTsMsbInfo(), InitMuchParameters(), and ProcessMuchMs().
|
private |
TS MSB cycle from MS header in 1st MS for DPB.
Definition at line 143 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by InitMuchParameters().
|
private |
Current TS MSB cycle for DPB.
Definition at line 141 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by InitMuchParameters(), and ProcessMuchMs().
|
private |
Flag set after seeing MS header in 1st MS for DPB.
Definition at line 142 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by InitMuchParameters(), and ProcessMuchMs().
|
private |
TS from last hit for DPB Hits comparison
Definition at line 145 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), and InitMuchParameters().
|
private |
Bin size in s for the plots with date as X axis.
Data format control
Definition at line 139 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by DoUnpack(), FillHitInfo(), FillTsMsbInfo(), InitMuchParameters(), and ProcessMuchMs().
|
private |
Last hit time in bins in each MS for each Channel.
Definition at line 154 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo(), InitMuchParameters(), and SetNbMsInTs().
|
staticprivate |
Number of StsXyter ASICs.
Definition at line 117 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by AddMsComponentToList(), CreateHistograms(), InitMuchParameters(), ProcessMuchMs(), ResetAllHistos(), and SaveAllHistos().
|
staticprivate |
Definition at line 118 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by ProcessMuchMs().
|
private |
previous time for consecutive hit time
Definition at line 160 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo().
|
private |
previous asic
Definition at line 161 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo().
|
private |
previous time for consecutive hit time
Definition at line 159 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo().
|
private |
Last hit ADC in bins in each MS for each Channel.
Starting state book-keeping
Definition at line 158 of file CbmMcbm2018MonitorMuchLite.h.
Referenced by FillHitInfo().