1 #ifndef ALI_MP_SEG_FACTORY_H
2 #define ALI_MP_SEG_FACTORY_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 /// \ingroup management
10 /// \class AliMpSegFactory
11 /// \brief The factory for building mapping segmentations
13 /// The factory does not delete the created segmentation objects.
14 /// They have to be deleted in the client code.
15 /// As the same segmentation objects can be shared with more detection elements,
16 /// the class provides Clear() method for a safe deleting.
18 /// Authors: Ivana Hrivnacova, IPN Orsay
24 #ifndef ALI_MP_STRING_OBJ_MAP_H
25 # include "AliMpStringObjMap.h"
29 class AliMpVSegmentation;
31 class AliMpSegFactory : public TObject {
35 virtual ~AliMpSegFactory();
38 AliMpVSegmentation* CreateMpSegmentation(
39 Int_t detElemId, Int_t cath);
41 AliMpVSegmentation* CreateMpSegmentationByElectronics(
42 Int_t detElemId, Int_t elCardID);
44 void DeleteSegmentations();
47 AliMpSegFactory(const AliMpSegFactory& rhs);
48 AliMpSegFactory& operator=(const AliMpSegFactory& rhs);
51 AliMpExMap* FillMpMap(Int_t detElemId);
55 AliMpStringObjMap fMpSegmentations;// Map of mapping segmentations to DE names
56 AliMpExMap* fMpMap; // Map of el. cards IDs to segmentations
58 ClassDef(AliMpSegFactory,0) // MUON Factory for Chambers and Segmentation
61 #endif //ALI_MP_SEG_FACTORY_H