CbmRoot
|
#include <CbmStsUnpackConfig.h>
Classes | |
struct | FebChanMaskReco |
Public Member Functions | |
CbmStsUnpackConfig (std::string detGeoSetupTag, UInt_t runid=0) | |
Create the Cbm Sts Unpack Task object. | |
virtual | ~CbmStsUnpackConfig () |
Destroy the Cbm Sts Unpack Task object. | |
CbmStsUnpackConfig (const CbmStsUnpackConfig &)=delete | |
Copy constructor - not implemented. | |
CbmStsUnpackConfig & | operator= (const CbmStsUnpackConfig &)=delete |
Assignment operator - not implemented. | |
std::shared_ptr< CbmStsUnpackMonitor > | GetMonitor () |
Get the potentially added monitor. | |
void | InitAlgo () |
Initialize the algorithm, should include all steps needing te parameter objects to be present. In this function most initialization steps of the unpacker algorithms happen. | |
void | MaskNoisyChannel (UInt_t uFeb, UInt_t uChan, Bool_t bMasked=kTRUE) |
void | SetAsicTimeOffset (size_t asicid, double value) |
Set the Asic Time Offset. | |
void | SetWalkMap (const std::map< uint32_t, CbmStsParModule > &mapIn) |
Set Time-Walk correction map. | |
void | SetDuplicatesRejection (bool bIn=true, bool bDiffAdc=true) |
Enable/Disable the duplicate digis rejection, without or with same ADC checks. | |
void | SetMinAdcCut (uint32_t value) |
Set the minimum adc cut value. | |
void | SetMinAdcCut (uint32_t febid, uint32_t value) |
void | SetMonitor (std::shared_ptr< CbmStsUnpackMonitor > value) |
Add a monitor to the unpacker. | |
void | SetFwBinning (bool useFwBinning) |
Enable/Disable firmware binning (switch only supported by legacy algo) | |
Protected Member Functions | |
virtual std::shared_ptr< CbmStsUnpackAlgoBase > | chooseAlgo () |
Choose the derived unpacker algorithm to be used for the DAQ output to Digi translation. If algo was already set manually by the user this algorithm is used. | |
Protected Attributes | |
std::shared_ptr< CbmStsUnpackMonitor > | fMonitor = nullptr |
pointer to the monitor object | |
uint32_t | fdAdcCut = 0 |
Minimum adc cut to store a hit. | |
std::map< uint32_t, uint32_t > | fdAdcCut_perFeb |
Minimum adc cut per Feb to store a hit. | |
std::vector< double > | fvdTimeOffsetNsAsics = {} |
Vector with the Asic time offsets. | |
bool | fbUseTimeWalkCorrection = false |
Enables time-walk correction. | |
std::map< uint32_t, CbmStsParModule > | fWalkMap = {} |
Time-Walk Parameters map. | |
bool | fbRejectDuplicateDigis = false |
Enables the rejection of duplicate digis. | |
bool | fbDupliWithoutAdc = true |
If rejecting duplicate digis, enables rejection even if ADC differs. | |
bool | fbUseFwBinning = true |
Enables firmware binning (some implementations ignore this) | |
std::vector< FebChanMaskReco > | fvChanMasks = {} |
Temporary storage of user parameters. | |
Definition at line 36 of file CbmStsUnpackConfig.h.
CbmStsUnpackConfig::CbmStsUnpackConfig | ( | std::string | detGeoSetupTag, |
UInt_t | runid = 0 ) |
Create the Cbm Sts Unpack Task object.
geoSetupTag | Geometry setup tag for the given detector as used by CbmSetup objects |
runid | set if unpacker is rerun on a special run with special parameters |
Definition at line 18 of file CbmStsUnpackConfig.cxx.
|
virtual |
Destroy the Cbm Sts Unpack Task object.
Definition at line 23 of file CbmStsUnpackConfig.cxx.
References fWalkMap.
|
delete |
Copy constructor - not implemented.
|
protectedvirtual |
Choose the derived unpacker algorithm to be used for the DAQ output to Digi translation. If algo was already set manually by the user this algorithm is used.
Definition at line 68 of file CbmStsUnpackConfig.cxx.
|
inline |
Get the potentially added monitor.
Definition at line 68 of file CbmStsUnpackConfig.h.
References fMonitor.
void CbmStsUnpackConfig::InitAlgo | ( | ) |
Initialize the algorithm, should include all steps needing te parameter objects to be present. In this function most initialization steps of the unpacker algorithms happen.
Definition at line 31 of file CbmStsUnpackConfig.cxx.
References fbDupliWithoutAdc, fbRejectDuplicateDigis, fbUseFwBinning, fdAdcCut, fdAdcCut_perFeb, fMonitor, fvChanMasks, fvdTimeOffsetNsAsics, and fWalkMap.
|
inline |
Definition at line 76 of file CbmStsUnpackConfig.h.
References fvChanMasks.
|
delete |
Assignment operator - not implemented.
|
inline |
Set the Asic Time Offset.
asicid | Idx of the ASIC with the given time offset |
value | time offset |
Definition at line 88 of file CbmStsUnpackConfig.h.
References fvdTimeOffsetNsAsics.
|
inline |
Enable/Disable the duplicate digis rejection, without or with same ADC checks.
Definition at line 97 of file CbmStsUnpackConfig.h.
References fbDupliWithoutAdc, and fbRejectDuplicateDigis.
|
inline |
Enable/Disable firmware binning (switch only supported by legacy algo)
Definition at line 112 of file CbmStsUnpackConfig.h.
References fbUseFwBinning.
|
inline |
Definition at line 106 of file CbmStsUnpackConfig.h.
References fdAdcCut_perFeb.
|
inline |
Set the minimum adc cut value.
[in] | value |
Definition at line 104 of file CbmStsUnpackConfig.h.
References fdAdcCut.
|
inline |
Add a monitor to the unpacker.
value | CbmStsUnpackMonitor |
Definition at line 109 of file CbmStsUnpackConfig.h.
References fMonitor.
|
inline |
Set Time-Walk correction map.
Definition at line 94 of file CbmStsUnpackConfig.h.
References fWalkMap.
|
protected |
If rejecting duplicate digis, enables rejection even if ADC differs.
Definition at line 144 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), and SetDuplicatesRejection().
|
protected |
Enables the rejection of duplicate digis.
Definition at line 141 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), and SetDuplicatesRejection().
|
protected |
Enables firmware binning (some implementations ignore this)
Definition at line 147 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), and SetFwBinning().
|
protected |
Enables time-walk correction.
Definition at line 135 of file CbmStsUnpackConfig.h.
|
protected |
Minimum adc cut to store a hit.
Definition at line 126 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), and SetMinAdcCut().
|
protected |
Minimum adc cut per Feb to store a hit.
Definition at line 129 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), and SetMinAdcCut().
|
protected |
pointer to the monitor object
Definition at line 123 of file CbmStsUnpackConfig.h.
Referenced by GetMonitor(), InitAlgo(), and SetMonitor().
|
protected |
Temporary storage of user parameters.
Definition at line 150 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), and MaskNoisyChannel().
|
protected |
Vector with the Asic time offsets.
Definition at line 132 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), and SetAsicTimeOffset().
|
protected |
Time-Walk Parameters map.
Definition at line 138 of file CbmStsUnpackConfig.h.
Referenced by InitAlgo(), SetWalkMap(), and ~CbmStsUnpackConfig().