]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONChamberPainter.h
e65df20d4f6a02957480434aee5000bbf3b5c310
[u/mrichter/AliRoot.git] / MUON / AliMUONChamberPainter.h
1 #ifndef ALIMUONCHAMBERPAINTER_H
2 #define ALIMUONCHAMBERPAINTER_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 AliMUONChamberPainter
11 /// \brief Painter for one (plane of one) chamber
12 /// 
13 // Author Laurent Aphecetche, Subatech
14
15 #ifndef ALIMUONVPAINTER_H
16 #  include "AliMUONVPainter.h"
17 #endif
18 #ifndef ALI_MP_CATHOD_TYPE_H
19 #  include "AliMpCathodType.h"
20 #endif
21 #ifndef ALI_MP_PLANE_TYPE_H
22 #  include "AliMpPlaneType.h"
23 #endif
24
25 class AliMUONChamberPainter : public AliMUONVPainter
26 {
27 public:
28   AliMUONChamberPainter();
29   AliMUONChamberPainter(const AliMUONAttPainter& att, Int_t chamberId);
30   AliMUONChamberPainter(const AliMUONChamberPainter& rhs);
31   AliMUONChamberPainter& operator=(const AliMUONChamberPainter& rhs);
32   
33   virtual ~AliMUONChamberPainter();
34
35   void ComputeDataRange(const AliMUONVTrackerData& data, Int_t dataIndex, 
36                         Double_t& dataMin, Double_t& dataMax) const;
37     
38   /// Clone ourselves
39   virtual TObject* Clone(const char* = "") const { return new AliMUONChamberPainter(*this); }
40
41   virtual void Copy(TObject& object) const;
42   
43   void PaintArea(const AliMUONVTrackerData& data, Int_t dataIndex,
44                  Double_t min, Double_t max);
45     
46   TString Describe(const AliMUONVTrackerData& data, Int_t dataIndex,
47                    Double_t, Double_t);
48     
49   AliMUONAttPainter Validate(const AliMUONAttPainter& attributes) const;
50
51 private:
52   Int_t fChamberId; ///< our identifier (0..n)
53   
54   ClassDef(AliMUONChamberPainter,1) // Painter for one chamber
55 };
56
57 #endif