Project
Loading...
Searching...
No Matches
o2::trk::GeometryTGeo Class Reference

#include <GeometryTGeo.h>

Inherits o2::detectors::DetMatrixCache.

Public Types

using Mat3D = o2::math_utils::Transform3D
 
- Public Types inherited from o2::detectors::DetMatrixCache
typedef o2::math_utils::Transform3D Mat3D
 
typedef o2::math_utils::Rotation2Df_t Rot2D
 

Public Member Functions

 GeometryTGeo (bool build=false, int loadTrans=0)
 
 ~GeometryTGeo ()
 
void Build (int loadTrans)
 
void fillMatrixCache (int mask)
 
int getNumberOfChips () const
 
int extractNumberOfLayersMLOT ()
 Determines the number of active parts in the Geometry.
 
int extractNumberOfLayersVD () const
 
int extractNumberOfPetalsVD () const
 
int extractNumberOfActivePartsVD () const
 
int extractNumberOfDisksVD () const
 
int extractNumberOfChipsPerPetalVD () const
 
int extractNumberOfStavesMLOT (int lay) const
 
int extractVolumeCopy (const char *name, const char *prefix) const
 Extract number following the prefix in the name string.
 
int getNumberOfLayersMLOT () const
 
int getNumberOffActivePartsVD () const
 
bool isOwner () const
 
void setOwner (bool v)
 
void Print (Option_t *opt="") const
 
void PrintChipID (int index, int subDetID, int petalcase, int disk, int lay, int stave, int indexRetrieved) const
 
int getLayer (int index) const
 
int getStave (int index) const
 
int getSubDetID (int index) const
 
int getPetalCase (int index) const
 
int getDisk (int index) const
 
int getChipIndex (int subDetID, int petalcase, int disk, int lay, int stave) const
 
bool getChipID (int index, int &subDetID, int &petalcase, int &disk, int &lay, int &stave) const
 
int getLastChipIndex (int lay) const
 
int getFirstChipIndex (int lay, int petalcase, int subDetID) const
 
TGeoHMatrix * extractMatrixSensor (int index) const
 
TString getMatrixPath (int index) const
 
- Public Member Functions inherited from o2::detectors::DetMatrixCache
 DetMatrixCache ()=default
 
 DetMatrixCache (const o2::detectors::DetID &id)
 
virtual ~DetMatrixCache ()=default
 this may serve as a base class for detector interface to geometry, make it virtual
 
 DetMatrixCache (const DetMatrixCache &src)=delete
 
DetMatrixCacheoperator= (const DetMatrixCache &geom)=delete
 
const o2::detectors::DetIDgetDetID () const
 
const chargetName () const
 
const MatrixCache< Mat3D > & getCacheT2L () const
 
const MatrixCache< Mat3D > & getCacheT2G () const
 
const MatrixCache< Mat3D > & getCacheL2G () const
 
const MatrixCache< Rot2D > & getCacheT2GRot () const
 
const Mat3DgetMatrixT2L (int sensID) const
 
const Mat3DgetMatrixT2G (int sensID) const
 
const Mat3DgetMatrixL2G (int sensID) const
 
const Rot2DgetMatrixT2GRot (int sensID) const
 
bool isBuilt () const
 
int getSize () const
 
void setSize (int s)
 
MatrixCache< Mat3D > & getCacheT2L ()
 
MatrixCache< Mat3D > & getCacheT2G ()
 
MatrixCache< Mat3D > & getCacheL2G ()
 
MatrixCache< Rot2D > & getCacheT2GRot ()
 
 ClassDef (DetMatrixCache, 1)
 

Static Public Member Functions

static GeometryTGeoInstance ()
 
static const chargetTRKVolPattern ()
 
static const chargetTRKLayerPattern ()
 
static const chargetTRKPetalPattern ()
 
static const chargetTRKPetalDiskPattern ()
 
static const chargetTRKPetalLayerPattern ()
 
static const chargetTRKStavePattern ()
 
static const chargetTRKChipPattern ()
 
static const chargetTRKSensorPattern ()
 
static const chargetTRKWrapVolPattern ()
 
static const charcomposeSymNameTRK (int d)
 
static const charcomposeSymNameLayer (int d, int layer)
 
static const charcomposeSymNameStave (int d, int layer)
 
static const charcomposeSymNameChip (int d, int lr)
 
static const charcomposeSymNameSensor (int d, int layer)
 

Protected Attributes

Int_t mNumberOfLayersMLOT
 number of layers
 
Int_t mNumberOfActivePartsVD
 number of layers
 
Int_t mNumberOfLayersVD
 number of layers
 
Int_t mNumberOfPetalsVD
 number of Petals = chip in each VD layer
 
Int_t mNumberOfDisksVD
 number of Disks = 6
 
std::vector< intmLastChipIndex
 max ID of the detctor in the petal(VD) or layer(MLOT)
 
std::vector< intmLastChipIndexVD
 max ID of the detctor in the layer for the VD
 
std::vector< intmLastChipIndexMLOT
 max ID of the detctor in the layer for the MLOT
 
std::vector< intmNumberOfChipsPerLayerVD
 number of chips per layer VD ( = number of petals)
 
std::vector< intmNumberOfChipsPerLayerMLOT
 number of chips per layer MLOT ( = 1 for the moment)
 
std::vector< intmNumbersOfChipPerDiskVD
 numbersOfChipPerDiskVD
 
std::vector< intmNumberOfChipsPerPetalVD
 numbersOfChipPerPetalVD
 
std::vector< intmNumberOfStaves
 Number Of Staves per layer in ML/OT.
 
std::array< char, MAXLAYERSmLayerToWrapper
 Layer to wrapper correspondence.
 
bool mOwner = true
 

Static Protected Attributes

static constexpr int MAXLAYERS = 20
 max number of active layers
 
static std::string sVolumeName = "TRKV"
 
static std::string sLayerName = "TRKLayer"
 
static std::string sPetalName = "PETALCASE"
 
static std::string sPetalDiskName = "DISK"
 
static std::string sPetalLayerName = "LAYER"
 
static std::string sStaveName = "TRKStave"
 
static std::string sChipName = "TRKChip"
 
static std::string sSensorName = "TRKSensor"
 
static std::string sWrapperVolumeName = "TRKUWrapVol"
 Wrapper volume name.
 

Additional Inherited Members

- Public Attributes inherited from o2::detectors::DetMatrixCache
o2::detectors::DetID mDetID
 detector ID
 
int mSize = 0
 prebooked number of sensors
 
MatrixCache< Mat3DmL2G
 Local to Global matrices.
 
MatrixCache< Mat3DmT2L
 Tracking to Local matrices.
 
MatrixCache< Mat3DmT2G
 Tracking to Global matrices (general case)
 
MatrixCache< Rot2DmT2GRot
 Tracking to Global matrices in case of barrel (simple rotation)
 

Detailed Description

Definition at line 22 of file GeometryTGeo.h.

Member Typedef Documentation

◆ Mat3D

Constructor & Destructor Documentation

◆ GeometryTGeo()

o2::trk::GeometryTGeo::GeometryTGeo ( bool  build = false,
int  loadTrans = 0 
)

Definition at line 42 of file GeometryTGeo.cxx.

◆ ~GeometryTGeo()

o2::trk::GeometryTGeo::~GeometryTGeo ( )

Definition at line 35 of file GeometryTGeo.cxx.

Member Function Documentation

◆ Build()

void o2::trk::GeometryTGeo::Build ( int  loadTrans)

ML and OT are part of TRK as the same detector, without disks

filling the information for the VD

filling the information for the MLOT

temporary, number of chips = number of staves and active parts

Definition at line 54 of file GeometryTGeo.cxx.

◆ composeSymNameChip()

const char * o2::trk::GeometryTGeo::composeSymNameChip ( int  d,
int  lr 
)
static

Definition at line 362 of file GeometryTGeo.cxx.

◆ composeSymNameLayer()

const char * o2::trk::GeometryTGeo::composeSymNameLayer ( int  d,
int  layer 
)
static

Definition at line 352 of file GeometryTGeo.cxx.

◆ composeSymNameSensor()

const char * o2::trk::GeometryTGeo::composeSymNameSensor ( int  d,
int  layer 
)
static

Definition at line 367 of file GeometryTGeo.cxx.

◆ composeSymNameStave()

const char * o2::trk::GeometryTGeo::composeSymNameStave ( int  d,
int  layer 
)
static

Definition at line 357 of file GeometryTGeo.cxx.

◆ composeSymNameTRK()

static const char * o2::trk::GeometryTGeo::composeSymNameTRK ( int  d)
inlinestatic

Definition at line 118 of file GeometryTGeo.h.

◆ extractMatrixSensor()

TGeoHMatrix * o2::trk::GeometryTGeo::extractMatrixSensor ( int  index) const

Get the transformation matrix of the SENSOR (not necessary the same as the chip) for a given chip 'index' by quering the TGeoManager

Definition at line 283 of file GeometryTGeo.cxx.

◆ extractNumberOfActivePartsVD()

int o2::trk::GeometryTGeo::extractNumberOfActivePartsVD ( ) const

Definition at line 434 of file GeometryTGeo.cxx.

◆ extractNumberOfChipsPerPetalVD()

int o2::trk::GeometryTGeo::extractNumberOfChipsPerPetalVD ( ) const

Definition at line 554 of file GeometryTGeo.cxx.

◆ extractNumberOfDisksVD()

int o2::trk::GeometryTGeo::extractNumberOfDisksVD ( ) const

Definition at line 464 of file GeometryTGeo.cxx.

◆ extractNumberOfLayersMLOT()

int o2::trk::GeometryTGeo::extractNumberOfLayersMLOT ( )

Determines the number of active parts in the Geometry.

Definition at line 387 of file GeometryTGeo.cxx.

◆ extractNumberOfLayersVD()

int o2::trk::GeometryTGeo::extractNumberOfLayersVD ( ) const

Definition at line 524 of file GeometryTGeo.cxx.

◆ extractNumberOfPetalsVD()

int o2::trk::GeometryTGeo::extractNumberOfPetalsVD ( ) const

Definition at line 494 of file GeometryTGeo.cxx.

◆ extractNumberOfStavesMLOT()

int o2::trk::GeometryTGeo::extractNumberOfStavesMLOT ( int  lay) const

layer node

Definition at line 584 of file GeometryTGeo.cxx.

◆ extractVolumeCopy()

int o2::trk::GeometryTGeo::extractVolumeCopy ( const char name,
const char prefix 
) const

Extract number following the prefix in the name string.

Definition at line 375 of file GeometryTGeo.cxx.

◆ fillMatrixCache()

void o2::trk::GeometryTGeo::fillMatrixCache ( int  mask)
virtual

here get the matrices for det ID between 0 and 257 (mSize = 258 at the moment)

Implements o2::detectors::DetMatrixCache.

Definition at line 328 of file GeometryTGeo.cxx.

◆ getChipID()

bool o2::trk::GeometryTGeo::getChipID ( int  index,
int subDetID,
int petalcase,
int disk,
int lay,
int stave 
) const

This routine computes subDetID, petal, disk, layer, stave given the chip index number /// TODO: copute also from chip when chips will be available

Parameters
intindex The chip index number, starting from 0
intsubDetID The subdetector ID, 0 for VD, 1 for MLOT
intpetalcase The petal case number for VD, from 0 to 3
intdisk The disk number for VD, from 0 to 5
intlay The layer number. Starting from 0 both for VD and MLOT
intstave The stave number for MLOT. Starting from 0

Definition at line 211 of file GeometryTGeo.cxx.

◆ getChipIndex()

int o2::trk::GeometryTGeo::getChipIndex ( int  subDetID,
int  petalcase,
int  disk,
int  lay,
int  stave 
) const

This routine computes the chip index number from the subDetID, petal, disk, layer, stave /// TODO: retrieve also from chip when chips will be available in substave

Parameters
intsubDetID The subdetector ID, 0 for VD, 1 for MLOT
intpetalcase The petal case number for VD, from 0 to 3
intdisk The disk number for VD, from 0 to 5
intlay The layer number. Starting from 0 both for VD and MLOT
intstave The stave number for MLOT. Starting from 0

Definition at line 196 of file GeometryTGeo.cxx.

◆ getDisk()

int o2::trk::GeometryTGeo::getDisk ( int  index) const

VD

layers

not found or ML/OT

Definition at line 180 of file GeometryTGeo.cxx.

◆ getFirstChipIndex()

int o2::trk::GeometryTGeo::getFirstChipIndex ( int  lay,
int  petalcase,
int  subDetID 
) const
inline

Get the first chip index of the active petal (VD) or layer (MLOT)

Definition at line 101 of file GeometryTGeo.h.

◆ getLastChipIndex()

int o2::trk::GeometryTGeo::getLastChipIndex ( int  lay) const
inline

Definition at line 100 of file GeometryTGeo.h.

◆ getLayer()

int o2::trk::GeometryTGeo::getLayer ( int  index) const

VD

disks

MLOT

numeration of MLOT layesrs starting from 1

-1 if not found

Definition at line 143 of file GeometryTGeo.cxx.

◆ getMatrixPath()

TString o2::trk::GeometryTGeo::getMatrixPath ( int  index) const

dummy path, to be replaced

Definition at line 223 of file GeometryTGeo.cxx.

◆ getNumberOfChips()

int o2::trk::GeometryTGeo::getNumberOfChips ( ) const
inline

Definition at line 53 of file GeometryTGeo.h.

◆ getNumberOffActivePartsVD()

int o2::trk::GeometryTGeo::getNumberOffActivePartsVD ( ) const
inline

Definition at line 68 of file GeometryTGeo.h.

◆ getNumberOfLayersMLOT()

int o2::trk::GeometryTGeo::getNumberOfLayersMLOT ( ) const
inline

Definition at line 67 of file GeometryTGeo.h.

◆ getPetalCase()

int o2::trk::GeometryTGeo::getPetalCase ( int  index) const

Definition at line 125 of file GeometryTGeo.cxx.

◆ getStave()

int o2::trk::GeometryTGeo::getStave ( int  index) const

VD

MLOT

||||

not found

Definition at line 163 of file GeometryTGeo.cxx.

◆ getSubDetID()

int o2::trk::GeometryTGeo::getSubDetID ( int  index) const

not found

Definition at line 114 of file GeometryTGeo.cxx.

◆ getTRKChipPattern()

static const char * o2::trk::GeometryTGeo::getTRKChipPattern ( )
inlinestatic

Definition at line 49 of file GeometryTGeo.h.

◆ getTRKLayerPattern()

static const char * o2::trk::GeometryTGeo::getTRKLayerPattern ( )
inlinestatic

Definition at line 44 of file GeometryTGeo.h.

◆ getTRKPetalDiskPattern()

static const char * o2::trk::GeometryTGeo::getTRKPetalDiskPattern ( )
inlinestatic

Definition at line 46 of file GeometryTGeo.h.

◆ getTRKPetalLayerPattern()

static const char * o2::trk::GeometryTGeo::getTRKPetalLayerPattern ( )
inlinestatic

Definition at line 47 of file GeometryTGeo.h.

◆ getTRKPetalPattern()

static const char * o2::trk::GeometryTGeo::getTRKPetalPattern ( )
inlinestatic

Definition at line 45 of file GeometryTGeo.h.

◆ getTRKSensorPattern()

static const char * o2::trk::GeometryTGeo::getTRKSensorPattern ( )
inlinestatic

Definition at line 50 of file GeometryTGeo.h.

◆ getTRKStavePattern()

static const char * o2::trk::GeometryTGeo::getTRKStavePattern ( )
inlinestatic

Definition at line 48 of file GeometryTGeo.h.

◆ getTRKVolPattern()

static const char * o2::trk::GeometryTGeo::getTRKVolPattern ( )
inlinestatic

Definition at line 43 of file GeometryTGeo.h.

◆ getTRKWrapVolPattern()

static const char * o2::trk::GeometryTGeo::getTRKWrapVolPattern ( )
inlinestatic

Definition at line 51 of file GeometryTGeo.h.

◆ Instance()

static GeometryTGeo * o2::trk::GeometryTGeo::Instance ( )
inlinestatic

Definition at line 36 of file GeometryTGeo.h.

◆ isOwner()

bool o2::trk::GeometryTGeo::isOwner ( ) const
inline

Definition at line 70 of file GeometryTGeo.h.

◆ Print()

void o2::trk::GeometryTGeo::Print ( Option_t *  opt = "") const

Definition at line 626 of file GeometryTGeo.cxx.

◆ PrintChipID()

void o2::trk::GeometryTGeo::PrintChipID ( int  index,
int  subDetID,
int  petalcase,
int  disk,
int  lay,
int  stave,
int  indexRetrieved 
) const

Definition at line 613 of file GeometryTGeo.cxx.

◆ setOwner()

void o2::trk::GeometryTGeo::setOwner ( bool  v)
inline

Definition at line 71 of file GeometryTGeo.h.

Member Data Documentation

◆ MAXLAYERS

constexpr int o2::trk::GeometryTGeo::MAXLAYERS = 20
staticconstexprprotected

max number of active layers

Definition at line 128 of file GeometryTGeo.h.

◆ mLastChipIndex

std::vector<int> o2::trk::GeometryTGeo::mLastChipIndex
protected

max ID of the detctor in the petal(VD) or layer(MLOT)

Definition at line 145 of file GeometryTGeo.h.

◆ mLastChipIndexMLOT

std::vector<int> o2::trk::GeometryTGeo::mLastChipIndexMLOT
protected

max ID of the detctor in the layer for the MLOT

Definition at line 147 of file GeometryTGeo.h.

◆ mLastChipIndexVD

std::vector<int> o2::trk::GeometryTGeo::mLastChipIndexVD
protected

max ID of the detctor in the layer for the VD

Definition at line 146 of file GeometryTGeo.h.

◆ mLayerToWrapper

std::array<char, MAXLAYERS> o2::trk::GeometryTGeo::mLayerToWrapper
protected

Layer to wrapper correspondence.

Definition at line 153 of file GeometryTGeo.h.

◆ mNumberOfActivePartsVD

Int_t o2::trk::GeometryTGeo::mNumberOfActivePartsVD
protected

number of layers

Definition at line 141 of file GeometryTGeo.h.

◆ mNumberOfChipsPerLayerMLOT

std::vector<int> o2::trk::GeometryTGeo::mNumberOfChipsPerLayerMLOT
protected

number of chips per layer MLOT ( = 1 for the moment)

Definition at line 149 of file GeometryTGeo.h.

◆ mNumberOfChipsPerLayerVD

std::vector<int> o2::trk::GeometryTGeo::mNumberOfChipsPerLayerVD
protected

number of chips per layer VD ( = number of petals)

Definition at line 148 of file GeometryTGeo.h.

◆ mNumberOfChipsPerPetalVD

std::vector<int> o2::trk::GeometryTGeo::mNumberOfChipsPerPetalVD
protected

numbersOfChipPerPetalVD

Definition at line 151 of file GeometryTGeo.h.

◆ mNumberOfDisksVD

Int_t o2::trk::GeometryTGeo::mNumberOfDisksVD
protected

number of Disks = 6

Definition at line 144 of file GeometryTGeo.h.

◆ mNumberOfLayersMLOT

Int_t o2::trk::GeometryTGeo::mNumberOfLayersMLOT
protected

number of layers

Definition at line 140 of file GeometryTGeo.h.

◆ mNumberOfLayersVD

Int_t o2::trk::GeometryTGeo::mNumberOfLayersVD
protected

number of layers

Definition at line 142 of file GeometryTGeo.h.

◆ mNumberOfPetalsVD

Int_t o2::trk::GeometryTGeo::mNumberOfPetalsVD
protected

number of Petals = chip in each VD layer

Definition at line 143 of file GeometryTGeo.h.

◆ mNumberOfStaves

std::vector<int> o2::trk::GeometryTGeo::mNumberOfStaves
protected

Number Of Staves per layer in ML/OT.

Definition at line 152 of file GeometryTGeo.h.

◆ mNumbersOfChipPerDiskVD

std::vector<int> o2::trk::GeometryTGeo::mNumbersOfChipPerDiskVD
protected

numbersOfChipPerDiskVD

Definition at line 150 of file GeometryTGeo.h.

◆ mOwner

bool o2::trk::GeometryTGeo::mOwner = true
protected

Definition at line 155 of file GeometryTGeo.h.

◆ sChipName

std::string o2::trk::GeometryTGeo::sChipName = "TRKChip"
staticprotected

Definition at line 136 of file GeometryTGeo.h.

◆ sLayerName

std::string o2::trk::GeometryTGeo::sLayerName = "TRKLayer"
staticprotected

Definition at line 131 of file GeometryTGeo.h.

◆ sPetalDiskName

std::string o2::trk::GeometryTGeo::sPetalDiskName = "DISK"
staticprotected

Definition at line 133 of file GeometryTGeo.h.

◆ sPetalLayerName

std::string o2::trk::GeometryTGeo::sPetalLayerName = "LAYER"
staticprotected

Definition at line 134 of file GeometryTGeo.h.

◆ sPetalName

std::string o2::trk::GeometryTGeo::sPetalName = "PETALCASE"
staticprotected

Definition at line 132 of file GeometryTGeo.h.

◆ sSensorName

std::string o2::trk::GeometryTGeo::sSensorName = "TRKSensor"
staticprotected

Definition at line 137 of file GeometryTGeo.h.

◆ sStaveName

std::string o2::trk::GeometryTGeo::sStaveName = "TRKStave"
staticprotected

Definition at line 135 of file GeometryTGeo.h.

◆ sVolumeName

std::string o2::trk::GeometryTGeo::sVolumeName = "TRKV"
staticprotected

Definition at line 130 of file GeometryTGeo.h.

◆ sWrapperVolumeName

std::string o2::trk::GeometryTGeo::sWrapperVolumeName = "TRKUWrapVol"
staticprotected

Wrapper volume name.

Wrapper volume name, not implemented at the moment.

Definition at line 138 of file GeometryTGeo.h.


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