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>
15#include <tracking/ckf/general/findlets/TrackLoader.h>
16#include <tracking/ckf/general/findlets/StateCreatorWithReversal.dcl.h>
17#include <tracking/ckf/general/findlets/TreeSearcher.dcl.h>
18#include <tracking/trackFindingCDC/collectors/selectors/BestMatchSelector.h>
19#include <tracking/ckf/svd/findlets/SVDStateRejecter.h>
20#include <tracking/ckf/svd/findlets/SpacePointLoader.h>
21#include <tracking/ckf/svd/findlets/RelationFromSVDTracksCreator.h>
22#include <tracking/ckf/svd/findlets/RecoTrackRelator.h>
23#include <tracking/ckf/svd/findlets/RelationApplier.h>
33 class ModuleParamList;
62 void apply()
override;
102 std::vector<TrackFindingCDC::WeightedRelation<CKFToSVDState>>
m_relations;
Findlet for combining CDC tracks with SVD tracks.
RecoTrackRelator m_recoTrackRelator
Findlet transforming the hit results to track relations.
std::vector< TrackFindingCDC::WeightedRelation< const RecoTrack, const RecoTrack > > m_relationsCDCToSVD
Relations between CDC tracks and SVD tracks.
~CKFToSVDSeedFindlet()
Default destructor.
unsigned int m_param_minimalHitRequirement
Minimal hit requirement for the results (counted in number of space points)
std::vector< CKFToSVDState > m_states
States for the hits.
TrackLoader m_dataHandler
Findlet for retrieving the cdc tracks and writing the result out.
RelationFromSVDTracksCreator m_relationCreator
Relation Creator.
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.
SpacePointLoader m_hitsLoader
Findlet for loading the space points.
CKFToSVDSeedFindlet()
Constructor, for setting module description and parameters.
std::vector< RecoTrack * > m_cdcRecoTrackVector
Pointers to the CDC Reco tracks as a vector.
RelationApplier m_relationApplier
Copy the result relations to the store array.
std::vector< CKFToSVDResult > m_results
Vector for storing the results.
TrackFindingCDC::BestMatchSelector< const RecoTrack, const RecoTrack > m_bestMatchSelector
Greedy filter for the relations between SVD and CDC Reco Tracks.
void beginEvent() override
Clear the object pools.
std::vector< CKFToSVDState > m_seedStates
States for the tracks.
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 (also of the sub findlets).
void apply() override
Do the track merging.
std::vector< TrackFindingCDC::WeightedRelation< CKFToSVDState > > m_relations
Relations between states.
The Module parameter list class.
The results of the CKF ar in the form (seed -> vector of hits).
Relate the SVD and CDC tracks in the given relations also in the store array.
Simplified relation creator only creating relations between states of CDC Reco Track seeds and states...
Load the space points from the store array to the given vector.
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.
Selector to remove all relations in the list, which share the same collection item - except the one w...
Interface for a minimal algorithm part that wants to expose some parameters to a module.
Findlet for loading the seeds from the data store.
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.