Belle II Software development
|
Complete findlet implementing track finding with the cellular automaton in two stages. More...
#include <TrackFinderAutomaton.h>
Public Types | |
using | IOTypes = std::tuple< AIOTypes... > |
Types that should be served to apply on invocation. | |
using | IOVectors = std::tuple< std::vector< AIOTypes >... > |
Vector types that should be served to apply on invocation. | |
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< CDCSegment2D > | m_segmentsSwapper {"CDCSegment2DVector"} |
Puts the internal segments on the DataStore. | |
StoreVectorSwapper< CDCTrack > | m_tracksSwapper {"CDCTrackVector"} |
Puts the internal segments on the DataStore. | |
std::vector< CDCWireHit > | m_wireHits |
Memory for the wire hits. | |
std::vector< CDCWireHitCluster > | m_clusters |
Memory for the wire hits cluster. | |
std::vector< CDCWireHitCluster > | m_superClusters |
Memory for the wire hits super clusters. | |
std::vector< CDCSegment2D > | m_segments |
Memory for the segments. | |
std::vector< CDCTrack > | m_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 happened before. | |
bool | m_terminated = false |
Flag to keep track whether termination happened before. | |
std::string | m_initializedAs |
Name of the type during initialisation. | |
Complete findlet implementing track finding with the cellular automaton in two stages.
Definition at line 32 of file TrackFinderAutomaton.h.
|
inherited |
|
inherited |
Type of the base class.
Definition at line 36 of file TrackFinderAutomaton.h.
|
protectedinherited |
Constructor registering the subordinary findlets to the processing signal distribution machinery.
Definition at line 18 of file TrackFinderAutomaton.cc.
|
protectedinherited |
Register a processing signal listener to be notified.
Definition at line 55 of file CompositeProcessingSignalListener.cc.
|
final |
Execute the findlet.
Definition at line 76 of file TrackFinderAutomaton.cc.
|
finalvirtual |
Signal the beginning of a new event.
Reimplemented from ProcessingSignalListener.
Definition at line 66 of file TrackFinderAutomaton.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the beginning of a new run.
Reimplemented from ProcessingSignalListener.
Reimplemented in LayerRelationFilter< AFilter >, FourHitFilter, QualityIndicatorFilter, ThreeHitFilter, TwoHitVirtualIPFilter, TwoHitVirtualIPQIFilter, RecoTrackStorer, ROIFinder, SpacePointLoaderAndPreparer, and TrackCandidateResultRefiner.
Definition at line 23 of file CompositeProcessingSignalListener.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the end of the run.
Reimplemented from ProcessingSignalListener.
Definition at line 39 of file CompositeProcessingSignalListener.cc.
|
finalvirtual |
Expose the parameters to a module.
Reimplemented from Findlet<>.
Definition at line 52 of file TrackFinderAutomaton.cc.
|
overridevirtual |
Short description of the findlet.
Reimplemented from Findlet<>.
Reimplemented in TrackFinderCosmics.
Definition at line 47 of file TrackFinderAutomaton.cc.
|
protectedinherited |
Get the number of currently registered listeners.
Definition at line 60 of file CompositeProcessingSignalListener.cc.
|
overridevirtualinherited |
Receive and dispatch signal before the start of the event processing.
Reimplemented from ProcessingSignalListener.
Reimplemented in UnionVarSet< AObject >, UnionVarSet< Object >, VariadicUnionVarSet< AVarSets >, ResultStorer< Belle2::CKFToPXDResult >, ResultStorer< Belle2::CKFToSVDResult >, BaseEventTimeExtractor< RecoTrack * >, BaseEventTimeExtractor< TrackFindingCDC::CDCWireHit & >, StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::HyperHough >, StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::QuadraticLegendre >, StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::Z0TanLambdaLegendre >, OnVarSet< Filter< ATruthVarSet::Object > >, OnVarSet< Filter< AVarSet::Object > >, OnVarSet< BaseFacetFilter >, OnVarSet< BaseFacetRelationFilter >, OnVarSet< BaseAxialSegmentPairFilter >, OnVarSet< BaseSegmentRelationFilter >, OnVarSet< BaseTrackRelationFilter >, OnVarSet< BaseSegmentPairRelationFilter >, MCSymmetric< BaseAxialSegmentPairFilter >, MCSymmetric< BaseFacetFilter >, MCSymmetric< BaseFacetRelationFilter >, MCSymmetric< BaseSegmentPairFilter >, MCSymmetric< BaseSegmentPairRelationFilter >, MCSymmetric< BaseSegmentRelationFilter >, MCSymmetric< BaseSegmentTripleFilter >, MCSymmetric< BaseSegmentTripleRelationFilter >, MCSymmetric< BaseTrackRelationFilter >, StoreArrayLoader< const Belle2::SpacePoint >, StoreArrayLoader< DataStoreInputTypeRefType >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCFacet >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCWireHit, true >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegment2D >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCTrack >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegmentPair >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegmentTriple >, RelationVarSet< ABaseVarSet >, QualityIndicatorFilter, TwoHitVirtualIPQIFilter, MultiHoughSpaceFastInterceptFinder, RawTrackCandCleaner< AHit >, RawTrackCandCleaner< Belle2::vxdHoughTracking::VXDHoughState >, RecoTrackStorer, ROIFinder, SingleHoughSpaceFastInterceptFinder, SpacePointLoaderAndPreparer, TrackCandidateOverlapResolver, and TrackCandidateResultRefiner.
Definition at line 15 of file CompositeProcessingSignalListener.cc.
|
overridevirtualinherited |
Receive and dispatch Signal for termination of the event processing.
Reimplemented from ProcessingSignalListener.
Reimplemented in StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::HyperHough >, StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::QuadraticLegendre >, and StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::Z0TanLambdaLegendre >.
Definition at line 47 of file CompositeProcessingSignalListener.cc.
|
private |
Preparation findlet creating the clusters wire hits forming locally connected groups.
Definition at line 60 of file TrackFinderAutomaton.h.
|
private |
Memory for the wire hits cluster.
Definition at line 88 of file TrackFinderAutomaton.h.
|
privateinherited |
Flag to keep track whether initialization happened before.
Definition at line 52 of file ProcessingSignalListener.h.
|
privateinherited |
Name of the type during initialisation.
Definition at line 58 of file ProcessingSignalListener.h.
|
private |
First stage cellular automaton segment finder.
Definition at line 63 of file TrackFinderAutomaton.h.
|
private |
Memory for the segments.
Definition at line 94 of file TrackFinderAutomaton.h.
|
private |
Puts the internal segments on the DataStore.
Definition at line 78 of file TrackFinderAutomaton.h.
|
privateinherited |
References to subordinary signal processing listener contained in this findlet.
Definition at line 52 of file CompositeProcessingSignalListener.h.
|
private |
Memory for the wire hits super clusters.
Definition at line 91 of file TrackFinderAutomaton.h.
|
privateinherited |
Flag to keep track whether termination happened before.
Definition at line 55 of file ProcessingSignalListener.h.
|
private |
Exports the generated CDCTracks as RecoTracks.
Definition at line 72 of file TrackFinderAutomaton.h.
|
private |
Second stage cellular automaton track finder from segments.
Definition at line 66 of file TrackFinderAutomaton.h.
|
private |
Adjusts the flight time of the tracks to a setable trigger point.
Definition at line 69 of file TrackFinderAutomaton.h.
|
private |
Memory for the tracks.
Definition at line 97 of file TrackFinderAutomaton.h.
|
private |
Puts the internal segments on the DataStore.
Definition at line 81 of file TrackFinderAutomaton.h.
|
private |
Preparation findlet creating the wire hits from the packed CDCHits.
Definition at line 57 of file TrackFinderAutomaton.h.
|
private |
Memory for the wire hits.
Definition at line 85 of file TrackFinderAutomaton.h.
|
private |
Puts the internal segments on the DataStore.
Definition at line 75 of file TrackFinderAutomaton.h.