Belle II Software development
|
Combinatorial Kalman Filter to extrapolate CDC Reco Tracks into the VXD (SVD) and collect space points. More...
#include <CKFToSVDFindlet.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 | |
CKFToSVDFindlet () | |
Constructor, for setting module description and parameters. | |
~CKFToSVDFindlet () override | |
Default destructor. | |
void | exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override |
Expose the parameters of the sub findlets. | |
void | apply () override |
Do the track/hit finding/merging. | |
void | beginEvent () override |
Clear the object pools. | |
virtual std::string | getDescription () |
Brief description of the purpose of the concrete 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 = TrackFindingCDC::Findlet<> |
Parent class. | |
Private Attributes | |
unsigned int | m_param_minimalHitRequirement = 1 |
Minimal hit requirement for the results (counted in number of space points) | |
TrackLoader | m_dataHandler |
Findlet for retrieving the cdc tracks and writing the result out. | |
SpacePointLoader | m_hitsLoader |
Findlet for loading the space points. | |
StateCreatorWithReversal< CKFToSVDState > | m_stateCreatorFromTracks |
Findlet for creating states out of tracks. | |
StateCreator< const SpacePoint, CKFToSVDState > | m_stateCreatorFromHits |
Findlet for creating states out of hits. | |
CKFRelationCreator< CKFToSVDState, ChooseableSVDRelationFilter > | m_relationCreator |
Findlet for creating relations between states. | |
TreeSearcher< CKFToSVDState, SVDStateRejecter, CKFToSVDResult > | m_treeSearchFindlet |
Findlet doing the main work: the tree finding. | |
OverlapResolver< ChooseableSVDResultFilter > | m_overlapResolver |
Findlet for resolving overlaps. | |
SpacePointTagger< CKFToSVDResult, SVDCluster > | m_spacePointTagger |
Findlet for tagging the used space points. | |
ResultStorer< CKFToSVDResult > | m_resultStorer |
Findlet for storing the results. | |
std::vector< RecoTrack * > | m_cdcRecoTrackVector |
Pointers to the CDC Reco tracks as a vector. | |
std::vector< const SpacePoint * > | m_spacePointVector |
Pointers to the (const) SpacePoints as a vector. | |
std::vector< CKFToSVDState > | m_seedStates |
States for the tracks. | |
std::vector< CKFToSVDState > | m_states |
States for the hits. | |
std::vector< TrackFindingCDC::WeightedRelation< CKFToSVDState > > | m_relations |
Relations between states. | |
std::vector< CKFToSVDResult > | m_results |
Vector for storing the results. | |
std::vector< CKFToSVDResult > | m_filteredResults |
Vector for storing the filtered results. | |
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. | |
Combinatorial Kalman Filter to extrapolate CDC Reco Tracks into the VXD (SVD) and collect space points.
The implementation is split up in four parts and factored out into three sub findlets.
If you want to reimplement this algorithm for a different purpose, you probably only have to implement a new state class and a new hit selector (and maybe the store array handling). The rest should be taken care by the framework.
Definition at line 56 of file CKFToSVDFindlet.h.
|
inherited |
|
inherited |
|
private |
Parent class.
Definition at line 58 of file CKFToSVDFindlet.h.
|
protectedinherited |
CKFToSVDFindlet | ( | ) |
Constructor, for setting module description and parameters.
Definition at line 31 of file CKFToSVDFindlet.cc.
|
protectedinherited |
Register a processing signal listener to be notified.
Definition at line 55 of file CompositeProcessingSignalListener.cc.
|
override |
Do the track/hit finding/merging.
Definition at line 100 of file CKFToSVDFindlet.cc.
|
overridevirtual |
Clear the object pools.
Reimplemented from ProcessingSignalListener.
Definition at line 80 of file CKFToSVDFindlet.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.
|
overridevirtual |
Expose the parameters of the sub findlets.
Reimplemented from Findlet<>.
Definition at line 44 of file CKFToSVDFindlet.cc.
|
inlinevirtualinherited |
Brief description of the purpose of the concrete findlet.
Reimplemented in CosmicsTrackMergerFindlet, TrackFinderCosmics, TrackFinder, TrackFinderAutomaton, and FindletStoreArrayInput< TWrappedFindlet >.
Definition at line 60 of file Findlet.h.
|
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 |
Pointers to the CDC Reco tracks as a vector.
Definition at line 103 of file CKFToSVDFindlet.h.
|
private |
Findlet for retrieving the cdc tracks and writing the result out.
Definition at line 83 of file CKFToSVDFindlet.h.
|
private |
Vector for storing the filtered results.
Definition at line 115 of file CKFToSVDFindlet.h.
|
private |
Findlet for loading the space points.
Definition at line 85 of file CKFToSVDFindlet.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 |
Findlet for resolving overlaps.
Definition at line 95 of file CKFToSVDFindlet.h.
|
private |
Minimal hit requirement for the results (counted in number of space points)
Definition at line 79 of file CKFToSVDFindlet.h.
|
private |
Findlet for creating relations between states.
Definition at line 91 of file CKFToSVDFindlet.h.
|
private |
Relations between states.
Definition at line 111 of file CKFToSVDFindlet.h.
|
private |
Vector for storing the results.
Definition at line 113 of file CKFToSVDFindlet.h.
|
private |
Findlet for storing the results.
Definition at line 99 of file CKFToSVDFindlet.h.
|
private |
States for the tracks.
Definition at line 107 of file CKFToSVDFindlet.h.
|
private |
Findlet for tagging the used space points.
Definition at line 97 of file CKFToSVDFindlet.h.
|
private |
Pointers to the (const) SpacePoints as a vector.
Definition at line 105 of file CKFToSVDFindlet.h.
|
private |
Findlet for creating states out of hits.
Definition at line 89 of file CKFToSVDFindlet.h.
|
private |
Findlet for creating states out of tracks.
Definition at line 87 of file CKFToSVDFindlet.h.
|
private |
States for the hits.
Definition at line 109 of file CKFToSVDFindlet.h.
|
privateinherited |
References to subordinary signal processing listener contained in this findlet.
Definition at line 52 of file CompositeProcessingSignalListener.h.
|
privateinherited |
Flag to keep track whether termination happened before.
Definition at line 55 of file ProcessingSignalListener.h.
|
private |
Findlet doing the main work: the tree finding.
Definition at line 93 of file CKFToSVDFindlet.h.