]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliGeomManager.h
add explicit validation of profiles in Preprocessor before trying to add to them
[u/mrichter/AliRoot.git] / STEER / AliGeomManager.h
index 7ae62f2eeaaaa75b7019d4941e783560f28efd4b..63b62078af15a26e71f15bc16f9ae3d7a8711c1c 100644 (file)
@@ -19,7 +19,6 @@
 class TGeoManager;
 class TGeoPNEntry;
 class TGeoHMatrix;
-class TGeoNode;
 class TObjArray;
 
 class AliAlignObj;
@@ -80,7 +79,7 @@ public:
   static Bool_t GetTrackingMatrix(Int_t index, TGeoHMatrix &m);
 
   static void        LoadGeometry(const char *geomFileName = NULL);
-  static void        SetGeometry(TGeoManager *geom);
+  static void        SetGeometry(TGeoManager * const geom);
   static void        CheckOverlapsOverPNs(Double_t threshold);  
 
   static Bool_t         ApplyAlignObjsToGeom(TObjArray& alObjArray, Bool_t ovlpcheck=kFALSE);
@@ -97,7 +96,7 @@ public:
   static Bool_t         ApplyAlignObjsFromCDB(const char* AlDetsList);
   static Bool_t         LoadAlignObjsFromCDBSingleDet(const char* detName, TObjArray& alignObjArray);
   static Bool_t         CheckSymNamesLUT(const char* detsToBeChecked);
-  static Int_t          CheckOverlapsExtrusions(TGeoNode* start, Double_t threshold=0.01);
+  static Int_t          GetNalignable(const char* module);
 
   ~AliGeomManager();
 
@@ -106,15 +105,17 @@ public:
   AliGeomManager(const AliGeomManager&);
   AliGeomManager& operator=(const AliGeomManager&);
 
-  static TGeoHMatrix* GetMatrix(TGeoPNEntry* pne);
-  static TGeoHMatrix* GetOrigGlobalMatrix(TGeoPNEntry* pne);
+  static TGeoHMatrix* GetMatrix(TGeoPNEntry * const pne);
+  static TGeoHMatrix* GetOrigGlobalMatrix(TGeoPNEntry * const pne);
   static Bool_t       GetOrigGlobalMatrixFromPath(const char *path, TGeoHMatrix &m);
 
   static TGeoPNEntry* GetPNEntry(Int_t index);
   static TGeoPNEntry* GetPNEntry(ELayerID layerId, Int_t modId);
 
+  static void        ResetPNEntriesLUT();
   static void        InitAlignObjFromGeometry();
   static void        InitPNEntriesLUT();
+  static void        InitNalignable();
 
   static TGeoManager* fgGeometry;
 
@@ -122,8 +123,11 @@ public:
   static const char* fgLayerName[kLastLayer - kFirstLayer]; // Name of layers
   static TGeoPNEntry** fgPNEntry[kLastLayer - kFirstLayer]; // TGeoPNEntries
   static AliAlignObj** fgAlignObjs[kLastLayer - kFirstLayer]; // Alignment objects
+  static const Int_t   fgkNDetectors = 15;              // number of detectors
+  static const char *  fgkDetectorName[fgkNDetectors] ; // name of detectors
+  static Int_t       fgNalignable[fgkNDetectors];
 
-  ClassDef(AliGeomManager, 0);
+  ClassDef(AliGeomManager, 0); // Manager of geometry information for alignment
 };
 
 #endif