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

Complex findlet for finding stereo hits from monopoles to a list of cdc tracks. More...

#include <MonopoleStereoHitFinderQuadratic.h>

Inheritance diagram for MonopoleStereoHitFinderQuadratic:
Collaboration diagram for MonopoleStereoHitFinderQuadratic:

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

 MonopoleStereoHitFinderQuadratic ()
 Constructor registering the subordinary findlets to the processing signal distribution machinery.
 
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< CDCWireHit > &inputWireHits, std::vector< CDCTrack > &tracks) final
 Generates the segment from wire hits.
 
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< CDCWireHit &, CDCTrack & >
 Type of the base class.
 

Private Attributes

RLTaggedWireHitCreator m_rlWireHitCreator
 Create RL wire hits out of the wire hits.
 
StereoHitTrackQuadTreeMatcher< HitQuadraticLegendrem_matcher
 Find matching hits to a track.
 
FilterSelector< CDCTrack, CDCRLWireHit, ChooseableFilter< StereoHitFilterFactory > > m_filterSelector
 Filter for the Stereo Hits added to the track.
 
SingleMatchSelector< CDCTrack, CDCRLWireHit, HitComperatorm_singleMatchSelector
 Select only those where the relation is unique (or the best one in those groups)
 
StereoHitTrackAdder m_adder
 Add the hits to the tracks.
 
TrackInspector m_inspector
 Print found tracks if requested in module options.
 
std::vector< CDCRLWireHitm_rlTaggedWireHits
 Vector holding all possible wire hits with all possible RL combinations.
 
std::vector< WeightedRelation< CDCTrack, const CDCRLWireHit > > m_relations
 Vector of relations between tracks and hits.
 
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

Complex findlet for finding stereo hits from monopoles to a list of cdc tracks.

WARNING This findlet is kept here just in case hyperbolic one misbehaves and eats up too much RAM If it doesn't, this one should be removed around release-05 or earlier

I guess uses collector framework and a quadtree search for quadratic tracks from IP

Definition at line 46 of file MonopoleStereoHitFinderQuadratic.h.


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