 |
Belle II Software
release-05-01-25
|
10 #include <tracking/trackFindingCDC/mclookup/CDCMCHitLookUp.h>
12 #include <tracking/trackFindingCDC/mclookup/CDCSimHitLookUp.h>
13 #include <tracking/trackFindingCDC/mclookup/CDCMCTrackStore.h>
14 #include <tracking/trackFindingCDC/mclookup/CDCMCMap.h>
15 #include <tracking/trackFindingCDC/mclookup/CDCMCManager.h>
17 #include <tracking/trackFindingCDC/eventdata/hits/CDCWireHit.h>
19 #include <tracking/trackFindingCDC/topology/CDCWire.h>
21 #include <tracking/trackFindingCDC/geometry/Vector3D.h>
22 #include <tracking/trackFindingCDC/geometry/Vector2D.h>
24 #include <cdc/dataobjects/CDCHit.h>
25 #include <cdc/dataobjects/CDCSimHit.h>
26 #include <mdst/dataobjects/MCParticle.h>
29 using namespace TrackFindingCDC;
59 const CDCHit& hit = *ptrHit;
64 B2WARNING(
"Encountered CDCHit with wire ids that do not correspond to a valid wire in the CDC)");
77 if (not ptrHit)
return NAN;
125 return ptrMCParticle ? ptrMCParticle->
getArrayIndex() : INVALID_ITRACK;
const Belle2::MCParticle * getMCParticle(const CDCHit *ptrHit) const
Getter for the MCParticle which is related to the CDCHit contained in the given wire hit.
float getRefDriftLength(const CDCHit *ptrHit) const
Getter for the reference drift length in the two dimensional projection.
Index getNLoops(const CDCHit *ptrHit) const
Getter for the number of traversed loops until this hit.
A two dimensional vector which is equipped with functions for correct handeling of orientation relat...
double getRefDriftLength() const
Getter for the drift length at the reference position of the wire.
const Vector2D & getRefPos2D() const
Getter for the wire reference position for 2D tracking Gives the wire's reference position projected ...
const Vector3D getRecoPos3D(const CDCHit *ptrHit) const
Getter for the three dimensional position of the primary ionisation for the hit.
const CDCSimHit * getClosestPrimarySimHit(const CDCHit *ptrHit) const
Getter for the closest simulated hit of a primary particle to the given hit - may return nullptr of n...
Class containing the result of the unpacker in raw data and the result of the digitizer in simulation...
Index getNPassedSuperLayers(const CDCHit *ptrHit) const
Returns the number of superlayers the track traversed until this hit.
static const CDCMCMap & getMCMap()
Getter for the singletone instance of the CDCMCMap.
Index getInTrackId(const CDCHit *ptrHit) const
Getter for the index of the hit within its track.
MayBePtr< const MCParticle > getMCParticle(const CDCHit *hit) const
Seeks the MCParticle related to the CDCHit.
Vector3D getRecoPos3D(const CDCHit *ptrHit) const
Look up the position of the primary ionisation from related simulated hit.
int getArrayIndex() const
Get 0-based index of the particle in the corresponding MCParticle list.
Index getNPassedSuperLayers(const CDCHit *ptrHit) const
Getter for the number of super layers traversed until this hit.
void fill()
Fill Monte Carlo look up maps from the DataStore.
ITrackType getMCTrackId(const CDCHit *ptrHit) const
Returns the track id for the hit.
Vector3D getClosestPrimaryRecoPos3D(const CDCHit *ptrHit) const
Look up the position of the primary ionisation from the closest primary simulated hit.
bool isReassignedSecondary(const CDCHit *ptrHit) const
Indicates if the hit was reassigned to a different mc particle because it was caused by a secondary.
const Vector2D getRefPos2D(const CDCHit *ptrHit) const
Getter for the two dimensional reference position of the wire the given hit is located on - mainly fo...
Abstract base class for different kinds of events.
static const CDCMCTrackStore & getMCTrackStore()
Getter for the singletone instance of the CDCMCTrackStore.
Interface class to the Monte Carlo information for individual hits.
Index getNLoops(const CDCHit *ptrHit) const
Returns the number of loops the track traversed until this hit.
A three dimensional vector.
static CDCMCManager & getInstance()
Getter for the singletone instance.
static const CDCWire * getInstance(const WireID &wireID)
Getter from the wireID convinience object. Does not construct a new object.
ERightLeft
Enumeration to represent the distinct possibilities of the right left passage.
static const CDCSimHitLookUp & getSimHitLookUp()
Getter for the singletone instance of the CDCSimHitLookUp.
MayBePtr< const CDCSimHit > getSimHit(const CDCHit *hit) const
Seeks the CDCSimHit related to the CDCHit.
const Belle2::CDCSimHit * getSimHit(const CDCHit *ptrHit) const
Getter for the CDCSimHit which is related to the CDCHit contained in the given wire hit.
Index getInTrackSegmentId(const CDCHit *ptrHit) const
Getter for the index of the segment of the hit within its track.
static const CDCMCHitLookUp & getInstance()
Getter for the singletone instance.
MayBePtr< const CDCSimHit > getClosestPrimarySimHit(const CDCSimHit *ptrSimHit) const
Helper function to find the closest primary hit for the given CDCSimHit from the same MCParticle - nu...
const Vector3D getClosestPrimaryRecoPos3D(const CDCHit *ptrHit) const
Getter for the three dimensional position of the ionisation of the primary simulated hit for the hit.
Index getInTrackId(const CDCHit *ptrHit) const
Returns the position of the wire hit in the track along the travel direction.
Class representing a sense wire in the central drift chamber.
virtual unsigned short getBackgroundTag() const
Get background tag.
ERightLeft getRLInfo(const CDCHit *ptrHit) const
Returns the true right left passage information.
bool isBackground(const CDCHit *ptrHit) const
Returns if this hit is considered background.
bool isReassignedSecondary(const CDCSimHit *ptrSimHit) const
Indicates if the CDCSimHit has been reassigned to a primary MCParticle.
A Class to store the Monte Carlo particle information.
Class representing a hit wire in the central drift chamber.
static const CDCMCHitLookUp & getMCHitLookUp()
Getter for the singletone instance of the CDCMCHitLookUp.
Index getInTrackSegmentId(const CDCHit *ptrHit) const
Returns the id of the segment in the track.
void fill() const
Method for forwarding a request to fill the Monte Carlo lookup tables from Python.
ERightLeft getRLInfo(const CDCHit *ptrHit) const
Look up the Monte Carlo right left passage information for the given hit.