CbmRoot
Loading...
Searching...
No Matches
CbmTrdRawToDigiBaseR Class Referenceabstract

#include <CbmTrdRawToDigiBaseR.h>

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

Public Member Functions

 CbmTrdRawToDigiBaseR ()
 Construct a new CbmTrdRawToDigiBaseR object.
 
virtual ~CbmTrdRawToDigiBaseR ()
 Destructor.
 
std::unique_ptr< CbmTrdDigiMakeDigi (const std::vector< std::int16_t > *samples, Int_t padChNr, Int_t uniqueModuleId, ULong64_t time, CbmTrdDigi::eTriggerType triggerType, Int_t errClass)
 Get digi from input values. Implemented in the derived classes.
 
virtual ULong64_t GetBinTimeShift (const std::vector< std::int16_t > *samples)=0
 Get the Bin Time Shift value.
 
virtual Float_t GetMaxAdcValue (const std::vector< std::int16_t > *samples)=0
 Get the MaxAdc value.
 
Float_t GetBaseline (const std::vector< std::int16_t > *samples)
 Get the Baseline value.
 
std::shared_ptr< CbmTrdSpadicGetSpadicObject ()
 Get the spadic class.
 
UInt_t GetNrOfPresamples ()
 Get the Nr Of Presamples.
 
virtual void SetNrOfPresamples (UInt_t value)
 Set the Nr Of Presamples.
 
void SetSpadicObject (std::shared_ptr< CbmTrdSpadic > spadic)
 Set the spadic class.
 
 ClassDef (CbmTrdRawToDigiBaseR, 2)
 

Static Public Member Functions

static CbmTrdDigi::eTriggerType GetDigiTriggerType (Spadic::eTriggerType tt)
 Get the Digi Trigger Type from the raw message triggertype.
 

Protected Attributes

UInt_t fNrOfPresamples = CbmTrdSpadic::GetNrOfPresamples()
 Number of presamples before the signal starts (SPADIC default 2)
 
ULong64_t fCurrentTimeshift = 0
 Bin timeshift for the current sample set in [ns].
 
std::shared_ptr< CbmTrdSpadicfSpadic = std::make_shared<CbmTrdSpadic>()
 

Private Member Functions

 CbmTrdRawToDigiBaseR (const CbmTrdRawToDigiBaseR &)=delete
 Copy constructor - not implemented!
 

Detailed Description

Definition at line 34 of file CbmTrdRawToDigiBaseR.h.

Constructor & Destructor Documentation

◆ CbmTrdRawToDigiBaseR() [1/2]

CbmTrdRawToDigiBaseR::CbmTrdRawToDigiBaseR ( )

Construct a new CbmTrdRawToDigiBaseR object.

Definition at line 14 of file CbmTrdRawToDigiBaseR.cxx.

◆ ~CbmTrdRawToDigiBaseR()

virtual CbmTrdRawToDigiBaseR::~CbmTrdRawToDigiBaseR ( )
inlinevirtual

Destructor.

Definition at line 43 of file CbmTrdRawToDigiBaseR.h.

◆ CbmTrdRawToDigiBaseR() [2/2]

CbmTrdRawToDigiBaseR::CbmTrdRawToDigiBaseR ( const CbmTrdRawToDigiBaseR & )
privatedelete

Copy constructor - not implemented!

Member Function Documentation

◆ ClassDef()

CbmTrdRawToDigiBaseR::ClassDef ( CbmTrdRawToDigiBaseR ,
2  )

◆ GetBaseline()

Float_t CbmTrdRawToDigiBaseR::GetBaseline ( const std::vector< std::int16_t > * samples)

Get the Baseline value.

The digi charge is an unsigned. Hence, we need to get the baseline to 0

Parameters
samples
Returns
Float_t

Definition at line 17 of file CbmTrdRawToDigiBaseR.cxx.

References fNrOfPresamples, and fSpadic.

Referenced by CbmTrdRawToDigiFitR::fitResponse(), CbmTrdRawToDigiLookUpCorrR::GetBinTimeShift(), and CbmTrdRawToDigiMaxAdcR::GetMaxAdcValue().

◆ GetBinTimeShift()

virtual ULong64_t CbmTrdRawToDigiBaseR::GetBinTimeShift ( const std::vector< std::int16_t > * samples)
pure virtual

Get the Bin Time Shift value.

Parameters
samples
Returns
ULong64_t

Implemented in CbmTrdRawToDigiFitR, CbmTrdRawToDigiLookUpCorrR, and CbmTrdRawToDigiMaxAdcR.

Referenced by MakeDigi().

◆ GetDigiTriggerType()

CbmTrdDigi::eTriggerType CbmTrdRawToDigiBaseR::GetDigiTriggerType ( Spadic::eTriggerType tt)
static

◆ GetMaxAdcValue()

virtual Float_t CbmTrdRawToDigiBaseR::GetMaxAdcValue ( const std::vector< std::int16_t > * samples)
pure virtual

Get the MaxAdc value.

Parameters
samples
Returns
Float_t

Implemented in CbmTrdRawToDigiFitR, CbmTrdRawToDigiLookUpCorrR, and CbmTrdRawToDigiMaxAdcR.

Referenced by MakeDigi().

◆ GetNrOfPresamples()

UInt_t CbmTrdRawToDigiBaseR::GetNrOfPresamples ( )
inline

Get the Nr Of Presamples.

Returns
UInt_t

Definition at line 103 of file CbmTrdRawToDigiBaseR.h.

References fNrOfPresamples.

◆ GetSpadicObject()

std::shared_ptr< CbmTrdSpadic > CbmTrdRawToDigiBaseR::GetSpadicObject ( )
inline

Get the spadic class.

Returns
std::shared_ptr<CbmTrdSpadic>

Definition at line 96 of file CbmTrdRawToDigiBaseR.h.

References fSpadic.

◆ MakeDigi()

std::unique_ptr< CbmTrdDigi > CbmTrdRawToDigiBaseR::MakeDigi ( const std::vector< std::int16_t > * samples,
Int_t padChNr,
Int_t uniqueModuleId,
ULong64_t time,
CbmTrdDigi::eTriggerType triggerType,
Int_t errClass )

Get digi from input values. Implemented in the derived classes.

Get digi from the input values. The methods how a timeshift within the bins is estimated and how the input charge to the asic is extracted are implemented in the derived classes

Parameters
samplesAdc samples
padChNrChannel number of the pad
uniqueModuleIdunique Id of the module
timeAbsolute time [ns].
triggerTypeSPADIC trigger type see CbmTrdTriggerType.
errClassSPADIC signal error parametrization based on message type.
Returns
std::shared_ptr<CbmTrdDigi> *

Definition at line 52 of file CbmTrdRawToDigiBaseR.cxx.

References fCurrentTimeshift, fSpadic, GetBinTimeShift(), and GetMaxAdcValue().

◆ SetNrOfPresamples()

virtual void CbmTrdRawToDigiBaseR::SetNrOfPresamples ( UInt_t value)
inlinevirtual

Set the Nr Of Presamples.

Parameters
value

Reimplemented in CbmTrdRawToDigiFitR, and CbmTrdRawToDigiLookUpCorrR.

Definition at line 118 of file CbmTrdRawToDigiBaseR.h.

References fNrOfPresamples.

◆ SetSpadicObject()

void CbmTrdRawToDigiBaseR::SetSpadicObject ( std::shared_ptr< CbmTrdSpadic > spadic)
inline

Set the spadic class.

Parameters
spadic

Definition at line 126 of file CbmTrdRawToDigiBaseR.h.

References fSpadic.

Member Data Documentation

◆ fCurrentTimeshift

ULong64_t CbmTrdRawToDigiBaseR::fCurrentTimeshift = 0
protected

Bin timeshift for the current sample set in [ns].

Definition at line 146 of file CbmTrdRawToDigiBaseR.h.

Referenced by CbmTrdRawToDigiLookUpCorrR::GetMaxAdcValue(), and MakeDigi().

◆ fNrOfPresamples

UInt_t CbmTrdRawToDigiBaseR::fNrOfPresamples = CbmTrdSpadic::GetNrOfPresamples()
protected

Number of presamples before the signal starts (SPADIC default 2)

Definition at line 140 of file CbmTrdRawToDigiBaseR.h.

Referenced by GetBaseline(), GetNrOfPresamples(), SetNrOfPresamples(), CbmTrdRawToDigiFitR::SetNrOfPresamples(), and CbmTrdRawToDigiLookUpCorrR::SetNrOfPresamples().

◆ fSpadic

std::shared_ptr<CbmTrdSpadic> CbmTrdRawToDigiBaseR::fSpadic = std::make_shared<CbmTrdSpadic>()
protected

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