CbmRoot
|
#include <CbmTrdDigi.h>
Public Types | |
enum class | eCbmTrdAsicType : size_t { kSPADIC = 0 , kFASP , kNTypes } |
enum class | eTriggerType : int32_t { kBeginTriggerTypes = 0 , kSelf = kBeginTriggerTypes , kNeighbor , kMulti , kTrg2 , kNTrg } |
enum | CbmTrdDigiDef { kFlag1 = 0 , kFlag2 , kFlag3 , kNflags } |
Public Member Functions | |
CbmTrdDigi () | |
Default constructor. | |
CbmTrdDigi (int32_t padChNr, float chargeT, float chargeR, uint64_t time) | |
Constructor for the FASP type. | |
CbmTrdDigi (int32_t padChNr, int32_t uniqueModuleId, float charge, uint64_t time, eTriggerType triggerType, int32_t errClass) | |
Constructor for the SPADIC type. | |
CbmTrdDigi (int32_t, double, int32_t, int32_t, int32_t, int32_t, float *) | |
Constructor for backward compatibillity. Does not do anything. | |
CbmTrdDigi (const CbmTrdDigi &) | |
Copy Construct a new Cbm Trd Digi. | |
CbmTrdDigi & | operator= (const CbmTrdDigi &)=default |
Assignment operator. | |
void | AddCharge (CbmTrdDigi *sd, double f) |
Charge addition in case of pile-up (FASP simulation only) | |
void | AddCharge (double c, double f=1) |
Charge addition in case of pile-up (SPADIC simulation only) | |
int32_t | GetAddress () const |
Address getter for module in the format defined by CbmTrdDigi (format of CbmTrdAddress can be accessed via CbmTrdParModDigi) | |
int32_t | GetAddressChannel () const |
Getter read-out id. | |
int32_t | GetAddressModule () const |
Getter module address in the experiment. | |
double | GetCharge () const |
Common purpose charge getter. | |
double | GetCharge (double &tilt, int32_t &dt) const |
Charge getter for FASP. | |
double | GetChargeError () const |
Charge error parametrisation. SPADIC specific see GetErrorClass() | |
int32_t | GetErrorClass () const |
Channel status. SPADIC specific see LUT. | |
double | GetTime () const |
Getter for physical time [ns]. Accounts for clock representation of each ASIC. In SPADIC case physical time is already stored in fTime. | |
uint64_t | GetTimeDAQ () const |
Getter for global DAQ time [clk]. Differs for each ASIC. In FASP case DAQ time is already stored in fTime. | |
int32_t | GetTriggerType () const |
Channel trigger type. SPADIC specific see CbmTrdTriggerType. | |
eCbmTrdAsicType | GetType () const |
Channel FEE SPADIC/FASP according to CbmTrdAsicType. | |
bool | IsFASP () const |
Shortcut to check if FASP digi. | |
bool | IsMasked () const |
Query digi mask (FASP only) | |
bool | IsPileUp () const |
Query digi pile-up (FASP only) | |
bool | IsFlagged (const int32_t iflag) const |
Query flag status (generic) | |
int32_t | Layer () const |
int32_t | Module () const |
void | SetAddress (const int32_t a) |
Module address setter for digi. | |
void | SetAddressModule (const int32_t a) |
Alias for SetAddress() | |
void | SetAsic (eCbmTrdAsicType ty=eCbmTrdAsicType::kSPADIC) |
void | SetCharge (float c) |
Charge setter for SPADIC ASIC. | |
void | SetCharge (float cT, float cR, int32_t dt=0) |
Charge setter for FASP ASIC. | |
void | SetFlag (const int32_t iflag, bool set=true) |
Generic flag status setter. | |
void | SetMasked (bool set=true) |
Set digi mask (FASP only) | |
void | SetPileUp (bool set=true) |
Set digi pile-up (FASP only) | |
void | SetTime (double t) |
Set global digi time (ns) | |
void | SetTimeDAQ (uint64_t t) |
Set global digi time (clk) | |
void | SetTimeOffset (int8_t t) |
Set time offset of rectangular to tilt pads for FASP (clk) | |
void | SetTriggerType (const eTriggerType triggerType) |
Set digi trigger type. | |
void | SetTriggerType (const int32_t triggerValue) |
Set digi trigger type. | |
void | SetErrorClass (const int32_t n) |
Set digi error class (SPADIC only) | |
std::string | ToString () const |
String representation of a TRD digi. Account for digi type and specific information. | |
void | SetStopType (int32_t) |
int32_t | GetStopType () |
void | SetPulseShape (float[45]) |
double | GetChargeTR () const |
void | SetInfoType (int32_t) |
int32_t | GetNrSamples () |
float * | GetSamples () |
Static Public Member Functions | |
static float | Clk (eCbmTrdAsicType ty) |
DAQ clock accessor for each ASIC. | |
static ECbmModuleId | GetSystem () |
static const char * | GetClassName () |
Class name (static) | |
static const char * | GetBranchName () |
Get the desired name of the branch for this obj in the cbm output tree (static) | |
static std::pair< eTriggerType, bool > | GetTriggerPair (const int32_t triggerValue) |
Get the trigger combination, i.e. St or Nt and is multihit or not (true/false) | |
Protected Member Functions | |
void | SetChannel (const int32_t a) |
void | SetLayer (const int32_t a) |
void | SetModule (const int32_t a) |
Protected Attributes | |
uint32_t | fInfo = 0 |
uint32_t | fCharge = 0 |
uint64_t | fTime = 0 |
Static Protected Attributes | |
static const double | fgClk [static_cast< size_t >(eCbmTrdAsicType::kNTypes)+1] = {62.5, 12.5, 0.0} |
clock length in ns for acquisition | |
static const float | fgPrecission [static_cast< size_t >(eCbmTrdAsicType::kNTypes)+1] = {1.e3, 1., 0.0} |
Nr. of digits stored for ASIC. | |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int) |
ClassDefNV (CbmTrdDigi, 4) | |
Static Private Attributes | |
static const int32_t | fgkRoOffset = 0 |
static const int32_t | fgkModOffset = 12 |
static const int32_t | fgkLyOffset = 19 |
static const int32_t | fgkErrOffset = 23 |
static const int32_t | fgkFlgOffset = 26 |
static const int32_t | fgkTrgOffset = 29 |
static const int32_t | fgkTypOffset = 31 |
Friends | |
class | boost::serialization::access |
BOOST serialization interface. | |
Definition at line 20 of file CbmTrdDigi.h.
Enumerator | |
---|---|
kFlag1 | |
kFlag2 | |
kFlag3 | |
kNflags |
Definition at line 37 of file CbmTrdDigi.h.
|
strong |
Enumerator | |
---|---|
kSPADIC | |
kFASP | |
kNTypes |
Definition at line 22 of file CbmTrdDigi.h.
|
strong |
Enumerator | |
---|---|
kBeginTriggerTypes | |
kSelf | |
kNeighbor | |
kMulti | |
kTrg2 | |
kNTrg |
Definition at line 28 of file CbmTrdDigi.h.
CbmTrdDigi::CbmTrdDigi | ( | ) |
Default constructor.
Definition at line 44 of file CbmTrdDigi.cxx.
CbmTrdDigi::CbmTrdDigi | ( | int32_t | padChNr, |
float | chargeT, | ||
float | chargeR, | ||
uint64_t | time ) |
Constructor for the FASP type.
[in] | padChNr | Unique channel address in the module. |
[in] | chargeT | Charge for tilt pad parring. |
[in] | chargeR | Charge for rectangle pad parring. |
[in] | time | Absolute time [ASIC clocks]. |
Fill data structure according to FASP representation A - Asic type according to CbmTrdAsicType M - module id in the layer L - layer id in the TRD setup p - pad address within the module
fCharge definition tttt.tttt tttt.tttt rrrr.rrrr rrrr.rrrr t - tilt paired charge r - rectangle paired charge
Definition at line 46 of file CbmTrdDigi.cxx.
References kFASP, SetAsic(), SetChannel(), and SetCharge().
CbmTrdDigi::CbmTrdDigi | ( | int32_t | padChNr, |
int32_t | uniqueModuleId, | ||
float | charge, | ||
uint64_t | time, | ||
eTriggerType | triggerType, | ||
int32_t | errClass ) |
Constructor for the SPADIC type.
[in] | padChNr | Unique channel address in the module. |
[in] | uniqueModuleId | Unique Id of the module. |
[in] | charge | Charge. |
[in] | time | Absolute time [ns]. |
[in] | triggerType | SPADIC trigger type see CbmTrdTriggerType. |
[in] | errClass | SPADIC signal error parametrization based on message type. |
Fill data structure according to SPADIC representation A - Asic type according to CbmTrdAsicType T - trigger type according to CbmTrdTriggerType n - error class M - module id in the layer L - layer id in the TRD setup p - pad address within the module fCharge definition uint32_t(charge*fgPrecission)
Definition at line 64 of file CbmTrdDigi.cxx.
References kSPADIC, SetAddress(), SetAsic(), SetChannel(), SetCharge(), SetErrorClass(), and SetTriggerType().
|
inline |
Constructor for backward compatibillity. Does not do anything.
Definition at line 75 of file CbmTrdDigi.h.
CbmTrdDigi::CbmTrdDigi | ( | const CbmTrdDigi & | digi | ) |
void CbmTrdDigi::AddCharge | ( | CbmTrdDigi * | sd, |
double | f ) |
Charge addition in case of pile-up (FASP simulation only)
[in] | sd | previous digi absorbed by current |
[in] | f | scaling factor |
Definition at line 95 of file CbmTrdDigi.cxx.
References fCharge, fgPrecission, GetType(), and kFASP.
void CbmTrdDigi::AddCharge | ( | double | c, |
double | f = 1 ) |
Charge addition in case of pile-up (SPADIC simulation only)
[in] | c | extra charge to be added |
[in] | f | scaling factor |
Definition at line 123 of file CbmTrdDigi.cxx.
References GetCharge(), GetType(), kSPADIC, and SetCharge().
|
private |
|
inlinestatic |
DAQ clock accessor for each ASIC.
Definition at line 109 of file CbmTrdDigi.h.
References fgClk.
Referenced by CbmTrdModuleSim2D::AddDigi(), CbmTrdModuleSimR::AddDigitoBuffer(), CbmTrdModuleSimR::AddToPulse(), CbmTrdModuleRec2D::BuildHit(), CbmTrdModuleSimR::CheckMulti(), CbmTrdRawToDigiR::FillLookUps(), CbmTrdModuleRecR::FindClusters(), CbmMcbmCheckTimingAlgo::GetDigiInfo(), CbmTrdRawToDigiR::Init(), CbmTrdModuleSimR::MakePulse(), CbmTrdModuleRec2D::MergeHits(), CbmTrdFASP::Print(), CbmTrdModuleSimR::ProcessPulseBuffer(), CbmTrdFASP::ProcessShaper(), CbmTrdRawToDigiR::SetPars(), CbmTrdModuleSimR::SetSpadicResponse(), SetTime(), cbm::algo::trd::Clusterizer::TryAddDigi(), and CbmTrdFASP::WriteDigi().
|
inline |
Address getter for module in the format defined by CbmTrdDigi (format of CbmTrdAddress can be accessed via CbmTrdParModDigi)
Definition at line 112 of file CbmTrdDigi.h.
References fgkRoOffset, and fInfo.
Referenced by CbmMcbm2019CheckPulser::CheckInterSystemOffset(), compareTrdDigiDataMembers(), compareTrdDigiDataMembers(), CbmTrdDigiDraw::Exec(), CbmTrdHitDensityQa::Exec(), CbmTrdOccupancyQa::Exec(), CbmTrdQa::Exec(), and CbmTrdRecoQa::Exec().
int32_t CbmTrdDigi::GetAddressChannel | ( | ) | const |
Getter read-out id.
Returns index of the read-out unit in the module in the format row x ncol + col
Definition at line 134 of file CbmTrdDigi.cxx.
References fgkRoOffset, and fInfo.
Referenced by CbmTrdClusterFinder::AddClusters(), CbmTrdModuleRec2D::AddDigi(), compareTrdDigiDataMembers(), compareTrdDigiDataMembers(), CbmTrdUnpackFaspMonitor::fillHisto(), CbmTrdUnpackMonitor::fillHisto(), CbmTrdUnpackMonitor::fillHisto(), CbmMcbm2018UnpackerAlgoTrdR::FillHistograms(), CbmTrdUnpackMonitor::fillNtCorrHisto(), cbm::algo::trd::Cluster2D::Finalize(), CbmTrdModuleRecR::FindClusters(), CbmTrdUnpackMonitor::getDeltaT(), CbmTrdModuleRecR::IsClusterComplete(), CbmTrdModuleRec2D::LoadDigis(), CbmTrdModuleRec2D::LoadDigisRC(), CbmTrdModuleRecR::MakeHit(), CbmTrdModuleRec2D::MergeDigis(), cbm::algo::trd::Clusterizer2D::operator()(), cbm::algo::trd::Clusterizer::operator()(), cbm::algo::trd::HitFinder2D::ProjectDigis(), cbm::algo::trd::HitMerger2D::ProjectDigis(), CbmTrdModuleRec2D::ProjectDigis(), cbm::algo::trd::Hitfind::RunModuleParallelMerge(), cbm::algo::trd::Hitfind::RunRowParallel(), CbmTrdFASP::ScanDigi(), and ToString().
int32_t CbmTrdDigi::GetAddressModule | ( | ) | const |
Getter module address in the experiment.
Convert internal representation of module address to CBM address as defined in CbmTrdAddress
Definition at line 142 of file CbmTrdDigi.cxx.
References CbmTrdAddress::GetAddress(), Layer(), and Module().
Referenced by CbmTrdClusterFinder::addDigiToModule(), CbmTrdClusterFinder::AddModule(), compareTrdDigiDataMembers(), compareTrdDigiDataMembers(), CbmMcbm2018UnpackerAlgoTrdR::FillHistograms(), CbmTrdUnpackFaspMonitor::FillHistos(), CbmTrdUnpackMonitor::FillHistos(), CbmTrdUnpackMonitor::fillNtCorrHisto(), CbmTrdUnpackMonitor::getDeltaT(), CbmMcbmCheckTimingAlgo::GetDigiInfo(), CbmTrdCalibTracker::ResolutionQa(), cbm::algo::trd::Hitfind::RunModuleParallelMerge(), cbm::algo::trd::Hitfind::RunRowParallel(), and ToString().
|
inlinestatic |
Get the desired name of the branch for this obj in the cbm output tree (static)
Definition at line 149 of file CbmTrdDigi.h.
Referenced by CbmDeviceDigiEventSink::InitTask().
double CbmTrdDigi::GetCharge | ( | ) | const |
Common purpose charge getter.
Definition at line 150 of file CbmTrdDigi.cxx.
References fCharge, fgPrecission, GetType(), kFASP, and kSPADIC.
Referenced by AddCharge(), CbmTrdModuleRec2D::AddDigi(), CbmTrdHitMC::AddSignal(), CbmTrdDigiRec::CbmTrdDigiRec(), CbmTrdDigiRec::CbmTrdDigiRec(), CbmMcbm2019CheckPulser::CheckInterSystemOffset(), compareTrdDigiDataMembers(), compareTrdDigiDataMembers(), cbm::algo::trd::DigiRec::DigiRec(), cbm::algo::trd::DigiRec::DigiRec(), CbmTrdHitDensityQa::Exec(), CbmTrdOccupancyQa::Exec(), CbmTrdQa::Exec(), CbmTrdRecoQa::Exec(), CbmTrdUnpackFaspMonitor::fillHisto(), CbmTrdUnpackMonitor::fillHisto(), CbmMcbm2018UnpackerAlgoTrdR::FillHistograms(), CbmTrdModuleRecR::FindClusters(), CbmTrdModuleSim2D::FlushBuffer(), cbm::algo::trd::DigiRec::GetCharge(), CbmTrdDigiRec::GetCharge(), CbmMcbmCheckTimingAlgo::GetDigiInfo(), cbm::algo::trd::DigiRec::GetRectCharge(), CbmTrdDigiRec::GetRectCharge(), cbm::algo::trd::DigiRec::GetTiltCharge(), CbmTrdDigiRec::GetTiltCharge(), cbm::algo::trd::DigiRec::GetTime(), CbmTrdDigiRec::GetTime(), CbmTrdModuleRec2D::LoadDigisRC(), CbmTrdModuleRecR::MakeHit(), CbmTrdModuleRec2D::MergeDigis(), cbm::algo::trd::Clusterizer2D::operator()(), CbmTrdHitProducer::processCluster(), CbmTrdModuleSimR::ProcessPulseBuffer(), CbmTrdFASP::ScanDigi(), ToString(), and CbmTrdFASP::WriteDigi().
double CbmTrdDigi::GetCharge | ( | double & | tilt, |
int32_t & | dt ) const |
Charge getter for FASP.
[out] | tilt | on returns contain the charge measured on tilted pads |
[out] | dt | on returns contain the time difference wrt tilted pads [ASIC clocks] |
Retrieve signal information for FASP. Memory allocation of 32 bits: tttt.tttt TTTT.TTTT TTTT.RRRR RRRR.RRRR t : time difference of rectangular to tilt pads T : tilt pads signal R : Rectangular pads signal
Definition at line 161 of file CbmTrdDigi.cxx.
References fCharge, fgPrecission, GetType(), and kFASP.
double CbmTrdDigi::GetChargeError | ( | ) | const |
Charge error parametrisation. SPADIC specific see GetErrorClass()
Definition at line 181 of file CbmTrdDigi.cxx.
|
inline |
Definition at line 245 of file CbmTrdDigi.h.
|
inlinestatic |
Class name (static)
Definition at line 144 of file CbmTrdDigi.h.
Referenced by TEST().
|
inline |
Channel status. SPADIC specific see LUT.
Definition at line 133 of file CbmTrdDigi.h.
References fgkErrOffset, and fInfo.
Referenced by CbmTrdModuleRecR::MakeHit(), and ToString().
|
inline |
Definition at line 247 of file CbmTrdDigi.h.
|
inline |
Definition at line 248 of file CbmTrdDigi.h.
|
inline |
Definition at line 242 of file CbmTrdDigi.h.
|
inlinestatic |
System ID (static)
Definition at line 138 of file CbmTrdDigi.h.
References kTrd.
Referenced by compareTrdDigiDataMembers(), and compareTrdDigiDataMembers().
|
inline |
Getter for physical time [ns]. Accounts for clock representation of each ASIC. In SPADIC case physical time is already stored in fTime.
Definition at line 153 of file CbmTrdDigi.h.
References fgClk, fTime, GetType(), and kFASP.
Referenced by CbmTrdModuleSim2D::AddDigi(), CbmTrdHitMC::AddSignal(), compareTrdDigiDataMembers(), compareTrdDigiDataMembers(), CbmRichMCbmQaReal::Exec(), CbmTrdDigitizer::Exec(), CbmMcbm2018UnpackerAlgoTrdR::FillHistograms(), CbmTrdUnpackMonitor::fillNtCorrHisto(), CbmTrdModuleRecR::FindClusters(), CbmTrdModuleSim2D::FlushBuffer(), CbmTrdDigitizer::FlushBuffers(), CbmTrdUnpackMonitor::getDeltaT(), CbmMcbmCheckTimingAlgo::GetDigiInfo(), cbm::algo::trd::DigiRec::GetRectTime(), CbmTrdDigiRec::GetRectTime(), cbm::algo::trd::DigiRec::GetTiltTime(), CbmTrdDigiRec::GetTiltTime(), CbmTrdModuleRecR::MakeHit(), CbmTrdModuleSimR::ProcessPulseBuffer(), CbmTrdCalibTracker::ResolutionQa(), CbmTrdFASP::ScanDigi(), ToString(), and CbmTrdFASP::WriteDigi().
|
inline |
Getter for global DAQ time [clk]. Differs for each ASIC. In FASP case DAQ time is already stored in fTime.
Definition at line 158 of file CbmTrdDigi.h.
References fgClk, fTime, GetType(), and kFASP.
Referenced by CbmTrdModuleRec2D::AddDigi(), CbmTrdHitMC::AddSignal(), CbmTrdDigiRec::CbmTrdDigiRec(), cbm::algo::trd::DigiRec::DigiRec(), CbmTrdUnpackFaspMonitor::fillHisto(), cbm::algo::trd::DigiRec::GetTime(), CbmTrdDigiRec::GetTime(), CbmTrdModuleRec2D::MergeDigis(), cbm::algo::trd::Clusterizer2D::operator()(), cbm::algo::trd::HitFinder2D::ProjectDigis(), cbm::algo::trd::HitMerger2D::ProjectDigis(), CbmTrdCalibTracker::ResolutionQa(), CbmTrdFASP::ScanDigi(), and CbmTrdFASP::WriteDigi().
|
static |
Get the trigger combination, i.e. St or Nt and is multihit or not (true/false)
[in] | int32_t | trigger value of a digi as stored in fInfo |
Definition at line 184 of file CbmTrdDigi.cxx.
Referenced by CbmTrdUnpackMonitor::fillHisto().
|
inline |
Channel trigger type. SPADIC specific see CbmTrdTriggerType.
Definition at line 163 of file CbmTrdDigi.h.
References fgkTrgOffset, and fInfo.
Referenced by CbmTrdDigiRec::CbmTrdDigiRec(), compareTrdDigiDataMembers(), cbm::algo::trd::DigiRec::DigiRec(), CbmTrdUnpackMonitor::fillHisto(), CbmMcbm2018UnpackerAlgoTrdR::FillHistograms(), CbmTrdUnpackMonitor::fillNtCorrHisto(), CbmTrdModuleRecR::FindClusters(), CbmTrdModuleRec2D::MergeDigis(), cbm::algo::trd::Clusterizer::operator()(), ToString(), and CbmTrdFASP::WriteDigi().
|
inline |
Channel FEE SPADIC/FASP according to CbmTrdAsicType.
Definition at line 173 of file CbmTrdDigi.h.
References fgkTypOffset, fInfo, kFASP, and kSPADIC.
Referenced by AddCharge(), AddCharge(), CbmTrdModuleRec2D::AddDigi(), CbmTrdClusterFinder::AddModule(), CbmRichMCbmQaReal::Exec(), GetCharge(), GetCharge(), CbmMcbmCheckTimingAlgo::GetDigiInfo(), GetTime(), GetTimeDAQ(), IsFASP(), IsMasked(), IsPileUp(), CbmTrdHitProducer::processCluster(), CbmTrdCalibTracker::ResolutionQa(), CbmAlgoBuildRawEvents::SearchMatches(), SetMasked(), SetPileUp(), SetTime(), SetTimeOffset(), and ToString().
|
inline |
Shortcut to check if FASP digi.
Definition at line 179 of file CbmTrdDigi.h.
References GetType(), and kFASP.
Referenced by cbm::algo::trd::Hitfind::RunModuleParallelMerge(), and cbm::algo::trd::Hitfind::RunRowParallel().
bool CbmTrdDigi::IsFlagged | ( | const int32_t | iflag | ) | const |
Query flag status (generic)
Definition at line 196 of file CbmTrdDigi.cxx.
References fgkFlgOffset, fInfo, and kNflags.
Referenced by CbmTrdModuleSim2D::FlushBuffer(), IsMasked(), IsPileUp(), CbmTrdModuleRecR::MakeHit(), and CbmTrdFASP::WriteDigi().
|
inline |
Query digi mask (FASP only)
Definition at line 182 of file CbmTrdDigi.h.
References GetType(), IsFlagged(), kFASP, and kFlag3.
Referenced by CbmTrdModuleSim2D::FlushBuffer(), and ToString().
|
inline |
Query digi pile-up (FASP only)
Definition at line 184 of file CbmTrdDigi.h.
References GetType(), IsFlagged(), kFASP, and kFlag2.
Referenced by ToString().
|
inline |
Definition at line 187 of file CbmTrdDigi.h.
References fgkLyOffset, and fInfo.
Referenced by GetAddressModule(), and ToString().
|
inline |
Definition at line 188 of file CbmTrdDigi.h.
References fgkModOffset, and fInfo.
Referenced by GetAddressModule(), and ToString().
|
default |
Assignment operator.
|
inlineprivate |
Definition at line 297 of file CbmTrdDigi.h.
void CbmTrdDigi::SetAddress | ( | const int32_t | a | ) |
Module address setter for digi.
[in] | a | module address as it is defined in CbmTrdAddress |
Definition at line 203 of file CbmTrdDigi.cxx.
References CbmTrdAddress::GetLayerId(), CbmTrdAddress::GetModuleId(), SetLayer(), and SetModule().
Referenced by CbmTrdDigi(), and SetAddressModule().
|
inline |
void CbmTrdDigi::SetAsic | ( | eCbmTrdAsicType | ty = eCbmTrdAsicType::kSPADIC | ) |
Definition at line 210 of file CbmTrdDigi.cxx.
References CLRBIT, fgkTypOffset, fInfo, kSPADIC, and SETBIT.
Referenced by CbmTrdDigi(), and CbmTrdDigi().
|
inlineprotected |
Definition at line 251 of file CbmTrdDigi.h.
References fgkRoOffset, and fInfo.
Referenced by CbmTrdDigi(), and CbmTrdDigi().
void CbmTrdDigi::SetCharge | ( | float | c | ) |
Charge setter for SPADIC ASIC.
[in] | c | charge on read-out pad |
Definition at line 239 of file CbmTrdDigi.cxx.
References fCharge, fgPrecission, and kSPADIC.
Referenced by AddCharge(), CbmTrdDigi(), CbmTrdDigi(), CbmTrdDigiRec::CbmTrdDigiRec(), cbm::algo::trd::DigiRec::DigiRec(), CbmTrdModuleSim2D::FlushBuffer(), CbmTrdModuleRec2D::MergeDigis(), CbmTrdModuleSimR::ProcessBuffer(), and CbmTrdModuleSimR::ProcessPulseBuffer().
void CbmTrdDigi::SetCharge | ( | float | cT, |
float | cR, | ||
int32_t | dt = 0 ) |
Charge setter for FASP ASIC.
[in] | cT | charge on tilt paired |
[in] | cR | charge on rectangular paired |
[in] | dt | time difference between T and R channel |
Load signal information for FASP. Memory allocation of 32 bits: tttt.tttt TTTT.TTTT TTTT.RRRR RRRR.RRRR t : time difference of rectangular to tilt pads (8 bits) T : tilt pads signal (12 bits) R : Rectangular pads signal (12 bits)
Definition at line 218 of file CbmTrdDigi.cxx.
References fCharge, fgPrecission, and kFASP.
|
inline |
Set digi error class (SPADIC only)
Definition at line 231 of file CbmTrdDigi.h.
References fgkErrOffset, and fInfo.
Referenced by CbmTrdModuleSimR::AddDigi(), CbmTrdDigi(), and CbmTrdModuleSimR::ProcessPulseBuffer().
void CbmTrdDigi::SetFlag | ( | const int32_t | iflag, |
bool | set = true ) |
Generic flag status setter.
Definition at line 246 of file CbmTrdDigi.cxx.
References CLRBIT, fgkFlgOffset, fInfo, kNflags, and SETBIT.
Referenced by CbmTrdModuleSimR::AddDigi(), CbmTrdModuleSimR::ProcessPulseBuffer(), SetMasked(), SetPileUp(), and CbmTrdFASP::WriteDigi().
|
inline |
Definition at line 246 of file CbmTrdDigi.h.
|
inlineprotected |
Definition at line 256 of file CbmTrdDigi.h.
References fgkLyOffset, and fInfo.
Referenced by SetAddress().
|
inline |
|
inlineprotected |
Definition at line 261 of file CbmTrdDigi.h.
References fgkModOffset, and fInfo.
Referenced by SetAddress().
|
inline |
|
inline |
Definition at line 243 of file CbmTrdDigi.h.
|
inline |
Definition at line 241 of file CbmTrdDigi.h.
void CbmTrdDigi::SetTime | ( | double | t | ) |
|
inline |
void CbmTrdDigi::SetTimeOffset | ( | int8_t | t | ) |
Set time offset of rectangular to tilt pads for FASP (clk)
Definition at line 271 of file CbmTrdDigi.cxx.
void CbmTrdDigi::SetTriggerType | ( | const eTriggerType | triggerType | ) |
Set digi trigger type.
Definition at line 280 of file CbmTrdDigi.cxx.
References fgkTrgOffset, fInfo, and kNTrg.
Referenced by CbmTrdDigi(), CbmTrdDigiRec::CbmTrdDigiRec(), cbm::algo::trd::DigiRec::DigiRec(), cbm::algo::trd::UnpackMS< sys_ver >::makeDigi(), cbm::algo::trd::UnpackMS< sys_ver >::makeDigi(), CbmTrdModuleRec2D::MergeDigis(), CbmTrdModuleSimR::ProcessBuffer(), and CbmTrdModuleSimR::ProcessPulseBuffer().
void CbmTrdDigi::SetTriggerType | ( | const int32_t | triggerValue | ) |
Set digi trigger type.
Definition at line 288 of file CbmTrdDigi.cxx.
References fgkTrgOffset, fInfo, kBeginTriggerTypes, and kNTrg.
string CbmTrdDigi::ToString | ( | ) | const |
String representation of a TRD digi. Account for digi type and specific information.
Definition at line 298 of file CbmTrdDigi.cxx.
References GetAddressChannel(), GetAddressModule(), GetCharge(), GetErrorClass(), GetTime(), GetTriggerType(), GetType(), IsMasked(), IsPileUp(), kFASP, Layer(), and Module().
Referenced by CbmTrdModuleRec2D::AddDigi(), CbmTrdModuleSim2D::AddDigi(), CbmTrdModuleSim2D::FlushBuffer(), CbmTrdModuleRec2D::LoadDigisRC(), CbmTrdModuleRec2D::MergeDigis(), CbmTrdModuleRec2D::ProjectDigis(), and CbmTrdFASP::WriteDigi().
|
friend |
BOOST serialization interface.
Definition at line 295 of file CbmTrdDigi.h.
|
protected |
Definition at line 268 of file CbmTrdDigi.h.
Referenced by AddCharge(), CbmTrdDigi(), GetCharge(), GetCharge(), serialize(), SetCharge(), SetCharge(), and SetTimeOffset().
|
staticprotected |
clock length in ns for acquisition
fInfo defition ATTf.ffnn nLLL.LMMM MMMM.pppp pppp.pppp A - Asic type according to CbmTrdAsicType T - trigger type according to CbmTrdTriggerType f - flags according to CbmTrdDigiDef n - error class L - layer id in the TRD setup M - module id in the layer p - pad address within the module
Definition at line 41 of file CbmTrdDigi.h.
Referenced by Clk(), GetTime(), and GetTimeDAQ().
|
staticprivate |
Definition at line 289 of file CbmTrdDigi.h.
Referenced by GetErrorClass(), and SetErrorClass().
|
staticprivate |
Definition at line 290 of file CbmTrdDigi.h.
Referenced by IsFlagged(), and SetFlag().
|
staticprivate |
Definition at line 288 of file CbmTrdDigi.h.
Referenced by Layer(), and SetLayer().
|
staticprivate |
Definition at line 287 of file CbmTrdDigi.h.
Referenced by Module(), and SetModule().
|
staticprivate |
Definition at line 286 of file CbmTrdDigi.h.
Referenced by GetAddress(), GetAddressChannel(), and SetChannel().
|
staticprivate |
Definition at line 291 of file CbmTrdDigi.h.
Referenced by GetTriggerType(), SetTriggerType(), and SetTriggerType().
|
staticprivate |
Definition at line 292 of file CbmTrdDigi.h.
|
staticprotected |
Nr. of digits stored for ASIC.
Definition at line 42 of file CbmTrdDigi.h.
Referenced by AddCharge(), GetCharge(), GetCharge(), SetCharge(), and SetCharge().
|
protected |
Definition at line 267 of file CbmTrdDigi.h.
Referenced by CbmTrdDigi(), GetAddress(), GetAddressChannel(), GetErrorClass(), GetTriggerType(), GetType(), IsFlagged(), Layer(), Module(), serialize(), SetAsic(), SetChannel(), SetErrorClass(), SetFlag(), SetLayer(), SetModule(), SetTriggerType(), and SetTriggerType().
|
protected |
Definition at line 270 of file CbmTrdDigi.h.
Referenced by CbmTrdDigi(), GetTime(), GetTimeDAQ(), serialize(), SetTime(), and SetTimeDAQ().