Belle II Software
release-08-01-10
|
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 invokation. | |
using | IOVectors = std::tuple< std::vector< AIOTypes >... > |
Vector types that should be served to apply on invokation. | |
Public Member Functions | |
CKFToSVDFindlet () | |
Constructor, for setting module description and parameters. | |
~CKFToSVDFindlet () override | |
Default desctructor. | |
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 concret 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 happend before. | |
bool | m_terminated = false |
Flag to keep track whether termination happend 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.