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

Generates axial tracks from hit using special leaf postprocessing. More...

#include <AxialTrackFinderLegendre.h>

Inheritance diagram for AxialTrackFinderLegendre:
Collaboration diagram for AxialTrackFinderLegendre:

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

 AxialTrackFinderLegendre ()
 Constructor.
 
std::string getDescription () final
 Short description of the findlet.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) final
 Expose the parameters to a module.
 
void apply (const std::vector< CDCWireHit > &wireHits, std::vector< CDCTrack > &tracks)
 Main method to apply the track finding.
 
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 beginEvent () override
 Receive and dispatch signal for the start of a new event.
 
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< const CDCWireHit, CDCTrack >
 Type of the base class.
 
using EPass = AxialTrackCreatorHitLegendre::EPass
 Class of Pass keys.
 

Private Attributes

AxialTrackCreatorHitLegendre m_nonCurlerAxialTrackCreatorHitLegendre {EPass::NonCurlers}
 Findlet for the non-curler legendre pass.
 
AxialTrackCreatorHitLegendre m_nonCurlersWithIncreasingThresholdAxialTrackCreatorHitLegendre
 Findlet for the non-curler with increased threshold legendre pass. More...
 
AxialTrackCreatorHitLegendre m_fullRangeAxialTrackCreatorHitLegendre {EPass::FullRange}
 Findlet for the full range legendre pass.
 
AxialTrackHitMigrator m_axialTrackHitMigrator
 Findlet to exchange hits between tracks based on their proximity to the respective trajectory.
 
AxialTrackMerger m_axialTrackMerger
 Findlet to merge the tracks after the legendre finder.
 
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

Generates axial tracks from hit using special leaf postprocessing.

Implements Legendre transformation of the drift time circles. This is a module, performing tracking in the CDC. It is based on the paper "Implementation of the Legendre Transform for track segment reconstruction in drift tube chambers" by T. Alexopoulus, et al. NIM A592 456-462 (2008).

Definition at line 39 of file AxialTrackFinderLegendre.h.

Member Data Documentation

◆ m_nonCurlersWithIncreasingThresholdAxialTrackCreatorHitLegendre

AxialTrackCreatorHitLegendre m_nonCurlersWithIncreasingThresholdAxialTrackCreatorHitLegendre
private
Initial value:
{
@ NonCurlersWithIncreasingThreshold
Pass corresponds to High-pt track finding and more rough quadtree.

Findlet for the non-curler with increased threshold legendre pass.

Definition at line 66 of file AxialTrackFinderLegendre.h.


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