1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
7 /// \class AliMUONSegFactoryV2
8 /// \brief Factory for muon segmentations
10 /// New class separated from AliMUONFactoryV2 in order to get
11 /// building of segmentations independent from AliMUON and AliMUONChamber
14 #ifndef ALI_MUON_SEG_FACTORY_V2_H
15 #define ALI_MUON_SEG_FACTORY_V2_H
19 class AliMUONSegmentation;
20 class AliMUONGeometryTransformer;
22 class AliMUONSegFactoryV2 : public TNamed {
25 AliMUONSegFactoryV2(const char* name);
26 AliMUONSegFactoryV2();
27 virtual ~AliMUONSegFactoryV2();
30 void Build(const AliMUONGeometryTransformer* geometry);
31 void BuildStation(const AliMUONGeometryTransformer*, Int_t stationNumber);
34 AliMUONSegmentation* GetSegmentation() const;
37 AliMUONSegFactoryV2(const AliMUONSegFactoryV2& rhs);
38 AliMUONSegFactoryV2& operator=(const AliMUONSegFactoryV2& rhs);
41 Bool_t IsGeometryDefined(Int_t ichamber);
51 AliMUONSegmentation* fSegmentation; // Segmentation container
52 const AliMUONGeometryTransformer* fkGeomTransformer; // Geometry parametrisation
54 ClassDef(AliMUONSegFactoryV2,0) // MUON Factory for Chambers and Segmentation
59 inline AliMUONSegmentation* AliMUONSegFactoryV2::GetSegmentation() const
60 { return fSegmentation; }
63 #endif //ALI_MUON_SEG_FACTORY_V3_H