Stores association of Truth Particles (TP) to L1 Track-Trigger Stubs. More...
#include <TTStubAssociationMap.h>
Public Member Functions | |
const TrackingParticlePtr & | findTrackingParticlePtr (TTStubRefT< T > aStub) const |
Operations. More... | |
const std::vector< TTStubRefT< T > > & | findTTStubRefs (TrackingParticlePtr aTrackingParticle) const |
const MapTPToVecStub< T > & | getTrackingParticleToTTStubsMap () const |
const MapStubToTP< T > & | getTTStubToTrackingParticleMap () const |
Get/set stub <-> truth association maps. More... | |
bool | isCombinatoric (TTStubRefT< T > aStub) const |
bool | isGenuine (TTStubRefT< T > aStub) const |
MC truth. More... | |
bool | isUnknown (TTStubRefT< T > aStub) const |
void | setTrackingParticleToTTStubsMap (const MapTPToVecStub< T > &aMap) |
void | setTTClusterAssociationMap (edm::RefProd< TTClusterAssociationMap< T >> aCluAssoMap) |
Set cluster <-> truth association object. More... | |
void | setTTStubToTrackingParticleMap (const MapStubToTP< T > &aMap) |
TTStubAssociationMap () | |
Constructors. More... | |
~TTStubAssociationMap () | |
Destructor. More... | |
Private Attributes | |
MapStubToTP< T > | stubToTrackingParticleMap_ |
Data members. More... | |
edm::RefProd< TTClusterAssociationMap< T > > | theClusterAssociationMap_ |
MapTPToVecStub< T > | trackingParticleToStubVectorMap_ |
Static Private Attributes | |
static const TrackingParticlePtr | nullTrackingParticlePtr_ |
Close class. More... | |
static const std::vector< TTStubRefT< T > > | nullVecStubRef_ |
Stores association of Truth Particles (TP) to L1 Track-Trigger Stubs.
Contains two maps. One associates each stub to its principle TP. (i.e. Not to all TP that contributed to it). The other associates each TP to a vector of all stubs it contributed to. The two maps are therefore not forward-backward symmetric.
(The template structure is used to accomodate types other than PixelDigis, in case they are needed in future).
Definition at line 47 of file TTStubAssociationMap.h.
TTStubAssociationMap< T >::TTStubAssociationMap | ( | ) |
Constructors.
Default Constructor NOTE: to be used with setSomething(...) methods
Set default data members
Definition at line 127 of file TTStubAssociationMap.h.
TTStubAssociationMap< T >::~TTStubAssociationMap | ( | ) |
const TrackingParticlePtr & TTStubAssociationMap< T >::findTrackingParticlePtr | ( | TTStubRefT< T > | aStub | ) | const |
Operations.
Get principle TP associated to a stub. (Non-NULL if isGenuine() below is true). (N.B. There is no function returning all TP associated to a stub). (P.S. As this function only returns principle TP, it is not used when constructing the TTTrackAssociationMap).
Definition at line 137 of file TTStubAssociationMap.h.
Referenced by l1tVertexFinder::Stub::fillTruth(), and tmtt::Stub::fillTruth().
const std::vector< TTStubRefT< T > > & TTStubAssociationMap< T >::findTTStubRefs | ( | TrackingParticlePtr | aTrackingParticle | ) | const |
Get all stubs associated to a TP. (Even if the TP just contributes to one cluster in stub, and even if their are other such TP, it is still listed here).
Definition at line 146 of file TTStubAssociationMap.h.
|
inline |
Definition at line 58 of file TTStubAssociationMap.h.
References TTStubAssociationMap< T >::trackingParticleToStubVectorMap_.
|
inline |
Get/set stub <-> truth association maps.
Definition at line 57 of file TTStubAssociationMap.h.
References TTStubAssociationMap< T >::stubToTrackingParticleMap_.
bool TTStubAssociationMap< T >::isCombinatoric | ( | TTStubRefT< T > | aStub | ) | const |
Defined by exclusion
Definition at line 165 of file TTStubAssociationMap.h.
bool TTStubAssociationMap< T >::isGenuine | ( | TTStubRefT< T > | aStub | ) | const |
MC truth.
— Get quality of stub based on truth info. (N.B. Both genuine & combinatoric stubs contribute to "genuine" L1 tracks associated by TTTrackAssociationMap). (exactly 1 of following 3 functions is always true) If both clusters are unknown, the stub is "unknown". If only one cluster is unknown, the stub is combinatoric. If both clusters are genuine, and are associated to the same (main) TrackingParticle, the stub is "genuine". If both clusters are genuine, but are associated to different (main) TrackingParticles, the stub is "combinatoric". If one cluster is combinatoric and the other is genuine/combinatoric, and they both share exactly one TrackingParticle in common, then the stub is "genuine". (The clusters can have other TrackingParticles besides the shared one, as long as these are not shared). If instead the clusters share 0 or ≥2 TrackingParticles in common, then the stub is "combinatoric".
Check if there is a SimTrack
Definition at line 156 of file TTStubAssociationMap.h.
Referenced by l1tVertexFinder::Stub::fillTruth(), and tmtt::Stub::fillTruth().
bool TTStubAssociationMap< T >::isUnknown | ( | TTStubRefT< T > | aStub | ) | const |
UNKNOWN means that both clusters are unknown
Sanity check
Definition at line 177 of file TTStubAssociationMap.h.
|
inline |
Definition at line 61 of file TTStubAssociationMap.h.
References TTStubAssociationMap< T >::trackingParticleToStubVectorMap_.
|
inline |
Set cluster <-> truth association object.
Definition at line 64 of file TTStubAssociationMap.h.
References TTStubAssociationMap< T >::theClusterAssociationMap_.
|
inline |
Definition at line 60 of file TTStubAssociationMap.h.
References TTStubAssociationMap< T >::stubToTrackingParticleMap_.
|
staticprivate |
Close class.
Implementation of methods
Here, in the header file, the methods which do not depend on the specific type <T> that can fit the template. Other methods, with type-specific features, are implemented in the source file.
Definition at line 106 of file TTStubAssociationMap.h.
|
staticprivate |
Definition at line 107 of file TTStubAssociationMap.h.
|
private |
Data members.
Definition at line 101 of file TTStubAssociationMap.h.
Referenced by TTStubAssociationMap< T >::getTTStubToTrackingParticleMap(), and TTStubAssociationMap< T >::setTTStubToTrackingParticleMap().
|
private |
Definition at line 103 of file TTStubAssociationMap.h.
Referenced by TTStubAssociationMap< T >::setTTClusterAssociationMap().
|
private |
Definition at line 102 of file TTStubAssociationMap.h.
Referenced by TTStubAssociationMap< T >::getTrackingParticleToTTStubsMap(), and TTStubAssociationMap< T >::setTrackingParticleToTTStubsMap().