17#ifndef ALICEO2_BASE_ALIGNPARAM_H_
18#define ALICEO2_BASE_ALIGNPARAM_H_
38 double x,
double y,
double z,
39 double psi,
double theta,
double phi,
42 AlignParam(
const char* symname,
int algID, TGeoMatrix&
m,
bool global =
true);
45 const std::string&
getSymName()
const {
return mSymName; }
47 double getPhi()
const {
return mPhi; }
48 double getPsi()
const {
return mPsi; }
50 double getX()
const {
return mX; }
51 double getY()
const {
return mY; }
52 double getZ()
const {
return mZ; }
74 void setGlobalParams(
double x,
double y,
double z,
double psi,
double theta,
double phi);
77 void setRotation(
double psi,
double theta,
double phi);
94 bool setLocalParams(
double x,
double y,
double z,
double psi,
double theta,
double phi);
115 int rectify(
double zero = 1e-13);
118 bool matrixToAngles(
const double* rot,
double& psi,
double& theta,
double& phi)
const;
119 void anglesToMatrix(
double psi,
double theta,
double phi,
double* rot)
const;
120 void setMatrixRotation(
double psi,
double theta,
double phi, TGeoHMatrix& dest)
const;
124 std::string mSymName{};
126 int mAlignableID = -1;
bool createLocalMatrix(TGeoHMatrix &m) const
extract local delta matrix
int getAlignableID() const
return alignable entry ID
void setGlobalParams(double x, double y, double z, double psi, double theta, double phi)
================ methods for direct setting of delta params
int rectify(double zero=1e-13)
bool setLocalRotation(double psi, double theta, double phi)
set global delta rotation from the local delta rotation
void anglesToMatrix(double psi, double theta, double phi, double *rot) const
TGeoHMatrix createMatrix() const
extract global delta matrix
void setMatrixRotation(double psi, double theta, double phi, TGeoHMatrix &dest) const
void setRotation(double psi, double theta, double phi)
set global delta rotations angles in radian
void setSymName(const char *m)
set symbolic name of the volume
bool setLocalTranslation(double x, double y, double z)
set global delta translation from the local delta translation
const std::string & getSymName() const
return symbolic name of the volume
double getPhi() const
iparamater's getters
void setMatrixTranslation(double x, double y, double z, TGeoHMatrix &dest) const
bool setLocalParams(double x, double y, double z, double psi, double theta, double phi)
================ methods for setting global delta params from local delta
void setTranslation(double x, double y, double z)
set global delta displacements in cm
bool applyToGeometry() const
apply object to geoemetry
void setAlignableID(int id)
set alignable entry ID
bool matrixToAngles(const double *rot, double &psi, double &theta, double &phi) const
GLdouble GLdouble GLdouble z
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...