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

Resolves between the potential alias versions of the segments and contained hits. More...

#include <SegmentAliasResolver.h>

Inheritance diagram for SegmentAliasResolver:
Collaboration diagram for SegmentAliasResolver:

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
 Signals the beginning of the event processing.
 
void apply (std::vector< CDCSegment2D > &outputSegments) final
 Main algorithm applying the fit to each segment.
 
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.
 
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 & >
 Type of the base class.
 

Private Member Functions

void refit (CDCSegment2D &segment, bool reestimate)
 Fit the alias segment.
 

Private Attributes

std::vector< std::string > m_param_investigateAlias = { "cross", "borders", }
 Parameter : Which alias resolutions should be applied.
 
bool m_fullAlias = false
 Switch whether the complete segment should be aliased.
 
bool m_crossAliases = false
 Switch whether the segment should be aliased at the waist where an rl side switch was missed.
 
bool m_borderAliases = false
 Switch whether the border hits at the beginning and the end should be aliased.
 
bool m_middleAliases = false
 Switch whether the hits in the middle with lowest drift radius should be aliased.
 
bool m_param_reestimateDriftLength = true
 Parameter : Switch to reestimate the drift length before each fit.
 
bool m_param_reestimatePositions = false
 Parameter : Switch to restimate the reconstructed positions with a pass of facets.
 
CDCRiemannFitter m_riemannFitter
 Instance of the riemann fitter to be used.
 
DriftLengthEstimator m_driftLengthEstimator
 Instance of the drift length estimator to be used.
 
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

Resolves between the potential alias versions of the segments and contained hits.

Definition at line 29 of file SegmentAliasResolver.h.


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