Warning, file /include/root/TRotMatrix.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef ROOT_TRotMatrix
0013 #define ROOT_TRotMatrix
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025 #include "TNamed.h"
0026
0027
0028 class TRotMatrix : public TNamed {
0029 private:
0030 virtual void SetReflection();
0031
0032 protected:
0033 Int_t fNumber;
0034 Int_t fType;
0035 Double_t fTheta;
0036 Double_t fPhi;
0037 Double_t fPsi;
0038 Double_t fMatrix[9];
0039
0040 public:
0041
0042 enum {
0043 kReflection = BIT(23)
0044 };
0045
0046 TRotMatrix();
0047 TRotMatrix(const char *name, const char *title, Double_t *matrix);
0048 TRotMatrix(const char *name, const char *title, Double_t theta, Double_t phi, Double_t psi);
0049 TRotMatrix(const char *name, const char *title, Double_t theta1, Double_t phi1,
0050 Double_t theta2, Double_t phi2,
0051 Double_t theta3, Double_t phi3);
0052 ~TRotMatrix() override;
0053 virtual Double_t Determinant() const ;
0054 virtual Double_t* GetMatrix() {return &fMatrix[0];}
0055 virtual Int_t GetNumber() const {return fNumber;}
0056 virtual Int_t GetType() const {return fType;}
0057 virtual Double_t GetTheta() const {return fTheta;}
0058 virtual Double_t GetPhi() const {return fPhi;}
0059 virtual Double_t GetPsi() const {return fPsi;}
0060 virtual Double_t* GetGLMatrix(Double_t *rGLMatrix) const ;
0061 virtual Bool_t IsReflection() const {return TestBit(kReflection);}
0062 virtual const Double_t* SetAngles(Double_t theta1, Double_t phi1,Double_t theta2, Double_t phi2, Double_t theta3, Double_t phi3);
0063 virtual void SetMatrix(const Double_t *matrix);
0064 void SetName(const char *name) override;
0065
0066 ClassDefOverride(TRotMatrix,2)
0067 };
0068
0069 inline void TRotMatrix::SetName(const char *) { }
0070
0071 #endif