Belle II Software  release-08-01-10
TrackFinderAutomaton Class Referenceabstract

Complete findlet implementing track finding with the cellular automaton in two stages. More...

#include <TrackFinderAutomaton.h>

Inheritance diagram for TrackFinderAutomaton:
Collaboration diagram for TrackFinderAutomaton:

Public Types

using IOTypes = std::tuple< AIOTypes... >
 Types that should be served to apply on invokation.
 
using IOVectors = std::tuple< std::vector< AIOTypes >... >
 Vector types that should be served to apply on invokation.
 

Public Member Functions

 TrackFinderAutomaton ()
 Constructor registering the subordinary findlets to the processing signal distribution machinery.
 
std::string getDescription () override
 Short description of the findlet.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters to a module.
 
void beginEvent () final
 Signal the beginning of a new event.
 
void apply () final
 Execute the findlet.
 
virtual void apply (ToVector< AIOTypes > &... ioVectors)=0
 Main function executing the algorithm.
 
void initialize () override
 Receive and dispatch signal before the start of the event processing.
 
void beginRun () override
 Receive and dispatch signal for the beginning of a new run.
 
void endRun () override
 Receive and dispatch signal for the end of the run.
 
void terminate () override
 Receive and dispatch Signal for termination of the event processing.
 

Protected Types

using ToVector = typename ToVectorImpl< T >::Type
 Short hand for ToRangeImpl.
 

Protected Member Functions

void addProcessingSignalListener (ProcessingSignalListener *psl)
 Register a processing signal listener to be notified.
 
int getNProcessingSignalListener ()
 Get the number of currently registered listeners.
 

Private Types

using Super = Findlet<>
 Type of the base class.
 

Private Attributes

WireHitPreparer m_wireHitPreparer
 Preparation findlet creating the wire hits from the packed CDCHits.
 
ClusterPreparer m_clusterPreparer
 Preparation findlet creating the clusters wire hits forming locally connected groups.
 
SegmentFinderFacetAutomaton m_segmentFinderFacetAutomaton
 First stage cellular automaton segment finder.
 
TrackFinderSegmentPairAutomaton m_trackFinderSegmentPairAutomaton
 Second stage cellular automaton track finder from segments.
 
TrackFlightTimeAdjuster m_trackFlightTimeAdjuster
 Adjusts the flight time of the tracks to a setable trigger point.
 
TrackExporter m_trackExporter
 Exports the generated CDCTracks as RecoTracks.
 
StoreVectorSwapper< CDCWireHit, true > m_wireHitsSwapper {"CDCWireHitVector"}
 Puts the internal segments on the DataStore.
 
StoreVectorSwapper< CDCSegment2Dm_segmentsSwapper {"CDCSegment2DVector"}
 Puts the internal segments on the DataStore.
 
StoreVectorSwapper< CDCTrackm_tracksSwapper {"CDCTrackVector"}
 Puts the internal segments on the DataStore.
 
std::vector< CDCWireHitm_wireHits
 Memory for the wire hits.
 
std::vector< CDCWireHitClusterm_clusters
 Memory for the wire hits cluster.
 
std::vector< CDCWireHitClusterm_superClusters
 Memory for the wire hits super clusters.
 
std::vector< CDCSegment2Dm_segments
 Memory for the segments.
 
std::vector< CDCTrackm_tracks
 Memory for the tracks.
 
std::vector< ProcessingSignalListener * > m_subordinaryProcessingSignalListeners
 References to subordinary signal processing listener contained in this findlet.
 
bool m_initialized = false
 Flag to keep track whether initialization happend before.
 
bool m_terminated = false
 Flag to keep track whether termination happend before.
 
std::string m_initializedAs
 Name of the type during initialisation.
 

Detailed Description

Complete findlet implementing track finding with the cellular automaton in two stages.

Definition at line 32 of file TrackFinderAutomaton.h.


The documentation for this class was generated from the following files: