ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Trk::MeasurementTypeID Class Reference

classifies a MeasurementBase into one of the known inherited flavours or one of the detector types for ROT/CompROT. More...

#include <MeasurementTypeID.h>

Collaboration diagram for Trk::MeasurementTypeID:

Public Member Functions

 MeasurementTypeID (const AtlasDetectorID *id)
 Constructor. More...
 
Trk::TrackState::MeasurementType defineType (const MeasurementBase *) const
 createPerigee method - returned by object More...
 

Private Member Functions

 MeasurementTypeID ()
 

Private Attributes

const AtlasDetectorIDm_idHelper
 

Detailed Description

classifies a MeasurementBase into one of the known inherited flavours or one of the detector types for ROT/CompROT.

Author
Wolfgang Liebig

Definition at line 26 of file MeasurementTypeID.h.

Constructor & Destructor Documentation

◆ MeasurementTypeID() [1/2]

Trk::MeasurementTypeID::MeasurementTypeID ( const AtlasDetectorID id)
inline

Constructor.

Definition at line 30 of file MeasurementTypeID.h.

30 : m_idHelper(id) {}

◆ MeasurementTypeID() [2/2]

Trk::MeasurementTypeID::MeasurementTypeID ( )
inlineprivate

Definition at line 36 of file MeasurementTypeID.h.

36 : m_idHelper(nullptr) {}

Member Function Documentation

◆ defineType()

Trk::TrackState::MeasurementType Trk::MeasurementTypeID::defineType ( const MeasurementBase meas) const

createPerigee method - returned by object

Definition at line 20 of file MeasurementTypeID.cxx.

20  {
21 
22  if (meas == nullptr) { return Trk::TrackState::unidentified;
23 }
24  const Trk::RIO_OnTrack* testROT=nullptr;
25  Trk::RoT_Extractor::extract( testROT, meas); // get std and competing ROTs
26  if (testROT!=nullptr) {
27  if (!( testROT->identify().is_valid())) { return Trk::TrackState::unidentified;
28 }
29  if (m_idHelper->is_pixel(testROT->identify())) {
31  } if (m_idHelper->is_sct(testROT->identify())) {
32  return Trk::TrackState::SCT;
33  } else if (m_idHelper->is_trt(testROT->identify())) {
34  return Trk::TrackState::TRT;
35  } else if (m_idHelper->is_mdt(testROT->identify())) {
36  return Trk::TrackState::MDT;
37  } else if (m_idHelper->is_tgc(testROT->identify())) {
38  return Trk::TrackState::TGC;
39  } else if (m_idHelper->is_rpc(testROT->identify())) {
40  return Trk::TrackState::RPC;
41  } else if (m_idHelper->is_csc(testROT->identify())) {
42  return Trk::TrackState::CSC;
43  } else if (m_idHelper->is_stgc(testROT->identify())) {
44  return Trk::TrackState::STGC;
45  } else if (m_idHelper->is_mm(testROT->identify())) {
46  return Trk::TrackState::MM;
47  } else { return Trk::TrackState::unidentified;
48 }
49  }
50 
51  const Trk::PseudoMeasurementOnTrack* testPseudo
52  = dynamic_cast<const Trk::PseudoMeasurementOnTrack*>(meas);
53  if (testPseudo!=nullptr) { return Trk::TrackState::Pseudo;
54 }
55  const Trk::Segment* testSegment
56  = dynamic_cast<const Trk::Segment*>(meas);
57  if (testSegment!=nullptr) { return Trk::TrackState::Segment;
58 }
59  const Trk::VertexOnTrack* testVertex
60  = dynamic_cast<const Trk::VertexOnTrack*>(meas);
61  if (testVertex!=nullptr) { return Trk::TrackState::Vertex;
62 }
63  const Trk::SpacePoint* testSpacePoint
64  = dynamic_cast<const Trk::SpacePoint*>(meas);
65  if (testSpacePoint!=nullptr) { return Trk::TrackState::SpacePoint;
66 }
68 }

Member Data Documentation

◆ m_idHelper

const AtlasDetectorID* Trk::MeasurementTypeID::m_idHelper
private

Definition at line 37 of file MeasurementTypeID.h.


The documentation for this class was generated from the following files:
AtlasDetectorID::is_pixel
bool is_pixel(Identifier id) const
Definition: AtlasDetectorID.h:760
Trk::SpacePoint
Definition: Tracking/TrkEvent/TrkSpacePoint/TrkSpacePoint/SpacePoint.h:35
Trk::TrackState::Vertex
@ Vertex
Definition: TrackStateDefs.h:36
AtlasDetectorID::is_rpc
bool is_rpc(Identifier id) const
Definition: AtlasDetectorID.h:875
Trk::TrackState::RPC
@ RPC
Definition: TrackStateDefs.h:33
Trk::TrackState::Pixel
@ Pixel
Definition: TrackStateDefs.h:28
Trk::TrackState::TRT
@ TRT
Definition: TrackStateDefs.h:30
AtlasDetectorID::is_csc
bool is_csc(Identifier id) const
Definition: AtlasDetectorID.h:891
Trk::TrackState::Segment
@ Segment
Definition: TrackStateDefs.h:37
AtlasDetectorID::is_sct
bool is_sct(Identifier id) const
Definition: AtlasDetectorID.h:770
Trk::TrackState::MDT
@ MDT
Definition: TrackStateDefs.h:31
AtlasDetectorID::is_mm
bool is_mm(Identifier id) const
Definition: AtlasDetectorID.h:913
Trk::RIO_OnTrack
Definition: RIO_OnTrack.h:70
Trk::TrackState::TGC
@ TGC
Definition: TrackStateDefs.h:34
AtlasDetectorID::is_trt
bool is_trt(Identifier id) const
Definition: AtlasDetectorID.h:782
Trk::TrackState::unidentified
@ unidentified
Definition: TrackStateDefs.h:27
Identifier::is_valid
bool is_valid() const
Check if id is in a valid state.
Trk::TrackState::MM
@ MM
Definition: TrackStateDefs.h:42
Trk::RoT_Extractor::extract
static void extract(std::vector< const RIO_OnTrack * > &rots, const std::vector< const MeasurementBase * > &measurements)
Trk::PseudoMeasurementOnTrack
Class to handle pseudo-measurements in fitters and on track objects.
Definition: PseudoMeasurementOnTrack.h:44
Trk::TrackState::SpacePoint
@ SpacePoint
Definition: TrackStateDefs.h:38
Trk::TrackState::Pseudo
@ Pseudo
Definition: TrackStateDefs.h:35
AtlasDetectorID::is_tgc
bool is_tgc(Identifier id) const
Definition: AtlasDetectorID.h:902
Trk::Segment
Definition: TrkEvent/TrkSegment/TrkSegment/Segment.h:56
Trk::MeasurementTypeID::m_idHelper
const AtlasDetectorID * m_idHelper
Definition: MeasurementTypeID.h:37
Trk::VertexOnTrack
Definition: VertexOnTrack.h:45
Trk::TrackState::CSC
@ CSC
Definition: TrackStateDefs.h:32
Trk::RIO_OnTrack::identify
virtual Identifier identify() const final
return the identifier -extends MeasurementBase
Definition: RIO_OnTrack.h:155
AtlasDetectorID::is_stgc
bool is_stgc(Identifier id) const
Definition: AtlasDetectorID.h:924
Trk::TrackState::SCT
@ SCT
Definition: TrackStateDefs.h:29
Trk::TrackState::STGC
@ STGC
Definition: TrackStateDefs.h:41
AtlasDetectorID::is_mdt
bool is_mdt(Identifier id) const
Definition: AtlasDetectorID.h:859