 |
Belle II Software
release-05-01-25
|
10 #include <tracking/trackFindingCDC/findlets/combined/SegmentTrackCombiner.h>
12 #include <tracking/trackFindingCDC/eventdata/segments/CDCSegment2D.h>
13 #include <tracking/trackFindingCDC/eventdata/tracks/CDCTrack.h>
15 #include <tracking/trackFindingCDC/filters/base/ChooseableFilter.icc.h>
18 using namespace TrackFindingCDC;
34 const std::string prefix =
"";
36 moduleParamList.
getParameter<
double>(
"sharedHitsCutValue").setDefaultValue(1.0);
37 moduleParamList.
getParameter<
bool>(
"useOnlySingleBestCandidate").setDefaultValue(
false);
38 moduleParamList.
getParameter<
bool>(
"hitSelectorUseOnlySingleBestCandidate").setDefaultValue(
false);
43 return "Findlet for the combination of tracks and segments.";
67 std::vector<TrackFindingCDC::CDCTrack>& tracks)
73 if (segment.isFullyTaken()) {
74 segment.getAutomatonCell().setTakenFlag();
76 segment.getAutomatonCell().unsetTakenFlag();
std::vector< WeightedRelation< CDCTrack, const CDCSegment2D > > m_relations
Object pools.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the parameters of the sub-findlets.
Convenvience wrapper to setup a Chooseable filter from a specific factory object.
ModuleParam< T > & getParameter(const std::string &name) const
Returns a reference to a parameter.
SingleMatchSelector< CDCTrack, CDCSegment2D > m_singleMatchSelector
Select only the best matching segment-track relations and remove the hits from the other ones.
CutSelector< CDCTrack, CDCSegment2D > m_selectPairsWithSharedHits
Select only those pairs, which share at least a certain amount of hits.
void beginEvent() final
Signal the beginning of a new event.
void addProcessingSignalListener(ProcessingSignalListener *psl)
Register a processing signal listener to be notified.
SharingHitsMatcher< CDCTrack, CDCSegment2D > m_sharedHitsMatcher
Matcher for creating relations between tracks and segments based on the number of shared hits.
TrackRejecter m_trackRejecter
Findlet to filter out fake tracks.
SegmentTrackAdderWithNormalization m_segmentTrackAdderWithNormalization
Add the matched segments to tracks.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
std::string getDescription() final
Short description of the findlet.
Abstract base class for different kinds of events.
virtual void exposeParameters(ModuleParamList *moduleParamList __attribute__((unused)), const std::string &prefix __attribute__((unused)))
Forward prefixed parameters of this findlet to the module parameter list.
void apply(std::vector< CDCTrack > &tracks) final
Fit the tracks.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
void beginEvent() override
Receive and dispatch signal for the start of a new event.
FilterSelector< CDCTrack, CDCSegment2D, ChooseableFilter< SegmentTrackFilterFactory > > m_chooseableSegmentTrackSelector
Reference to the chooser to be used for matching segments and tracks in the first step.
A reconstructed sequence of two dimensional hits in one super layer.
Filter can delegate to a filter chosen and set up at run time by parameters.
void apply(std::vector< WeightedRelation< CDCTrack, const CDCSegment2D >> &relations, std::vector< CDCTrack > &tracks, const std::vector< CDCSegment2D > &segment) override
Apply the findlet.
void apply(std::vector< CDCSegment2D > &segments, std::vector< CDCTrack > &tracks) override
Try to combine the segments and the tracks.
The Module parameter list class.
SegmentTrackCombiner()
Constructor setting up the filter parameters.
void apply(std::vector< CDCTrack > &tracks) final
Main algorithm.
TrackNormalizer m_trackNormalizer
Findlet for normalizing the tracks.