Belle II Software  release-08-01-10
CDCMCTrackLookUp Class Reference

Specialisation of the lookup for the truth values of reconstructed tracks. More...

#include <CDCMCTrackLookUp.h>

Inheritance diagram for CDCMCTrackLookUp:
Collaboration diagram for CDCMCTrackLookUp:

Public Member Functions

 CDCMCTrackLookUp ()=default
 Default constructor, needs to be public for initialization in CDCMCManager.
 
 CDCMCTrackLookUp (CDCMCTrackLookUp &)=delete
 Singleton: Delete copy constructor and assignment operator.
 
CDCMCTrackLookUpoperator= (const CDCMCTrackLookUp &)=delete
 Operator =.
 
void clear ()
 Clears all Monte Carlo information left from the last event.
 
MCTrackIdPurityPair getHighestPurity (const CDCTrack &hits) const
 Get the track id with the highest corresponding purity.
 
ITrackType getMCTrackId (const CDCTrack *ptrHits) const
 Getter for the Monte Carlo track id matched to this collection of hits. More...
 
int getCorrectRLVote (const CDCTrack *ptrHits) const
 Getter for the difference of correct versus incorrect right left passage informations.
 
double getRLPurity (const CDCTrack *ptrHits) const
 Getter for the right left passge purity which respects the forward backward reconstruction.
 
const MCParticlegetMCParticle (const CDCTrack *ptrHits) const
 Getter for the mc particle matched to this collection of hits.
 
const CDCHitgetFirstHit (const CDCTrack *ptrHits) const
 Getter for the first hit in the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
const CDCHitgetLastHit (const CDCTrack *ptrHits) const
 Getter for the last hit in the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getFirstInTrackId (const CDCTrack *ptrHits) const
 Getter for in track id for the first hit in the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getLastInTrackId (const CDCTrack *ptrHits) const
 Getter for in track id for the last hit in the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getFirstInTrackSegmentId (const CDCTrack *ptrHits) const
 Getter for in track collection of hits id for the first hit in the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getLastInTrackSegmentId (const CDCTrack *ptrHits) const
 Getter for in track collection of hits id for the last hit in the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getFirstNPassedSuperLayers (const CDCTrack *ptrHits) const
 Getter for number of passed superlayer till the first hit the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getLastNPassedSuperLayers (const CDCTrack *ptrHits) const
 Getter for number of passed superlayer till the last hit the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getFirstNLoops (const CDCTrack *ptrHits) const
 Getter for number of loops till the first hit the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
Index getLastNLoops (const CDCTrack *ptrHits) const
 Getter for number of loops till the last hit the collection of hits which has the Monte Carlo track id matched to this collection of hits.
 
EForwardBackward isForwardOrBackwardToMCTrack (const CDCTrack *ptrHits) const
 Returns the orientation of the collection of hits relative to its matched track. More...
 
EForwardBackward areAlignedInMCTrack (const CDCTrack *ptrFromHits, const CDCTrack *ptrToHits) const
 Returns if the second collection of hits follows the first collection of hits in their common Monte Carlo track. More...
 
EForwardBackward areAlignedInMCTrackWithRLCheck (const CDCTrack *ptrFromHits, const CDCTrack *ptrToHits) const
 Returns if the second collection of hits follows the first collection of hits in their common Monte Carlo track. More...
 
CDCTrajectory3D getTrajectory3D (const CDCTrack *ptrHits) const
 Returns the trajectory of the collection of hits.
 

Static Public Member Functions

static const CDCMCTrackLookUpgetInstance ()
 Getter for the singletone instance.
 

Private Member Functions

std::map< ITrackType, size_t > getHitCountByMCTrackId (const CDCTrack &hits) const
 Fill a map with the number of hits for each track id contained in the given hit range.
 

Private Attributes

float m_minimalMatchPurity
 Threshold for the purity that must be exceeded to be considered as a match.
 
float m_minimalRLPurity
 Threshold for the correct fraction of right left passage informations to be considered a match.
 

Detailed Description

Specialisation of the lookup for the truth values of reconstructed tracks.

Definition at line 23 of file CDCMCTrackLookUp.h.

Member Function Documentation

◆ areAlignedInMCTrack()

EForwardBackward areAlignedInMCTrack ( const CDCTrack ptrFromHits,
const CDCTrack ptrToHits 
) const
inherited

Returns if the second collection of hits follows the first collection of hits in their common Monte Carlo track.

  • Returns EForwardBackward::c_Invalid if the collection of hits is not matched in the same Monte Carlo track.
  • Returns EForwardBackward::c_Forward if both collections of hits are coaligned with the Monte Carlo track and the second collection of hits comes after the first.
  • Returns EForwardBackward::c_Backward if both collections of hits are anticoaligned with the Monte Carlo track and the second collection of hits comes after the first in the reversed sense.

Check if the segments are in the same track

Definition at line 168 of file CDCMCHitCollectionLookUp.icc.h.

◆ areAlignedInMCTrackWithRLCheck()

EForwardBackward areAlignedInMCTrackWithRLCheck ( const CDCTrack ptrFromHits,
const CDCTrack ptrToHits 
) const
inherited

Returns if the second collection of hits follows the first collection of hits in their common Monte Carlo track.

Also checks that the majority of the right left passage informations agrees with the forward backward information

Definition at line 176 of file CDCMCHitCollectionLookUp.icc.h.

◆ getMCTrackId()

ITrackType getMCTrackId ( const CDCTrack ptrHits) const
inherited

Getter for the Monte Carlo track id matched to this collection of hits.

On first encounter of a collection of hits this evaluates the purities for the contained track ids. The match is valid if the highest purity exceeds the s_minimalMatchPurity threshold. In case the highest purity is to low to result will be INVALID_ITRACK. To result is stored in member map object for fast look up for repeated calls.

Definition at line 92 of file CDCMCHitCollectionLookUp.icc.h.

◆ isForwardOrBackwardToMCTrack()

EForwardBackward isForwardOrBackwardToMCTrack ( const CDCTrack ptrHits) const
inherited

Returns the orientation of the collection of hits relative to its matched track.

  • Returns EForwardBackward::c_Invalid if the collection of hits is not matched to any track.
  • Returns EForwardBackward::c_Forward if the collection of hits is coaligned with the matched track.
  • Returns EForwardBackward::c_Backward if the collection of hits is coaligned with the matched track interpreted in reverse.
  • Returns EForwardBackward::c_Unknown if the matter cannot be decided.

Definition at line 155 of file CDCMCHitCollectionLookUp.icc.h.


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