ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkEvent
TrkEventUtils
src
IdentifierExtractor.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// IdentifierExtractor.cxx, (c) ATLAS Detector software //
8
9
#include "
TrkEventUtils/IdentifierExtractor.h
"
10
#include "
TrkCompetingRIOsOnTrack/CompetingRIOsOnTrack.h
"
11
#include "
TrkMeasurementBase/MeasurementBase.h
"
12
13
void
Trk::IdentifierExtractor::extract
(std::vector<Identifier>& ids,
const
std::vector<const Trk::MeasurementBase*>& measurements)
14
{
15
using namespace
std
;
16
vector<const Trk::MeasurementBase*>::const_iterator
it = measurements.begin();
17
vector<const Trk::MeasurementBase*>::const_iterator
itEnd = measurements.end();
18
ids.clear();
19
for
(; it!=itEnd ; ++it)
20
{
21
Identifier
id
=
extract
(*it);
22
if
(
id
.is_valid() ) { ids.push_back(
id
);}
23
}
24
}
25
26
Identifier
Trk::IdentifierExtractor::extract
(
const
Trk::MeasurementBase
* m)
27
{
28
Identifier
id;
29
if
(m->type(
Trk::MeasurementBaseType::RIO_OnTrack
)) {
30
const
Trk::RIO_OnTrack
* rot =
static_cast<
const
Trk::RIO_OnTrack
*
>
(m);
31
id
= rot->
identify
();
32
}
else
if
(m->type(
Trk::MeasurementBaseType::CompetingRIOsOnTrack
)) {
33
const
Trk::CompetingRIOsOnTrack
* comprot =
34
static_cast<
const
Trk::CompetingRIOsOnTrack
*
>
(m);
35
id
= comprot->
rioOnTrack
(comprot->
indexOfMaxAssignProb
()).
identify
();
36
}
else
{
37
id
.clear();
38
}
39
return
id;
40
}
41
CompetingRIOsOnTrack.h
IdentifierExtractor.h
MeasurementBase.h
Trk::CompetingRIOsOnTrack
Base class for all CompetingRIOsOnTack implementations, extends the common MeasurementBase.
Definition
CompetingRIOsOnTrack.h:64
Trk::CompetingRIOsOnTrack::indexOfMaxAssignProb
unsigned int indexOfMaxAssignProb() const
Index of the ROT with the highest assignment probability.
Definition
CompetingRIOsOnTrack.cxx:100
Trk::CompetingRIOsOnTrack::rioOnTrack
virtual const RIO_OnTrack & rioOnTrack(unsigned int) const =0
returns the RIO_OnTrack (also known as ROT) objects depending on the integer.
Trk::IdentifierExtractor::extract
static void extract(std::vector< Identifier > &ids, const std::vector< const MeasurementBase * > &measurements)
Definition
IdentifierExtractor.cxx:13
Trk::MeasurementBase
This class is the pure abstract base class for all fittable tracking measurements.
Definition
MeasurementBase.h:58
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::identify
Identifier identify() const
return the identifier -extends MeasurementBase
Definition
RIO_OnTrack.h:152
vector
Definition
MultiHisto.h:13
Identifier
Definition
IdentifierFieldParser.cxx:14
Trk::MeasurementBaseType::RIO_OnTrack
@ RIO_OnTrack
Definition
MeasurementBase.h:49
Trk::MeasurementBaseType::CompetingRIOsOnTrack
@ CompetingRIOsOnTrack
Definition
MeasurementBase.h:50
std
STL namespace.
Generated on
for ATLAS Offline Software by
1.17.0