]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONDisplay.h
Coding conventions (Annalisa)
[u/mrichter/AliRoot.git] / MUON / AliMUONDisplay.h
CommitLineData
a9e2aefa 1#ifndef ALIMUONDISPLAY_H
2#define ALIMUONDISPLAY_H
3
3da30618 4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
30178c30 8// Revision of includes 07/05/2004
fe4da5cc 9
692de412 10/// \ingroup base
11/// \class AliMUONDisplay
12/// \brief Utility class to display MUON events
13
fe4da5cc 14//////////////////////////////////////////////////////////////////////////
15// //
16// AliDisplay //
17// //
18// Utility class to display ALice outline, tracks, hits,.. //
19// //
20//////////////////////////////////////////////////////////////////////////
21
fe4da5cc 22#include "AliDisplay.h"
23
307d9d04 24class AliLoader;
d226f81b 25class AliMUONData;
572d5bb2 26class AliMUONTrack;
fe4da5cc 27class TCanvas;
28class TPad;
29class TList;
30class TSlider;
31class TButton;
32class TArc;
33
30178c30 34class AliMUONDisplay : public AliDisplay
35{
fe4da5cc 36public:
a9e2aefa 37 AliMUONDisplay();
307d9d04 38 AliMUONDisplay(Int_t size, AliLoader * loader=0x0);
a9e2aefa 39
40 virtual ~AliMUONDisplay();
fe4da5cc 41 virtual void Clear(Option_t *option="");
42 virtual void DisplayButtons();
30178c30 43 virtual void CreateColors() const;
fe4da5cc 44 virtual void DisplayColorScale();
45 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
572d5bb2 46 virtual void DrawReco(Option_t *option="");
47 virtual void PrintTrack(Int_t iRecTracks, AliMUONTrack *recTrack);
48 virtual void PrintKinematics();
fe4da5cc 49 virtual void Draw(Option_t *option="");
572d5bb2 50 virtual void DrawChamber();
fe4da5cc 51 virtual void DrawClusters();
52 virtual void DrawHits();
a897a37a 53 virtual void DrawCoG();
572d5bb2 54 virtual void DrawTracks();
a9e2aefa 55 virtual void DrawSegmentation();
fe4da5cc 56 virtual void DrawTitle(Option_t *option="");
57 virtual void DrawView(Float_t theta, Float_t phi, Float_t psi=0);
572d5bb2 58 virtual void DrawGlobalView(Float_t theta, Float_t phi, Float_t psi=0);
a9e2aefa 59 virtual void DrawP(Float_t,Float_t,Float_t,Float_t,Float_t,Int_t){}
fe4da5cc 60 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
30178c30 61 Int_t GetZoomMode() const {return fZoomMode;}
62 Int_t GetChamber() const {return fChamber;}
63 Int_t GetCathode() const {return fCathode;}
d226f81b 64
65 AliMUONData* GetMUONData() {return fMUONData;}
307d9d04 66 AliLoader* GetLoader() {return fLoader;}
d226f81b 67
fe4da5cc 68 virtual void LoadDigits(Int_t chamber, Int_t cathode);
69 virtual void LoadHits(Int_t chamber);
a897a37a 70 virtual void LoadCoG(Int_t chamber, Int_t cathode);
572d5bb2 71 virtual void LoadTracks();
fe4da5cc 72 TPad *Pad() {return fPad;}
73 TObjArray *Points() {return fPoints;}
74 TObjArray *Phits() {return fPhits;}
a897a37a 75 TObjArray *Rpoints() {return fRpoints;}
fe4da5cc 76 virtual void Paint(Option_t *option="");
77 virtual void SetDrawClusters(Bool_t draw=kTRUE) {fDrawClusters=draw;} // *MENU*
a9e2aefa 78 virtual void SetChamberAndCathode(Int_t chamber=1, Int_t cathode=1); // *MENU*
79 virtual void SetDrawCoG(Bool_t draw=kTRUE) {fDrawCoG=draw;} // *MENU*
572d5bb2 80 virtual void SetDrawTracks(Bool_t draw=kTRUE) {fDrawTracks=draw;} // *MENU*
a9e2aefa 81 virtual void SetRange(Float_t rrange=250., Float_t zrange=1050.); // *MENU*
82 virtual void SetEvent(Int_t newevent=0); // *MENU*
a897a37a 83 virtual void SetView(Float_t theta=0, Float_t phi=-90, Float_t psi=0);
fe4da5cc 84 virtual void SetPickMode();
85 virtual void SetZoomMode();
86 virtual void ShowNextEvent(Int_t delta=1);
a9e2aefa 87 virtual void UnZoom(); // *MENU*
fe4da5cc 88 virtual void ResetPoints();
89 virtual void ResetPhits();
a897a37a 90 virtual void ResetRpoints();
a9e2aefa 91 virtual void NextChamber(Int_t delta=1);
92 virtual void NextCathode();
93 void Trigger();
30178c30 94
95protected:
96 AliMUONDisplay(const AliMUONDisplay& display);
97 AliMUONDisplay& operator = (const AliMUONDisplay& rhs);
a9e2aefa 98
99
100private:
101 Int_t fEvent; // Current event
102 Int_t fChamber; // Current Chamber
103 Int_t fCathode; // Current cathode plane
a9e2aefa 104 Bool_t fDrawClusters; //Flag True if Clusters to be drawn
105 Bool_t fDrawCoG; //Flag True if CoG to be drawn
572d5bb2 106 Bool_t fDrawTracks; //Flag True if tracks to be drawn
107
a9e2aefa 108 Int_t fClustersCuts; //Number of clusters surviving cuts
a9e2aefa 109 TPad *fColPad; //Pointer to the colors pad
a9e2aefa 110 TObjArray *fPoints; //Array of points for each cathode
111 TObjArray *fPhits; //Array of hit points for each chamber
112 TObjArray *fRpoints; //Array of cog points for each cathode
a9e2aefa 113 Int_t fNextCathode; //Flagging next cathode
307d9d04 114
d226f81b 115 AliLoader* fLoader; //! MUON loader to get data
116 AliMUONData* fMUONData; //! Data container for MUON subsystem
307d9d04 117
a1001283 118 ClassDef(AliMUONDisplay, 0) //Utility class to display MUON events
fe4da5cc 119};
120
121#endif
a9e2aefa 122
123
124
125
126
127
128
129