10 #include <mdst/dataobjects/MCParticle.h>
11 #include <mdst/dataobjects/TrackFitResult.h>
13 #include <tracking/dataobjects/RecoTrack.h>
44 enum class PRToMCMatchInfo { c_Invalid, c_Matched, c_Clone, c_Background, c_Ghost };
56 const std::string& prRecoTrackStoreArrayName =
"");
65 const float& efficiency)
const;
73 const float& purity)
const;
115 float efficiency = NAN;
Provides a type-safe way to pass members of the chargedStableSet set.
static const ChargedStable pion
charged pion particle
A Class to store the Monte Carlo particle information.
This is the Reconstruction Event-Data Model Track.
Values of the result of a track fit with a given particle hypothesis.
Class to provide convenient methods to look up matching information between pattern recognition and M...
PRToMCMatchInfo extractPRToMCMatchInfo(const RecoTrack &prRecoTrack, const RecoTrack *mcRecoTrack, const float &purity) const
Helper function to assume the correct matching category for the pattern recognition tracks from the i...
bool isMissingMCRecoTrack(const RecoTrack &mcRecoTrack) const
Checks, if the Monte Carlo Track has no corresponding pattern recognition track.
float getMatchedPurity(const RecoTrack &recoTrack) const
Get the hit purity of the matched track.
const TrackFitResult * getRelatedTrackFitResult(const RecoTrack &prRecoTrack, Const::ChargedStable chargedStable=Const::pion) const
Looks up the TrackFitResult of a pattern recognition track.
const RecoTrack * getRelatedMCRecoTrack(const RecoTrack &prRecoTrack) const
Looks for a related Monte Carlo track for the given pattern recognition track and return it if found.
MCToPRMatchInfo
Matching categories for the Monte Carlo tracks.
bool isMergedMCRecoTrack(const RecoTrack &mcRecoTrack) const
Checks, if the Monte Carlo Track has been merged into another pattern recognition track.
float getRelatedPurity(const RecoTrack &prRecoTrack) const
Getter for the absolute value of the purity that is stored in the purity relation from pattern recogn...
const MCParticle * getRelatedMCParticle(const RecoTrack &recoTrack) const
Looks for a relation of the given track to a Monte Carlo particle.
bool isPRRecoTrack(const RecoTrack &recoTrack) const
Checks if the given track is in the pattern recognition StoreArray.
std::string m_prTracksStoreArrayName
Name of the StoreArray of Pattern recognition tracks.
const RecoTrack * getMatchedMCRecoTrack(const RecoTrack &prRecoTrack) const
Looks up the matched Monte Carlo track for the given pattern recognition track.
PRToMCMatchInfo getPRToMCMatchInfo(const RecoTrack &prRecoTrack) const
Gets the matching category of pattern recognition track.
bool isClonePRRecoTrack(const RecoTrack &prRecoTrack) const
Checks, if the pattern recognition track is a clone of an other pattern recognition track.
MCToPRMatchInfo getMCToPRMatchInfo(const RecoTrack &mcRecoTrack) const
Gets the matching category of Monte Carlo track.
const std::string & getMCTracksStoreArrayName() const
Getter for the name of the StoreArray of the Monte Carlo tracks.
const std::string & getPRTracksStoreArrayName() const
Getter for the name of the StoreArray of the pattern recognition tracks.
bool isBackgroundPRRecoTrack(const RecoTrack &prRecoTrack) const
Checks, if the pattern recognition track is mostly made from background hits.
bool isMCRecoTrack(const RecoTrack &recoTrack) const
Checks if the given track is in the Monte Carlo track StoreArray.
const RecoTrack * getMatchedPRRecoTrack(const RecoTrack &mcRecoTrack) const
Looks up the matched pattern recognition track for the given Monte Carlo track.
std::string m_mcTracksStoreArrayName
Name of the StoreArray of Monte Carlo tracks.
const RecoTrack * getRelatedPRRecoTrack(const RecoTrack &mcRecoTrack) const
Looks for a related pattern recognition track for the given Monte Carlo track and return it if found.
TrackMatchLookUp(const std::string &mcRecoTrackStoreArrayName, const std::string &prRecoTrackStoreArrayName="")
Constructor taking the names of the StoreArrays containing the Monte Carlo tracks and the pattern rec...
float getMatchedEfficiency(const RecoTrack &recoTrack) const
Get the hit efficiency of the matched track.
float getRelatedEfficiency(const RecoTrack &mcRecoTrack) const
Getter for the absolute value of the efficiency that is stored in the efficiency relation from Monte ...
bool isGhostPRRecoTrack(const RecoTrack &prRecoTrack) const
Checks, if the pattern recognition track has contributions of different Monte Carlo tracks and/or bac...
bool isMatchedMCRecoTrack(const RecoTrack &mcRecoTrack) const
Checks, if the Monte Carlo Track was matched to a pattern recognition track.
MCToPRMatchInfo extractMCToPRMatchInfo(const RecoTrack &mcRecoTrack, const RecoTrack *prRecoTrack, const float &efficiency) const
Helper function to assume the correct matching category for the Monte Carlo tracks from the informati...
PRToMCMatchInfo
Matching categories for the pattern recognition tracks.
bool isMatchedPRRecoTrack(const RecoTrack &prRecoTrack) const
Checks, if the pattern recognition track was matched to a Monte Carlo track.
Abstract base class for different kinds of events.