Modifications needed by the HBT analysis (P.Skowronski)
[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$ */
fe4da5cc 8
9//////////////////////////////////////////////////////////////////////////
10// //
11// AliDisplay //
12// //
13// Utility class to display ALice outline, tracks, hits,.. //
14// //
15//////////////////////////////////////////////////////////////////////////
16
17//#ifndef ROOT_TObject
18#include <TObject.h>
19//#endif
20#include "AliDisplay.h"
21
22class TCanvas;
23class TPad;
24class TList;
25class TSlider;
26class TButton;
27class TArc;
28
a9e2aefa 29class AliMUONDisplay : /*splaypublic TObject,*/ public AliDisplay {
fe4da5cc 30public:
a9e2aefa 31 AliMUONDisplay();
32 AliMUONDisplay(Int_t size);
33 AliMUONDisplay(const AliMUONDisplay& display);
34
35 virtual ~AliMUONDisplay();
fe4da5cc 36 virtual void Clear(Option_t *option="");
37 virtual void DisplayButtons();
38 virtual void CreateColors();
39 virtual void DisplayColorScale();
40 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
41 virtual void Draw(Option_t *option="");
42 virtual void DrawClusters();
43 virtual void DrawHits();
a897a37a 44 virtual void DrawCoG();
a9e2aefa 45 virtual void DrawSegmentation();
fe4da5cc 46 virtual void DrawTitle(Option_t *option="");
47 virtual void DrawView(Float_t theta, Float_t phi, Float_t psi=0);
a9e2aefa 48 virtual void DrawP(Float_t,Float_t,Float_t,Float_t,Float_t,Int_t){}
fe4da5cc 49 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
50 Int_t GetZoomMode() {return fZoomMode;}
51 Int_t GetChamber() {return fChamber;}
52 Int_t GetCathode() {return fCathode;}
53 virtual void LoadDigits(Int_t chamber, Int_t cathode);
54 virtual void LoadHits(Int_t chamber);
a897a37a 55 virtual void LoadCoG(Int_t chamber, Int_t cathode);
fe4da5cc 56 TPad *Pad() {return fPad;}
57 TObjArray *Points() {return fPoints;}
58 TObjArray *Phits() {return fPhits;}
a897a37a 59 TObjArray *Rpoints() {return fRpoints;}
fe4da5cc 60 virtual void Paint(Option_t *option="");
61 virtual void SetDrawClusters(Bool_t draw=kTRUE) {fDrawClusters=draw;} // *MENU*
a9e2aefa 62 virtual void SetChamberAndCathode(Int_t chamber=1, Int_t cathode=1); // *MENU*
63 virtual void SetDrawCoG(Bool_t draw=kTRUE) {fDrawCoG=draw;} // *MENU*
64 virtual void SetRange(Float_t rrange=250., Float_t zrange=1050.); // *MENU*
65 virtual void SetEvent(Int_t newevent=0); // *MENU*
a897a37a 66 virtual void SetView(Float_t theta=0, Float_t phi=-90, Float_t psi=0);
fe4da5cc 67 virtual void SetPickMode();
68 virtual void SetZoomMode();
69 virtual void ShowNextEvent(Int_t delta=1);
a9e2aefa 70 virtual void UnZoom(); // *MENU*
fe4da5cc 71 virtual void ResetPoints();
72 virtual void ResetPhits();
a897a37a 73 virtual void ResetRpoints();
a9e2aefa 74 virtual void NextChamber(Int_t delta=1);
75 virtual void NextCathode();
76 void Trigger();
77 AliMUONDisplay& operator = (const AliMUONDisplay& rhs);
78
79
80private:
81 Int_t fEvent; // Current event
82 Int_t fChamber; // Current Chamber
83 Int_t fCathode; // Current cathode plane
a9e2aefa 84 Bool_t fDrawClusters; //Flag True if Clusters to be drawn
85 Bool_t fDrawCoG; //Flag True if CoG to be drawn
86 //to be drawn
a9e2aefa 87 Int_t fClustersCuts; //Number of clusters surviving cuts
a9e2aefa 88 TPad *fColPad; //Pointer to the colors pad
a9e2aefa 89 TObjArray *fPoints; //Array of points for each cathode
90 TObjArray *fPhits; //Array of hit points for each chamber
91 TObjArray *fRpoints; //Array of cog points for each cathode
a9e2aefa 92 Int_t fNextCathode; //Flagging next cathode
a1001283 93 ClassDef(AliMUONDisplay, 0) //Utility class to display MUON events
fe4da5cc 94};
95
96#endif
a9e2aefa 97
98
99
100
101
102
103
104