16#ifndef ALICEO2_MFT_ALIGN_SENSOR_HELPER_H
17#define ALICEO2_MFT_ALIGN_SENSOR_HELPER_H
22#include <TGeoMatrix.h>
29#include "MFTBase/GeometryTGeo.h"
Class handling both virtual segmentation and real volumes.
static constexpr int NChips
o2::math_utils::Point3D< double > mTranslation
coordinates of the translation between the local system origin (the center of the sensor) and the glo...
UShort_t mTransceiver
transceiver id to which the sensor is connected in the zone [0, 24]
double translateY() const
return the y component of the translation in the sensor transform
TString geoSymbolicName()
return the geo symbolic name for this sensor
AlignSensorHelper()
constructor with a pointer to the geometry
UShort_t mConnector
connector index to which the ladder is plugged in the zone [0, 4]
std::array< TString, mNumberOfSensors > mSymNames
void setGeometry()
set pointer to geometry that should already have done fillMatrixCache()
double angleRz() const
return the rotation angle w.r.t. global z-axis in the sensor transform
UShort_t disk() const
return the disk number to which belongs the sensor
UShort_t transceiver() const
return the transceiver on the RU for this sensor
UShort_t layer() const
return the layer number to which belongs the sensor
UShort_t mLayer
layer id [0, 9]
double translateX() const
return the x component of the translation in the sensor transform
double mRx
array of symbolic names of all sensors
void resetSensorTransformInfo()
reset all sensor transform related variables
bool isTransformExtracted() const
return the status of the sensor transform extraction
static constexpr int mNumberOfSensors
Total number of sensors (detection elements) in the MFT.
void setSymName()
set the symbolic name of this sensor in the geometry
void setSensorOnlyInfo(const int chipIndex)
set the studied sensor
double mRz
rotation angle aroung global z-axis (radian)
UShort_t mChipIndexOnLadder
sensor index within the ladder [0, 4]
TString mGeoSymbolicName
symbolic name of this sensor in the geometry
double sinRx() const
return the sin, cos of the rotation angle w.r.t. x-axis
UShort_t connector() const
return the connector to which the ladder is plugged
UShort_t mHalf
half id [0, 1]
bool setSensor(const int chipIndex)
set the studied sensor
TGeoHMatrix mTransform
sensor transformation matrix L2G
bool mIsTransformExtracted
boolean used to check if the sensor transform was successfully extracted from geometry
UShort_t chipIndexOnLadder() const
return sensor index within the ladder [0, 4]
Int_t sensorUid() const
return the ALICE global unique id of the sensor
void extractSensorTransform()
init the matrix that stores the sensor transform L2G and extract its components
int getChipIdGeoFromRO(const int chipIdRO)
return chip id Geo from a given chip id RO
UShort_t half() const
return the half number to which belongs the sensor
Int_t mChipUniqueId
ALICE global unique id of the sensor.
double mRy
rotation angle aroung global y-axis (radian)
void builSymNames()
build array of symbolic names of all sensors
double sinRy() const
return the sin, cos of the rotation angle w.r.t. y-axis
UShort_t mDisk
disk id [0, 4]
void setSensorUid(const int chipIndex)
set the ALICE global unique id of the sensor
double angleRy() const
return the rotation angle w.r.t. global y-axis in the sensor transform
UShort_t mChipIndexInMft
sensor sw index within the MFT [0, 935]
double translateZ() const
return the z component of the translation in the sensor transform
std::stringstream getSensorFullName(bool wSymName=true)
return a stringstream filled with the sensor info
UShort_t mZone
zone id [0,3]
double angleRx() const
return the rotation angle w.r.t. global x-axis in the sensor transform
UShort_t zone() const
return the zone to which belongs the sensor
double sinRz() const
return the sin, cos of the rotation angle w.r.t. z-axis
UShort_t chipIndexInMft() const
return sensor sw index within the MFT [0, 935]
virtual ~AlignSensorHelper()=default
default destructor
o2::mft::GeometryTGeo * mGeometry
MFT geometry.
ClassDef(AlignSensorHelper, 0)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...