CbmRoot
Loading...
Searching...
No Matches
CbmStsUnpackAlgoBase Class Reference

#include <CbmStsUnpackAlgoBase.h>

Inheritance diagram for CbmStsUnpackAlgoBase:
[legend]
Collaboration diagram for CbmStsUnpackAlgoBase:
[legend]

Public Member Functions

 CbmStsUnpackAlgoBase (std::string name)
 Create the Cbm Sts Unpack AlgoBase object.
 
virtual ~CbmStsUnpackAlgoBase ()
 Destroy the Cbm Sts Unpack Task object.
 
 CbmStsUnpackAlgoBase (const CbmStsUnpackAlgoBase &)=delete
 Copy constructor - not implemented.
 
CbmStsUnpackAlgoBaseoperator= (const CbmStsUnpackAlgoBase &)=delete
 Assignment operator - not implemented.
 
void SetMonitor (std::shared_ptr< CbmStsUnpackMonitor > monitor)
 Set a predefined monitor.
 
void SetMinAdcCut (uint32_t value)
 Set the minimum adc cut value.
 
void SetMinAdcCut (uint32_t febid, uint32_t value)
 
void SetAsicTimeOffsetVec (std::vector< double > value)
 Set the time offset per Asic.
 
void SetWalkMap (const std::map< uint32_t, CbmStsParModule > &mapIn)
 Enable/Disable time-walk correction.
 
void SetDuplicatesRejection (bool bIn=true, bool bDiffAdc=true)
 Enable/Disable the duplicate digis rejection, without or with same ADC checks.
 
void SetFwBinning (bool useFwBinning)
 Enable/Disable firmware binning (switch only supported by older implementations)
 
virtual std::vector< std::pair< std::string, std::shared_ptr< FairParGenericSet > > > * GetParContainerRequest (std::string geoTag, std::uint32_t runId)
 Get the requested parameter containers. To be defined in the derived classes! Return the required parameter containers together with the paths to the ascii files to.
 
virtual void MaskNoisyChannel (const uint32_t uFeb, const uint32_t uChan, const bool bMasked=true)
 Mask a Noisy Channel.
 

Protected Member Functions

virtual void finish ()
 Finish function for this algorithm base clase.
 

Protected Attributes

std::shared_ptr< CbmStsUnpackMonitorfMonitor = nullptr
 Potential (online) monitor for the unpacking process.
 
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 = {}
 Time offsets per Asic???
 
bool fbUseTimeWalkCorrection = false
 Enable/Disable time-walk correction.
 
std::map< uint32_t, std::vector< std::vector< double > > > fWalkLookup = {}
 Per-ASIC's sensors Time-Walk correction mapping.
 
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)
 

Detailed Description

Definition at line 41 of file CbmStsUnpackAlgoBase.h.

Constructor & Destructor Documentation

◆ CbmStsUnpackAlgoBase() [1/2]

CbmStsUnpackAlgoBase::CbmStsUnpackAlgoBase ( std::string name)

Create the Cbm Sts Unpack AlgoBase object.

Definition at line 7 of file CbmStsUnpackAlgoBase.cxx.

◆ ~CbmStsUnpackAlgoBase()

CbmStsUnpackAlgoBase::~CbmStsUnpackAlgoBase ( )
virtual

Destroy the Cbm Sts Unpack Task object.

Definition at line 9 of file CbmStsUnpackAlgoBase.cxx.

◆ CbmStsUnpackAlgoBase() [2/2]

CbmStsUnpackAlgoBase::CbmStsUnpackAlgoBase ( const CbmStsUnpackAlgoBase & )
delete

Copy constructor - not implemented.

Member Function Documentation

◆ finish()

virtual void CbmStsUnpackAlgoBase::finish ( )
inlineprotectedvirtual

Finish function for this algorithm base clase.

Definition at line 108 of file CbmStsUnpackAlgoBase.h.

References fMonitor.

◆ GetParContainerRequest()

std::vector< std::pair< std::string, std::shared_ptr< FairParGenericSet > > > * CbmStsUnpackAlgoBase::GetParContainerRequest ( std::string geoTag,
std::uint32_t runId )
virtual

Get the requested parameter containers. To be defined in the derived classes! Return the required parameter containers together with the paths to the ascii files to.

Parameters
[in]std::stringgeoTag as used in CbmSetup
[in]std::uint32_trunId for runwise defined parameters
Returns
fParContVec

Definition at line 13 of file CbmStsUnpackAlgoBase.cxx.

◆ MaskNoisyChannel()

virtual void CbmStsUnpackAlgoBase::MaskNoisyChannel ( const uint32_t uFeb,
const uint32_t uChan,
const bool bMasked = true )
inlinevirtual

Mask a Noisy Channel.

Parameters
uFeb
uChan
bMasked

Reimplemented in CbmStsUnpackAlgo, and CbmStsUnpackAlgoLegacy.

Definition at line 99 of file CbmStsUnpackAlgoBase.h.

◆ operator=()

CbmStsUnpackAlgoBase & CbmStsUnpackAlgoBase::operator= ( const CbmStsUnpackAlgoBase & )
delete

Assignment operator - not implemented.

◆ SetAsicTimeOffsetVec()

void CbmStsUnpackAlgoBase::SetAsicTimeOffsetVec ( std::vector< double > value)
inline

Set the time offset per Asic.

Definition at line 65 of file CbmStsUnpackAlgoBase.h.

References fvdTimeOffsetNsAsics.

◆ SetDuplicatesRejection()

void CbmStsUnpackAlgoBase::SetDuplicatesRejection ( bool bIn = true,
bool bDiffAdc = true )
inline

Enable/Disable the duplicate digis rejection, without or with same ADC checks.

Definition at line 71 of file CbmStsUnpackAlgoBase.h.

References fbDupliWithoutAdc, and fbRejectDuplicateDigis.

◆ SetFwBinning()

void CbmStsUnpackAlgoBase::SetFwBinning ( bool useFwBinning)
inline

Enable/Disable firmware binning (switch only supported by older implementations)

Definition at line 78 of file CbmStsUnpackAlgoBase.h.

References fbUseFwBinning.

◆ SetMinAdcCut() [1/2]

void CbmStsUnpackAlgoBase::SetMinAdcCut ( uint32_t febid,
uint32_t value )
inline

Definition at line 62 of file CbmStsUnpackAlgoBase.h.

References fdAdcCut_perFeb.

◆ SetMinAdcCut() [2/2]

void CbmStsUnpackAlgoBase::SetMinAdcCut ( uint32_t value)
inline

Set the minimum adc cut value.

Parameters
[in]value

Definition at line 60 of file CbmStsUnpackAlgoBase.h.

References fdAdcCut.

◆ SetMonitor()

void CbmStsUnpackAlgoBase::SetMonitor ( std::shared_ptr< CbmStsUnpackMonitor > monitor)
inline

Set a predefined monitor.

Parameters
monitorpredefined unpacking monitor

Definition at line 57 of file CbmStsUnpackAlgoBase.h.

References fMonitor.

◆ SetWalkMap()

void CbmStsUnpackAlgoBase::SetWalkMap ( const std::map< uint32_t, CbmStsParModule > & mapIn)

Enable/Disable time-walk correction.

Definition at line 26 of file CbmStsUnpackAlgoBase.cxx.

References fbUseTimeWalkCorrection, and fWalkLookup.

Member Data Documentation

◆ fbDupliWithoutAdc

bool CbmStsUnpackAlgoBase::fbDupliWithoutAdc = true
protected

If rejecting duplicate digis, enables rejection even if ADC differs.

Definition at line 137 of file CbmStsUnpackAlgoBase.h.

Referenced by CbmStsUnpackAlgoLegacy::ProcessHitInfo(), CbmStsUnpackAlgo::processHitInfo(), and SetDuplicatesRejection().

◆ fbRejectDuplicateDigis

bool CbmStsUnpackAlgoBase::fbRejectDuplicateDigis = false
protected

Enables the rejection of duplicate digis.

Definition at line 134 of file CbmStsUnpackAlgoBase.h.

Referenced by CbmStsUnpackAlgoLegacy::ProcessHitInfo(), CbmStsUnpackAlgo::processHitInfo(), and SetDuplicatesRejection().

◆ fbUseFwBinning

bool CbmStsUnpackAlgoBase::fbUseFwBinning = true
protected

◆ fbUseTimeWalkCorrection

bool CbmStsUnpackAlgoBase::fbUseTimeWalkCorrection = false
protected

Enable/Disable time-walk correction.

Definition at line 128 of file CbmStsUnpackAlgoBase.h.

Referenced by CbmStsUnpackAlgo::processHitInfo(), and SetWalkMap().

◆ fdAdcCut

uint32_t CbmStsUnpackAlgoBase::fdAdcCut = 0
protected

Minimum adc cut to store a hit.

Definition at line 119 of file CbmStsUnpackAlgoBase.h.

Referenced by CbmStsUnpackAlgo::initParSet(), CbmStsUnpackAlgoLegacy::ProcessHitInfo(), and SetMinAdcCut().

◆ fdAdcCut_perFeb

std::map<uint32_t, uint32_t> CbmStsUnpackAlgoBase::fdAdcCut_perFeb
protected

Minimum adc cut per Feb to store a hit.

Definition at line 122 of file CbmStsUnpackAlgoBase.h.

Referenced by CbmStsUnpackAlgo::initParSet(), and SetMinAdcCut().

◆ fMonitor

◆ fvdTimeOffsetNsAsics

std::vector<double> CbmStsUnpackAlgoBase::fvdTimeOffsetNsAsics = {}
protected

◆ fWalkLookup

std::map<uint32_t, std::vector<std::vector<double> > > CbmStsUnpackAlgoBase::fWalkLookup = {}
protected

Per-ASIC's sensors Time-Walk correction mapping.

Definition at line 131 of file CbmStsUnpackAlgoBase.h.

Referenced by CbmStsUnpackAlgo::processHitInfo(), and SetWalkMap().


The documentation for this class was generated from the following files: