Line data Source code
1 : #ifndef ALIMUONDEPAINTER_H
2 : #define ALIMUONDEPAINTER_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 AliMUONDEPainter
11 : /// \brief A painter for one detection element
12 : ///
13 : // Author Laurent Aphecetche, Subatech
14 :
15 : #ifndef ALIMUONVPAINTER_H
16 : # include "AliMUONVPainter.h"
17 : #endif
18 :
19 : class AliMUONDEPainter : public AliMUONVPainter
20 : {
21 : public:
22 : AliMUONDEPainter();
23 : AliMUONDEPainter(TRootIOCtor* ioCtor);
24 : AliMUONDEPainter(const AliMUONAttPainter& att, Int_t detElemId);
25 : AliMUONDEPainter(const AliMUONDEPainter& rhs);
26 : AliMUONDEPainter& operator=(const AliMUONDEPainter& rhs);
27 : virtual ~AliMUONDEPainter();
28 :
29 : /// Clone this object
30 0 : virtual TObject* Clone(const char* = "") const { return new AliMUONDEPainter(*this); }
31 :
32 : void ComputeDataRange(const AliMUONVTrackerData& data, Int_t dataIndex,
33 : Double_t& dataMin, Double_t& dataMax) const;
34 :
35 : void Copy(TObject& object) const;
36 :
37 : /// Return the ID of this detection element
38 0 : Int_t DetElemId() const { return fDetElemId; }
39 :
40 : using AliMUONVPainter::PaintArea;
41 :
42 : void PaintArea(const AliMUONVTrackerData& data, Int_t dataIndex,
43 : Double_t min, Double_t max);
44 :
45 : TString Describe(const AliMUONVTrackerData& data, Int_t dataIndex,
46 : Double_t, Double_t);
47 :
48 : virtual AliMUONAttPainter Validate(const AliMUONAttPainter& attributes) const;
49 :
50 : virtual void FillManuList(TObjArray& manuList) const;
51 :
52 : virtual Bool_t IsIncluded() const;
53 :
54 : using AliMUONVPainter::SetResponder;
55 :
56 : virtual void SetResponder(Int_t depth);
57 :
58 : private:
59 : Int_t fDetElemId; ///< our id
60 :
61 12 : ClassDef(AliMUONDEPainter,1) // Detection element painter
62 : };
63 :
64 : #endif
|