11#include <tracking/spacePointCreation/SpacePointTrackCand.h>
12#include <tracking/spacePointCreation/MCVXDPurityInfo.h>
13#include <tracking/trackFindingVXD/analyzingTools/TCType.h>
16#include <Math/Vector3D.h>
64 newTC.
tcType = isReference ? TCType::Reference : TCType::Unclassified;
73 if (aTC.assignedTC ==
nullptr) {
82 unsigned int ndfThreshold)
87 if (testPurity.first != refPurity.first) {
return TCType::Unclassified; }
89 if (testPurity.second < purityThreshold) {
return TCType::Ghost; }
93 if (testPurity.second < 1.f) {
return TCType::Contaminated; }
97 return TCType::Perfect;
138 otherTC->
tcType = TCType::Clone;
simple class storing infos relevant for a TC for analyzing it.
static TCType::Type classifyTC(AnalizerTCInfo &referenceTC, AnalizerTCInfo &testTC, double purityThreshold, unsigned int ndfThreshold)
for given pair of TCs their compatibility will be checked and the testTC classified,...
AnalizerTCInfo * assignedTC
for reference TC: best test TC found, for test TC, compatible reference TC found
MCVXDPurityInfo assignedID
stores the iD of the particle and knows the purity for it
void pairUp(AnalizerTCInfo *otherTC)
links otherTC to this one
void assignTCs(AnalizerTCInfo *otherTC)
function for assigning TCs to each other
const SpacePointTrackCand * tC
a link to the TC itself
static void markUnused(std::vector< AnalizerTCInfo > &tcs, TCType::Type newType)
find unpaired tcs and mark them with given type
AnalizerTCInfo()
constructor, makes sure that pointers are on nullptr until set
ROOT::Math::XYZVector momSeed
carries the momentum vector at the position of the seed hit (typically the innermost hit)
static AnalizerTCInfo createTC(bool isReference, const MCVXDPurityInfo &iD, SpacePointTrackCand &aTC)
static function for correctly creating TrackCandidates
void discardTC()
function for discarding the old TC.
ROOT::Math::XYZVector posSeed
carries the global coordinates of the position of the seed hit (typically the innermost hit)
TCType::Type getType() const
a type-identifier function
TCType::Type tcType
classifies attached TC
The MC VXD Purity info container class.
std::pair< int, float > getPurity() const
getter - returns overall purity (.second) for this particleID (.first).
unsigned int getNClustersTotal() const
returns total number of clusters the trackCandidate had
unsigned int getNDFTotal() const
getter - returns number of degrees of freedom for all Clusters in TC total
Storage for (VXD) SpacePoint-based track candidates.
const ROOT::Math::XYZVector getPosSeed() const
get position seed as ROOT::Math::XYZVector
const ROOT::Math::XYZVector getMomSeed() const
get momentum seed as ROOT::Math::XYZVector
Small class for classifying types of reconstructed track candidates.
Type
allows classifying TCs
Abstract base class for different kinds of events.