|
CbmRoot
|
Class representing an element of the STS setup. More...
#include <CbmStsElement.h>
Public Member Functions | |
| CbmStsElement () | |
| CbmStsElement (Int_t address, Int_t level, TGeoPhysicalNode *node=nullptr, CbmStsElement *mother=nullptr) | |
| virtual | ~CbmStsElement () |
| Int_t | GetAddress () const |
| CbmStsElement * | GetDaughter (Int_t index) const |
| Int_t | GetIndex () const |
| EStsElementLevel | GetLevel () const |
| CbmStsElement * | GetMother () const |
| Int_t | GetNofDaughters () const |
| Int_t | GetNofElements (Int_t level) const |
| TGeoPhysicalNode * | GetPnode () const |
| virtual void | InitDaughters () |
| void | SetMother (CbmStsElement *mother) |
| virtual void | Print (Option_t *opt="") const |
Static Public Member Functions | |
| static TString | ConstructName (Int_t address, EStsElementLevel level) |
Protected Member Functions | |
| void | ConstructName () |
| void | SetLevel (Int_t level) |
Protected Attributes | |
| Int_t | fAddress |
| Unique element address. | |
| EStsElementLevel | fLevel |
| Level in hierarchy. | |
| TGeoPhysicalNode * | fNode |
| Pointer to geometry. | |
| std::vector< CbmStsElement * > | fDaughters |
| Array of daughters. | |
| CbmStsElement * | fMother |
| Mother element. | |
Private Member Functions | |
| CbmStsElement (const CbmStsElement &)=delete | |
| CbmStsElement & | operator= (const CbmStsElement &)=delete |
| ClassDef (CbmStsElement, 2) | |
Class representing an element of the STS setup.
A CbmStsElement represents an element in the STS setup hierarchy (e.g., station, ladder, module,...). It has a unique address, a level (enum CbmStsElementLevel), a pointer to a TGeoPhysicalNode and an array of daughter elements. It is thus an alignable object.
Definition at line 35 of file CbmStsElement.h.
| CbmStsElement::CbmStsElement | ( | ) |
Default constructor
Definition at line 30 of file CbmStsElement.cxx.
References fAddress, fDaughters, fLevel, fMother, fNode, and kStsNofLevels.
Referenced by CbmStsElement(), CbmStsElement(), CbmStsModule::CbmStsModule(), CbmStsSensor::CbmStsSensor(), CbmStsSetup::CbmStsSetup(), ClassDef(), CbmStsSetup::CreateStations(), GetDaughter(), CbmStsSetup::GetElement(), GetMother(), CbmStsSetup::GetStationNumber(), CbmStsSetup::Init(), InitDaughters(), operator=(), and SetMother().
| CbmStsElement::CbmStsElement | ( | Int_t | address, |
| Int_t | level, | ||
| TGeoPhysicalNode * | node = nullptr, | ||
| CbmStsElement * | mother = nullptr ) |
Standard constructor
| address | Unique element address |
| level | Element level |
| node | Pointer to geometry node |
| mother | Pointer to mother element |
Definition at line 43 of file CbmStsElement.cxx.
References CbmStsElement(), ConstructName(), fAddress, fDaughters, fLevel, fMother, fNode, kStsSystem, and SetLevel().
|
inlinevirtual |
Destructor
Definition at line 52 of file CbmStsElement.h.
|
privatedelete |
References CbmStsElement().
|
private |
References CbmStsElement().
|
protected |
Construct the name of the element
Definition at line 58 of file CbmStsElement.cxx.
References fAddress, fMother, CbmStsAddress::GetElementId(), GetLevel(), kStsHalfLadder, kStsLadder, kStsModule, kStsSensor, kStsSystem, and kStsUnit.
Referenced by CbmStsElement(), and CbmStsSensor::SetAddress().
|
static |
Construct the element name from the address (static)
| address | Unique element address |
| level | Element level (unit, ladder, etc.) |
Definition at line 95 of file CbmStsElement.cxx.
References CbmStsAddress::GetElementId(), kStsHalfLadder, kStsLadder, kStsModule, kStsSensor, and kStsUnit.
|
inline |
Get unique address
Definition at line 65 of file CbmStsElement.h.
References fAddress.
Referenced by CbmRecoSts::CreateModules(), CbmTaskStsHitFinderParWrite::CreateModules(), CbmStsSetup::Init(), CbmStsMC::Initialize(), CbmStsDigitize::InitModules(), CbmStsDigitize::InitParams(), CbmStsDigitizePixel::InitParams(), CbmStsDigitize::InitSensors(), and CbmStsAnaBase::LoadSetup().
| CbmStsElement * CbmStsElement::GetDaughter | ( | Int_t | index | ) | const |
Get a daughter element
| index | Index of daughter element |
Definition at line 126 of file CbmStsElement.cxx.
References CbmStsElement(), fDaughters, and GetNofDaughters().
Referenced by CbmStsStation::CheckSensorProperties(), CbmRecoSts::CreateModules(), CbmTaskStsHitFinderParWrite::CreateModules(), CbmStsSetup::CreateStations(), CbmStsDigitizeQa::Finish(), CbmStsSetup::GetElement(), GetNofElements(), CbmStsDigitizeQa::Init(), CbmStsSetup::Init(), CbmStsMC::Initialize(), CbmStsAnaBase::LoadSetup(), Print(), and CbmStsDigitizeQa::ProcessAngles().
|
inline |
Get the index within the mother element
Definition at line 77 of file CbmStsElement.h.
References fAddress, fLevel, and CbmStsAddress::GetElementId().
Referenced by cbm::sts::RecoSetupUnitFactory::CreateStationIdMap(), and CbmStsSetup::CreateStations().
|
inline |
Get the element level
Definition at line 83 of file CbmStsElement.h.
References fLevel.
Referenced by CbmStsStation::AddLadder(), and ConstructName().
|
inline |
Get the mother element
Definition at line 87 of file CbmStsElement.h.
References CbmStsElement(), and fMother.
Referenced by cbm::sts::RecoSetupUnitFactory::CreateStationIdMap(), and CbmStsDigitize::InitSensors().
|
inline |
Get number of daughter elements
Definition at line 93 of file CbmStsElement.h.
References fDaughters.
Referenced by CbmStsStation::CheckSensorProperties(), CbmRecoSts::CreateModules(), CbmTaskStsHitFinderParWrite::CreateModules(), CbmStsSetup::CreateStations(), CbmStsDigitizeQa::Finish(), GetDaughter(), GetNofElements(), CbmStsDigitizeQa::Init(), CbmStsSetup::Init(), InitDaughters(), CbmStsModule::InitDaughters(), CbmStsMC::Initialize(), CbmStsAnaBase::LoadSetup(), Print(), and CbmStsDigitizeQa::ProcessAngles().
Get number of elements at given level
| level | Element level (see enum EStsElementLevel) |
Definition at line 135 of file CbmStsElement.cxx.
References fLevel, GetDaughter(), GetNofDaughters(), and GetNofElements().
Referenced by GetNofElements(), and CbmStsSetup::Init().
|
inline |
Definition at line 104 of file CbmStsElement.h.
References fNode.
Referenced by CbmStsStation::CheckSensorProperties(), CbmRecoSts::CreateModules(), CbmTaskStsHitFinderParWrite::CreateModules(), CbmStsSetup::CreateStations(), CbmStsSetup::GetStationNumber(), CbmStsMC::Initialize(), CbmStsDigitize::InitParams(), CbmStsDigitizePixel::InitParams(), CbmStsDigitize::InitSensors(), and CbmStsAnaBase::LoadSetup().
|
virtual |
Initialise daughters from geometry
Reimplemented in CbmStsModule.
Definition at line 152 of file CbmStsElement.cxx.
References CbmStsElement(), fAddress, fDaughters, fLevel, fNode, GetNofDaughters(), InitDaughters(), CbmStsSetup::Instance(), kStsHalfLadder, kStsSensor, and CbmStsAddress::SetElementId().
Referenced by InitDaughters(), CbmStsSetup::ReadGeometry(), and CbmStsSetup::ReadGeometry().
|
privatedelete |
References CbmStsElement().
|
virtual |
Definition at line 200 of file CbmStsElement.cxx.
References fAddress, fNode, GetDaughter(), GetNofDaughters(), and Print().
Referenced by Print().
|
protected |
Set the element level from integer Protection against being out of range.
| level | Element level |
Definition at line 213 of file CbmStsElement.cxx.
References fLevel, kStsHalfLadder, kStsLadder, kStsModule, kStsSensor, kStsSystem, and kStsUnit.
Referenced by CbmStsElement().
|
inline |
Set the mother element
| Pointer | to mother element |
Definition at line 114 of file CbmStsElement.h.
References CbmStsElement(), and fMother.
|
protected |
Unique element address.
Definition at line 122 of file CbmStsElement.h.
Referenced by CbmStsElement(), CbmStsElement(), ConstructName(), GetAddress(), CbmStsSetup::GetElement(), GetIndex(), CbmStsSensor::GetSensorId(), CbmStsSetup::Init(), InitDaughters(), CbmStsModule::InitDaughters(), Print(), CbmStsSensor::SetAddress(), CbmStsModule::ToString(), and CbmStsSensor::ToString().
|
protected |
Array of daughters.
Definition at line 125 of file CbmStsElement.h.
Referenced by CbmStsElement(), CbmStsElement(), GetDaughter(), GetNofDaughters(), InitDaughters(), and CbmStsModule::InitDaughters().
|
protected |
Level in hierarchy.
Definition at line 123 of file CbmStsElement.h.
Referenced by CbmStsElement(), CbmStsElement(), GetIndex(), GetLevel(), GetNofElements(), InitDaughters(), and SetLevel().
|
protected |
Mother element.
Definition at line 126 of file CbmStsElement.h.
Referenced by CbmStsElement(), CbmStsElement(), ConstructName(), GetMother(), and SetMother().
|
protected |
Pointer to geometry.
Definition at line 124 of file CbmStsElement.h.
Referenced by CbmStsElement(), CbmStsElement(), CbmStsSensor::GetNode(), GetPnode(), InitDaughters(), CbmStsModule::InitDaughters(), Print(), CbmStsSetup::ReadGeometry(), CbmStsSetup::ReadGeometry(), and CbmStsSensor::SetNode().