ATLAS Offline Software
Loading...
Searching...
No Matches
IHGTD_ExpertTrackTimeAccessor Class Referenceabstract

#include <IHGTD_ExpertTrackTimeAccessor.h>

Inheritance diagram for IHGTD_ExpertTrackTimeAccessor:
Collaboration diagram for IHGTD_ExpertTrackTimeAccessor:

Public Member Functions

 DeclareInterfaceID (IHGTD_ExpertTrackTimeAccessor, 1, 0)
virtual bool expertHasTime (const xAOD::TrackParticle &track_particle) const =0
 Not each track has a time defined.
virtual float expertTime (const xAOD::TrackParticle &track_particle) const =0
 Returns the reconstructed time assigned to the track.
virtual float expertTimeRes (const xAOD::TrackParticle &track_particle) const =0
 Assuming gaussian behaviour for the track time resolution, this function retuns the uncertainty on the track time that is defined by the per hit resolutin and the number of hits associated to the given track by the relation sigma_track = sigma_hit / sqrt(n_hits).
virtual float fracPrimaryHits (const xAOD::TrackParticle &track_particle) const =0
 Returns the fraction of the hits used for the track time that were left by a primary particle.
virtual int numberPotentialPrimaryHits (const xAOD::TrackParticle &track_particle) const =0
 Returns the number of HGTD surfaces on which a hit from a primary particle was expected for this track.
virtual float getTruthTime (const xAOD::TruthParticle &truth_particle) const
 Returns the time of the associated truth vertex, if one can be found.
virtual float getTruthTime (const xAOD::TrackParticle &track_particle) const
virtual float getTruthTime (const xAOD::TruthVertex &truth_vertex) const

Detailed Description

Definition at line 30 of file IHGTD_ExpertTrackTimeAccessor.h.

Member Function Documentation

◆ DeclareInterfaceID()

IHGTD_ExpertTrackTimeAccessor::DeclareInterfaceID ( IHGTD_ExpertTrackTimeAccessor ,
1 ,
0  )

◆ expertHasTime()

virtual bool IHGTD_ExpertTrackTimeAccessor::expertHasTime ( const xAOD::TrackParticle & track_particle) const
pure virtual

Not each track has a time defined.

Before accessing the time, check with this function, if the track has a time assigned.

Expert use only, see the warning in the file header.

◆ expertTime()

virtual float IHGTD_ExpertTrackTimeAccessor::expertTime ( const xAOD::TrackParticle & track_particle) const
pure virtual

Returns the reconstructed time assigned to the track.

The time has already been corrected for time of flight relative to the reconstructed z0 position of the track.

Expert use only, see the warning in the file header.

◆ expertTimeRes()

virtual float IHGTD_ExpertTrackTimeAccessor::expertTimeRes ( const xAOD::TrackParticle & track_particle) const
pure virtual

Assuming gaussian behaviour for the track time resolution, this function retuns the uncertainty on the track time that is defined by the per hit resolutin and the number of hits associated to the given track by the relation sigma_track = sigma_hit / sqrt(n_hits).

Expert use only, see the warning in the file header.

◆ fracPrimaryHits()

virtual float IHGTD_ExpertTrackTimeAccessor::fracPrimaryHits ( const xAOD::TrackParticle & track_particle) const
pure virtual

Returns the fraction of the hits used for the track time that were left by a primary particle.

◆ getTruthTime() [1/3]

virtual float IHGTD_ExpertTrackTimeAccessor::getTruthTime ( const xAOD::TrackParticle & track_particle) const
inlinevirtual

Definition at line 92 of file IHGTD_ExpertTrackTimeAccessor.h.

92 {
93 float truth_time = -999.;
94 auto truth_ptcl = xAOD::TruthHelpers::getTruthParticle(track_particle);
95 if (truth_ptcl) {
96 auto production_vx = truth_ptcl->prodVtx();
97 if (production_vx) {
98 truth_time = production_vx->t() / Gaudi::Units::c_light;
99 }
100 }
101 return truth_time;
102 }
const xAOD::TruthParticle * getTruthParticle(const xAOD::IParticle &p)
Return the truthParticle associated to the given IParticle (if any).

◆ getTruthTime() [2/3]

virtual float IHGTD_ExpertTrackTimeAccessor::getTruthTime ( const xAOD::TruthParticle & truth_particle) const
inlinevirtual

Returns the time of the associated truth vertex, if one can be found.

A default value of -999 is returned if not.

Definition at line 83 of file IHGTD_ExpertTrackTimeAccessor.h.

83 {
84 float truth_time = -999.;
85 auto production_vx = truth_particle.prodVtx();
86 if (production_vx) {
87 truth_time = production_vx->t() / Gaudi::Units::c_light;
88 }
89 return truth_time;
90 };
const TruthVertex_v1 * prodVtx() const
The production vertex of this particle.

◆ getTruthTime() [3/3]

virtual float IHGTD_ExpertTrackTimeAccessor::getTruthTime ( const xAOD::TruthVertex & truth_vertex) const
inlinevirtual

Definition at line 104 of file IHGTD_ExpertTrackTimeAccessor.h.

104 {
105 return truth_vertex.t() / Gaudi::Units::c_light;
106 }
float t() const
Vertex time.

◆ numberPotentialPrimaryHits()

virtual int IHGTD_ExpertTrackTimeAccessor::numberPotentialPrimaryHits ( const xAOD::TrackParticle & track_particle) const
pure virtual

Returns the number of HGTD surfaces on which a hit from a primary particle was expected for this track.


The documentation for this class was generated from the following file: