]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONSegmentationManager.h
BuildStation6 made consistent with AliMUONFactoryV2
[u/mrichter/AliRoot.git] / MUON / AliMUONSegmentationManager.h
1 #ifndef ALIMUONSEGMENTATIONMANAGER_H
2 #define ALIMUONSEGMENTATIONMANAGER_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 /// \ingroup base
10 /// \class AliMUONSegmentationManager
11 /// \brief Segmentation manager
12
13 #ifndef ROOT_TObject
14 #include "TObject.h"
15 #endif
16
17 #ifndef ROOT_TExMap
18 #include "TExMap.h"
19 #endif
20
21 #include "AliMpPlaneType.h"
22
23 class AliMpSlat;
24 class AliMpVSegmentation;
25
26 class AliMUONSegmentationManager : public TObject
27 {
28 public:
29   AliMUONSegmentationManager();
30   virtual ~AliMUONSegmentationManager();
31
32   static Bool_t IsValidDetElemId(Int_t detElemId);
33
34   static AliMpVSegmentation* Segmentation(Int_t detElemId,
35                                           AliMpPlaneType planeType);
36
37 private:
38
39   static const char* SlatType(Int_t detElemId);
40   
41   static AliMpSlat* ReadSlat(Int_t detElemId, AliMpPlaneType planeType);
42   
43   static bool ReadDetElemIdToSlatType();
44     
45   static AliMpVSegmentation* ReadSegmentation(Int_t detElemId,
46                                               AliMpPlaneType planeType);
47   
48   static TExMap fgDetElemIdToSlatTypeMap; // map of int to TObjString
49   
50   static TExMap fgMap; // map of int to TPair<AliMpVSegmentation*, AliMpVSegmentation*>
51   
52   ClassDef(AliMUONSegmentationManager,1) // Holder for various segmentations
53 };
54
55 #endif