ATLAS Offline Software
display_track.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef DISPLAY_TRACK_H
6 #define DISPLAY_TRACK_H
7 
8 //#include "PlotValNtuple/Display.h"
9 //#include "CLHEP/Vector/ThreeVector.h"
10 #include <vector>
11 #include "TVector3.h"
12 #include "ShapeCreator.h"
13 
14 typedef TVector3 GlobalPosition;
15 typedef TVector3 GlobalDirection;
16 
17 //class Display;
18 //namespace CLHEP {
19 //class Hep3Vector;
20 //}
21 
22 //class TLine;
23 //class TArc;
24 //class TBox;
25 class TObject;
26 //class ShapeCreator;
27 
29 public:
30  displayTracks();
31  virtual ~displayTracks();
32  displayTracks (const displayTracks&) = delete;
35  virtual void displayTrackState( GlobalPosition& trkPosition, GlobalDirection& trkDirection) = 0;
37  virtual void displayTRT_MeasurementOnTrack( GlobalPosition& strawPosition, double driftRadius,
38  GlobalDirection& trkDirection, bool isOutlier,
39  double trackRadius = 0.) = 0;
41  virtual void displayTRT_Measurement( GlobalPosition& strawPosition, double driftRadius,
42  bool onTrack, bool outlierOnTrack, double trackRadius = 0.) = 0;
43  virtual void displayTRT_Tubes() = 0;
45  virtual void displaySiliconMeasurement( GlobalPosition& measurementPosition, bool onTrack) = 0;
47  virtual void displayCompetingTRT_ROT( std::vector<GlobalPosition>& strawPositions, std::vector<double> driftRadii, std::vector<double> assgnProbs, GlobalDirection& trkDirection)=0;
49  virtual void clear();
50 
51  virtual void clearTrackGraphics();
52  virtual void clearRIOGraphics();
53  virtual void clearGeometryGraphics();
54  virtual void clearCompetingROTsGraphics();
55 
56  //void draw();
57  //void print(std::string name){m_display->print(name);}
58  //std::vector<TLine*>& getLines();
59  //std::vector<TArc*>& getArcs();
60  //std::vector<TBox*>& getBoxes();
61  virtual std::vector<TObject*>* getTrackGraphics();
62  virtual std::vector<TObject*>* getRIOGraphics();
63  virtual std::vector<TObject*>* getGeometryGraphics();
64  virtual std::vector<TObject*>* getCompetingROTsGraphics();
65 protected:
66  //Display* displayDriftTubeBarrelTrackSection( DriftTubeBarrelTrackSection& section );
67  //void getRange( const std::vector<GlobalPosition>&, GlobalPosition& ll, GlobalPosition& rh);
68  //GlobalPosition m_lowerLeft;
69  //GlobalPosition m_upperRight;
70  //Display* m_display;
71  //std::vector<TLine*> m_lines;
72  //std::vector<TArc*> m_arcs;
73  //std::vector<TBox*> m_boxes;
74  std::vector<TObject*>* m_trackGraphics;
75  std::vector<TObject*>* m_rioGraphics;
76  std::vector<TObject*>* m_geometryGraphics;
77  std::vector<TObject*>* m_competingRotGraphics;
78 
80 };
81 
82 
83 
85 public:
86  //displayBarrelXY(GlobalPosition& lowerLeft, GlobalPosition& upperRight );
88  //~displayBarrelXY();
90  virtual void displayTrackState( GlobalPosition& trkPosition, GlobalDirection& trkDirection);
92  virtual void displayTRT_MeasurementOnTrack( GlobalPosition& strawPosition, double driftRadius,
93  GlobalDirection& trkDirection, bool isOutlier,
94  double = 0.);
96  virtual void displayTRT_Measurement( GlobalPosition& strawPosition, double driftRadius,
97  bool onTrack, bool outlierOnTrack, double = 0.);
98  virtual void displayTRT_Tubes();
100  virtual void displaySiliconMeasurement( GlobalPosition& measurementPosition, bool onTrack);
102  virtual void displayCompetingTRT_ROT( std::vector<GlobalPosition>& strawPositions, std::vector<double> driftRadii, std::vector<double> assgnProbs, GlobalDirection& trkDirection);
103 
104 private:
105 
106 };
107 
109 public:
110  //displayBarrelXY(GlobalPosition& lowerLeft, GlobalPosition& upperRight );
112  //~displayEndcapPhiZ();
114  virtual void displayTrackState( GlobalPosition& trkPosition, GlobalDirection& trkDirection);
116  virtual void displayTRT_MeasurementOnTrack( GlobalPosition& strawPosition, double driftRadius,
117  GlobalDirection& trkDirection, bool isOutlier,
118  double trackRadius = 0.);
120  virtual void displayTRT_Measurement( GlobalPosition& strawPosition, double driftRadius,
121  bool onTrack, bool outlierOnTrack, double trackRadius = 0.);
122  virtual void displayTRT_Tubes();
124  virtual void displaySiliconMeasurement( GlobalPosition& measurementPosition, bool onTrack);
126  virtual void displayCompetingTRT_ROT( std::vector<GlobalPosition>& strawPositions, std::vector<double> driftRadii, std::vector<double> assgnProbs, GlobalDirection& trkDirection);
127 
128 // std::vector<TObject*>* getTrackGraphics() {return m_trackGraphics;}
129 // std::vector<TObject*>* getRIOGraphics() {return m_rioGraphics;}
130 // std::vector<TObject*>* getGeometryGraphics() {return m_geometryGraphics;}
131 // std::vector<TObject*>* getCompetingROTsGraphics() {return m_competingRotGraphics;}
132 private:
133 
134 };
135 
136 #endif
displayEndcapPhiZ::displayTRT_MeasurementOnTrack
virtual void displayTRT_MeasurementOnTrack(GlobalPosition &strawPosition, double driftRadius, GlobalDirection &trkDirection, bool isOutlier, double trackRadius=0.)
create the graphic objects for a single TRT measurement on track
Definition: display_track.cxx:355
displayTracks::getCompetingROTsGraphics
virtual std::vector< TObject * > * getCompetingROTsGraphics()
Definition: display_track.cxx:54
ShapeCreator.h
displayTracks::m_shapeCreator
ShapeCreator m_shapeCreator
Definition: display_track.h:79
displayTracks::clearTrackGraphics
virtual void clearTrackGraphics()
Definition: display_track.cxx:58
displayTracks::displayTRT_Measurement
virtual void displayTRT_Measurement(GlobalPosition &strawPosition, double driftRadius, bool onTrack, bool outlierOnTrack, double trackRadius=0.)=0
create the graphic objects for a single TRT measurement
displayBarrelXY::displayTrackState
virtual void displayTrackState(GlobalPosition &trkPosition, GlobalDirection &trkDirection)
create the graphic objects for a single track state
Definition: display_track.cxx:104
displayTracks::displayCompetingTRT_ROT
virtual void displayCompetingTRT_ROT(std::vector< GlobalPosition > &strawPositions, std::vector< double > driftRadii, std::vector< double > assgnProbs, GlobalDirection &trkDirection)=0
create the graphic objects for a single CompetingTRT_DriftCirclesOnTrack
displayEndcapPhiZ::displayEndcapPhiZ
displayEndcapPhiZ()
displayEndcapPhiZ
Definition: display_track.cxx:297
displayTracks::clear
virtual void clear()
clear all graphics vectors
Definition: display_track.cxx:84
displayTracks
Definition: display_track.h:28
displayTracks::m_geometryGraphics
std::vector< TObject * > * m_geometryGraphics
Definition: display_track.h:76
displayTracks::displayTracks
displayTracks()
base class: displayTracks
Definition: display_track.cxx:24
displayEndcapPhiZ
Definition: display_track.h:108
displayTracks::operator=
displayTracks & operator=(const displayTracks &)=delete
displayTracks::displayTRT_MeasurementOnTrack
virtual void displayTRT_MeasurementOnTrack(GlobalPosition &strawPosition, double driftRadius, GlobalDirection &trkDirection, bool isOutlier, double trackRadius=0.)=0
create the graphic objects for a single TRT measurement on track
displayTracks::displayTracks
displayTracks(const displayTracks &)=delete
displayTracks::getRIOGraphics
virtual std::vector< TObject * > * getRIOGraphics()
Definition: display_track.cxx:48
displayBarrelXY::displayBarrelXY
displayBarrelXY()
Definition: display_track.cxx:92
displayBarrelXY::displayCompetingTRT_ROT
virtual void displayCompetingTRT_ROT(std::vector< GlobalPosition > &strawPositions, std::vector< double > driftRadii, std::vector< double > assgnProbs, GlobalDirection &trkDirection)
create the graphic objects for a single CompetingTRT_DriftCirclesOnTrack
Definition: display_track.cxx:250
displayTracks::m_trackGraphics
std::vector< TObject * > * m_trackGraphics
Definition: display_track.h:74
displayTracks::getGeometryGraphics
virtual std::vector< TObject * > * getGeometryGraphics()
Definition: display_track.cxx:51
Trk::driftRadius
@ driftRadius
trt, straws
Definition: ParamDefs.h:53
displayEndcapPhiZ::displayCompetingTRT_ROT
virtual void displayCompetingTRT_ROT(std::vector< GlobalPosition > &strawPositions, std::vector< double > driftRadii, std::vector< double > assgnProbs, GlobalDirection &trkDirection)
create the graphic objects for a single CompetingTRT_DriftCirclesOnTrack
Definition: display_track.cxx:487
displayTracks::clearGeometryGraphics
virtual void clearGeometryGraphics()
Definition: display_track.cxx:71
displayTracks::m_competingRotGraphics
std::vector< TObject * > * m_competingRotGraphics
Definition: display_track.h:77
displayTracks::clearRIOGraphics
virtual void clearRIOGraphics()
Definition: display_track.cxx:64
displayBarrelXY::displayTRT_Tubes
virtual void displayTRT_Tubes()
Definition: display_track.cxx:223
displayBarrelXY::displayTRT_MeasurementOnTrack
virtual void displayTRT_MeasurementOnTrack(GlobalPosition &strawPosition, double driftRadius, GlobalDirection &trkDirection, bool isOutlier, double=0.)
create the graphic objects for a single TRT measurement on track
Definition: display_track.cxx:139
displayTracks::~displayTracks
virtual ~displayTracks()
Definition: display_track.cxx:33
displayBarrelXY::displayTRT_Measurement
virtual void displayTRT_Measurement(GlobalPosition &strawPosition, double driftRadius, bool onTrack, bool outlierOnTrack, double=0.)
create the graphic objects for a single TRT measurement
Definition: display_track.cxx:159
displayBarrelXY::displaySiliconMeasurement
virtual void displaySiliconMeasurement(GlobalPosition &measurementPosition, bool onTrack)
create the graphic objects for a single Silicon measurement
Definition: display_track.cxx:225
displayTracks::displaySiliconMeasurement
virtual void displaySiliconMeasurement(GlobalPosition &measurementPosition, bool onTrack)=0
create the graphic objects for a single Silicon measurement
displayTracks::getTrackGraphics
virtual std::vector< TObject * > * getTrackGraphics()
Definition: display_track.cxx:45
displayEndcapPhiZ::displaySiliconMeasurement
virtual void displaySiliconMeasurement(GlobalPosition &measurementPosition, bool onTrack)
create the graphic objects for a single Silicon measurement
Definition: display_track.cxx:462
displayTracks::clearCompetingROTsGraphics
virtual void clearCompetingROTsGraphics()
Definition: display_track.cxx:77
ShapeCreator
Definition: ShapeCreator.h:22
GlobalPosition
TVector3 GlobalPosition
Definition: display_track.h:14
displayEndcapPhiZ::displayTRT_Measurement
virtual void displayTRT_Measurement(GlobalPosition &strawPosition, double driftRadius, bool onTrack, bool outlierOnTrack, double trackRadius=0.)
create the graphic objects for a single TRT measurement
Definition: display_track.cxx:373
displayTracks::displayTRT_Tubes
virtual void displayTRT_Tubes()=0
displayTracks::m_rioGraphics
std::vector< TObject * > * m_rioGraphics
Definition: display_track.h:75
GlobalDirection
TVector3 GlobalDirection
Definition: display_track.h:15
displayTracks::displayTrackState
virtual void displayTrackState(GlobalPosition &trkPosition, GlobalDirection &trkDirection)=0
create the graphic objects for a single track state
displayEndcapPhiZ::displayTRT_Tubes
virtual void displayTRT_Tubes()
Definition: display_track.cxx:460
displayBarrelXY
Definition: display_track.h:84
displayEndcapPhiZ::displayTrackState
virtual void displayTrackState(GlobalPosition &trkPosition, GlobalDirection &trkDirection)
create the graphic objects for a single track state
Definition: display_track.cxx:306