CbmRoot
|
#include <CbmTrdRawToDigiMaxAdcR.h>
Public Member Functions | |
CbmTrdRawToDigiMaxAdcR () | |
default Constructor with messages | |
CbmTrdRawToDigiMaxAdcR (const CbmTrdRawToDigiMaxAdcR &)=delete | |
Copy constructor - not implemented! | |
CbmTrdRawToDigiMaxAdcR | operator= (const CbmTrdRawToDigiMaxAdcR &) |
Assignment operator - not implemented! | |
virtual | ~CbmTrdRawToDigiMaxAdcR () |
Destructor. | |
ULong64_t | GetBinTimeShift (const std::vector< std::int16_t > *) |
Get the Bin Time Shift value. | |
Float_t | GetMaxAdcValue (const std::vector< std::int16_t > *samples) |
Get the MaxAdc value. | |
void | SetPeakingRange (size_t min, size_t max) |
Set the peaking range in sample numbers. | |
ClassDef (CbmTrdRawToDigiMaxAdcR, 2) | |
std::unique_ptr< CbmTrdDigi > | 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. | |
Float_t | GetBaseline (const std::vector< std::int16_t > *samples) |
Get the Baseline value. | |
std::shared_ptr< CbmTrdSpadic > | GetSpadicObject () |
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< CbmTrdSpadic > | fSpadic = std::make_shared<CbmTrdSpadic>() |
Private Attributes | |
size_t | fPeakingBinMin = fNrOfPresamples |
First sample to look for the max adc. | |
size_t | fPeakingBinMax |
Last sample to look for the max adc Default value is set based on the Shaping time + 5 samples safety margin. | |
Definition at line 31 of file CbmTrdRawToDigiMaxAdcR.h.
CbmTrdRawToDigiMaxAdcR::CbmTrdRawToDigiMaxAdcR | ( | ) |
default Constructor with messages
Definition at line 14 of file CbmTrdRawToDigiMaxAdcR.cxx.
|
delete |
Copy constructor - not implemented!
|
inlinevirtual |
Destructor.
Definition at line 53 of file CbmTrdRawToDigiMaxAdcR.h.
|
inherited |
CbmTrdRawToDigiMaxAdcR::ClassDef | ( | CbmTrdRawToDigiMaxAdcR | , |
2 | ) |
|
inherited |
Get the Baseline value.
The digi charge is an unsigned. Hence, we need to get the baseline to 0
samples |
Definition at line 17 of file CbmTrdRawToDigiBaseR.cxx.
References CbmTrdRawToDigiBaseR::fNrOfPresamples, and CbmTrdRawToDigiBaseR::fSpadic.
Referenced by CbmTrdRawToDigiFitR::fitResponse(), CbmTrdRawToDigiLookUpCorrR::GetBinTimeShift(), and GetMaxAdcValue().
|
inlinevirtual |
Get the Bin Time Shift value.
No method developed up to now to extract a time-shift together with the max adc charge esxtraction method.
samples |
Implements CbmTrdRawToDigiBaseR.
Definition at line 63 of file CbmTrdRawToDigiMaxAdcR.h.
|
staticinherited |
Get the Digi Trigger Type from the raw message triggertype.
tt |
Definition at line 36 of file CbmTrdRawToDigiBaseR.cxx.
References Spadic::kGlobal, Spadic::kNeigh, CbmTrdDigi::kNeighbor, CbmTrdDigi::kNTrg, Spadic::kSandN, CbmTrdDigi::kSelf, and Spadic::kSelf.
Referenced by CbmTrdUnpackAlgoLegacy2020R::makeDigi(), CbmTrdUnpackAlgoR::makeDigi(), and CbmTrdUnpackAlgoR::makeDigi().
|
virtual |
Get the MaxAdc value.
samples |
Implements CbmTrdRawToDigiBaseR.
Definition at line 17 of file CbmTrdRawToDigiMaxAdcR.cxx.
References fPeakingBinMax, fPeakingBinMin, and CbmTrdRawToDigiBaseR::GetBaseline().
|
inlineinherited |
Get the Nr Of Presamples.
Definition at line 103 of file CbmTrdRawToDigiBaseR.h.
References CbmTrdRawToDigiBaseR::fNrOfPresamples.
|
inlineinherited |
Get the spadic class.
Definition at line 96 of file CbmTrdRawToDigiBaseR.h.
References CbmTrdRawToDigiBaseR::fSpadic.
|
inherited |
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
samples | Adc samples |
padChNr | Channel number of the pad |
uniqueModuleId | unique Id of the module |
time | Absolute time [ns]. |
triggerType | SPADIC trigger type see CbmTrdTriggerType. |
errClass | SPADIC signal error parametrization based on message type. |
Definition at line 52 of file CbmTrdRawToDigiBaseR.cxx.
References CbmTrdRawToDigiBaseR::fCurrentTimeshift, CbmTrdRawToDigiBaseR::fSpadic, CbmTrdRawToDigiBaseR::GetBinTimeShift(), and CbmTrdRawToDigiBaseR::GetMaxAdcValue().
CbmTrdRawToDigiMaxAdcR CbmTrdRawToDigiMaxAdcR::operator= | ( | const CbmTrdRawToDigiMaxAdcR & | ) |
Assignment operator - not implemented!
|
inlinevirtualinherited |
Set the Nr Of Presamples.
value |
Reimplemented in CbmTrdRawToDigiFitR, and CbmTrdRawToDigiLookUpCorrR.
Definition at line 118 of file CbmTrdRawToDigiBaseR.h.
References CbmTrdRawToDigiBaseR::fNrOfPresamples.
|
inline |
Set the peaking range in sample numbers.
Use this to define a peaking range for the max adc extraction. Presamples have to be included into the values!
value |
Definition at line 80 of file CbmTrdRawToDigiMaxAdcR.h.
References fPeakingBinMax, fPeakingBinMin, max(), and min().
|
inlineinherited |
Set the spadic class.
spadic |
Definition at line 126 of file CbmTrdRawToDigiBaseR.h.
References CbmTrdRawToDigiBaseR::fSpadic.
|
protectedinherited |
Bin timeshift for the current sample set in [ns].
Definition at line 146 of file CbmTrdRawToDigiBaseR.h.
Referenced by CbmTrdRawToDigiLookUpCorrR::GetMaxAdcValue(), and CbmTrdRawToDigiBaseR::MakeDigi().
|
protectedinherited |
Number of presamples before the signal starts (SPADIC default 2)
Definition at line 140 of file CbmTrdRawToDigiBaseR.h.
Referenced by CbmTrdRawToDigiBaseR::GetBaseline(), CbmTrdRawToDigiBaseR::GetNrOfPresamples(), CbmTrdRawToDigiBaseR::SetNrOfPresamples(), CbmTrdRawToDigiFitR::SetNrOfPresamples(), and CbmTrdRawToDigiLookUpCorrR::SetNrOfPresamples().
|
private |
Last sample to look for the max adc Default value is set based on the Shaping time + 5 samples safety margin.
Definition at line 100 of file CbmTrdRawToDigiMaxAdcR.h.
Referenced by GetMaxAdcValue(), and SetPeakingRange().
|
private |
First sample to look for the max adc.
Definition at line 92 of file CbmTrdRawToDigiMaxAdcR.h.
Referenced by GetMaxAdcValue(), and SetPeakingRange().
|
protectedinherited |
Definition at line 148 of file CbmTrdRawToDigiBaseR.h.
Referenced by CbmTrdRawToDigiLookUpCorrR::createAnalyticLookUpTables(), CbmTrdRawToDigiBaseR::GetBaseline(), CbmTrdRawToDigiLookUpCorrR::GetBinTimeShift(), CbmTrdRawToDigiBaseR::GetSpadicObject(), CbmTrdRawToDigiBaseR::MakeDigi(), and CbmTrdRawToDigiBaseR::SetSpadicObject().