#include "AliITSgeomMatrix.h"
#include "AliLog.h"
-typedef enum {kND=-1,kSPD=0, kSDD=1, kSSD=2, kSSDp=3,kSDDp=4} AliITSDetector;
+typedef enum {kND=-1,kSPD=0, kSDD=1, kSSD=2, kSSDp=3,kSDDp=4, kUPG=5} AliITSDetector;
//_______________________________________________________________________
// for Global GEANT coordinate system to the local "Tracking" coordinate
// system of the detector. These are the transformation used by the
// Tracking code.
- Bool_t IsGeantToTracking() const {return ((fTrans&&0xfffe)!= 0);}
+ Bool_t IsGeantToTracking() const {return ((fTrans&0xfffe)!= 0);}
// returns kTRUE if the transformation defined by this class is
// for Global GEANT coordinate system to the local GEANT coordinate system
// of the detector but may have been displaced by some typically small
// amount. These are modified transformation similar to that used by GEANT.
- Bool_t IsGeantToDisplaced() const {return ((fTrans&&0xfffd)!= 0);}
+ Bool_t IsGeantToDisplaced() const {return ((fTrans&0xfffd)!= 0);}
//
// This function returns a pointer to the particular AliITSgeomMatrix
// class for a specific module index.
- AliITSgeomMatrix *GetGeomMatrix(Int_t index){if(index<fGm.GetSize()&&
- index>=0)
+ AliITSgeomMatrix *GetGeomMatrix(Int_t index){if(index<fGm.GetSize()&&index>=0)
return (AliITSgeomMatrix*)(fGm.At(index));else
- Error("GetGeomMatrix","index=%d<0||>=GetSize()=%d",
- index,fGm.GetSize());return 0;}
- AliITSgeomMatrix *GetGeomMatrix(Int_t index)const{if(index<fGm.GetSize()
- &&index>=0)
+ Error("GetGeomMatrix","index=%d<0||>=GetSize()=%d",index,fGm.GetSize());return 0;}
+ AliITSgeomMatrix *GetGeomMatrix(Int_t index)const{if(index<fGm.GetSize()&&index>=0)
return (AliITSgeomMatrix*)(fGm.At(index));else
- Error("GetGeomMatrix","index=%d<0||>=GetSize()=%d",
- index,fGm.GetSize());return 0;}
+ Error("GetGeomMatrix","index=%d<0||>=GetSize()=%d",index,fGm.GetSize());return 0;}
// This function find and return the number of detector types only.
Int_t GetNDetTypes()const{Int_t max;return GetNDetTypes(max);};
// This function find and return the number of detector types and the
for(Int_t i=0;i<3;i++)for(Int_t j=0;j<3;j++) mat[3*i+j] = rot[i][j];}
// This function sets the rotation matrix in a Double
// precision pointer for a given module. mat[i][j] => mat[3*i+j].
- void SetRotMatrix(Int_t index,Double_t *mat){Double_t rot[3][3];
+ void SetRotMatrix(Int_t index,const Double_t *mat){Double_t rot[3][3];
for(Int_t i=0;i<3;i++)for(Int_t j=0;j<3;j++) rot[i][j]=mat[3*i+j];
GetGeomMatrix(index)->SetMatrix(rot);}
// Return the normal for a specific module
// This converts the geometry
void GeantToTracking(const AliITSgeom &source);
// Other routines.
- // This routine prints, to a file, the difference between this class
- // and "other".
- void PrintComparison(FILE *fp,AliITSgeom *other)const;
// This routine prints, to a file, the contents of this class.
void PrintData(FILE *fp,Int_t lay,Int_t lad,Int_t det)const;
// This function prints out this class in a single stream. This steam
// can be read by ReadGeom.
- void PrintGeom(ostream *out)const;
+ // (Coverity warnings) void PrintGeom(ostream *out)const;
//Conversion from det. local coordinates to local ("V2") coordinates
//used for tracking
void DetLToTrackingV2(Int_t md,Float_t xin,Float_t zin,
- Float_t &yout, Float_t &zout);
+ Float_t &yout, Float_t &zout) const ;
void TrackingV2ToDetL(Int_t md,Float_t yin,Float_t zin,
- Float_t &xout,Float_t &zout);
+ Float_t &xout,Float_t &zout) const ;
private:
TString fVersion; // Transformation version.