-//
- // Will define fShape if it isn't already defined.
- void DefineShapes(const Int_t size=4)
- {if(fShape==0) fShape = new TObjArray(size);else fShape->Expand(size);}
- // this function returns a pointer to the class decribing a particluar
- // detectory type based on AliITSDetector value. This will return a pointer
- // to one of the classes AliITSgeomSPD, AliITSgeomSDD, or AliITSgeomSSD,
- // for example.
- virtual TObject *GetShape(const AliITSDetector idet)
- {return fShape->At((Int_t)idet);};
- // This function returns a pointer to the class describing the
- // detector for a particular module index. This will return a pointer
- // to one of the classes AliITSgeomSPD, AliITSgeomSDD, or AliITSgeomSSD,
- // for example.
- virtual TObject *GetShape(const Int_t index){
- return fShape->At(GetGeomMatrix(index)->
- GetDetectorIndex());}
- // This function returns a pointer to the class describing the
- // detector for a particular layer ladder and detector numbers. This
- // will return a pointer to one of the classes AliITSgeomSPD,
- // AliITSgeomSDD, or AliITSgeomSSD, for example.
- virtual TObject *GetShape(const Int_t lay,const Int_t lad,const Int_t det)
- {return GetShape(GetModuleIndex(lay,lad,det));}
-//
-// Setters
+ // 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,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
+ void GetGlobalNormal(Int_t index,Double_t n[3]){
+ GetGeomMatrix(index)->GetGlobalNormal(n[0],n[1],n[2]);}
+ //
+ //
+ // Setters