/// \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
#include <TString.h>
class AliMUONGeometryDetElement;
-class AliMUONGeometryStore;
+
+class AliMpExMap;
class TGeoTranslation;
class TGeoRotation;
{
public:
AliMUONGeometryModuleTransformer(Int_t moduleId);
- AliMUONGeometryModuleTransformer();
+ AliMUONGeometryModuleTransformer(TRootIOCtor* /*ioCtor*/);
virtual ~AliMUONGeometryModuleTransformer();
+ // static methods
+ static TString GetModuleNamePrefix();
+ static TString GetModuleName(Int_t moduleId);
+
// methods
void Global2Local(Int_t detElemId,
Float_t xg, Float_t yg, Float_t zg,
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:
// static data members
- static const TString fgkModuleNamePrefix; /// < Geometry module name prefix
+ static const TString fgkModuleNamePrefix; ///< Geometry module name prefix
// data members
Int_t fModuleId; ///< the module Id
/// 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
};
// inline functions
+/// Return module name prefix
+inline TString
+AliMUONGeometryModuleTransformer::GetModuleNamePrefix()
+{ return fgkModuleNamePrefix; }
+
/// Set the full path of aligned module volume or envelope in geometry
inline void
AliMUONGeometryModuleTransformer::SetVolumePath(const TString& volumePath)
{ return fTransformation; }
/// Return detection elements associated with this module
-inline AliMUONGeometryStore*
+inline AliMpExMap*
AliMUONGeometryModuleTransformer::GetDetElementStore() const
{ return fDetElements; }