Belle II Software
release-08-01-10
|
Generates axial tracks from hit using the special leaf processing inspired by the legendre algorithm. More...
#include <AxialTrackCreatorHitHough.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 | |
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 | initialize () final |
Initialize the findlet before event processing. | |
void | apply (const std::vector< const CDCWireHit * > &axialWireHits, std::vector< CDCTrack > &tracks) final |
Generates the tracks from the given segments into the output argument. | |
void | terminate () final |
Cleanup the findlet after event processing. | |
virtual void | apply (ToVector< AIOTypes > &... ioVectors)=0 |
Main function executing the algorithm. | |
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. | |
Static Public Member Functions | |
static std::vector< float > | getDefaultCurvBounds (std::array< float, 2 > curvSpan, int granularityLevel) |
Get a series of parameters to be set for each pass over the rough hough space. | |
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 *const, CDCTrack > |
Type of the base class. | |
using | SimpleRLTaggedWireHitPhi0CurvHough = SimpleRLTaggedWireHitHoughTree< InPhi0CurvBox, c_phi0Divisions, c_curvDivisions > |
Type of the hough space tree search. | |
Private Attributes | |
const double | m_curlCurv = 0.018 |
Curvature below which particles from IP do not leave the CDC. | |
int | m_param_granularityLevel = 12 |
Parameter: Level of divisions in the hough space. | |
int | m_param_sectorLevelSkip = 2 |
Parameter: Number of levels to be skipped in the hough space on the first level to form sectors. | |
std::vector< float > | m_param_curvBounds {{ -0.02, 0.14}} |
Parameter: hough bounds. | |
int | m_param_discretePhi0Width = 19 |
Parameter: Width of the phi0 bins at the highest level of the hough space. | |
int | m_param_discretePhi0Overlap = 5 |
Parameter: Overlap of the phi0 bins at the highest level of the hough space. | |
int | m_param_discreteCurvWidth = 1 |
Parameter: Width of the curvature bins at the highest level of the hough space. | |
int | m_param_discreteCurvOverlap = -1 |
Parameter: Overlap of the curvature bins at the highest level of the hough space. | |
std::vector< ParameterVariantMap > | m_param_relaxationSchedule |
Parameter: Relaxation schedule for the leaf processor in the hough tree. | |
std::unique_ptr< SimpleRLTaggedWireHitPhi0CurvHough > | m_houghTree |
The hough space tree search. | |
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. | |
Static Private Attributes | |
static const int | c_phi0Divisions = 2 |
Fixed parameter: Number of divisions in the phi0 direction. | |
static const int | c_curvDivisions = 2 |
Fixed parameter: Number of divisions in the curv direction. | |
Generates axial tracks from hit using the special leaf processing inspired by the legendre algorithm.
Definition at line 32 of file AxialTrackCreatorHitHough.h.