17#ifndef ALIGNABLESENSOR_H
18#define ALIGNABLESENSOR_H
32class AlignableDetector;
76 bool isSensor()
const override {
return true; }
77 void Print(
const Option_t* opt =
"")
const override;
80 void updateL2GRecoMatrices(
const std::vector<o2::detectors::AlignParam>& algArr,
const TGeoHMatrix* cumulDelta)
override;
Base class of alignable volume.
Collection of auxillary methods.
Timeframe settings Average distance in cm of events merged into Randomize distance around average distance of merged events Simulate correct bunch interactions instead of placing only the average number of events A value[n] sets TFlen for[n] collisions in Number of bunches per trainsort Number of bunch trains Instantaneous interaction rate Do not simulate border Total number of collisions to be placed in the interior of all time Do not select random but walk over array of events in stride steps h Event generator settings h configStandalone Use CPU for GPU Force usage of the specified GPU device no CPU fallback Continue processing after an error s
void addChild(AlignableVolume *) override
const TGeoHMatrix & getMatrixClAlg() const
virtual void updatePointByTrackInfo(AlignmentPoint *pnt, const trackParam_t *t) const
void setMatrixClAlgReco(const TGeoHMatrix &m)
void getModifiedMatrixT2LmodLOC(TGeoHMatrix &matMod, const double *delta) const
const double * getAddError() const
int Compare(const TObject *a) const override
TGeoHMatrix mMatClAlgReco
virtual void dPosTraDParCalib(const AlignmentPoint *pnt, double *deriv, int calibID, const AlignableVolume *parent=nullptr) const
AlignableSensor()=default
virtual void dPosTraDParGeomTRA(const AlignmentPoint *pnt, double *deriv) const
bool IsSortable() const override
AlignableDetector * getDetector() const
~AlignableSensor() override=default
virtual void prepareMatrixClAlg()
void updateL2GRecoMatrices(const std::vector< o2::detectors::AlignParam > &algArr, const TGeoHMatrix *cumulDelta) override
void Print(const Option_t *opt="") const override
void setMatrixClAlg(const TGeoHMatrix &m)
bool isSensor() const override
virtual void prepareMatrixClAlgReco()
virtual void dPosTraDParGeomLOC(const AlignmentPoint *pnt, double *deriv) const
AlignableSensor(const AlignableSensor &)
void setAddError(double y, double z)
void setDetector(AlignableDetector *det)
virtual void dPosTraDParGeom(const AlignmentPoint *pnt, double *deriv, const AlignableVolume *parent=nullptr) const
void getModifiedMatrixT2LmodTRA(TGeoHMatrix &matMod, const double *delta) const
const TGeoHMatrix & getMatrixClAlgReco() const
AlignableSensor & operator=(const AlignableSensor &)
int finalizeStat() override
virtual void applyAlignmentFromMPSol()
ClassDefOverride(AlignableVolume, 2)
GLuint const GLchar * name
GLboolean GLboolean GLboolean GLboolean a
GLdouble GLdouble GLdouble z
typename track::TrackParametrizationWithError< double > trackParam_t
void align(gsl::span< ElinkEncoder< BareFormat, CHARGESUM > > elinks)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...