CbmRoot
|
#include <CbmStar2019EventBuilderEtofAlgo.h>
Public Member Functions | |
CbmStar2019EventBuilderEtofAlgo () | |
~CbmStar2019EventBuilderEtofAlgo () | |
virtual Bool_t | Init () |
virtual void | Reset () |
virtual void | Finish () |
Bool_t | InitContainers () |
Bool_t | ReInitContainers () |
TList * | GetParList () |
Bool_t | InitParameters () |
Bool_t | ProcessTs (const fles::Timeslice &ts) |
Bool_t | ProcessTs (const fles::Timeslice &ts, size_t) |
Bool_t | ProcessMs (const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx) |
void | AddMsComponentToList (size_t component, UShort_t usDetectorId) |
Bool_t | BuildEvents () |
std::vector< CbmTofStarSubevent2019 > & | GetEventBuffer () |
Bool_t | CreateHistograms () |
Bool_t | FillHistograms () |
Bool_t | ResetHistograms () |
void | SetMonitorMode (Bool_t bFlagIn=kTRUE) |
void | SetDebugMonitorMode (Bool_t bFlagIn=kTRUE) |
void | SetStoreLostEventMsg (Bool_t bFlagIn=kTRUE) |
void | SetAddStatusToEvent (Bool_t bFlagIn=kTRUE) |
void | SetPulserTotLimits (UInt_t uMin, UInt_t uMax) |
virtual void | SetParameter (std::string) |
virtual std::string | GetParameter (std::string) |
void | AddHistoToVector (TNamed *pointer, std::string sFolder="") |
For monitor algos. More... | |
std::vector< std::pair< TNamed *, std::string > > | GetHistoVector () |
void | AddCanvasToVector (TCanvas *pointer, std::string sFolder="") |
std::vector< std::pair< TCanvas *, std::string > > | GetCanvasVector () |
void | ClearVector () |
For unpacker algos. More... | |
std::vector< CbmTofDigi > & | GetVector () |
void | ClearErrorVector () |
std::vector< CbmErrorMessage > & | GetErrorVector () |
void | SetIgnoreOverlapMs (Bool_t bFlagIn=kTRUE) |
Control flags. More... | |
Protected Member Functions | |
Bool_t | CheckParameterValidity (std::string, std::string) |
Map of parameter name and type. More... | |
Protected Attributes | |
TList * | fParCList |
Parameter management. More... | |
std::vector< size_t > | fvMsComponentsList |
Parameters related to FLES containers. More... | |
size_t | fuNbCoreMsPerTs |
size_t | fuNbOverMsPerTs |
size_t | fuNbMsLoop |
Bool_t | fbIgnoreOverlapMs |
Double_t | fdMsSizeInNs |
/** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **/ More... | |
Double_t | fdTsCoreSizeInNs |
Size of a single MS, [nanoseconds]. More... | |
Double_t | fdTsFullSizeInNs |
Total size of the core MS in a TS, [nanoseconds]. More... | |
std::vector< std::pair< TNamed *, std::string > > | fvpAllHistoPointers |
Total size of the core MS in a TS, [nanoseconds]. More... | |
std::vector< std::pair< TCanvas *, std::string > > | fvpAllCanvasPointers |
Vector of pointers to histograms + optional folder name. More... | |
std::vector< CbmTofDigi > | fDigiVect |
Vector of pointers to canvases + optional folder name. More... | |
std::vector< CbmErrorMessage > | fErrVect |
std::map< std::string, std::string > | fParameterMap |
For any algo. More... | |
Private Member Functions | |
void | ProcessEpochCycle (uint64_t ulCycleData) |
All sectors, extra monitor for debug. More... | |
void | ProcessEpoch (gdpbv100::Message mess) |
void | ProcessStarTrigger (gdpbv100::Message mess) |
void | ProcessEpSupprBuffer (uint32_t uGdpbNr) |
void | StoreMessageInBuffer (gdpbv100::FullMessage fullMess, uint32_t uGdpbNr) |
void | ProcessHit (gdpbv100::Message mess, uint64_t ulCurEpochGdpbGet4) |
void | ProcessSlCtrl (gdpbv100::Message mess, uint64_t ulCurEpochGdpbGet4) |
void | ProcessSysMess (gdpbv100::Message mess, uint64_t ulCurEpochGdpbGet4) |
void | ProcessPattern (gdpbv100::Message mess, uint64_t ulCurEpochGdpbGet4) |
void | UpdateStatusPatternCurrGdpb () |
gdpbv100::FullMessage | CreateStatusMessage (uint16_t uGdpbId, uint32_t uIndex, std::pair< uint64_t, std::bitset< kuNbAsicPerGdpb >> statusIn) |
CbmStar2019EventBuilderEtofAlgo (const CbmStar2019EventBuilderEtofAlgo &) | |
CbmStar2019EventBuilderEtofAlgo | operator= (const CbmStar2019EventBuilderEtofAlgo &) |
Private Attributes | |
Bool_t | fbMonitorMode |
Control flags. More... | |
Bool_t | fbDebugMonitorMode |
Switch ON the filling of a minimal set of histograms. More... | |
Bool_t | fbStoreLostEventMsg |
Switch ON the filling of a additional set of histograms. More... | |
Bool_t | fbAddStatusToEvent |
Switch ON the insertion of the LostEvent messages from GET4s with the critical errors (default is false) More... | |
CbmStar2019TofPar * | fUnpackPar |
Correspond to ~6000 error messages max per event, leaving 2000 for hits and epoch. More... | |
UInt_t | fuNrOfGdpbs |
std::map< UInt_t, UInt_t > | fGdpbIdIndexMap |
UInt_t | fuNrOfFeePerGdpb |
UInt_t | fuNrOfGet4PerFee |
UInt_t | fuNrOfChannelsPerGet4 |
UInt_t | fuNrOfChannelsPerFee |
UInt_t | fuNrOfGet4 |
UInt_t | fuNrOfGet4PerGdpb |
UInt_t | fuNrOfChannelsPerGdpb |
UInt_t | fuNrOfGbtx |
Detector Mapping. More... | |
UInt_t | fuNrOfModules |
std::vector< Int_t > | fviNrOfRpc |
std::vector< Int_t > | fviRpcType |
std::vector< Int_t > | fviRpcSide |
std::vector< Int_t > | fviModuleId |
Double_t | fdAllowedTriggersSpread |
Event window limits. More... | |
std::vector< Double_t > | fdStarTriggerDeadtime |
std::vector< Double_t > | fdStarTriggerDelay |
[sector] More... | |
std::vector< Double_t > | fdStarTriggerWinSize |
[sector] More... | |
UInt_t | fuMinTotPulser |
[sector] More... | |
UInt_t | fuMaxTotPulser |
ULong64_t | fulCurrentTsIndex |
Running indices. More... | |
Double_t | fdTsStartTime |
Double_t | fdTsStopTimeCore |
size_t | fuCurrentMs |
Double_t | fdMsTime |
UInt_t | fuMsIndex |
UInt_t | fuGdpbId |
UInt_t | fuGdpbNr |
UInt_t | fuGet4Id |
UInt_t | fuGet4Nr |
Int_t | fiEquipmentId |
std::vector< ULong64_t > | fvulCurrentEpoch |
Current time references for each GDPB: merged epoch marker, epoch cycle, full epoch [fuNrOfGdpbs]. More... | |
std::vector< ULong64_t > | fvulCurrentEpochCycle |
std::vector< ULong64_t > | fvulCurrentEpochFull |
Epoch cycle from the Ms Start message and Epoch counter flip. More... | |
std::vector< std::vector< gdpbv100::Message > > | fvvmEpSupprBuffer |
Epoch + Epoch Cycle. More... | |
std::vector< std::vector< gdpbv100::FullMessage > > | fvvBufferMajorAsicErrors |
[sector] More... | |
std::vector< std::vector< gdpbv100::FullMessage > > | fvvBufferMessages |
[sector], buffer to make sure GET4 errors 0-12 are always transmitted More... | |
std::vector< std::vector< CbmTofStarTrigger2019 > > | fvvBufferTriggers |
[sector] More... | |
std::vector< CbmTofStarSubevent2019 > | fvEventsBuffer |
[sector] More... | |
Bool_t | fbTriggerFoundA |
Event buffer. More... | |
Bool_t | fbTriggerFoundB |
Bool_t | fbTriggerFoundC |
std::vector< ULong64_t > | fvulGdpbTsMsb |
std::vector< ULong64_t > | fvulGdpbTsLsb |
[sector] More... | |
std::vector< ULong64_t > | fvulStarTsMsb |
[sector] More... | |
std::vector< ULong64_t > | fvulStarTsMid |
[sector] More... | |
std::vector< ULong64_t > | fvulGdpbTsFullLast |
[sector] More... | |
std::vector< ULong64_t > | fvulStarTsFullLast |
[sector] More... | |
std::vector< UInt_t > | fvuStarTokenLast |
[sector] More... | |
std::vector< UInt_t > | fvuStarDaqCmdLast |
[sector] More... | |
std::vector< UInt_t > | fvuStarTrigCmdLast |
[sector] More... | |
std::vector< ULong64_t > | fvulGdpbTsFullLastCore |
[sector] More... | |
std::vector< ULong64_t > | fvulStarTsFullLastCore |
[sector] More... | |
std::vector< UInt_t > | fvuStarTokenLastCore |
[sector] More... | |
std::vector< UInt_t > | fvuStarDaqCmdLastCore |
[sector] More... | |
std::vector< UInt_t > | fvuStarTrigCmdLastCore |
[sector] More... | |
std::vector< Double_t > | fvdMessCandidateTimeStart |
[sector] More... | |
std::vector< Double_t > | fvdMessCandidateTimeStop |
[sector] More... | |
std::vector< Double_t > | fvdTrigCandidateTimeStart |
[sector] More... | |
std::vector< Double_t > | fvdTrigCandidateTimeStop |
[sector] More... | |
Bool_t | fbEpochAfterCandWinFound |
[sector] More... | |
Bool_t | fbTriggerAfterCandWinFound |
std::vector< std::bitset< kuNbAsicPerGdpb > > | fvbGdpbLastMissmatchPattern |
std::vector< std::bitset< kuNbAsicPerGdpb > > | fvbGdpbLastEnablePattern |
[sector][asic] Exclude from dictionnary More... | |
std::vector< std::bitset< kuNbAsicPerGdpb > > | fvbGdpbLastResyncPattern |
[sector][asic] Exclude from dictionnary More... | |
std::vector< std::vector< std::pair< uint64_t, std::bitset< kuNbAsicPerGdpb > > > > | fvSectorStatusPattern |
[sector][asic] Exclude from dictionnary More... | |
std::vector< TH1 * > | fvhHitsTimeToTriggerRaw |
[sector][Update]<time, [asic]> Exclude from dictionnary More... | |
std::vector< TH2 * > | fvhHitsTimeToTriggerRawPulser |
[sector] More... | |
std::vector< TH1 * > | fvhHitsTimeToTriggerSel |
[sector], extra monitor for debug More... | |
std::vector< TH2 * > | fvhHitsTimeToTriggerSelVsDaq |
[sector] More... | |
std::vector< TH2 * > | fvhHitsTimeToTriggerSelVsTrig |
[sector], extra monitor for debug More... | |
std::vector< TH1 * > | fvhTriggerDt |
[sector], extra monitor for debug More... | |
std::vector< TH1 * > | fvhTriggerDistributionInTs |
[sector], extra monitor for debug More... | |
std::vector< TH1 * > | fvhTriggerDistributionInMs |
[sector], extra monitor for debug More... | |
std::vector< TH1 * > | fvhMessDistributionInMs |
[sector], extra monitor for debug More... | |
TH1 * | fhEventNbPerTs |
[sector], extra monitor for debug More... | |
TH1 * | fhEventSizeDistribution |
TProfile * | fhEventSizeEvolution |
TH1 * | fhEventNbEvolution |
TH1 * | fhEventNbDistributionInTs |
TProfile * | fhEventSizeDistributionInTs |
extra monitor for debug More... | |
TH2 * | fhRawTriggersStats |
extra monitor for debug More... | |
TH2 * | fhRawTriggersStatsCore |
extra monitor for debug More... | |
TH2 * | fhRawTriggersStatsOver |
extra monitor for debug More... | |
TH2 * | fhRawTriggersStatsSel |
extra monitor for debug More... | |
TH2 * | fhMissingTriggersEvolution |
extra monitor for debug More... | |
TCanvas * | fcTimeToTrigRaw |
extra monitor for debug More... | |
TCanvas * | fcTimeToTrigSel |
All sectors. More... | |
TCanvas * | fcTrigDistMs |
All sectors. More... | |
TCanvas * | fcMessDistMs |
All sectors, extra monitor for debug. More... | |
TCanvas * | fcEventBuildStats |
All sectors, extra monitor for debug. More... | |
TCanvas * | fcTriggerStats |
Static Private Attributes | |
static const UInt_t | kuMaxNbErrorsPerGdpbPerEvent |
Switch ON the readout and insertion of STATUS pattern message (default is true) More... | |
static const uint32_t | kuNbMsgPerPattern = 8 |
ASIC status monitoring. More... | |
static const uint32_t | kuNbAsicPerGdpb = 240 |
Definition at line 31 of file CbmStar2019EventBuilderEtofAlgo.h.
CbmStar2019EventBuilderEtofAlgo::CbmStar2019EventBuilderEtofAlgo | ( | ) |
Definition at line 33 of file CbmStar2019EventBuilderEtofAlgo.cxx.
CbmStar2019EventBuilderEtofAlgo::~CbmStar2019EventBuilderEtofAlgo | ( | ) |
Clear buffers
Definition at line 133 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fuNrOfGdpbs, fvvBufferMajorAsicErrors, fvvBufferMessages, fvvBufferTriggers, and fvvmEpSupprBuffer.
|
private |
|
inlineinherited |
Definition at line 87 of file CbmStar2019Algo.h.
|
inlineinherited |
For monitor algos.
Definition at line 80 of file CbmStar2019Algo.h.
void CbmStar2019EventBuilderEtofAlgo::AddMsComponentToList | ( | size_t | component, |
UShort_t | usDetectorId | ||
) |
Check for duplicates and ignore if it is the case
Add to list
Definition at line 329 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References CbmStar2019Algo< CbmTofDigi >::fvMsComponentsList.
Referenced by CbmDeviceEventBuilderEtofStar2019::AddMsComponentToList(), CbmStar2019EventBuilderEtof::AddMsComponentToList(), and CbmDeviceEventBuilderEtofStar2019::HandleParts().
Bool_t CbmStar2019EventBuilderEtofAlgo::BuildEvents | ( | ) |
Get an iterator to the 1st trigger of each gDPB/sector
[sector]
[sector]
[sector]
[sector]
Check that all gDPB/sectors are not straight at end of their trigger buffer (TS w/o triggers)
=> Check can be stopped ad soon as a gDPB/sector not at end is found!
while at least one gDPB not at end of its triger buffer ==> Need to include a TS edge check? Should be taken care of be the fdAllowedTriggersSpread but check here if problem of split events on TS edge
Check if all @ same trigger ID and CMD fields
If first sector has no remaining trigger, we cannot have same trigger in all! => Prevent seg fault if first sector goes missing
If first sector still has a trigger, use it as reference to check if the first remaining trigger in all sectors is the same
Yes = Complete event Create event
Mean trigger is set latter, SourceId 0 for the full wheel!
Loop gDPB/sector
Prepare mean trigger for event header
Convert STAR trigger to 4 full messages and insert in buffer
Find Last status field update before the trigger, convert it to 7 status pattern messages and insert in buffer Iterator may reach the end if last update before trigger is also last update in general Used proper order of conditions to avoid segfault Loop until we find first update not matching or the end of the vector
Check that there was at least one update before this trigger
Go back to last matching update
Generate and insert the messages
Prepare trigger window limits in ns for data selection
Loop on important errors buffer and select all from "last event" or 2 Epoch before the trigger window to "end of trigger window"
Add errors to event only until the limit per gDPB
Loop on data and select data fitting the trigger window Also advance start iterator to end of deadtime
Fill Histo if monitor mode
If in trigger window, add to event
Fill Histo if monitor mode
Needed to catch the case where deadtime finishes before the trigger window
Advance iterator on trigger
Set Mean trigger in event header
Add event to event buffer
No = at least 1 missed a trigger Check which gDPB/sector has the trigger with the smallest gDPB TS
Find all gDPB with a matching trigger
[sector]
Compute the mean trigger from all matching triggers
Create event & add to header the mean trigger, the "incomplete event" flag
Mean trigger is set latter, SourceId 0 for the full wheel!
Loop gDPB/sector
Check if this gDPB/sector has a matching trigger Select trigger time => If matching trigger, use its TS, otherwise use the calulated mean trigger TS TODO: add option and code to use instead of the mean a majority trigger!!
Select trigger time => If matching trigger, use its TS, otherwise use the calulated mean trigger TS
If matching trigger, convert STAR trigger to 4 full messages and insert in buffer
Fill missing trigger per sector evolution plot only in debug monitor mode
Find Last status field update before the trigger, convert it to 7 status pattern messages and insert in buffer Iterator may reach the end if last update before trigger is also last update in general Used proper order of conditions to avoid segfault Loop until we find first update not matching or the end of the vector
Check that there was at least one update before this trigger
Go back to last matching update
Generate and insert the messages
Prepare trigger window limits in ns for data selection
Loop on important errors buffer and select all from "last event" or 2 Epoch before the trigger window to "end of trigger window"
Add errors to event only until the limit per gDPB
Loop on data and select data fitting the trigger window Also advance start iterator to end of deadtime
Fill Histo if monitor mode
If in trigger window, add to event
Fill Histo if monitor mode
Needed to catch the case where deadtime finishes before the trigger window
Advance iterator for gDPB/sector with matching trigger
Add event to event buffer
Check if all gDPB/sectors are at end of their trigger buffer
=> Check can be stopped as soon as a gDPB/sector not at end is found!
Definition at line 1342 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References CbmTofStarSubevent2019::AddMsg(), CreateStatusMessage(), fbAddStatusToEvent, fbDebugMonitorMode, fbMonitorMode, fdStarTriggerDeadtime, fdStarTriggerDelay, fdStarTriggerWinSize, fhMissingTriggersEvolution, PairAnalysisStyler::Fill, first, fuMaxTotPulser, fuMinTotPulser, fUnpackPar, fuNrOfGdpbs, fvEventsBuffer, fvhHitsTimeToTriggerRaw, fvhHitsTimeToTriggerRawPulser, fvhHitsTimeToTriggerSel, fvhHitsTimeToTriggerSelVsDaq, fvhHitsTimeToTriggerSelVsTrig, fvhTriggerDt, fvSectorStatusPattern, fvvBufferMajorAsicErrors, fvvBufferMessages, fvvBufferTriggers, CbmStar2019TofPar::GetGdpbId(), CbmStar2019TofPar::GetGdpbToSectorOffset(), gdpbv100::kdClockCycleSizeNs, gdpbv100::kdEpochInNs, gdpbv100::kuCoarseCounterSize, kuMaxNbErrorsPerGdpbPerEvent, kuNbMsgPerPattern, gdpbv100::MSG_HIT, CbmTofStarSubevent2019::SetIncompleteEventFlag(), and CbmTofStarSubevent2019::SetTrigger().
Referenced by ProcessTs().
|
inlineprotectedinherited |
Map of parameter name and type.
Definition at line 147 of file CbmStar2019Algo.h.
|
inlineinherited |
Definition at line 98 of file CbmStar2019Algo.h.
|
inlineinherited |
For unpacker algos.
Definition at line 96 of file CbmStar2019Algo.h.
Bool_t CbmStar2019EventBuilderEtofAlgo::CreateHistograms | ( | ) |
Create sector related histograms
Add pointers to the vector with all histo for access by steering class
FIXME: hardcoded nb of MS in TS (include overlap) as this number is known only later when 1st TS is received
Add pointers to the vector with all histo for access by steering class
Create event builder related histograms
Add pointers to the vector with all histo for access by steering class
FIXME: hardcoded nb of MS in TS (include overlap) as this number is known only later when 1st TS is received
Add pointers to the vector with all histo for access by steering class
Canvases
Raw Time to trig for all sectors
Selected Time to trig for all sectors
Trigger time to MS start for all sectors
Message time to MS start for all sectors
Event building process summary and statistics
Definition at line 1805 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References CbmStar2019Algo< CbmTofDigi >::AddCanvasToVector(), CbmStar2019Algo< CbmTofDigi >::AddHistoToVector(), fbDebugMonitorMode, fcEventBuildStats, fcMessDistMs, fcTimeToTrigRaw, fcTimeToTrigSel, fcTrigDistMs, fcTriggerStats, CbmStar2019Algo< CbmTofDigi >::fdMsSizeInNs, fdStarTriggerDelay, fdStarTriggerWinSize, fhEventNbDistributionInTs, fhEventNbEvolution, fhEventNbPerTs, fhEventSizeDistribution, fhEventSizeDistributionInTs, fhEventSizeEvolution, fhMissingTriggersEvolution, fhRawTriggersStats, fhRawTriggersStatsCore, fhRawTriggersStatsOver, fhRawTriggersStatsSel, fUnpackPar, fuNrOfGdpbs, fvhHitsTimeToTriggerRaw, fvhHitsTimeToTriggerRawPulser, fvhHitsTimeToTriggerSel, fvhHitsTimeToTriggerSelVsDaq, fvhHitsTimeToTriggerSelVsTrig, fvhMessDistributionInMs, fvhTriggerDistributionInMs, fvhTriggerDistributionInTs, fvhTriggerDt, CbmStar2019TofPar::GetGdpbToSectorOffset(), and CbmTofStarSubevent2019::GetMaxOutputSize().
Referenced by CbmDeviceEventBuilderEtofStar2019::InitContainers(), and CbmStar2019EventBuilderEtof::InitContainers().
|
private |
Mask for extraction of pattern blocks for each msg index
Create message and set the full epoch
Extract block corresponding to this index
Set the messages fields
Definition at line 1315 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References gdpbv100::MSG_SYST, gdpbv100::PATT_STATUS, gdpbv100::Message::setGdpbGenGdpbId(), gdpbv100::Message::setGdpbSysPattIndex(), gdpbv100::Message::setGdpbSysPattPattern(), gdpbv100::Message::setGdpbSysPattType(), gdpbv100::Message::setGdpbSysSubType(), gdpbv100::Message::setMessageType(), and gdpbv100::SYS_PATTERN.
Referenced by BuildEvents().
Bool_t CbmStar2019EventBuilderEtofAlgo::FillHistograms | ( | ) |
Definition at line 2199 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fbDebugMonitorMode, fdTsStartTime, fhEventNbDistributionInTs, fhEventNbEvolution, fhEventNbPerTs, fhEventSizeDistribution, fhEventSizeDistributionInTs, fhEventSizeEvolution, fvEventsBuffer, and gdpbv100::kdClockCycleSizeNs.
Referenced by ProcessTs().
|
virtual |
Printout Goodbye message and stats
Write Output histos
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 150 of file CbmStar2019EventBuilderEtofAlgo.cxx.
|
inlineinherited |
Definition at line 91 of file CbmStar2019Algo.h.
|
inlineinherited |
Definition at line 99 of file CbmStar2019Algo.h.
|
inline |
Definition at line 55 of file CbmStar2019EventBuilderEtofAlgo.h.
References fvEventsBuffer.
Referenced by CbmDeviceEventBuilderEtofStar2019::DoUnpack(), CbmStar2019EventBuilderEtof::DoUnpack(), and CbmDeviceEventBuilderEtofStar2019::HandleParts().
|
inlineinherited |
Definition at line 84 of file CbmStar2019Algo.h.
|
inlinevirtualinherited |
Definition at line 75 of file CbmStar2019Algo.h.
|
virtual |
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 175 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References CbmStar2019Algo< CbmTofDigi >::fParCList, and fUnpackPar.
Referenced by CbmDeviceEventBuilderEtofStar2019::SetParContainers(), and CbmStar2019EventBuilderEtof::SetParContainers().
|
inlineinherited |
Definition at line 97 of file CbmStar2019Algo.h.
|
virtual |
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 144 of file CbmStar2019EventBuilderEtofAlgo.cxx.
|
virtual |
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 157 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References ReInitContainers().
Referenced by CbmDeviceEventBuilderEtofStar2019::InitContainers(), and CbmStar2019EventBuilderEtof::InitContainers().
Bool_t CbmStar2019EventBuilderEtofAlgo::InitParameters | ( | ) |
Control flags => Controlled from the calling task
Parameters for variables dimensionning
Parameters for detector mapping
Parameters for FLES containers processing
Parameters for STAR trigger & event building
STAR Trigger decoding and monitoring
Definition at line 182 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fbAddStatusToEvent, fbDebugMonitorMode, fbMonitorMode, fbStoreLostEventMsg, fdAllowedTriggersSpread, CbmStar2019Algo< CbmTofDigi >::fdMsSizeInNs, fdStarTriggerDeadtime, fdStarTriggerDelay, fdStarTriggerWinSize, fGdpbIdIndexMap, fUnpackPar, fuNrOfChannelsPerFee, fuNrOfChannelsPerGdpb, fuNrOfChannelsPerGet4, fuNrOfFeePerGdpb, fuNrOfGbtx, fuNrOfGdpbs, fuNrOfGet4, fuNrOfGet4PerFee, fuNrOfGet4PerGdpb, fuNrOfModules, fvbGdpbLastEnablePattern, fvbGdpbLastMissmatchPattern, fvbGdpbLastResyncPattern, fvdMessCandidateTimeStart, fvdMessCandidateTimeStop, fvdTrigCandidateTimeStart, fvdTrigCandidateTimeStop, fviModuleId, fviNrOfRpc, fviRpcSide, fviRpcType, fvSectorStatusPattern, fvulCurrentEpoch, fvulCurrentEpochCycle, fvulCurrentEpochFull, fvulGdpbTsFullLast, fvulGdpbTsFullLastCore, fvulGdpbTsLsb, fvulGdpbTsMsb, fvulStarTsFullLast, fvulStarTsFullLastCore, fvulStarTsMid, fvulStarTsMsb, fvuStarDaqCmdLast, fvuStarDaqCmdLastCore, fvuStarTokenLast, fvuStarTokenLastCore, fvuStarTrigCmdLast, fvuStarTrigCmdLastCore, fvvBufferMajorAsicErrors, fvvBufferMessages, fvvBufferTriggers, fvvmEpSupprBuffer, CbmStar2019TofPar::GetGdpbId(), CbmStar2019TofPar::GetModuleId(), CbmStar2019TofPar::GetNrOfChannelsPerGet4(), CbmStar2019TofPar::GetNrOfFeePerGdpb(), CbmStar2019TofPar::GetNrOfGbtx(), CbmStar2019TofPar::GetNrOfGdpbs(), CbmStar2019TofPar::GetNrOfGet4PerFee(), CbmStar2019TofPar::GetNrOfModules(), CbmStar2019TofPar::GetNrOfRpc(), CbmStar2019TofPar::GetRpcSide(), CbmStar2019TofPar::GetRpcType(), CbmStar2019TofPar::GetSizeMsInNs(), CbmStar2019TofPar::GetStarTriggAllowedSpread(), CbmStar2019TofPar::GetStarTriggDeadtime(), CbmStar2019TofPar::GetStarTriggDelay(), CbmStar2019TofPar::GetStarTriggWinSize(), and i.
Referenced by ReInitContainers().
|
private |
|
private |
Re-align the epoch number of the message in case it will be used later: We received the epoch after the data instead of the one before!
Process the corresponding messages buffer
Detecting of the end of useful data in the overlap MS
Definition at line 712 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fbEpochAfterCandWinFound, fuCurrentMs, fuGdpbNr, CbmStar2019Algo< CbmTofDigi >::fuNbCoreMsPerTs, fvdMessCandidateTimeStop, fvulCurrentEpoch, fvulCurrentEpochCycle, fvulCurrentEpochFull, gdpbv100::Message::getGdpbEpEpochNb(), gdpbv100::kdEpochInNs, gdpbv100::kuEpochCounterSz, ProcessEpSupprBuffer(), and gdpbv100::Message::setGdpbEpEpochNb().
Referenced by ProcessMs().
|
private |
All sectors, extra monitor for debug.
Definition at line 680 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fuGdpbNr, fvulCurrentEpochCycle, and gdpbv100::kulEpochCycleFieldSz.
Referenced by ProcessMs().
|
private |
Data are sorted between epochs, not inside => Epoch level ordering Sorting at lower bin precision level
Compute original epoch index before epoch suppression
Ignore the first epoch as it should never appear (start delay!!)
In Ep. Suppr. Mode, receive following epoch instead of previous
Store the full message in the proper buffer
Do other actions on it if needed
Definition at line 1045 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References CbmStar2019TofPar::ElinkIdxToGet4Idx(), fbAddStatusToEvent, fuGdpbNr, fuGet4Id, fuGet4Nr, fUnpackPar, fuNrOfGet4PerGdpb, fvulCurrentEpoch, fvulCurrentEpochFull, fvvmEpSupprBuffer, gdpbv100::Message::getGdpbSysSubType(), gdpbv100::MSG_EPOCH, gdpbv100::MSG_HIT, gdpbv100::MSG_SLOWC, gdpbv100::MSG_STAR_TRI_A, gdpbv100::MSG_STAR_TRI_B, gdpbv100::MSG_STAR_TRI_C, gdpbv100::MSG_STAR_TRI_D, gdpbv100::MSG_SYST, ProcessPattern(), StoreMessageInBuffer(), and gdpbv100::SYS_PATTERN.
Referenced by ProcessEpoch().
|
private |
Definition at line 1158 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fuGdpbNr, fuGet4Id, fUnpackPar, fuNrOfChannelsPerGdpb, fuNrOfChannelsPerGet4, gdpbv100::Message::getGdpbHitChanId(), and CbmStar2019TofPar::GetNumberOfChannels().
|
virtual |
Store MS/TS information
Get pointer on MS data
If not integer number of message in input buffer, print warning/error
Compute the number of complete messages in the input microslice buffer
Get the gDPB ID from the MS header
Check if this gDPB ID was declared in parameter file and stop there if not
Store the last STAR trigger values for the core MS when reaching the first overlap MS, needed to check for clones
Restore the last STAR trigger values for the core MS when reaching the first core MS, needed to check for clones
Escape loop if in overlap MS and flags used to detect end of usefull data are both up
Catch the Epoch cycle block which is always the first 64b of the MS
Get message type
Should be checked in monitor task, here we just jump it
If A message, check that the following ones are B, C, D ==> TBD only if necessary
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 483 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References CbmStar2019TofPar::ElinkIdxToGet4Idx(), fbEpochAfterCandWinFound, fbTriggerAfterCandWinFound, fdMsTime, fGdpbIdIndexMap, fiEquipmentId, fuCurrentMs, fuGdpbId, fuGdpbNr, fuGet4Id, fuGet4Nr, CbmStar2019Algo< CbmTofDigi >::fuNbCoreMsPerTs, CbmStar2019Algo< CbmTofDigi >::fuNbOverMsPerTs, fUnpackPar, fuNrOfGet4PerGdpb, CbmStar2019Algo< CbmTofDigi >::fvMsComponentsList, fvulGdpbTsFullLast, fvulGdpbTsFullLastCore, fvulStarTsFullLast, fvulStarTsFullLastCore, fvuStarDaqCmdLast, fvuStarDaqCmdLastCore, fvuStarTokenLast, fvuStarTokenLastCore, fvuStarTrigCmdLast, fvuStarTrigCmdLastCore, fvvmEpSupprBuffer, gdpbv100::Message::getGdpbGenChipId(), gdpbv100::Message::getGdpbHitIs24b(), gdpbv100::Message::getMessageType(), CbmStar2019TofPar::GetNbByteMessage(), CbmStar2019TofPar::GetNrOfGet4PerGdpb(), gdpbv100::Message::isStarTrigger(), iWarn, iWarnMess, gdpbv100::kuChipIdMergedEpoch, gdpbv100::MSG_EPOCH, gdpbv100::MSG_HIT, gdpbv100::MSG_SLOWC, gdpbv100::MSG_STAR_TRI_A, gdpbv100::MSG_STAR_TRI_B, gdpbv100::MSG_STAR_TRI_C, gdpbv100::MSG_STAR_TRI_D, gdpbv100::MSG_SYST, ProcessEpoch(), ProcessEpochCycle(), and ProcessStarTrigger().
Referenced by ProcessTs().
|
private |
Definition at line 1255 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fuGdpbNr, fvbGdpbLastEnablePattern, fvbGdpbLastMissmatchPattern, fvbGdpbLastResyncPattern, gdpbv100::Message::getGdpbSysPattIndex(), gdpbv100::Message::getGdpbSysPattPattern(), gdpbv100::Message::getGdpbSysPattType(), kuNbMsgPerPattern, gdpbv100::PATT_ENABLE, gdpbv100::PATT_MISSMATCH, gdpbv100::PATT_RESYNC, and UpdateStatusPatternCurrGdpb().
Referenced by ProcessEpSupprBuffer().
|
private |
Definition at line 1195 of file CbmStar2019EventBuilderEtofAlgo.cxx.
|
private |
Incomplete trigger detection flag
Incomplete trigger detection flag
Incomplete trigger detection flag
Detect and reject incomplete triggers: they should always come in blocks of 4, ===> Typically this happen at the beginning of the TS and the same full trigger is found in the overlap of the previous TS
Reset Incomplete trigger detection flag for next trigger
Return only if in first MS
Reset Incomplete trigger detection flag for next trigger
Generate Trigger object and store it for event building ///
Detected the end of useful data in the overlap MS
------------------------------------------------------—/// Full Trigger only if we reached this point
Definition at line 749 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fbDebugMonitorMode, fbMonitorMode, fbTriggerAfterCandWinFound, fbTriggerFoundA, fbTriggerFoundB, fbTriggerFoundC, fdMsTime, fdTsStartTime, fhRawTriggersStats, fhRawTriggersStatsCore, fhRawTriggersStatsOver, fhRawTriggersStatsSel, fuCurrentMs, fuGdpbId, fuGdpbNr, fulCurrentTsIndex, fuMsIndex, CbmStar2019Algo< CbmTofDigi >::fuNbCoreMsPerTs, fUnpackPar, fvdTrigCandidateTimeStart, fvdTrigCandidateTimeStop, fvhTriggerDistributionInMs, fvhTriggerDistributionInTs, fvulGdpbTsFullLast, fvulGdpbTsLsb, fvulGdpbTsMsb, fvulStarTsFullLast, fvulStarTsMid, fvulStarTsMsb, fvuStarDaqCmdLast, fvuStarTokenLast, fvuStarTrigCmdLast, fvvBufferTriggers, CbmTofStarTrigger2019::GetFullGdpbTs(), CbmStar2019TofPar::GetGdpbToSectorOffset(), gdpbv100::Message::getGdpbTsLsbStarB(), gdpbv100::Message::getGdpbTsMsbStarA(), gdpbv100::Message::getStarDaqCmdStarD(), gdpbv100::Message::getStarTokenStarD(), gdpbv100::Message::getStarTrigCmdStarD(), gdpbv100::Message::getStarTrigMsgIndex(), gdpbv100::Message::getStarTsLsbStarD(), gdpbv100::Message::getStarTsMidStarC(), gdpbv100::Message::getStarTsMsbStarB(), and gdpbv100::kdClockCycleSizeNs.
Referenced by ProcessMs().
|
private |
Definition at line 1199 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fuGdpbId, gdpbv100::GET4_V2X_ERR_ADD_RIS_EDG, gdpbv100::GET4_V2X_ERR_EVT_DISCARD, gdpbv100::GET4_V2X_ERR_LOST_EVT, gdpbv100::GET4_V2X_ERR_SEQUENCE_ER, gdpbv100::GET4_V2X_ERR_TOT_OVERWRT, gdpbv100::GET4_V2X_ERR_TOT_RANGE, gdpbv100::GET4_V2X_ERR_UNPAIR_FALL, gdpbv100::Message::getData(), gdpbv100::Message::getGdpbGenChipId(), gdpbv100::Message::getGdpbSysErrChanId(), gdpbv100::Message::getGdpbSysErrData(), gdpbv100::Message::getGdpbSysErrEdge(), gdpbv100::Message::getGdpbSysErrUnused(), gdpbv100::Message::getGdpbSysSubType(), gdpbv100::Message::getGdpbSysUnkwData(), gdpbv100::SYS_GDPB_UNKWN, gdpbv100::SYS_GET4_ERROR, gdpbv100::SYS_GET4_SYNC_MISS, and gdpbv100::SYS_PATTERN.
|
virtual |
On first TS, extract the TS parameters from header (by definition stable over time)
Ignore overlap ms if flag set by user
Compute time of TS core end
Compute the limits for accepting hits and trigger in this TS, for each gDPB/sector => Avoid special cases and buffering for the overlap MS
Event window for this gDPB starts before the trigger
Event window for this gDPB is fully before the trigger
Event window for this gDPB is on both sides of the trigger
Event window for this gDPB starts after the trigger => fully after
Loop over registered components
Reset the flags for incomplete triggers rejection at beginning of TS
Reset the flags used to detect the end of useful data in the overlap MS
Loop over core microslices (and overlap ones if chosen)
Clear event buffer from previous TS ... Hopefully whatever had to be done with it was done before calling Process TS again ^^'
Build events from all triggers and data found in this TS core MS + part of the overlap MS
Clear buffers to prepare for the next TS
Fill plots if in monitor mode
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 346 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References BuildEvents(), fbEpochAfterCandWinFound, CbmStar2019Algo< CbmTofDigi >::fbIgnoreOverlapMs, fbMonitorMode, fbTriggerAfterCandWinFound, fbTriggerFoundA, fbTriggerFoundB, fbTriggerFoundC, fdAllowedTriggersSpread, CbmStar2019Algo< CbmTofDigi >::fdMsSizeInNs, fdStarTriggerDelay, fdStarTriggerWinSize, CbmStar2019Algo< CbmTofDigi >::fdTsCoreSizeInNs, CbmStar2019Algo< CbmTofDigi >::fdTsFullSizeInNs, fdTsStartTime, fdTsStopTimeCore, FillHistograms(), fulCurrentTsIndex, fuMsIndex, CbmStar2019Algo< CbmTofDigi >::fuNbCoreMsPerTs, CbmStar2019Algo< CbmTofDigi >::fuNbMsLoop, CbmStar2019Algo< CbmTofDigi >::fuNbOverMsPerTs, fuNrOfGdpbs, fvbGdpbLastEnablePattern, fvbGdpbLastMissmatchPattern, fvbGdpbLastResyncPattern, fvdMessCandidateTimeStart, fvdMessCandidateTimeStop, fvdTrigCandidateTimeStart, fvdTrigCandidateTimeStop, fvEventsBuffer, CbmStar2019Algo< CbmTofDigi >::fvMsComponentsList, fvSectorStatusPattern, fvvBufferMajorAsicErrors, fvvBufferMessages, fvvBufferTriggers, fvvmEpSupprBuffer, and ProcessMs().
Referenced by CbmDeviceEventBuilderEtofStar2019::DoUnpack(), CbmStar2019EventBuilderEtof::DoUnpack(), CbmDeviceEventBuilderEtofStar2019::HandleParts(), and ProcessTs().
|
inlinevirtual |
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 47 of file CbmStar2019EventBuilderEtofAlgo.h.
References ProcessTs().
|
virtual |
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 163 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References CbmStar2019Algo< CbmTofDigi >::fParCList, fUnpackPar, and InitParameters().
Referenced by InitContainers(), CbmDeviceEventBuilderEtofStar2019::ReInitContainers(), and CbmStar2019EventBuilderEtof::ReInitContainers().
|
virtual |
Implements CbmStar2019Algo< CbmTofDigi >.
Definition at line 149 of file CbmStar2019EventBuilderEtofAlgo.cxx.
Bool_t CbmStar2019EventBuilderEtofAlgo::ResetHistograms | ( | ) |
Create event builder related histograms
Definition at line 2232 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fbDebugMonitorMode, fhEventNbDistributionInTs, fhEventNbEvolution, fhEventNbPerTs, fhEventSizeDistribution, fhEventSizeDistributionInTs, fhEventSizeEvolution, fhMissingTriggersEvolution, fhRawTriggersStats, fhRawTriggersStatsCore, fhRawTriggersStatsOver, fhRawTriggersStatsSel, fuNrOfGdpbs, fvhHitsTimeToTriggerRaw, fvhHitsTimeToTriggerRawPulser, fvhHitsTimeToTriggerSel, fvhHitsTimeToTriggerSelVsDaq, fvhHitsTimeToTriggerSelVsTrig, fvhMessDistributionInMs, fvhTriggerDistributionInMs, fvhTriggerDistributionInTs, and fvhTriggerDt.
Referenced by CbmStar2019EventBuilderEtof::DoUnpack().
|
inline |
Definition at line 72 of file CbmStar2019EventBuilderEtofAlgo.h.
References fbAddStatusToEvent.
Referenced by CbmDeviceEventBuilderEtofStar2019::InitContainers(), and CbmStar2019EventBuilderEtof::InitContainers().
|
inline |
Definition at line 66 of file CbmStar2019EventBuilderEtofAlgo.h.
References fbDebugMonitorMode.
Referenced by CbmStar2019EventBuilderEtof::InitContainers().
|
inlineinherited |
Control flags.
Definition at line 102 of file CbmStar2019Algo.h.
|
inline |
Definition at line 63 of file CbmStar2019EventBuilderEtofAlgo.h.
References fbMonitorMode.
Referenced by CbmStar2019EventBuilderEtof::InitContainers().
|
inlinevirtualinherited |
Definition at line 74 of file CbmStar2019Algo.h.
|
inline |
Definition at line 75 of file CbmStar2019EventBuilderEtofAlgo.h.
References fuMaxTotPulser, and fuMinTotPulser.
Referenced by CbmStar2019EventBuilderEtof::InitContainers().
|
inline |
Definition at line 69 of file CbmStar2019EventBuilderEtofAlgo.h.
References fbStoreLostEventMsg.
Referenced by CbmStar2019EventBuilderEtof::InitContainers().
|
private |
Store in the major error buffer only if GET4 error not channel related
All other messages (including non "critical" errors) get the same treatment: enter event only if in event window => These errors are probably added only if the event window is across the previous epoch!
Definition at line 1119 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fbDebugMonitorMode, fbMonitorMode, fbStoreLostEventMsg, fdMsTime, fuGdpbNr, fvdMessCandidateTimeStart, fvdMessCandidateTimeStop, fvhMessDistributionInMs, fvvBufferMajorAsicErrors, fvvBufferMessages, gdpbv100::GET4_V2X_ERR_LOST_EVT, gdpbv100::GET4_V2X_ERR_SEQUENCE_ER, gdpbv100::GET4_V2X_ERR_TOT_OVERWRT, gdpbv100::FullMessage::GetFullTimeNs(), gdpbv100::Message::getGdpbSysErrData(), gdpbv100::Message::getGdpbSysSubType(), gdpbv100::Message::getMessageType(), gdpbv100::MSG_HIT, gdpbv100::MSG_SYST, and gdpbv100::SYS_GET4_ERROR.
Referenced by ProcessEpSupprBuffer().
|
private |
Add a status update with the missmatch pattern as initial value Optimization: use emplace?
Generate a status pattern by performing an OR with the enable and resync patterns
Definition at line 1302 of file CbmStar2019EventBuilderEtofAlgo.cxx.
References fuGdpbNr, fvbGdpbLastEnablePattern, fvbGdpbLastMissmatchPattern, fvbGdpbLastResyncPattern, fvSectorStatusPattern, and fvulCurrentEpochFull.
Referenced by ProcessPattern().
|
private |
Switch ON the insertion of the LostEvent messages from GET4s with the critical errors (default is false)
Definition at line 89 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), InitParameters(), ProcessEpSupprBuffer(), and SetAddStatusToEvent().
|
private |
Switch ON the filling of a minimal set of histograms.
Definition at line 85 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), FillHistograms(), InitParameters(), ProcessStarTrigger(), ResetHistograms(), SetDebugMonitorMode(), and StoreMessageInBuffer().
|
private |
[sector]
Definition at line 183 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessEpoch(), ProcessMs(), and ProcessTs().
|
protectedinherited |
Definition at line 116 of file CbmStar2019Algo.h.
|
private |
Control flags.
Definition at line 83 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), InitParameters(), ProcessStarTrigger(), ProcessTs(), SetMonitorMode(), and StoreMessageInBuffer().
|
private |
Switch ON the filling of a additional set of histograms.
Definition at line 87 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), SetStoreLostEventMsg(), and StoreMessageInBuffer().
|
private |
Definition at line 184 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessMs(), ProcessStarTrigger(), and ProcessTs().
|
private |
Event buffer.
STAR TRIGGER detection
Definition at line 160 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessStarTrigger(), and ProcessTs().
|
private |
Definition at line 161 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessStarTrigger(), and ProcessTs().
|
private |
Definition at line 162 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessStarTrigger(), and ProcessTs().
|
private |
All sectors, extra monitor for debug.
Definition at line 231 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms().
|
private |
All sectors, extra monitor for debug.
Definition at line 230 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms().
|
private |
extra monitor for debug
Definition at line 227 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms().
|
private |
All sectors.
Definition at line 228 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms().
|
private |
All sectors.
Definition at line 229 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms().
|
private |
Definition at line 232 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms().
|
private |
Event window limits.
Definition at line 116 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessTs().
|
protectedinherited |
Vector of pointers to canvases + optional folder name.
For unpacker algos
Definition at line 140 of file CbmStar2019Algo.h.
|
protectedinherited |
/** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **/
Definition at line 117 of file CbmStar2019Algo.h.
|
private |
Definition at line 132 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessMs(), ProcessStarTrigger(), and StoreMessageInBuffer().
|
private |
Definition at line 117 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), and InitParameters().
|
private |
[sector]
Definition at line 118 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), InitParameters(), and ProcessTs().
|
private |
[sector]
Definition at line 119 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), InitParameters(), and ProcessTs().
|
protectedinherited |
Size of a single MS, [nanoseconds].
Definition at line 119 of file CbmStar2019Algo.h.
|
protectedinherited |
Total size of the core MS in a TS, [nanoseconds].
Definition at line 121 of file CbmStar2019Algo.h.
|
private |
Definition at line 128 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by FillHistograms(), ProcessStarTrigger(), and ProcessTs().
|
private |
Definition at line 130 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessTs().
|
protectedinherited |
Definition at line 141 of file CbmStar2019Algo.h.
|
private |
Definition at line 99 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessMs().
|
private |
Definition at line 220 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), FillHistograms(), and ResetHistograms().
|
private |
Definition at line 219 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), FillHistograms(), and ResetHistograms().
|
private |
[sector], extra monitor for debug
Definition at line 216 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), FillHistograms(), and ResetHistograms().
|
private |
Definition at line 217 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), FillHistograms(), and ResetHistograms().
|
private |
extra monitor for debug
Definition at line 221 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), FillHistograms(), and ResetHistograms().
|
private |
Definition at line 218 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), FillHistograms(), and ResetHistograms().
|
private |
extra monitor for debug
Definition at line 226 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), and ResetHistograms().
|
private |
extra monitor for debug
Definition at line 222 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), ProcessStarTrigger(), and ResetHistograms().
|
private |
extra monitor for debug
Definition at line 223 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), ProcessStarTrigger(), and ResetHistograms().
|
private |
extra monitor for debug
Definition at line 224 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), ProcessStarTrigger(), and ResetHistograms().
|
private |
extra monitor for debug
Definition at line 225 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), ProcessStarTrigger(), and ResetHistograms().
|
private |
Definition at line 141 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessMs().
|
protectedinherited |
For any algo.
Definition at line 145 of file CbmStar2019Algo.h.
|
protectedinherited |
Parameter management.
Definition at line 108 of file CbmStar2019Algo.h.
|
private |
Definition at line 131 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessEpoch(), ProcessMs(), and ProcessStarTrigger().
|
private |
Definition at line 134 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessMs(), ProcessStarTrigger(), and ProcessSysMess().
|
private |
Definition at line 136 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessEpoch(), ProcessEpochCycle(), ProcessEpSupprBuffer(), ProcessHit(), ProcessMs(), ProcessPattern(), ProcessStarTrigger(), StoreMessageInBuffer(), and UpdateStatusPatternCurrGdpb().
|
private |
Definition at line 138 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessEpSupprBuffer(), ProcessHit(), and ProcessMs().
|
private |
Definition at line 140 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessEpSupprBuffer(), and ProcessMs().
|
private |
Running indices.
Definition at line 126 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessStarTrigger(), and ProcessTs().
|
private |
Definition at line 123 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), and SetPulserTotLimits().
|
private |
[sector]
User settings: Data selection parameters
Definition at line 122 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), and SetPulserTotLimits().
|
private |
Definition at line 133 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by ProcessStarTrigger(), and ProcessTs().
|
protectedinherited |
Definition at line 112 of file CbmStar2019Algo.h.
|
protectedinherited |
Definition at line 114 of file CbmStar2019Algo.h.
|
protectedinherited |
Definition at line 113 of file CbmStar2019Algo.h.
|
private |
Correspond to ~6000 error messages max per event, leaving 2000 for hits and epoch.
Settings from parameter file
Definition at line 96 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), GetParList(), InitParameters(), ProcessEpSupprBuffer(), ProcessHit(), ProcessMs(), ProcessStarTrigger(), and ReInitContainers().
|
private |
Definition at line 104 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Definition at line 107 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessHit().
|
private |
Definition at line 102 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessHit().
|
private |
Definition at line 100 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Detector Mapping.
Definition at line 109 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Readout chain dimensions and mapping
Definition at line 98 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), InitParameters(), ProcessTs(), ResetHistograms(), and ~CbmStar2019EventBuilderEtofAlgo().
|
private |
Definition at line 105 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Definition at line 101 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Definition at line 106 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessEpSupprBuffer(), and ProcessMs().
|
private |
Definition at line 110 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
[sector][asic] Exclude from dictionnary
Definition at line 192 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessPattern(), ProcessTs(), and UpdateStatusPatternCurrGdpb().
|
private |
Definition at line 190 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessPattern(), ProcessTs(), and UpdateStatusPatternCurrGdpb().
|
private |
[sector][asic] Exclude from dictionnary
Definition at line 194 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessPattern(), ProcessTs(), and UpdateStatusPatternCurrGdpb().
|
private |
[sector]
Buffer insertion limits
Definition at line 179 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessTs(), and StoreMessageInBuffer().
|
private |
[sector]
Definition at line 180 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessEpoch(), ProcessTs(), and StoreMessageInBuffer().
|
private |
[sector]
Definition at line 181 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessStarTrigger(), and ProcessTs().
|
private |
[sector]
Definition at line 182 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessStarTrigger(), and ProcessTs().
|
private |
[sector]
Definition at line 157 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), FillHistograms(), GetEventBuffer(), and ProcessTs().
|
private |
[sector][Update]<time, [asic]> Exclude from dictionnary
Histograms
Definition at line 201 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), and ResetHistograms().
|
private |
[sector]
Definition at line 203 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), and ResetHistograms().
|
private |
[sector], extra monitor for debug
Definition at line 204 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), and ResetHistograms().
|
private |
[sector]
Definition at line 206 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), and ResetHistograms().
|
private |
[sector], extra monitor for debug
Definition at line 208 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), and ResetHistograms().
|
private |
[sector], extra monitor for debug
Definition at line 215 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), ResetHistograms(), and StoreMessageInBuffer().
|
private |
[sector], extra monitor for debug
Definition at line 213 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), ProcessStarTrigger(), and ResetHistograms().
|
private |
[sector], extra monitor for debug
Definition at line 211 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by CreateHistograms(), ProcessStarTrigger(), and ResetHistograms().
|
private |
[sector], extra monitor for debug
Definition at line 209 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), CreateHistograms(), and ResetHistograms().
|
private |
Definition at line 114 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Definition at line 111 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Definition at line 113 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
private |
Definition at line 112 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters().
|
protectedinherited |
Parameters related to FLES containers.
Definition at line 111 of file CbmStar2019Algo.h.
|
protectedinherited |
Vector of pointers to histograms + optional folder name.
Definition at line 137 of file CbmStar2019Algo.h.
|
protectedinherited |
Total size of the core MS in a TS, [nanoseconds].
For monitor algos => Pointers should be filled with TH1*, TH2*, TProfile*, ... ==> To check if object N is of type T, use "T ObjectPointer = dynamic_cast<T>( fvpAllHistoPointers[N].first );" and check for nullptr ==> To get back the original class name use "fvpAllHistoPointers[N].first->ClassName()" which returns a const char * (e.g. "TH1I") ===> Usage example with feeding a THttpServer: ===> #include "TH2.h" ===> std::string sClassName = vHistos[ uHisto ].first.ClassName(); ===> if( !strncmp( sClassName, "TH1", 3 ) ) ===> server->Register( vHistos[ uHisto ].second.data(), dynamic_cast< TH1 * >(vHistos[ uHisto ].first) ); ===> else if( !strncmp( sClassName, "TH2", 3 ) ) ===> server->Register( vHistos[ uHisto ].second.data(), dynamic_cast< TH2 * >(vHistos[ uHisto ].first) );
Definition at line 135 of file CbmStar2019Algo.h.
|
private |
[sector][asic] Exclude from dictionnary
Definition at line 197 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), InitParameters(), ProcessTs(), and UpdateStatusPatternCurrGdpb().
|
private |
Current time references for each GDPB: merged epoch marker, epoch cycle, full epoch [fuNrOfGdpbs].
Definition at line 144 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessEpoch(), and ProcessEpSupprBuffer().
|
private |
Definition at line 146 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessEpoch(), and ProcessEpochCycle().
|
private |
Epoch cycle from the Ms Start message and Epoch counter flip.
Definition at line 147 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessEpoch(), ProcessEpSupprBuffer(), and UpdateStatusPatternCurrGdpb().
|
private |
[sector]
Definition at line 167 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessMs(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 172 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessMs().
|
private |
[sector]
Definition at line 164 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessStarTrigger().
|
private |
Definition at line 163 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 168 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessMs(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 173 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessMs().
|
private |
[sector]
Definition at line 166 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 165 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 170 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessMs(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 175 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessMs().
|
private |
[sector]
Definition at line 169 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessMs(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 174 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessMs().
|
private |
[sector]
Definition at line 171 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessMs(), and ProcessStarTrigger().
|
private |
[sector]
Definition at line 176 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), and ProcessMs().
|
private |
[sector]
Definition at line 152 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), InitParameters(), ProcessTs(), StoreMessageInBuffer(), and ~CbmStar2019EventBuilderEtofAlgo().
|
private |
[sector], buffer to make sure GET4 errors 0-12 are always transmitted
Definition at line 154 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), InitParameters(), ProcessTs(), StoreMessageInBuffer(), and ~CbmStar2019EventBuilderEtofAlgo().
|
private |
[sector]
Definition at line 156 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), InitParameters(), ProcessStarTrigger(), ProcessTs(), and ~CbmStar2019EventBuilderEtofAlgo().
|
private |
Epoch + Epoch Cycle.
Buffers
Definition at line 150 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by InitParameters(), ProcessEpSupprBuffer(), ProcessMs(), ProcessTs(), and ~CbmStar2019EventBuilderEtofAlgo().
|
staticprivate |
Switch ON the readout and insertion of STATUS pattern message (default is true)
Constants
Definition at line 92 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents().
|
staticprivate |
Definition at line 188 of file CbmStar2019EventBuilderEtofAlgo.h.
|
staticprivate |
ASIC status monitoring.
Definition at line 187 of file CbmStar2019EventBuilderEtofAlgo.h.
Referenced by BuildEvents(), and ProcessPattern().