ATLAS Offline Software
Loading...
Searching...
No Matches
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
14typedef TVector3 GlobalPosition;
15typedef TVector3 GlobalDirection;
16
17//class Display;
18//namespace CLHEP {
19//class Hep3Vector;
20//}
21
22//class TLine;
23//class TArc;
24//class TBox;
25class TObject;
26//class ShapeCreator;
27
29public:
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();
65protected:
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
85public:
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
104private:
105
106};
107
109public:
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;}
132private:
133
134};
135
136#endif
virtual void displayTRT_Measurement(GlobalPosition &strawPosition, double driftRadius, bool onTrack, bool outlierOnTrack, double=0.)
create the graphic objects for a single TRT measurement
virtual void displayTRT_Tubes()
virtual void displaySiliconMeasurement(GlobalPosition &measurementPosition, bool onTrack)
create the graphic objects for a single Silicon measurement
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
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
virtual void displayTrackState(GlobalPosition &trkPosition, GlobalDirection &trkDirection)
create the graphic objects for a single track state
virtual void displayTRT_Tubes()
virtual void displayTrackState(GlobalPosition &trkPosition, GlobalDirection &trkDirection)
create the graphic objects for a single track state
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
displayEndcapPhiZ()
displayEndcapPhiZ
virtual void displayTRT_Measurement(GlobalPosition &strawPosition, double driftRadius, bool onTrack, bool outlierOnTrack, double trackRadius=0.)
create the graphic objects for a single TRT measurement
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
virtual void displaySiliconMeasurement(GlobalPosition &measurementPosition, bool onTrack)
create the graphic objects for a single Silicon measurement
virtual void clearRIOGraphics()
displayTracks(const displayTracks &)=delete
virtual void clear()
clear all graphics vectors
virtual void clearCompetingROTsGraphics()
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
virtual std::vector< TObject * > * getCompetingROTsGraphics()
std::vector< TObject * > * m_competingRotGraphics
std::vector< TObject * > * m_geometryGraphics
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
virtual void displayTrackState(GlobalPosition &trkPosition, GlobalDirection &trkDirection)=0
create the graphic objects for a single track state
virtual void displayTRT_Tubes()=0
virtual ~displayTracks()
ShapeCreator m_shapeCreator
virtual void displaySiliconMeasurement(GlobalPosition &measurementPosition, bool onTrack)=0
create the graphic objects for a single Silicon measurement
virtual void clearGeometryGraphics()
std::vector< TObject * > * m_rioGraphics
displayTracks()
base class: displayTracks
virtual void clearTrackGraphics()
virtual std::vector< TObject * > * getGeometryGraphics()
virtual std::vector< TObject * > * getRIOGraphics()
virtual std::vector< TObject * > * getTrackGraphics()
displayTracks & operator=(const displayTracks &)=delete
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
std::vector< TObject * > * m_trackGraphics
TVector3 GlobalPosition
TVector3 GlobalDirection