Belle II Software
release-08-01-10
|
Findlet for the combination of tracks and segments. More...
#include <SegmentTrackCombiner.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 | |
SegmentTrackCombiner () | |
Constructor setting up the filter parameters. | |
std::string | getDescription () final |
Short description of the findlet. | |
void | beginEvent () final |
Signal the beginning of a new event. | |
void | exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final |
Expose the parameters to a module. | |
void | apply (std::vector< CDCSegment2D > &segments, std::vector< CDCTrack > &tracks) override |
Try to combine the segments and the tracks. | |
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< CDCSegment2D &, CDCTrack & > |
Type of the base class. | |
Private Attributes | |
SharingHitsMatcher< CDCTrack, CDCSegment2D > | m_sharedHitsMatcher |
Matcher for creating relations between tracks and segments based on the number of shared hits. | |
CutSelector< CDCTrack, CDCSegment2D > | m_selectPairsWithSharedHits |
Select only those pairs, which share at least a certain amount of hits. | |
FilterSelector< CDCTrack, CDCSegment2D, ChooseableFilter< SegmentTrackFilterFactory > > | m_chooseableSegmentTrackSelector |
Reference to the chooser to be used for matching segments and tracks in the first step. | |
SingleMatchSelector< CDCTrack, CDCSegment2D > | m_singleMatchSelector |
Select only the best matching segment-track relations and remove the hits from the other ones. | |
SegmentTrackAdderWithNormalization | m_segmentTrackAdderWithNormalization |
Add the matched segments to tracks. | |
TrackRejecter | m_trackRejecter |
Findlet to filter out fake tracks. | |
TrackNormalizer | m_trackNormalizer |
Findlet for normalizing the tracks. | |
std::vector< WeightedRelation< CDCTrack, const CDCSegment2D > > | m_relations |
Object pools. | |
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. | |
Findlet for the combination of tracks and segments.
This module uses configurable filters to create matches between segments (from the local finder) and tracks (from the global finder). It also has capabilities to filter the remaining tracks for fakes and the remaining segments for new tracks/background.
Use this module at the end of the path, after you have run the local and the global track finder.
It uses several (filtering) steps, to do its job, namely:
Definition at line 58 of file SegmentTrackCombiner.h.