]>
Commit | Line | Data |
---|---|---|
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 | 29 | class AliEveJetPlane : public TEveElementList, |
fd31e9de | 30 | public TAtt3D, |
31 | public TAttBBox | |
4673ff03 | 32 | { |
d810d0de | 33 | friend class AliEveJetPlaneGL; |
4673ff03 | 34 | |
4673ff03 | 35 | public: |
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 | 83 | protected: |
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 | ||
118 | private: | |
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 |