 |
Belle II Software
release-05-01-25
|
13 #include <tracking/trackFindingVXD/trackQualityEstimators/QualityEstimatorBase.h>
14 #include <framework/datastore/StoreArray.h>
15 #include <tracking/dataobjects/RecoTrack.h>
16 #include <tracking/spacePointCreation/SpacePoint.h>
23 class QualityEstimatorMC :
public QualityEstimatorBase {
29 typedef std::pair<MCRecoTrackIndex, NMatches>
MatchInfo;
38 bool strictQualityIndicator =
true,
bool mva_target =
false):
49 virtual double estimateQuality(std::vector<SpacePoint const*>
const& measurements)
final;
58 void setClustersNames(
const std::string& svdClustersName,
const std::string& pxdClustersName)
std::pair< MCRecoTrackIndex, NMatches > MatchInfo
typedef for MatchInfo
QualityEstimatorMC(const std::string &mcRecoTracksStoreArrayName="MCRecoTracks", bool strictQualityIndicator=true, bool mva_target=false)
Constructor.
Container for complete fit/estimation results.
virtual QualityEstimationResults estimateQualityAndProperties(std::vector< SpacePoint const * > const &measurements) override final
additionally return momentum_truth if it is a perfect match to a single MCRecoTrack
std::string m_pxdClustersName
PXD clusters StoreArray name.
std::string m_svdClustersName
SVD clusters StoreArray name.
MatchInfo getBestMatchToMCClusters(std::vector< SpacePoint const * > const &measurements)
Get MCRecoTrack index of best matching tracks and number of matched MC clusters which can be matched ...
std::string m_mcRecoTracksStoreArrayName
MCRecoTracks StoreArray name.
bool m_mva_target
If true the SPTCs containing all the SVDCluster of the corresponding MCRecoTrack and no other SVDClus...
virtual double estimateQuality(std::vector< SpacePoint const * > const &measurements) final
Performing MC based quality estimation.
Abstract base class for different kinds of events.
double calculateQualityIndicator(unsigned int nClusters, MatchInfo &match)
Calculate MC qualityIndicator based on MatchInfo of best matched MCRecoTrack.
bool m_strictQualityIndicator
If true only SPTCs containing SVDClusters corresponding to a single MCRecoTrack get a QI !...
void setClustersNames(const std::string &svdClustersName, const std::string &pxdClustersName)
Setter for StoreArray names of SVD and PXD clusters.
unsigned int NMatches
typedef for counter of number of matches
int MCRecoTrackIndex
typedef for MCRecoTrackIndex
Accessor to arrays stored in the data store.
BaseClass for QualityEstimators.
MatchInfo m_match
stores the current match for optional return values
StoreArray< RecoTrack > m_mcRecoTracks
the storeArray for RecoTracks as member