Line data Source code
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(TRootIOCtor* ioCtor);
30 : AliMUONChamberPainter(const AliMUONAttPainter& att, Int_t chamberId);
31 : AliMUONChamberPainter(const AliMUONChamberPainter& rhs);
32 : AliMUONChamberPainter& operator=(const AliMUONChamberPainter& rhs);
33 :
34 : virtual ~AliMUONChamberPainter();
35 :
36 : void ComputeDataRange(const AliMUONVTrackerData& data, Int_t dataIndex,
37 : Double_t& dataMin, Double_t& dataMax) const;
38 :
39 : /// Clone ourselves
40 0 : virtual TObject* Clone(const char* = "") const { return new AliMUONChamberPainter(*this); }
41 :
42 : virtual void Copy(TObject& object) const;
43 :
44 : using AliMUONVPainter::PaintArea;
45 :
46 : void PaintArea(const AliMUONVTrackerData& data, Int_t dataIndex,
47 : Double_t min, Double_t max);
48 :
49 : TString Describe(const AliMUONVTrackerData& data, Int_t dataIndex,
50 : Double_t, Double_t);
51 :
52 : AliMUONAttPainter Validate(const AliMUONAttPainter& attributes) const;
53 :
54 : Bool_t IsIncluded() const;
55 :
56 : private:
57 : Int_t fChamberId; ///< our identifier (0..n)
58 :
59 12 : ClassDef(AliMUONChamberPainter,1) // Painter for one chamber
60 : };
61 :
62 : #endif
|