ESD file is added to the list of proof output files. It is then automatically merged...
[u/mrichter/AliRoot.git] / MUON / AliMUONGeometry.h
CommitLineData
75678bb3 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
4// $Id$
5
6/// \ingroup geometry
7/// \class AliMUONGeometry
8/// \brief Container class for geometry modules
9///
a9aad96e 10/// \author Ivana Hrivnacova, IPN Orsay
75678bb3 11
12#ifndef ALI_MUON_GEOMETRY_H
13#define ALI_MUON_GEOMETRY_H
14
15#include <TObject.h>
16#include <TGeoMatrix.h>
17
75678bb3 18class AliMUONGeometryModule;
19class AliMUONGeometryTransformer;
20
7ecf374b 21class TObjArray;
22
75678bb3 23class AliMUONGeometry : public TObject
24{
25 public:
26 AliMUONGeometry(Bool_t isOwner);
27 AliMUONGeometry();
28 virtual ~AliMUONGeometry();
29
30 // methods
31 void AddModule(AliMUONGeometryModule* module);
32
33 Bool_t ReadSVMap(const TString& fileName);
34 Bool_t WriteSVMap(const TString& fileName) const;
35
75678bb3 36 // get methods
37 const AliMUONGeometryModule* GetModule(
38 Int_t index, Bool_t warn = true) const;
39
40 const AliMUONGeometryModule* GetModuleByDEId(
41 Int_t detElemId, Bool_t warn = true) const;
42
43 AliMUONGeometryTransformer* GetTransformer() const;
44
45
46 protected:
71a2d3aa 47 /// Not implemented
75678bb3 48 AliMUONGeometry(const AliMUONGeometry& right);
71a2d3aa 49 /// Not implemented
75678bb3 50 AliMUONGeometry& operator = (const AliMUONGeometry& right);
51
52 private:
53 //methods
54 TString ComposePath(const TString& volName, Int_t copyNo) const;
55
56 void FillData3(const TString& sensVolumePath, Int_t detElemId);
57 TString ReadData3(ifstream& in);
58 void WriteData3(ofstream& out) const;
59
60 // data members
829425a5 61 TObjArray* fModules; ///< Array of geometry modules
62 AliMUONGeometryTransformer* fTransformer; ///< Geometry transformer
75678bb3 63
64 ClassDef(AliMUONGeometry,1) // Geometry parametrisation
65};
66
a9aad96e 67/// Return geometry transformer
75678bb3 68inline AliMUONGeometryTransformer* AliMUONGeometry::GetTransformer() const
69{ return fTransformer; }
70
71#endif //ALI_MUON_GEOMETRY_H
72
73
74
75
76
77
78