2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
4 /**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
7 * full copyright notice. *
8 **************************************************************************/
10 #ifndef AliEveJetPlane_H
11 #define AliEveJetPlane_H
13 #include <TEveElement.h>
18 #include <AliAODJet.h>
19 #include <AliAODTrack.h>
23 //==============================================================================
27 // Class for display of jets and tracks in eta-phi plane.
29 class AliEveJetPlane : public TEveElementList,
33 friend class AliEveJetPlaneGL;
36 AliEveJetPlane(Int_t iev);
37 virtual ~AliEveJetPlane() {}
39 void AddJet(AliAODJet jet);
40 void AddTrack(AliAODTrack track);
42 Int_t GetNEtaDiv() const { return fNEtaDiv; }
43 void SetNEtaDiv(Int_t r) { fNEtaDiv = r; }
45 Int_t GetNPhiDiv() const { return fNPhiDiv; }
46 void SetNPhiDiv(Int_t r) { fNPhiDiv = r; }
48 Bool_t GetRnrJets() const { return fRnrJets; }
49 void SetRnrJets(Bool_t r) { fRnrJets = r; }
51 Bool_t GetRnrTracks() const { return fRnrTracks; }
52 void SetRnrTracks(Bool_t r) { fRnrTracks = r; }
54 Bool_t GetOneSelection() const { return fOneSelection; }
55 void SetOneSelection(Bool_t r) { fOneSelection = r; }
57 Bool_t GetTwoSelection() const { return fTwoSelection; }
58 void SetTwoSelection(Bool_t r) { fTwoSelection = r; }
60 Float_t GetEnergyScale() const { return fEnergyScale; }
61 void SetEnergyScale(Float_t s) { fEnergyScale = s; }
63 Float_t GetEnergyColorScale() const { return fEnergyColorScale; }
64 void SetEnergyColorScale(Float_t s) { fEnergyColorScale = s; }
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; }
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; }
76 void SetSelectionFlag(Int_t s) { fSelectionFlag = s;}
78 virtual Bool_t CanEditMainColor()const { return kTRUE; }
80 virtual void ComputeBBox();
81 virtual void Paint(Option_t* option = "");
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.
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.
96 Color_t fGridColor; // Color of coordinate grid.
98 std::vector<AliAODJet> fJets; // Jets to display.
99 std::vector<AliAODTrack> fTracks; // Tracks to display.
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.
106 AliAODJet *fJet1, *fJet2; // Selection jets.
107 AliAODTrack *fTrack1, *fTrack2; // Selection tracks.
109 Int_t fSelectionFlag; // Selection state, handled by GL renderer.
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.
119 AliEveJetPlane(const AliEveJetPlane&); // Not implemented
120 AliEveJetPlane& operator=(const AliEveJetPlane&); // Not implemented
122 ClassDef(AliEveJetPlane, 0); // Show jets and tracks in eta-phi plane.