removed obsolete AliMUONAlignmentRecord classes (AliMillePedeRecord is now used,...
[u/mrichter/AliRoot.git] / MUON / AliMUONGeometryModuleTransformer.h
index 0b567e9..2df899c 100644 (file)
@@ -8,7 +8,7 @@
 /// \class AliMUONGeometryModuleTransformer
 /// \brief Geometry transformer for a detector module
 ///
-/// Class for definition of the trasformation for adetector module
+/// Class for definition of the transformation for a detector module
 /// and its detection elements
 ///
 /// \author Ivana Hrivnacova, IPN Orsay
@@ -20,7 +20,8 @@
 #include <TString.h>
 
 class AliMUONGeometryDetElement;
-class AliMUONGeometryStore;
+
+class AliMpExMap;
 
 class TGeoTranslation;
 class TGeoRotation;
@@ -32,9 +33,13 @@ class AliMUONGeometryModuleTransformer : public TObject
 {
   public:
     AliMUONGeometryModuleTransformer(Int_t moduleId);
-    AliMUONGeometryModuleTransformer();
+    AliMUONGeometryModuleTransformer(TRootIOCtor* /*ioCtor*/);
     virtual ~AliMUONGeometryModuleTransformer();
 
+    // static methods
+    static const TString& GetModuleNamePrefix();
+    static       TString  GetModuleName(Int_t moduleId);
+
     // methods
     void Global2Local(Int_t detElemId,
                  Float_t xg, Float_t yg, Float_t zg, 
@@ -56,29 +61,34 @@ class AliMUONGeometryModuleTransformer : public TObject
  
     // get methods
     Int_t    GetModuleId() const;
+    TString  GetModuleName() const;
     TString  GetVolumePath() const;
     TString  GetVolumeName() const;
     TString  GetMotherVolumeName() const;
 
     const TGeoHMatrix*  GetTransformation() const;    
-
-    AliMUONGeometryStore*       GetDetElementStore() const;
-    AliMUONGeometryDetElement*  GetDetElement(
-                                   Int_t detElemId, Bool_t warn = true) const;    
+    AliMpExMap*         GetDetElementStore() const; 
+    AliMUONGeometryDetElement*  
+                        GetDetElement(Int_t detElemId, Bool_t warn = true) const;    
 
   protected:
+    /// Not implemented
+    AliMUONGeometryModuleTransformer();
+    /// Not implemented
     AliMUONGeometryModuleTransformer(const AliMUONGeometryModuleTransformer& rhs);
+    /// Not implemented
     AliMUONGeometryModuleTransformer& 
       operator = (const AliMUONGeometryModuleTransformer& rhs);
 
   private:
     // data members
     Int_t                 fModuleId;   ///< the module Id
+    TString               fModuleName; ///< the module name
     TString               fVolumePath; ///< \brief the full path of aligned module volume
                                        /// or envelope in geometry
     TGeoHMatrix*          fTransformation;///< \brief the module transformation wrt to top
                                           /// volume (world)
-    AliMUONGeometryStore* fDetElements;   ///< detection elements
+    AliMpExMap*           fDetElements;   ///< detection elements
  
   ClassDef(AliMUONGeometryModuleTransformer,3) // MUON geometry module class
 };
@@ -95,6 +105,11 @@ inline Int_t
 AliMUONGeometryModuleTransformer::GetModuleId() const
 { return fModuleId; }
 
+/// Return module name
+inline TString
+AliMUONGeometryModuleTransformer::GetModuleName() const
+{ return fModuleName; }
+
 /// Return the full path of aligned module volume or envelope in geometry
 inline TString 
 AliMUONGeometryModuleTransformer::GetVolumePath() const
@@ -106,7 +121,7 @@ AliMUONGeometryModuleTransformer::GetTransformation() const
 { return fTransformation; }
 
 /// Return detection elements associated with this module
-inline  AliMUONGeometryStore* 
+inline  AliMpExMap* 
 AliMUONGeometryModuleTransformer::GetDetElementStore() const
 { return fDetElements; }