ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
graphics
VP1
VP1Systems
VP1TrackSystems
src
VP1TrackSanity.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
7
// //
8
// Implementation of class VP1TrackSanity //
9
// //
10
// Authors: Edward Moyse (Edward.Moyse@cern.ch) //
11
// Thomas H. Kittelmann (Thomas.Kittelmann@cern.ch) //
12
// Initial version: March 2008 //
13
// //
15
16
#include "
VP1TrackSystems/VP1TrackSanity.h
"
17
#include "
VP1Utils/VP1DetInfo.h
"
18
#include "
TrkTrack/Track.h
"
19
#include "
TrkTrack/TrackStateOnSurface.h
"
20
#include "
TrkMeasurementBase/MeasurementBase.h
"
21
#include "
TrkRIO_OnTrack/RIO_OnTrack.h
"
22
#include "
TrkPrepRawData/PrepRawData.h
"
23
#include "
TrkSurfaces/Surface.h
"
24
25
//____________________________________________________________________
26
class
VP1TrackSanity::Imp
{
27
public
:
28
};
29
30
//____________________________________________________________________
31
VP1TrackSanity::VP1TrackSanity
(
IVP1System
*sys)
32
:
VP1HelperClassBase
(sys,
"VP1TrackSanity"
),
m_d
(new
Imp
)
33
{
34
messageVerbose
(
"constructor"
);
35
if
(sys)
36
VP1DetInfo::ensureInit
(sys);
37
}
38
39
//____________________________________________________________________
40
VP1TrackSanity::~VP1TrackSanity
()
41
{
42
delete
m_d
;
43
}
44
45
//____________________________________________________________________
46
bool
VP1TrackSanity::isSafe
(
const
Trk::TrackStateOnSurface
* tsos )
47
{
48
if
(!tsos)
49
return
false
;
50
//Fixme: More!
51
return
true
;
52
}
53
54
//____________________________________________________________________
55
bool
VP1TrackSanity::isSafe
(
const
Trk::TrackParameters
* pars )
56
{
57
if
(!pars)
58
return
false
;
59
//Fixme: More!
60
return
true
;
61
}
62
63
//____________________________________________________________________
64
bool
VP1TrackSanity::isSafe
(
const
Trk::MeasurementBase
* meas )
65
{
66
if
(!meas)
67
return
false
;
68
if
(!meas->
associatedSurface
().
associatedDetectorElement
())
69
return
false
;
70
if
(!meas->
associatedSurface
().
associatedDetectorElementIdentifier
().
is_valid
())
71
return
false
;
72
const
Trk::RIO_OnTrack
* rio =
dynamic_cast<
const
Trk::RIO_OnTrack
*
>
(meas);
73
if
(rio) {
74
if
(
VP1DetInfo::isUnsafe
(rio->
identify
()))
75
return
false
;
76
if
( !rio->
detectorElement
() )
77
return
false
;
78
}
79
return
true
;
80
}
81
82
//____________________________________________________________________
83
bool
VP1TrackSanity::isSafe
(
const
Trk::RIO_OnTrack
* rio )
84
{
85
if
(!rio)
86
return
false
;
87
//TK: The following is mainly guess work - we need master Ed to implement really useful stuff!
88
if
(
VP1DetInfo::isUnsafe
(rio->
identify
()))
89
return
false
;
90
91
if
(!rio->
detectorElement
())
92
return
false
;
93
return
true
;
94
}
95
96
//____________________________________________________________________
97
bool
VP1TrackSanity::isSafe
(
const
Trk::PrepRawData
* prd )
98
{
99
if
(!prd)
100
return
false
;
101
if
(
VP1DetInfo::isUnsafe
(prd->
identify
()))
102
return
false
;
103
return
true
;
104
}
MeasurementBase.h
PrepRawData.h
RIO_OnTrack.h
Surface.h
TrackStateOnSurface.h
Track.h
VP1DetInfo.h
VP1TrackSanity.h
IVP1System
Definition
IVP1System.h:36
Identifier::is_valid
bool is_valid() const
Check if id is in a valid state.
Trk::MeasurementBase
This class is the pure abstract base class for all fittable tracking measurements.
Definition
MeasurementBase.h:58
Trk::MeasurementBase::associatedSurface
virtual const Surface & associatedSurface() const =0
Interface method to get the associated Surface.
Trk::PrepRawData
Definition
PrepRawData.h:62
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
Trk::RIO_OnTrack
Class to handle RIO On Tracks ROT) for InDet and Muons, it inherits from the common MeasurementBase.
Definition
RIO_OnTrack.h:70
Trk::RIO_OnTrack::detectorElement
virtual const TrkDetElementBase * detectorElement() const =0
returns the detector element, assoicated with the PRD of this class
Trk::RIO_OnTrack::identify
Identifier identify() const
return the identifier -extends MeasurementBase
Definition
RIO_OnTrack.h:152
Trk::Surface::associatedDetectorElement
const TrkDetElementBase * associatedDetectorElement() const
return associated Detector Element
Trk::Surface::associatedDetectorElementIdentifier
Identifier associatedDetectorElementIdentifier() const
return Identifier of the associated Detector Element
Trk::TrackStateOnSurface
represents the track state (measurement, material, fit parameters and quality) at a surface.
Definition
TrackStateOnSurface.h:71
VP1DetInfo::isUnsafe
static bool isUnsafe(const Identifier &)
Definition
VP1DetInfo.cxx:169
VP1DetInfo::ensureInit
static void ensureInit(IVP1System *)
Definition
VP1DetInfo.h:49
VP1HelperClassBase::VP1HelperClassBase
VP1HelperClassBase(IVP1System *sys=0, QString helpername="")
Definition
VP1HelperClassBase.cxx:28
VP1HelperClassBase::messageVerbose
void messageVerbose(const QString &) const
Definition
VP1HelperClassBase.cxx:78
VP1TrackSanity::Imp
Definition
VP1TrackSanity.cxx:26
VP1TrackSanity::isSafe
static bool isSafe(const Trk::TrackStateOnSurface *)
Definition
VP1TrackSanity.cxx:46
VP1TrackSanity::m_d
Imp * m_d
Definition
VP1TrackSanity.h:52
VP1TrackSanity::~VP1TrackSanity
virtual ~VP1TrackSanity()
Definition
VP1TrackSanity.cxx:40
VP1TrackSanity::VP1TrackSanity
VP1TrackSanity(IVP1System *sys=0)
Definition
VP1TrackSanity.cxx:31
Trk::TrackParameters
ParametersBase< TrackParametersDim, Charged > TrackParameters
Definition
Tracking/TrkEvent/TrkParameters/TrkParameters/TrackParameters.h:27
Generated on
for ATLAS Offline Software by
1.17.0