merging RecPoints and ClustersV2. All ClusterFinders produce AliITSRecPoints objects...
[u/mrichter/AliRoot.git] / ITS / AliITSgeom.h
index cadb61d..f231dce 100644 (file)
@@ -90,7 +90,7 @@ class AliITSgeom : public TObject {
     Int_t GetModuleType(Int_t index){
                           return GetGeomMatrix(index)->GetDetectorIndex();}
     // Returns the detector type as a string
-    Char_t * GetModuleTypeName(Int_t index){switch(GetModuleType(index)) {
+    const char * GetModuleTypeName(Int_t index){switch(GetModuleType(index)) {
     case kSPD: return "kSPD";case kSDD: return "kSDD";case kSSD: return "kSSD";
     case kSSDp: return"kSSDp";case kSDDp: return "kSDDp"; default: return "";}}
 //
@@ -219,6 +219,12 @@ class AliITSgeom : public TObject {
           Double_t rot[3][3];
          GetGeomMatrix(index)->GetMatrix(rot);
           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];
+          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);}
+
 //
     //     Will define fShape if it isn't already defined.
     void DefineShapes(Int_t size=4)
@@ -727,6 +733,13 @@ class AliITSgeom : public TObject {
     // This function reads in that single steam printed out by PrintGeom.
     ifstream &ReadGeom(ifstream &in);
 
+    //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); 
+
+    void TrackingV2ToDetL(Int_t md,Float_t yin,Float_t zin,Float_t &xout,Float_t &zout);
+
  private:
     char       fVersion[20];// Transformation version.
     Int_t      fTrans;   // Flag to keep track of which transformation