CbmRoot
|
Abstract class for the TRD module It provides access to the basic properties of the chamber as follows : More...
#include <CbmTrdModuleAbstract.h>
Public Member Functions | |
CbmTrdModuleAbstract () | |
Default constructor. | |
CbmTrdModuleAbstract (Int_t mod, Int_t ly, Int_t rot) | |
Constructor with placement. | |
virtual | ~CbmTrdModuleAbstract () |
virtual Double_t | GetDx () const |
Shortcut getter size x/2 [cm]. | |
virtual Double_t | GetDy () const |
Shortcut getter size y/2 [cm]. | |
virtual Double_t | GetDz () const |
Shortcut getter size z/2 [cm]. | |
virtual Int_t | GetNasics () const |
Shortcut getter ASICs number module wise. | |
virtual Int_t | GetNcols () const |
Shortcut getter column size. | |
virtual Int_t | GetNrows () const |
Shortcut getter row wise. | |
virtual Int_t | GetAsicAddress (Int_t id) const |
Addressing ASIC on module based on id. | |
virtual Int_t | GetPadAddress (Int_t r, Int_t c) const |
Addressing read-out pads on module based on (row,col) | |
virtual Int_t | GetPadRowCol (Int_t address, Int_t &c) const |
Addressing read-out pads based on module address. | |
virtual const Char_t * | GetPath () const |
bool | IsChannelMasked (int ch) const |
Inquire the ASIC par set. | |
virtual void | LocalToMaster (Double_t in[3], Double_t out[3]) |
virtual void | SetAsicPar (CbmTrdParModAsic *p=nullptr) |
virtual void | SetChmbPar (const CbmTrdParModGas *p) |
virtual void | SetDigiPar (const CbmTrdParModDigi *p) |
virtual void | SetGainPar (const CbmTrdParModGain *p) |
virtual void | SetGeoPar (const CbmTrdParModGeo *p) |
Protected Attributes | |
UShort_t | fModAddress = 0 |
unique identifier for current module | |
Char_t | fLayerId = -1 |
layer identifier | |
UChar_t | fRotation = 0 |
rotation angle for current module | |
const CbmTrdParModDigi * | fDigiPar = nullptr |
read-out description of module | |
const CbmTrdParModGas * | fChmbPar = nullptr |
detection description (HV, drift) of module | |
CbmTrdParModAsic * | fAsicPar = nullptr |
the set of ASIC operating on the module (owned) | |
const CbmTrdParModGain * | fGainPar = nullptr |
Analog to digital conversion for module. | |
const CbmTrdParModGeo * | fGeoPar = nullptr |
link to gGeometry for module | |
Private Member Functions | |
CbmTrdModuleAbstract (const CbmTrdModuleAbstract &ref) | |
const CbmTrdModuleAbstract & | operator= (const CbmTrdModuleAbstract &ref) |
Abstract class for the TRD module It provides access to the basic properties of the chamber as follows :
It define basic configuration properties
Definition at line 34 of file CbmTrdModuleAbstract.h.
CbmTrdModuleAbstract::CbmTrdModuleAbstract | ( | ) |
Default constructor.
Definition at line 12 of file CbmTrdModuleAbstract.cxx.
CbmTrdModuleAbstract::CbmTrdModuleAbstract | ( | Int_t | mod, |
Int_t | ly, | ||
Int_t | rot ) |
Constructor with placement.
Definition at line 15 of file CbmTrdModuleAbstract.cxx.
References fLayerId, fModAddress, and fRotation.
|
virtual |
Definition at line 24 of file CbmTrdModuleAbstract.cxx.
References fAsicPar.
|
private |
|
inlinevirtual |
Addressing ASIC on module based on id.
[in] | id | module wise ASIC identifier |
Definition at line 59 of file CbmTrdModuleAbstract.h.
References fModAddress.
|
inlinevirtual |
Shortcut getter size x/2 [cm].
Definition at line 44 of file CbmTrdModuleAbstract.h.
References fGeoPar, and CbmTrdParModGeo::GetDX().
Referenced by CbmTrdModuleSimR::SetAsicPar().
|
inlinevirtual |
Shortcut getter size y/2 [cm].
Definition at line 46 of file CbmTrdModuleAbstract.h.
References fGeoPar, and CbmTrdParModGeo::GetDY().
Referenced by CbmTrdModuleSimR::SetAsicPar().
|
inlinevirtual |
Shortcut getter size z/2 [cm].
Definition at line 48 of file CbmTrdModuleAbstract.h.
References fGeoPar, and CbmTrdParModGeo::GetDZ().
|
inlinevirtual |
Shortcut getter ASICs number module wise.
Definition at line 50 of file CbmTrdModuleAbstract.h.
References fAsicPar, and CbmTrdParModAsic::GetNofAsics().
|
inlinevirtual |
Shortcut getter column size.
Definition at line 52 of file CbmTrdModuleAbstract.h.
References fDigiPar, and CbmTrdParModDigi::GetNofColumns().
Referenced by CbmTrdModuleRec2D::AddClusterEdges(), GetPadAddress(), GetPadRowCol(), and CbmTrdModuleRec2D::RecenterXoffset().
|
inlinevirtual |
Shortcut getter row wise.
Definition at line 54 of file CbmTrdModuleAbstract.h.
References fDigiPar, and CbmTrdParModDigi::GetNofRows().
|
inlinevirtual |
Addressing read-out pads on module based on (row,col)
[in] | r | global row id (not sector wise) |
[in] | c | global column id |
Definition at line 65 of file CbmTrdModuleAbstract.h.
References GetNcols().
Referenced by CbmTrdModuleSim2D::ScanPadPlane().
|
inlinevirtual |
Addressing read-out pads based on module address.
[in] | address | pad address within module |
[in] | c | on return global column id |
Definition at line 107 of file CbmTrdModuleAbstract.h.
References fDigiPar, and GetNcols().
Referenced by CbmTrdModuleRec2D::AddDigi(), CbmTrdModuleRec2D::CheckMerge(), CbmTrdModuleSim2D::FlushBuffer(), CbmTrdModuleRec2D::LoadDigis(), CbmTrdModuleRec2D::LoadDigisRC(), CbmTrdModuleRec2D::MergeDigis(), and CbmTrdModuleRec2D::ProjectDigis().
|
inlinevirtual |
Definition at line 72 of file CbmTrdModuleAbstract.h.
References fGeoPar.
Referenced by CbmTrdDigitizer::AddModule(), CbmTrdModuleSim2D::MakeDigi(), and CbmTrdModuleSimR::MakeDigi().
bool CbmTrdModuleAbstract::IsChannelMasked | ( | int | ch | ) | const |
Inquire the ASIC par set.
Definition at line 30 of file CbmTrdModuleAbstract.cxx.
References fAsicPar, CbmTrdParModAsic::GetAsicPar(), and CbmTrdParAsic::IsChannelMasked().
|
virtual |
Definition at line 39 of file CbmTrdModuleAbstract.cxx.
References fGeoPar, and CbmTrdParModGeo::LocalToMaster().
Referenced by CbmTrdModuleRec2D::BuildHit(), CbmTrdModuleRecR::MakeHit(), and CbmTrdModuleRec2D::MergeHits().
|
private |
|
inlinevirtual |
Reimplemented in CbmTrdModuleSim2D, and CbmTrdModuleSimR.
Definition at line 81 of file CbmTrdModuleAbstract.h.
References fAsicPar.
|
inlinevirtual |
Definition at line 82 of file CbmTrdModuleAbstract.h.
References fChmbPar.
|
inlinevirtual |
Definition at line 83 of file CbmTrdModuleAbstract.h.
References fDigiPar.
|
inlinevirtual |
Definition at line 84 of file CbmTrdModuleAbstract.h.
References fGainPar.
|
inlinevirtual |
Definition at line 85 of file CbmTrdModuleAbstract.h.
References fGeoPar.
|
protected |
the set of ASIC operating on the module (owned)
Definition at line 95 of file CbmTrdModuleAbstract.h.
Referenced by CbmTrdModuleRec2D::AddDigi(), CbmTrdModuleSim2D::AddDigi(), CbmTrdModuleSim2D::FlushBuffer(), CbmTrdModuleRec2D::GetFaspChCalibrator(), GetNasics(), IsChannelMasked(), SetAsicPar(), CbmTrdModuleSim2D::SetAsicPar(), CbmTrdModuleSimR::SetAsicPar(), and ~CbmTrdModuleAbstract().
|
protected |
detection description (HV, drift) of module
Definition at line 94 of file CbmTrdModuleAbstract.h.
Referenced by CbmTrdModuleSim2D::AddDigi(), CbmTrdModuleSim2D::MakeDigi(), and SetChmbPar().
|
protected |
read-out description of module
Definition at line 93 of file CbmTrdModuleAbstract.h.
Referenced by CbmTrdModuleSimR::AddDigi(), CbmTrdModuleSimR::AddDigitoBuffer(), CbmTrdModuleSimR::AddDigitoPulseBuffer(), CbmTrdModuleRec2D::BuildHit(), CbmTrdModuleSimR::CheckMulti(), CbmTrdModuleSimR::DistributeCharge(), CbmTrdModuleRecR::FindClusters(), CbmTrdModuleSim2D::FlushBuffer(), GetNcols(), GetNrows(), GetPadRowCol(), CbmTrdModuleSimR::GetTotalSteps(), CbmTrdModuleRecR::IsClusterComplete(), CbmTrdModuleRec2D::LoadDigisRC(), CbmTrdModuleSim2D::MakeDigi(), CbmTrdModuleSimR::MakeDigi(), CbmTrdModuleRecR::MakeHit(), CbmTrdModuleRec2D::MergeHits(), CbmTrdModuleRec2D::PostProcessHits(), CbmTrdModuleSimR::ProcessPulseBuffer(), CbmTrdModuleSim2D::ScanPadPlane(), CbmTrdModuleSimR::ScanPadPlane(), CbmTrdModuleSimR::SetAsicPar(), and SetDigiPar().
|
protected |
Analog to digital conversion for module.
Definition at line 96 of file CbmTrdModuleAbstract.h.
Referenced by SetGainPar().
|
protected |
link to gGeometry for module
Definition at line 97 of file CbmTrdModuleAbstract.h.
Referenced by GetDx(), GetDy(), GetDz(), GetPath(), LocalToMaster(), and SetGeoPar().
|
protected |
layer identifier
Definition at line 89 of file CbmTrdModuleAbstract.h.
Referenced by CbmTrdModuleAbstract(), CbmTrdModuleSim2D::FlushBuffer(), CbmTrdModuleSimR::ScanPadPlane(), and CbmTrdModuleSimR::SetAsicPar().
|
protected |
unique identifier for current module
Definition at line 88 of file CbmTrdModuleAbstract.h.
Referenced by CbmTrdModuleRecR::addClusters(), CbmTrdModuleSimR::AddCrosstalk(), CbmTrdModuleRec2D::AddDigi(), CbmTrdModuleSim2D::AddDigi(), CbmTrdModuleSimR::AddDigi(), CbmTrdModuleSimR::AddDigitoBuffer(), CbmTrdModuleAbstract(), CbmTrdModuleSimR::CheckMulti(), CbmTrdModuleRecR::FindClusters(), CbmTrdModuleSim2D::FlushBuffer(), GetAsicAddress(), CbmTrdModuleRec2D::MakeHit(), CbmTrdModuleRecR::MakeHit(), CbmTrdModuleSimR::ProcessPulseBuffer(), CbmTrdModuleSimR::ScanPadPlane(), CbmTrdModuleSim2D::SetAsicPar(), and CbmTrdModuleSimR::SetAsicPar().
|
protected |
rotation angle for current module
Definition at line 90 of file CbmTrdModuleAbstract.h.
Referenced by CbmTrdModuleAbstract().