AliRoot Core  ee782a0 (ee782a0)
AliAlignObjMatrix.h
Go to the documentation of this file.
1 #ifndef ALIALIGNOBJMATRIX_H
2 #define ALIALIGNOBJMATRIX_H
3 
4 /**************************************************************************
5  * AliAlignObjMatrix: derived alignment class storing alignment *
6  * information for a single volume in form of TGeoHMatrix, which *
7  * includes the information for a translation, a rotation and a scale *
8  *************************************************************************/
9 #include "TObject.h"
10 #include "TString.h"
11 #include "TGeoMatrix.h"
12 
13 #include "AliAlignObj.h"
14 
16  public:
18  AliAlignObjMatrix(const char* symname, UShort_t volUId, Double_t x, Double_t y, Double_t z, Double_t psi, Double_t theta, Double_t phi, Bool_t global);
19  AliAlignObjMatrix(const char* symname, UShort_t volUId, TGeoMatrix& m, Bool_t global);
20  AliAlignObjMatrix(const AliAlignObj& theAlignObj);
21  AliAlignObjMatrix& operator= (const AliAlignObj& theAlignObj);
22  virtual ~AliAlignObjMatrix();
23 
24  //Setters
25  virtual void SetTranslation(Double_t x, Double_t y, Double_t z);
26  virtual void SetTranslation(const TGeoMatrix& m);
27  virtual void SetRotation(Double_t psi, Double_t theta, Double_t phi);
28  virtual Bool_t SetRotation(const TGeoMatrix& m);
29 
30  //Getters
31  virtual void GetTranslation(Double_t* tr) const;
32  virtual Bool_t GetAngles(Double_t* angles) const;
33  virtual void GetMatrix(TGeoHMatrix& m) const;
34 
35  virtual AliAlignObj& Inverse() const;
36 
37  protected:
38  TGeoHMatrix fMatrix; // Transformation matrix
39 
40  ClassDef(AliAlignObjMatrix, 1)
41 };
42 
43 #endif
virtual AliAlignObj & Inverse() const
AliAlignObjMatrix & operator=(const AliAlignObj &theAlignObj)
virtual void GetMatrix(TGeoHMatrix &m) const
virtual void SetTranslation(Double_t x, Double_t y, Double_t z)
virtual void GetTranslation(Double_t *tr) const
virtual void SetRotation(Double_t psi, Double_t theta, Double_t phi)
virtual Bool_t GetAngles(Double_t *angles) const