8#include <tracking/trackFindingCDC/findlets/complete/TrackFinderAutomaton.h>
10#include <framework/core/ModuleParamList.templateDetails.h>
11#include <framework/core/ModuleParam.h>
16using namespace TrackFindingCDC;
32 const std::string prefix =
"";
34 moduleParamList.
getParameter<std::string>(
"flightTimeEstimation").setDefaultValue(
"outwards");
35 moduleParamList.
getParameter<std::string>(
"TrackOrientation").setDefaultValue(
"outwards");
38 moduleParamList.
getParameter<
bool>(
"WriteSegments").setDefaultValue(
true);
49 return "Performs pattern recognition in the CDC based on local hit following and application of a cellular automaton in two stages.";
The Module parameter list class.
void apply(std::vector< CDCWireHit > &inputWireHits, std::vector< CDCWireHitCluster > &clusters, std::vector< CDCWireHitCluster > &superClusters) final
Generates the segment from wire hits.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
void addProcessingSignalListener(ProcessingSignalListener *psl)
Register a processing signal listener to be notified.
void beginEvent() override
Receive and dispatch signal for the start of a new event.
virtual void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix)
Forward prefixed parameters of this findlet to the module parameter list.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
void apply(std::vector< CDCWireHitCluster > &clusters, std::vector< CDCSegment2D > &outputSegments) final
Generates the segment from wire hits.
void apply(std::vector< CDCTrack > &tracks) final
Write give tracks into track store array.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
SegmentFinderFacetAutomaton m_segmentFinderFacetAutomaton
First stage cellular automaton segment finder.
TrackExporter m_trackExporter
Exports the generated CDCTracks as RecoTracks.
WireHitPreparer m_wireHitPreparer
Preparation findlet creating the wire hits from the packed CDCHits.
std::string getDescription() override
Short description of the findlet.
std::vector< CDCWireHitCluster > m_superClusters
Memory for the wire hits super clusters.
void beginEvent() final
Signal the beginning of a new event.
TrackFinderAutomaton()
Constructor registering the subordinary findlets to the processing signal distribution machinery.
StoreVectorSwapper< CDCWireHit, true > m_wireHitsSwapper
Puts the internal segments on the DataStore.
StoreVectorSwapper< CDCTrack > m_tracksSwapper
Puts the internal segments on the DataStore.
std::vector< CDCWireHit > m_wireHits
Memory for the wire hits.
StoreVectorSwapper< CDCSegment2D > m_segmentsSwapper
Puts the internal segments on the DataStore.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
TrackFinderSegmentPairAutomaton m_trackFinderSegmentPairAutomaton
Second stage cellular automaton track finder from segments.
void apply() final
Execute the findlet.
ClusterPreparer m_clusterPreparer
Preparation findlet creating the clusters wire hits forming locally connected groups.
std::vector< CDCWireHitCluster > m_clusters
Memory for the wire hits cluster.
std::vector< CDCSegment2D > m_segments
Memory for the segments.
std::vector< CDCTrack > m_tracks
Memory for the tracks.
TrackFlightTimeAdjuster m_trackFlightTimeAdjuster
Adjusts the flight time of the tracks to a setable trigger point.
void apply(const std::vector< CDCSegment2D > &inputSegments, std::vector< CDCTrack > &tracks) final
Generates the tracks from segments.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
void apply(std::vector< CDCTrack > &tracks) final
Adjust the flight time of the given tracks.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
void apply(std::vector< CDCWireHit > &outputWireHits) final
Main function preparing the wire hits.
ModuleParam< T > & getParameter(const std::string &name) const
Returns a reference to a parameter.
Abstract base class for different kinds of events.