Belle II Software development
CKFToSVDFindlet.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10#include <tracking/trackFindingCDC/findlets/base/Findlet.h>
11#include <tracking/ckf/svd/entities/CKFToSVDResult.h>
12#include <tracking/ckf/svd/entities/CKFToSVDState.h>
13#include <tracking/trackFindingCDC/utilities/WeightedRelation.h>
14
15#include <tracking/ckf/general/findlets/SpacePointTagger.dcl.h>
16#include <tracking/ckf/general/findlets/TrackLoader.h>
17#include <tracking/ckf/general/findlets/StateCreator.dcl.h>
18#include <tracking/ckf/general/findlets/StateCreatorWithReversal.dcl.h>
19#include <tracking/ckf/general/findlets/CKFRelationCreator.dcl.h>
20#include <tracking/ckf/general/findlets/TreeSearcher.dcl.h>
21#include <tracking/ckf/general/findlets/OverlapResolver.dcl.h>
22#include <tracking/ckf/general/findlets/ResultStorer.dcl.h>
23#include <tracking/ckf/svd/findlets/SVDStateRejecter.h>
24#include <tracking/ckf/svd/findlets/SpacePointLoader.h>
25
26#include <tracking/ckf/svd/filters/relations/ChooseableSVDRelationFilter.h>
27#include <tracking/ckf/svd/filters/results/ChooseableSVDResultFilter.h>
28
29namespace Belle2 {
34 class RecoTrack;
35 class SpacePoint;
36 class SVDCluster;
37
38 class ModuleParamList;
39
117
118}
Findlet for applying filters for creating hit-hit and hit-seed relations.
std::vector< CKFToSVDResult > m_filteredResults
Vector for storing the filtered results.
unsigned int m_param_minimalHitRequirement
Minimal hit requirement for the results (counted in number of space points)
ResultStorer< CKFToSVDResult > m_resultStorer
Findlet for storing the results.
SpacePointTagger< CKFToSVDResult, SVDCluster > m_spacePointTagger
Findlet for tagging the used space points.
std::vector< CKFToSVDState > m_states
States for the hits.
TrackFindingCDC::Findlet<> Super
Parent class.
TrackLoader m_dataHandler
Findlet for retrieving the cdc tracks and writing the result out.
std::vector< const SpacePoint * > m_spacePointVector
Pointers to the (const) SpacePoints as a vector.
TreeSearcher< CKFToSVDState, SVDStateRejecter, CKFToSVDResult > m_treeSearchFindlet
Findlet doing the main work: the tree finding.
StateCreatorWithReversal< CKFToSVDState > m_stateCreatorFromTracks
Findlet for creating states out of tracks.
~CKFToSVDFindlet() override
Default destructor.
SpacePointLoader m_hitsLoader
Findlet for loading the space points.
std::vector< RecoTrack * > m_cdcRecoTrackVector
Pointers to the CDC Reco tracks as a vector.
OverlapResolver< ChooseableSVDResultFilter > m_overlapResolver
Findlet for resolving overlaps.
std::vector< CKFToSVDResult > m_results
Vector for storing the results.
CKFRelationCreator< CKFToSVDState, ChooseableSVDRelationFilter > m_relationCreator
Findlet for creating relations between states.
void beginEvent() override
Clear the object pools.
std::vector< CKFToSVDState > m_seedStates
States for the tracks.
CKFToSVDFindlet()
Constructor, for setting module description and parameters.
StateCreator< const SpacePoint, CKFToSVDState > m_stateCreatorFromHits
Findlet for creating states out of hits.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the parameters of the sub findlets.
void apply() override
Do the track/hit finding/merging.
std::vector< TrackFindingCDC::WeightedRelation< CKFToSVDState > > m_relations
Relations between states.
The Module parameter list class.
Simple findlet for searching the best candidate for a given seed applying the given filter.
This is the Reconstruction Event-Data Model Track.
Definition RecoTrack.h:79
This findlet does also handle the storing of the results.
The SVD Cluster class This class stores all information about reconstructed SVD clusters.
Definition SVDCluster.h:29
Load the space points from the store array to the given vector.
Findlet for tagging all space points in the results vector as used.
SpacePoint typically is build from 1 PXDCluster or 1-2 SVDClusters.
Definition SpacePoint.h:42
An adaption of the normal state creator introducing another parameter to reverse the seed.
Create new states and add them to a vector from a given object vector.
Interface for a minimal algorithm part that wants to expose some parameters to a module.
Definition Findlet.h:26
Findlet for loading the seeds from the data store.
Definition TrackLoader.h:36
Findlet for constructing result paths out of a list of states, which are connected with weighted rela...
Abstract base class for different kinds of events.