Belle II Software development
AxialTrackFinderLegendre.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/trackingUtilities/findlets/base/Findlet.h>
11
12#include <tracking/trackFindingCDC/findlets/minimal/AxialTrackMerger.h>
13#include <tracking/trackFindingCDC/findlets/minimal/AxialTrackHitMigrator.h>
14#include <tracking/trackFindingCDC/findlets/minimal/AxialTrackCreatorHitLegendre.h>
15
16#include <vector>
17#include <string>
18
19namespace Belle2 {
24
25
26 namespace TrackingUtilities {
27 class CDCTrack;
28 class CDCWireHit;
29 }
30 namespace TrackFindingCDC {
31 enum class LegendreFindingPass;
32
42 TrackingUtilities::Findlet<const TrackingUtilities::CDCWireHit, TrackingUtilities::CDCTrack> {
43
44 private:
47
48 public:
51
53 std::string getDescription() final;
54
56 void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) final;
57
59 void apply(const std::vector<TrackingUtilities::CDCWireHit>& wireHits, std::vector<TrackingUtilities::CDCTrack>& tracks);
60
61 private: // findlets
64
67
71
74
77
80 };
81 }
83}
The Module parameter list class.
Generates axial tracks from hit using special leaf postprocessing.
AxialTrackCreatorHitLegendre m_fullRangeAxialTrackCreatorHitLegendre
Findlet for the full range legendre pass.
AxialTrackCreatorHitLegendre m_nonCurlerAxialTrackCreatorHitLegendre
Findlet for the non-curler legendre pass.
void apply(const std::vector< TrackingUtilities::CDCWireHit > &wireHits, std::vector< TrackingUtilities::CDCTrack > &tracks)
Main method to apply the track finding.
std::string getDescription() final
Short description of the findlet.
AxialTrackCreatorHitLegendre::EPass EPass
Class of Pass keys.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
AxialTrackCreatorHitLegendre m_nonCurlersWithIncreasingThresholdAxialTrackCreatorHitLegendre
Findlet for the non-curler with increased threshold legendre pass.
AxialTrackMerger m_axialTrackMerger
Findlet to merge the tracks after the legendre finder.
TrackingUtilities::Findlet< const TrackingUtilities::CDCWireHit, TrackingUtilities::CDCTrack > Super
Type of the base class.
AxialTrackHitMigrator m_axialTrackHitMigrator
Findlet to exchange hits between tracks based on their proximity to the respective trajectory.
Exchanges hits between axial tracks based on their distance to the respective trajectory.
Findlet implementing the merging of axial tracks found in the legendre tree search.
Class representing a sequence of three dimensional reconstructed hits.
Definition CDCTrack.h:39
Class representing a hit wire in the central drift chamber.
Definition CDCWireHit.h:58
Interface for a minimal algorithm part that wants to expose some parameters to a module.
Definition Findlet.h:26
STL class.
Abstract base class for different kinds of events.
STL namespace.