]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/EveBase/AliEveJetPlane.h
anyscan_init.C
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveJetPlane.h
CommitLineData
d810d0de 1// $Id$
2// Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4/**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
51346b82 7 * full copyright notice. *
d810d0de 8 **************************************************************************/
4673ff03 9
a15e6d7d 10#ifndef AliEveJetPlane_H
11#define AliEveJetPlane_H
4673ff03 12
84aff7a4 13#include <TEveElement.h>
4673ff03 14
15#include <TAtt3D.h>
16#include <TAttBBox.h>
17
18#include <AliAODJet.h>
19#include <AliAODTrack.h>
20
21#include <vector>
22
a15e6d7d 23//==============================================================================
24//
25// AliEveJetPlane
26//
27// Class for display of jets and tracks in eta-phi plane.
4673ff03 28
d810d0de 29class AliEveJetPlane : public TEveElementList,
fd31e9de 30 public TAtt3D,
31 public TAttBBox
4673ff03 32{
d810d0de 33 friend class AliEveJetPlaneGL;
4673ff03 34
4673ff03 35public:
d810d0de 36 AliEveJetPlane(Int_t iev);
37 virtual ~AliEveJetPlane() {}
4673ff03 38
39 void AddJet(AliAODJet jet);
40 void AddTrack(AliAODTrack track);
41
fd31e9de 42 Int_t GetNEtaDiv() const { return fNEtaDiv; }
4673ff03 43 void SetNEtaDiv(Int_t r) { fNEtaDiv = r; }
44
fd31e9de 45 Int_t GetNPhiDiv() const { return fNPhiDiv; }
4673ff03 46 void SetNPhiDiv(Int_t r) { fNPhiDiv = r; }
47
48 Bool_t GetRnrJets() const { return fRnrJets; }
49 void SetRnrJets(Bool_t r) { fRnrJets = r; }
50
51 Bool_t GetRnrTracks() const { return fRnrTracks; }
52 void SetRnrTracks(Bool_t r) { fRnrTracks = r; }
53
54 Bool_t GetOneSelection() const { return fOneSelection; }
55 void SetOneSelection(Bool_t r) { fOneSelection = r; }
56
57 Bool_t GetTwoSelection() const { return fTwoSelection; }
58 void SetTwoSelection(Bool_t r) { fTwoSelection = r; }
59
60 Float_t GetEnergyScale() const { return fEnergyScale; }
61 void SetEnergyScale(Float_t s) { fEnergyScale = s; }
62
63 Float_t GetEnergyColorScale() const { return fEnergyColorScale; }
64 void SetEnergyColorScale(Float_t s) { fEnergyColorScale = s; }
65
66 const AliAODJet& GetJet1() const { return *fJet1; }
67 const AliAODJet& GetJet2() const { return *fJet2; }
68 const AliAODTrack& GetTrack1() const { return *fTrack1; }
69 const AliAODTrack& GetTrack2() const { return *fTrack2; }
70
71 void SetJet1(AliAODJet* s) { fJet1 = s; }
72 void SetJet2(AliAODJet* s) { fJet2 = s; }
73 void SetTrack1(AliAODTrack* s) { fTrack1 = s; }
74 void SetTrack2(AliAODTrack* s) { fTrack2 = s; }
75
76 void SetSelectionFlag(Int_t s) { fSelectionFlag = s;}
77
a15e6d7d 78 virtual Bool_t CanEditMainColor()const { return kTRUE; }
4673ff03 79
80 virtual void ComputeBBox();
81 virtual void Paint(Option_t* option = "");
82
4b456ebb 83protected:
84 Float_t fMinEta; // Min eta for display.
85 Float_t fMaxEta; // Max eta for display.
86 Float_t fMinPhi; // Min phi for display.
87 Float_t fMaxPhi; // Max phi for display.
88 Int_t fNEtaDiv; // Number of eta divisions for display.
89 Int_t fNPhiDiv; // Number of phi divisions for display.
90
91 Float_t fEtaScale; // Multiplier for eta.
92 Float_t fPhiScale; // Multiplier for phi.
93 Float_t fEnergyScale; // Multiplier for energy.
94 Float_t fEnergyColorScale; // Multiplier for energy color.
95
96 Color_t fGridColor; // Color of coordinate grid.
97
98 std::vector<AliAODJet> fJets; // Jets to display.
99 std::vector<AliAODTrack> fTracks; // Tracks to display.
100
101 Bool_t fRnrJets; // Show jets.
102 Bool_t fRnrTracks; // Show tracks.
103 Bool_t fOneSelection; // One object selected.
104 Bool_t fTwoSelection; // Two objects selected.
105
106 AliAODJet *fJet1, *fJet2; // Selection jets.
107 AliAODTrack *fTrack1, *fTrack2; // Selection tracks.
108
109 Int_t fSelectionFlag; // Selection state, handled by GL renderer.
110
111 // Common settings:
112 static Bool_t fgOneMomentumXYZ; // Display momentum as coordinates.
113 static Bool_t fgOneMomentumPhiTheta; // Display momentum as phi/theta.
114 static Bool_t fgOneEta; // Display eta.
115 static Bool_t fgOneE; // Display energy.
116 static Bool_t fgOneChgMass; // Display charge and mass.
117
118private:
119 AliEveJetPlane(const AliEveJetPlane&); // Not implemented
120 AliEveJetPlane& operator=(const AliEveJetPlane&); // Not implemented
121
122 ClassDef(AliEveJetPlane, 0); // Show jets and tracks in eta-phi plane.
123};
4673ff03 124
125#endif