10#include <framework/core/Module.h>
11#include <framework/datastore/StoreArray.h>
12#include <tracking/dataobjects/RecoTrack.h>
13#include <tracking/trackFindingCDC/eventdata/hits/CDCWireHit.h>
14#include <tracking/trackFindingCDC/rootification/StoreWrappedObjPtr.h>
15#include <tracking/trackFindingCDC/numerics/ERightLeft.h>
22 namespace TrackFindingCDC {
41 void event()
override;
This is the Reconstruction Event-Data Model Track.
Accessor to arrays stored in the data store.
Class representing a hit wire in the central drift chamber.
Module to loop over low-ADC/TOT CDCWireHits and fitted RecoTracks, and reattach the hits to the track...
std::string m_outputRecoTracksStoreArrayName
Name of the output RecoTrack StoreArray.
StoreArray< RecoTrack > m_inputRecoTracks
Input tracks.
std::string m_CDCWireHitsStoreArrayName
Name of the input CDCWireHit StoreWrappedObjPtr.
StoreArray< RecoTrack > m_outputRecoTracks
Output tracks.
ReattachCDCWireHitsToRecoTracksModule()
Constructor of the module. Setting up parameters and description.
void initialize() override
Declare required StoreArray.
void event() override
Event processing, combine store array.
int m_minimumADC
ADC above which (inclusive) a CDC hit can be reattached to a track.
std::string m_inputRecoTracksStoreArrayName
Name of the input RecoTrack StoreArray.
std::unordered_map< RecoTrack *, std::vector< CDCHit * > > m_mapToHitsOnTrack
Map from a RecoTrack ptr to the vector of the hits that belong to this track.
RecoHitInformation::RightLeftInformation rightLeftInformationTranslator(ERightLeft rlInfo) const
Translate a TrackFindingCDC::ERightLeft into a RecoHitInformation::RightLeftInformation.
ReconstructionResults reconstruct(const CDCWireHit &wireHit, const RecoTrack &recoTrack, const RecoHitInformation *recoHitInformation) const
Compute distance from a CDCWireHit to a RecoTrack using the mSoP found with a RecoHitInformation.
double m_maximumDistance
Distance (cm) below which (exclusive) a CDC hit can be reattached to a track.
int m_minimumTOT
TOT above which (inclusive) a CDC hit can be reattached to a track.
StoreWrappedObjPtr< std::vector< CDCWireHit > > m_CDCWireHits
Input CDCWireHits.
void addHits()
Add the selected CDC hits to the RecoTracks.
double m_maximumAbsD0
Only tracks with an absolute value of d0 below (exclusive) this parameter (cm) are considered.
void findHits()
Find the hits that can be added to the RecoTracks.
std::unordered_map< RecoTrack *, std::vector< HitToAddInfo > > m_mapToHitsToAdd
Map from a RecoTrack ptr to the vector of the hits that need to be added to this track.
double m_maximumAbsZ0
Only tracks with an absolute value of z0 below (exclusive) this parameter (cm) are considered.
This class is for convenience access and registration of objects, that are stored inside the StoreWra...
ERightLeft
Enumeration to represent the distinct possibilities of the right left passage.
Abstract base class for different kinds of events.
Internal structure to store the information about a hit to be added.
ERightLeft rlInfo
Right-left information of the hit.
CDCWireHit * hit
Pointer the hit to be added.
Internal structure to store the results of the reconstruction.
ERightLeft rlInfo
Right-left information of the hit.
double distanceToTrack
Distance from the hit to the track.
double arcLength
Arc length of the hit w.r.t. to a genfit::MeasuredStateOnPlane.
bool isValid
Success status of the reconstruction.
double z
Reconstructed z position of the hit.