]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONContourHandler.h
In AliMUONTriggerQADataMakerRec:
[u/mrichter/AliRoot.git] / MUON / AliMUONContourHandler.h
1 #ifndef ALIMUONCONTOURHANDLER_H
2 #define ALIMUONCONTOURHANDLER_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 graphics
10 /// \class AliMUONContourHandler
11 /// \brief Holder for MUON tracker contours
12 /// 
13 //  Author Laurent Aphecetche
14
15 #ifndef ROOT_TObject
16 #  include "TObject.h"
17 #endif
18
19 class TObjArray;
20 class AliMpExMap;
21 class TMap;
22 class AliMUONContour;
23
24 class AliMUONContourHandler : public TObject
25 {
26 public:
27   AliMUONContourHandler(Bool_t explodedView=kTRUE);
28   virtual ~AliMUONContourHandler();
29   
30   Bool_t Adopt(AliMUONContour* contour); 
31   
32   /// Get all the contours as a map
33   TMap* AllContourMap() const { return fAllContourMap; }
34   
35   /// Get all the contours as an array
36   TObjArray* AllContourArray() const { return fAllContourArray; }
37   
38   AliMUONContour* GetContour(const char* contourname) const;
39   
40   /// Get detection element geometrical transformations
41   AliMpExMap* GetTransformations() const { return fTransformations; }
42   
43   void Print(Option_t* opt="") const;
44   
45 private:
46   /// Not implemented
47   AliMUONContourHandler(const AliMUONContourHandler& rhs);
48   /// Not implemented
49   AliMUONContourHandler& operator=(const AliMUONContourHandler& rhs);
50   
51   AliMpExMap* GenerateTransformations(Bool_t exploded);
52   
53   TObjArray* CreateContourList(const TObjArray& manuContours);
54   
55   void GenerateAllContours(const TObjArray& manuContours);  
56   
57 private:
58   AliMpExMap* fTransformations; ///< transformations used to go from local to global coordinates
59   TMap* fAllContourMap; ///< all (i.e. manus,  buspatches, detection elements, etc..) contours
60   TObjArray* fAllContourArray; ///< all contours, ordered by hierarchy level
61   
62   ClassDef(AliMUONContourHandler,1) // MUON tracker contour holder
63 };
64
65 #endif