ATLAS Offline Software
Loading...
Searching...
No Matches
PlotValNtuple.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef PLOTVALNTUPLE_H
6#define PLOTVALNTUPLE_H
7
8//#include "PlotValNtuple/TrackData.h"
9//#include "CLHEP/Vector/ThreeVector.h"
10#include <vector>
11
12#include "display_track.h"
13#include "TrackDataNtupleTree.h"
15
16//typedef Hep3Vector GlobalPosition;
17//typedef Hep3Vector GlobalDirection;
18
19// class Display;
20// namespace CLHEP{
21// class Hep3Vector;
22// }
23
25
26class TObject;
27
29public:
31
32 void setNextTrack(int& eventNumber, int& trackNumber, int& InterationNumber);
33 void setPrevTrack(int& eventNumber, int& trackNumber, int& InterationNumber);
34
35 void setNextEvent(int& eventNumber);
36 void setPrevEvent(int& eventNumber);
37
38 void setEvent(int eventNumber, int InterationNumber);
39 void setTrack(int eventNumber, int trackNumber, int InterationNumber);
40
41 void setMode(DisplayMode mode) {
42 m_mode = mode;
43 }
44
45 // /** plot a single track */
46 //std::vector<TObject*>* plotBarrelXY_SingleTrack(TrackDataNtupleTree &, Long64_t entry=0);
47 // std::vector<TObject*>& plotBarrelXY_SingleTrack(TrackDataNtupleTree&, Long64_t entry);
48 //displayBarrelXY* plotBarrelXY_SingleTrack(TrackDataNtupleTree &, Long64_t entry=0);
49 // /** plot a whole event, return the index of the last entry belonging to the event by reference */
50 // std::vector<TObject*>& plotBarrelXY_Event(TrackDataNtupleTree&, Long64_t entry, Long64_t &lastEntryOfEvent);
51
52 // /** plot the RIOs */
53 // std::vector<TObject*>& plotBarrelXY_RIOs(TrkValidationNtupleRIOs&, int eventNumber);
54
55 // /** plot CompetingRIOsOnTrack for a single track */
56 // // std::vector<TObject*>& plotBarrelXY_SingleTrackCompROTs(TrackDataNtupleTree&, Long64_t entry);
57 // /** plot CompetingRIOsOnTrack for whole event, return the index of the last entry belonging to the event by reference */
58 // // std::vector<TObject*>& plotBarrelXY_EventCompROTs(TrackDataNtupleTree&, Long64_t entry, Long64_t &lastEntryOfEvent);
59
60 std::vector<TObject*>* getTrackGraphics() {
61 switch (m_mode) {
62 case BarrelXY:
63 return m_barrelXY.getTrackGraphics();
64 break;
65 case EndCapPhiZ:
66 return m_endcapPhiZ.getTrackGraphics();
67 break;
68 }
69 return 0;
70 }
71 std::vector<TObject*>* getRIOGraphics() {
72 switch (m_mode) {
73 case BarrelXY:
74 return m_barrelXY.getRIOGraphics();
75 break;
76 case EndCapPhiZ:
77 return m_endcapPhiZ.getRIOGraphics();
78 break;
79 }
80 return 0;
81 }
82 std::vector<TObject*>* getGeometryGraphics() {
83 switch (m_mode) {
84 case BarrelXY:
85 return m_barrelXY.getGeometryGraphics();
86 break;
87 case EndCapPhiZ:
88 return m_endcapPhiZ.getGeometryGraphics();
89 break;
90 }
91 return 0;
92 }
93 std::vector<TObject*>* getCompetingROTsGraphics() {
94 switch (m_mode) {
95 case BarrelXY:
96 return m_barrelXY.getCompetingROTsGraphics();
97 break;
98 case EndCapPhiZ:
99 return m_endcapPhiZ.getCompetingROTsGraphics();
100 break;
101 }
102 return 0;
103 }
104
105
106private:
108 //std::vector<TObject*>* plotBarrelXY_SingleTrack(TrackDataNtupleTree &, Long64_t entry=0);
109 void plotTrack();
110 void plotRIOs(int eventNumber);
111 // /** get the range of the track */
112 // void getBarrelXY_Range(TrackDataNtupleTree&, GlobalPosition& lowerLeft, GlobalPosition& upperRight);
113
114 //Display* displayDriftTubeBarrelTrackSection( DriftTubeBarrelTrackSection& section );
115 //void getRange( const std::vector<GlobalPosition>&, GlobalPosition& ll, GlobalPosition& rh);
116 // GlobalPosition m_lowerLeft;
117 // GlobalPosition m_upperRight;
118
120 //Long64_t m_rioNtupleEntry;
123
127};
128
129
130#endif // PLOTVALNTUPLE_H
DisplayMode
@ EndCapPhiZ
@ BarrelXY
void setTrack(int eventNumber, int trackNumber, int InterationNumber)
void setNextTrack(int &eventNumber, int &trackNumber, int &InterationNumber)
void plotRIOs(int eventNumber)
void setPrevTrack(int &eventNumber, int &trackNumber, int &InterationNumber)
std::vector< TObject * > * getTrackGraphics()
plot a single track
void setMode(DisplayMode mode)
displayEndcapPhiZ m_endcapPhiZ
TrackDataNtupleTree & m_trackNtuple
DisplayMode m_mode
void plotTrack()
plot one track
std::vector< TObject * > * getRIOGraphics()
std::vector< TObject * > * getCompetingROTsGraphics()
void setNextEvent(int &eventNumber)
PlotValNtuple(TrackDataNtupleTree &trackNtuple, TrkValidationNtupleRIOs *rioNtuple, DisplayMode mode=BarrelXY)
Long64_t m_trackNtupleEntry
get the range of the track
displayBarrelXY m_barrelXY
std::vector< TObject * > * getGeometryGraphics()
TrkValidationNtupleRIOs * m_rioNtuple
void setEvent(int eventNumber, int InterationNumber)
void setPrevEvent(int &eventNumber)
this class inherites from the automatically created TrkValidationNtupleOutputTrack to have independen...