 |
Belle II Software
release-05-02-19
|
12 #include <tracking/trackFindingCDC/utilities/Range.h>
13 #include <tracking/trackFindingCDC/utilities/MayBePtr.h>
27 namespace TrackFindingCDC {
76 MayBePtr<const CDCSimHit>
getSimHit(
const CDCHit* hit)
const;
79 MayBePtr<const CDCHit>
getHit(
const CDCSimHit* simHit)
const;
91 MayBePtr<const MCParticle>
getMCParticle(
const CDCHit* hit)
const;
97 MayBePtr<const MCParticle>
getMCParticle(
const CDCSimHit* simHit)
const;
100 auto getSimHits(
const MCParticle* mcParticle)
const
106 auto getHits(
const MCParticle* mcParticle)
const
136 const std::multimap<const CDCHit*, const CDCSimHit*>&
getSimHitsByHit()
const
auto getSimHits(const MCParticle *mcParticle) const
Getter for the range MCParticle to CDCSimHits relations which come from the given MCParticle.
std::multimap< const MCParticle *, const CDCSimHit * > m_simHitsByMCParticle
Memory for a one to n relation from MCParticles to CDCSimHit.
void fill()
Fill the Monte Carlo information retrieved from the DataStore into the local multimaps.
const std::set< const CDCHit * > & getReassignedSecondaryHits() const
Getter for all reassigned secondary CDCHits.
const std::multimap< const MCParticle *, const CDCSimHit * > & getSimHitsByMCParticle() const
Getter for the MCParticle -> CDCSimHit relations.
MayBePtr< const CDCHit > getHit(const CDCSimHit *simHit) const
Seeks the CDCHit related to the CDCSimHit - nullptr if no CDCHit is related.
CDCMCMap & operator=(const CDCMCMap &)=delete
Delete the assignement operator in order to avoid accidental copies.
Class containing the result of the unpacker in raw data and the result of the digitizer in simulation...
std::multimap< const MCParticle *, const CDCHit * > m_hitsByMCParticle
Memory for a one to n relation from MCParticles to CDCHit.
std::multimap< const CDCHit *, const CDCSimHit * > m_simHitsByHit
Memory for a one to one relation from CDCHit to CDCSimHits.
MayBePtr< const MCParticle > getMCParticle(const CDCHit *hit) const
Seeks the MCParticle related to the CDCHit.
static bool indicatesReassignedSecondary(double weight)
Indicate if the given weight suggests that the corresponding hit to MCParticle relation has been redi...
std::set< const CDCSimHit * > m_reassignedSecondarySimHits
The set of reassigned secondary CDCSimHits.
void fillMCParticleBySimHitMap()
Retrieve the relations array from MCParticle to CDCSimHits and fill it in to the local map which does...
auto getHits(const MCParticle *mcParticle) const
Getter for the range MCParticle to CDCHits relations which come from the given MCParticle.
Abstract base class for different kinds of events.
void validateReassignedSecondaries() const
Checks if each CDCHit is marked as reassigned secondary is related to a reassigned secondary CDCSimHi...
void validateRelations() const
Checks if the relations CDCHit -> MCParticle and CDCHit -> CDCSimHit -> MCParticle commute.
std::set< const CDCHit * > m_reassignedSecondaryHits
The set of reassigned secondary CDCHits.
void fillMCParticleByHitMap()
Retrieve the relations array from MCParticle to CDCHits and fill it in to the local map which does th...
MayBePtr< const CDCSimHit > getSimHit(const CDCHit *hit) const
Seeks the CDCSimHit related to the CDCHit.
void clear()
Clear all information from the former event.
CDCMCMap()=default
Default constructor, needs to be public for initialization in CDCMCManager.
const std::set< const CDCSimHit * > & getReassignedSecondarySimHits() const
Getter for all reassigned secondary CDCSimHits.
bool isReassignedSecondary(const CDCSimHit *ptrSimHit) const
Indicates if the CDCSimHit has been reassigned to a primary MCParticle.
const std::multimap< const MCParticle *, const CDCHit * > & getHitsByMCParticle() const
Getter for the MCParticle -> CDCHit relations.
bool isBackground(const CDCSimHit *simHit) const
Indicates if the CDCSimHit is considered background.
void fillSimHitByHitMap()
Retrieve the relations array from CDCSimHits to CDCHits and fill it in to the local map which does th...
const std::multimap< const CDCHit *, const CDCSimHit * > & getSimHitsByHit() const
Getter for the CDCHit -> CDCSimHit relations.