CbmRoot
|
#include <CbmDeviceMcbmMonitorPulser.h>
Public Member Functions | |
CbmDeviceMcbmMonitorPulser () | |
virtual | ~CbmDeviceMcbmMonitorPulser () |
Protected Member Functions | |
virtual void | InitTask () |
bool | HandleData (FairMQParts &, int) |
Private Member Functions | |
bool | IsChannelNameAllowed (std::string channelName) |
Bool_t | InitContainers () |
void | Finish () |
bool | SendHistograms () |
void | CheckInterSystemOffset () |
template<class Digi > | |
Int_t | FillSystemOffsetHistos (TH1 *histo, TH2 *histoEvo, TH2 *histoEvoLong, TProfile *profMeanEvo, TH2 *histoAFCK, const Double_t T0Time, const Int_t offsetRange, Int_t iStartDigi, ECbmModuleId iDetId=ECbmModuleId::kLastModule) |
Int_t | CalcNrBins (Int_t) |
void | CreateHistos () |
Private Attributes | |
Bool_t | fbDebugMonitorMode |
Control flags. More... | |
Bool_t | fbIgnoreCriticalErrors |
Switch ON the filling of a additional set of histograms. More... | |
Bool_t | fbComponentsAddedToList = kFALSE |
If ON not printout at all for critical errors. More... | |
std::string | fsChannelNameDataInput = "unpts_0" |
User settings parameters. More... | |
std::string | fsChannelNameCommands = "commands" |
std::string | fsChannelNameHistosInput = "histogram-in" |
std::string | fsChannelNameHistosConfig = "histo-conf" |
std::string | fsChannelNameCanvasConfig = "canvas-conf" |
uint32_t | fuHistoryHistoSize = 3600 |
uint32_t | fuMinTotPulser = 185 |
uint32_t | fuMaxTotPulser = 195 |
uint32_t | fuPublishFreqTs = 100 |
double_t | fdMinPublishTime = 0.5 |
double_t | fdMaxPublishTime = 5.0 |
std::vector< std::string > | fsAllowedChannels = {fsChannelNameDataInput} |
List of MQ channels names. More... | |
uint64_t | fulNumMessages = 0 |
Parameters management. More... | |
uint64_t | fulTsCounter = 0 |
std::chrono::system_clock::time_point | fLastPublishTime |
TimesliceMetaData * | fTsMetaData = nullptr |
std::vector< CbmTofDigi > | fvDigiT0 = {} |
Digis storage. More... | |
std::vector< CbmStsDigi > | fvDigiSts = {} |
std::vector< CbmMuchBeamTimeDigi > | fvDigiMuch = {} |
std::vector< CbmTrdDigi > | fvDigiTrd = {} |
std::vector< CbmTofDigi > | fvDigiTof = {} |
std::vector< CbmRichDigi > | fvDigiRich = {} |
std::vector< CbmPsdDigi > | fvDigiPsd = {} |
TObjArray | fArrayHisto = {} |
Processing algo. More... | |
std::vector< std::pair< std::string, std::string > > | fvpsHistosFolder = {} |
Vector of string pairs with ( HistoName, FolderPath ) to send to the histogram server. More... | |
std::vector< std::pair< std::string, std::string > > | fvpsCanvasConfig = {} |
Double_t | fPrevTimeT0 = 0. |
Variables to store the previous digi time. More... | |
Double_t | fPrevTimeSts = 0. |
Double_t | fPrevTimeMuch = 0. |
Double_t | fPrevTimeTrd = 0. |
Double_t | fPrevTimeTof = 0. |
Double_t | fPrevTimeRich = 0. |
Double_t | fPrevTimePsd = 0. |
Int_t | fPrevT0FirstDigiSts = 0 |
Int_t | fPrevT0FirstDigiMuch = 0 |
Int_t | fPrevT0FirstDigiTrd = 0 |
Int_t | fPrevT0FirstDigiTof = 0 |
Int_t | fPrevT0FirstDigiRich = 0 |
Int_t | fPrevT0FirstDigiPsd = 0 |
UInt_t | fuMinTotPulserT0 = 182 |
UInt_t | fuMaxTotPulserT0 = 190 |
UInt_t | fuMinAdcPulserSts = 90 |
UInt_t | fuMaxAdcPulserSts = 100 |
UInt_t | fuMinAdcPulserMuch = 5 |
UInt_t | fuMaxAdcPulserMuch = 15 |
UInt_t | fuMinChargePulserTrd = 0 |
UInt_t | fuMaxChargePulserTrd = 70000 |
UInt_t | fuMinTotPulserTof = 182 |
UInt_t | fuMaxTotPulserTof = 190 |
UInt_t | fuMinTotPulserRich = 90 |
UInt_t | fuMaxTotPulserRich = 105 |
UInt_t | fuMinAdcPulserPsd = 90 |
UInt_t | fuMaxAdcPulserPsd = 100 |
UInt_t | fuStsAddress = kuDefaultAddress |
Channel selection. More... | |
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 |
Int_t | fOffsetRange = 1000 |
Int_t | fStsOffsetRange = 1000 |
Int_t | fMuchOffsetRange = 1000 |
Int_t | fTrdOffsetRange = 1000 |
Int_t | fTofOffsetRange = 1000 |
Int_t | fRichOffsetRange = 1000 |
Int_t | fPsdOffsetRange = 1000 |
Int_t | fBinWidth = 1 |
TH1 * | fT0StsDiff = nullptr |
TH1 * | fT0MuchDiff = nullptr |
TH1 * | fT0TrdDiff = nullptr |
TH1 * | fT0TofDiff = nullptr |
TH1 * | fT0RichDiff = nullptr |
TH1 * | fT0PsdDiff = nullptr |
TH2 * | fT0PsdDiffCharge = nullptr |
TH2 * | fT0StsDiffEvo = nullptr |
TH2 * | fT0MuchDiffEvo = nullptr |
TH2 * | fT0TrdDiffEvo = nullptr |
TH2 * | fT0TofDiffEvo = nullptr |
TH2 * | fT0RichDiffEvo = nullptr |
TH2 * | fT0PsdDiffEvo = nullptr |
TH2 * | fT0StsDiffEvoLong = nullptr |
TH2 * | fT0MuchDiffEvoLong = nullptr |
TH2 * | fT0TrdDiffEvoLong = nullptr |
TH2 * | fT0TofDiffEvoLong = nullptr |
TH2 * | fT0RichDiffEvoLong = nullptr |
TH2 * | fT0PsdDiffEvoLong = nullptr |
Double_t | fdStartTime = -1 |
TProfile * | fT0StsMeanEvo = nullptr |
TProfile * | fT0MuchMeanEvo = nullptr |
TProfile * | fT0TrdMeanEvo = nullptr |
TProfile * | fT0TofMeanEvo = nullptr |
TProfile * | fT0RichMeanEvo = nullptr |
TProfile * | fT0PsdMeanEvo = nullptr |
TH1 * | fT0T0Diff = nullptr |
TH1 * | fStsStsDiff = nullptr |
TH1 * | fMuchMuchDiff = nullptr |
TH1 * | fTrdTrdDiff = nullptr |
TH1 * | fTofTofDiff = nullptr |
TH1 * | fRichRichDiff = nullptr |
TH1 * | fPsdPsdDiff = nullptr |
TH2 * | fT0StsNb = nullptr |
TH2 * | fT0MuchNb = nullptr |
TH2 * | fT0TrdNb = nullptr |
TH2 * | fT0TofNb = nullptr |
TH2 * | fT0RichNb = nullptr |
TH2 * | fT0PsdNb = nullptr |
Int_t | fiT0Nb = 0 |
Int_t | fiStsNb = 0 |
Int_t | fiMuchNb = 0 |
Int_t | fiTrdNb = 0 |
Int_t | fiTofNb = 0 |
Int_t | fiRichNb = 0 |
Int_t | fiPsdNb = 0 |
TH1 * | fT0Address = nullptr |
TH1 * | fT0Channel = nullptr |
TH2 * | fT0StsDpbDiff = nullptr |
TH2 * | fT0StsDpbDiffEvo [kuMaxNbStsDpbs] |
TH1 * | fStsDpbCntsEvo [kuMaxNbStsDpbs] |
TH2 * | fT0MuchRocDiff = nullptr |
TH2 * | fT0MuchAsicDiff = nullptr |
TH2 * | fT0MuchAsicDiffEvo [kuMaxNbMuchAsics] |
TH2 * | fDigisPerAsicEvo = nullptr |
Double_t | fdLastMuchDigi [kuMaxNbMuchAsics][kuNbChanSMX] |
Double_t | fdLastMuchDigiPulser [kuMaxNbMuchAsics][kuNbChanSMX] |
TH2 * | fSameChanDigisDistEvo = nullptr |
Double_t | fdLastT0DigiPulser = 0 |
TH2 * | fDigiTimeEvoT0 = nullptr |
TH2 * | fDigiTimeEvoSts = nullptr |
TH2 * | fDigiTimeEvoMuch = nullptr |
TH2 * | fDigiTimeEvoTof = nullptr |
Static Private Attributes | |
static const UInt_t | kuNbChanSMX = 128 |
Constants. More... | |
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 |
Definition at line 35 of file CbmDeviceMcbmMonitorPulser.h.
CbmDeviceMcbmMonitorPulser::CbmDeviceMcbmMonitorPulser | ( | ) |
Definition at line 46 of file CbmDeviceMcbmMonitorPulser.cxx.
|
virtual |
Definition at line 399 of file CbmDeviceMcbmMonitorPulser.cxx.
|
private |
|
private |
|
private |
|
private |
|
private |
Definition at line 401 of file CbmDeviceMcbmMonitorPulser.cxx.
|
protected |
TODO: code order of vectors in the TS MetaData!!
Process data in Algo
Clear vectors
Definition at line 248 of file CbmDeviceMcbmMonitorPulser.cxx.
Referenced by InitTask().
|
private |
Definition at line 125 of file CbmDeviceMcbmMonitorPulser.cxx.
|
protectedvirtual |
Read options from executable
Set the Monitor Algo in Absolute time scale
Definition at line 50 of file CbmDeviceMcbmMonitorPulser.cxx.
References HandleData().
|
private |
Definition at line 104 of file CbmDeviceMcbmMonitorPulser.cxx.
References pos.
|
private |
Serialize the array of histos into a single MQ message
Send message to the common histogram messages queue
Reset the histograms after sending them (but do not reset the time)
Definition at line 363 of file CbmDeviceMcbmMonitorPulser.cxx.
|
private |
Processing algo.
Array of histograms to send to the histogram server
Definition at line 105 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
If ON not printout at all for critical errors.
Definition at line 60 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
|
private |
Switch ON the filling of a additional set of histograms.
Definition at line 58 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 190 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 256 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 265 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 264 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 263 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 266 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 257 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 258 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 261 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 73 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 72 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 214 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 239 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 243 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 242 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 238 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 237 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 241 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 240 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 86 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 224 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 184 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 180 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 182 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 147 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 151 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 150 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Variables to store the first digi fitting the previous T0 hits => Time-order means the time window for following one can only be in a later digi
Definition at line 146 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 149 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 148 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 138 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 142 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 141 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 137 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Variables to store the previous digi time.
Definition at line 136 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 140 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 139 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 188 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 228 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 187 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 227 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
List of MQ channels names.
Definition at line 76 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 259 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 67 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 64 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
User settings parameters.
Definition at line 63 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 66 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 65 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 250 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 183 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 223 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 245 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 246 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 253 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 254 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 193 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 201 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 208 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 216 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 231 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 252 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 197 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 198 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 205 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 212 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 220 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 235 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 196 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 204 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 211 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 219 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 234 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 192 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 200 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 207 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 248 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 249 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 215 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 230 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 222 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 195 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 203 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 210 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 218 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 233 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 194 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 202 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 209 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 217 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 232 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 186 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 226 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 185 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 225 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Data reception TS MetaData storage
Definition at line 91 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 68 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Parameters management.
Statistics & first TS rejection
Definition at line 84 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 85 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 160 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 168 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 158 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 162 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 70 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 166 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 156 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 164 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 159 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 167 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 157 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 161 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 69 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 165 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
User settings: Data correction parameters Charge cut
Definition at line 155 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 163 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 173 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 174 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 175 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 177 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 71 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Channel selection.
Definition at line 170 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 171 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 172 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 176 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 95 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 99 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 98 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 94 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Digis storage.
Definition at line 93 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 97 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Definition at line 96 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Vector of string pairs with ( CanvasName, CanvasConfig ) to send to the histogram server Format of Can config is "NbPadX(U);NbPadY(U);ConfigPad1(s);....;ConfigPadXY(s)" Format of Pad config is "GrixX(b),GridY(b),LogX(b),LogY(b),LogZ(b),HistoName(s),DrawOptions(s)"
Definition at line 111 of file CbmDeviceMcbmMonitorPulser.h.
|
private |
Vector of string pairs with ( HistoName, FolderPath ) to send to the histogram server.
Definition at line 107 of file CbmDeviceMcbmMonitorPulser.h.
|
staticprivate |
Definition at line 51 of file CbmDeviceMcbmMonitorPulser.h.
|
staticprivate |
Definition at line 52 of file CbmDeviceMcbmMonitorPulser.h.
|
staticprivate |
Definition at line 50 of file CbmDeviceMcbmMonitorPulser.h.
|
staticprivate |
Definition at line 49 of file CbmDeviceMcbmMonitorPulser.h.
|
staticprivate |
Definition at line 48 of file CbmDeviceMcbmMonitorPulser.h.
|
staticprivate |
Constants.
Definition at line 47 of file CbmDeviceMcbmMonitorPulser.h.