Belle II Software development
|
Generates axial tracks from segments using the hough algorithm. More...
#include <AxialTrackCreatorSegmentHough.h>
Public Types | |
using | IOTypes = std::tuple< AIOTypes... > |
Types that should be served to apply on invocation. | |
using | IOVectors = std::tuple< std::vector< AIOTypes >... > |
Vector types that should be served to apply on invocation. | |
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< CDCSegment2D > &segments, 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. | |
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 CDCSegment2D, CDCTrack > |
Type of the base class. | |
using | SimpleSegmentPhi0ImpactCurvHoughTree = SimpleSegmentHoughTree< InPhi0ImpactCurvBox, c_phi0Divisions, c_impactDivisions, c_curvDivisions > |
Type of the hough space tree search. | |
Private Attributes | |
double | m_param_minNHits = 40 |
Parameter: Absolute minimal number of hits to make an axial track. | |
double | m_param_minFractionNHits = 0.5 |
Parameter: Minimal number of hits as a fraction of the total hits in the event. | |
int | m_param_maxLevel = 12 |
Parameter: Level of divisions in the hough space. | |
std::vector< float > | m_param_curvBounds {{ -0.13, 0.13}} |
Parameter: Curvature bounds of the hough space. | |
std::vector< float > | m_param_impactBounds {{ -100, 100}} |
Parameter: Impact parameter bounds of the hough space. | |
int | m_param_discretePhi0Width = 2 |
Parameter: Width of the phi0 bins at the lowest level of the hough space. | |
int | m_param_discretePhi0Overlap = 1 |
Parameter: Overlap of the phi0 bins at the lowest level of the hough space. | |
int | m_param_discreteImpactWidth = 2 |
Parameter: Width of the impact bins at the lowest level of the hough space. | |
int | m_param_discreteImpactOverlap = 1 |
Parameter: Overlap of the impact bins at the lowest level of the hough space. | |
int | m_param_discreteCurvWidth = 2 |
Parameter: Width of the curvature bins at the lowest level of the hough space. | |
int | m_param_discreteCurvOverlap = 1 |
Parameter: Overlap of the curvature bins at the lowest level of the hough space. | |
std::unique_ptr< SimpleSegmentPhi0ImpactCurvHoughTree > | 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 happened before. | |
bool | m_terminated = false |
Flag to keep track whether termination happened 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_impactDivisions = 2 |
Fixed parameter: Number of divisions in the impact direction. | |
static const int | c_curvDivisions = 2 |
Fixed parameter: Number of divisions in the curv direction. | |
Generates axial tracks from segments using the hough algorithm.
Definition at line 30 of file AxialTrackCreatorSegmentHough.h.
|
inherited |
|
inherited |
|
private |
Type of the hough space tree search.
Definition at line 97 of file AxialTrackCreatorSegmentHough.h.
|
private |
Type of the base class.
Definition at line 34 of file AxialTrackCreatorSegmentHough.h.
|
protectedinherited |
|
protectedinherited |
Register a processing signal listener to be notified.
Definition at line 55 of file CompositeProcessingSignalListener.cc.
|
final |
Generates the tracks from the given segments into the output argument.
Setting trajectories
Definition at line 125 of file AxialTrackCreatorSegmentHough.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the start of a new event.
Reimplemented from ProcessingSignalListener.
Reimplemented in SpacePointTagger< Belle2::CKFToPXDResult, Belle2::PXDCluster >, SpacePointTagger< Belle2::CKFToSVDResult, Belle2::SVDCluster >, BaseEventTimeExtractor< RecoTrack * >, BaseEventTimeExtractor< TrackFindingCDC::CDCWireHit & >, SharingHitsMatcher< Belle2::TrackFindingCDC::CDCTrack, Belle2::TrackFindingCDC::CDCSegment2D >, MCSymmetric< BaseAxialSegmentPairFilter >, MCSymmetric< BaseFacetFilter >, MCSymmetric< BaseFacetRelationFilter >, MCSymmetric< BaseSegmentPairFilter >, MCSymmetric< BaseSegmentPairRelationFilter >, MCSymmetric< BaseSegmentRelationFilter >, MCSymmetric< BaseSegmentTripleFilter >, MCSymmetric< BaseSegmentTripleRelationFilter >, MCSymmetric< BaseTrackRelationFilter >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCFacet >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCWireHit, true >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegment2D >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCTrack >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegmentPair >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegmentTriple >, RecoTrackStorer, ROIFinder, and SVDHoughTracking.
Definition at line 31 of file CompositeProcessingSignalListener.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the beginning of a new run.
Reimplemented from ProcessingSignalListener.
Reimplemented in LayerRelationFilter< AFilter >, FourHitFilter, QualityIndicatorFilter, ThreeHitFilter, TwoHitVirtualIPFilter, TwoHitVirtualIPQIFilter, RecoTrackStorer, ROIFinder, SpacePointLoaderAndPreparer, and TrackCandidateResultRefiner.
Definition at line 23 of file CompositeProcessingSignalListener.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the end of the run.
Reimplemented from ProcessingSignalListener.
Definition at line 39 of file CompositeProcessingSignalListener.cc.
|
finalvirtual |
Expose the parameters to a module.
Reimplemented from Findlet< const CDCSegment2D, CDCTrack >.
Definition at line 30 of file AxialTrackCreatorSegmentHough.cc.
|
finalvirtual |
Short description of the findlet.
Reimplemented from Findlet< const CDCSegment2D, CDCTrack >.
Definition at line 25 of file AxialTrackCreatorSegmentHough.cc.
|
protectedinherited |
Get the number of currently registered listeners.
Definition at line 60 of file CompositeProcessingSignalListener.cc.
|
finalvirtual |
Initialize the findlet before event processing.
Reimplemented from ProcessingSignalListener.
Definition at line 90 of file AxialTrackCreatorSegmentHough.cc.
|
finalvirtual |
Cleanup the findlet after event processing.
Reimplemented from ProcessingSignalListener.
Definition at line 195 of file AxialTrackCreatorSegmentHough.cc.
|
staticprivate |
Fixed parameter: Number of divisions in the curv direction.
Definition at line 93 of file AxialTrackCreatorSegmentHough.h.
|
staticprivate |
Fixed parameter: Number of divisions in the impact direction.
Definition at line 90 of file AxialTrackCreatorSegmentHough.h.
|
staticprivate |
Fixed parameter: Number of divisions in the phi0 direction.
Definition at line 87 of file AxialTrackCreatorSegmentHough.h.
|
private |
The hough space tree search.
Definition at line 101 of file AxialTrackCreatorSegmentHough.h.
|
privateinherited |
Flag to keep track whether initialization happened before.
Definition at line 52 of file ProcessingSignalListener.h.
|
privateinherited |
Name of the type during initialisation.
Definition at line 58 of file ProcessingSignalListener.h.
|
private |
Parameter: Curvature bounds of the hough space.
Definition at line 63 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Overlap of the curvature bins at the lowest level of the hough space.
Definition at line 84 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Width of the curvature bins at the lowest level of the hough space.
Definition at line 81 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Overlap of the impact bins at the lowest level of the hough space.
Definition at line 78 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Width of the impact bins at the lowest level of the hough space.
Definition at line 75 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Overlap of the phi0 bins at the lowest level of the hough space.
Definition at line 72 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Width of the phi0 bins at the lowest level of the hough space.
Definition at line 69 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Impact parameter bounds of the hough space.
Definition at line 66 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Level of divisions in the hough space.
Definition at line 60 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Minimal number of hits as a fraction of the total hits in the event.
Definition at line 57 of file AxialTrackCreatorSegmentHough.h.
|
private |
Parameter: Absolute minimal number of hits to make an axial track.
Definition at line 54 of file AxialTrackCreatorSegmentHough.h.
|
privateinherited |
References to subordinary signal processing listener contained in this findlet.
Definition at line 52 of file CompositeProcessingSignalListener.h.
|
privateinherited |
Flag to keep track whether termination happened before.
Definition at line 55 of file ProcessingSignalListener.h.