]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONManuPadPainter.h
ALIROOT-5420 Additional header file
[u/mrichter/AliRoot.git] / MUON / AliMUONManuPadPainter.h
CommitLineData
0145e89a 1#ifndef ALIMUONMANUPADPAINTER_H
2#define ALIMUONMANUPADPAINTER_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 AliMUONManuPadPainter
11/// \brief Painter for the pads of one manu
12///
13// Author Laurent Aphecetche, Subatech
14
15#ifndef ALIMUONVPAINTER_H
16# include "AliMUONVPainter.h"
17#endif
18#ifndef ALI_MP_PAD_H
19# include "AliMpPad.h"
20#endif
21
22class AliMUONManuPadPainter : public AliMUONVPainter
23{
24public:
1ffbeb9d 25 AliMUONManuPadPainter(TRootIOCtor* ioCtor);
0145e89a 26 AliMUONManuPadPainter();
27 AliMUONManuPadPainter(const AliMUONVPainter& mother,
28 Int_t detElemId,
29 Int_t manuId);
30 virtual ~AliMUONManuPadPainter();
31
32 /// Clone ourselves
33 virtual TObject* Clone(const char* = "") const { return new AliMUONManuPadPainter(*this); }
34
35 virtual void ComputeDataRange(const AliMUONVTrackerData& data,
36 Int_t dataIndex,
37 Double_t& dataMin, Double_t& dataMax) const;
38
39 virtual char* GetObjectInfo(Int_t px, Int_t py) const;
40
41 /// We advertise that we do handle mouse movement
42 virtual Bool_t HandleMouseMotion() const { return kTRUE; }
43
44 TString NameAtPosition(Double_t x, Double_t y) const;
45
46 virtual TString Describe(const AliMUONVTrackerData& data, Int_t dataIndex,
47 Double_t x=FLT_MAX, Double_t y=FLT_MAX);
48
8f0acce4 49 using AliMUONVPainter::PaintArea;
50
51 void PaintArea(const AliMUONVTrackerData& data,
0145e89a 52 Int_t dataIndex,
53 Double_t min,
54 Double_t max);
55
56 void PaintOutline(Int_t color=-1, Int_t width=-1, Double_t x=FLT_MAX, Double_t y=FLT_MAX);
49419555 57
99f1b909 58 /// Whether this painter can be detached from the current view.
49419555 59 Bool_t CanBeDetached() const { return kFALSE; }
60
61 virtual void DrawHistogramClone(Double_t* values=0x0) const;
62
1ffbeb9d 63 virtual Bool_t IsIncluded() const;
64
0145e89a 65private:
66
67 void BackupStyle();
68 void RestoreStyle();
0145e89a 69 AliMpPad PadByPosition(Double_t x, Double_t y) const;
8f0acce4 70 void PaintPad(const AliMpPad& pad) const;
0145e89a 71
72private:
73 Int_t fDetElemId; ///< our detection element id
74 Int_t fManuId; ///< our manu id
75 Int_t fLineColorBck; ///< line color for backup
76 Int_t fLineWidthBck; ///< line width for backup
77 Int_t fFillColorBck; ///< fill color for backup
78 Int_t fFillStyleBck; ///< fill style for backup
79
80 ClassDef(AliMUONManuPadPainter,1) // Painter for the pads of one manu
81};
82
83#endif