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/trackFindingCDC/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 TrackFindingCDC {
27 class CDCTrack;
28 class CDCWireHit;
29 enum class LegendreFindingPass;
30
39 class AxialTrackFinderLegendre : public Findlet<const CDCWireHit, CDCTrack> {
40
41 private:
44
45 public:
48
50 std::string getDescription() final;
51
53 void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) final;
54
56 void apply(const std::vector<CDCWireHit>& wireHits, std::vector<CDCTrack>& tracks);
57
58 private: // findlets
61
64
68
71
74
77 };
78 }
80}
The Module parameter list class.
Generates axial tracks from hit using special leaf postprocessing.
Findlet< const CDCWireHit, CDCTrack > Super
Type of the base class.
AxialTrackCreatorHitLegendre m_fullRangeAxialTrackCreatorHitLegendre
Findlet for the full range legendre pass.
AxialTrackCreatorHitLegendre m_nonCurlerAxialTrackCreatorHitLegendre
Findlet for the non-curler legendre pass.
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.
AxialTrackHitMigrator m_axialTrackHitMigrator
Findlet to exchange hits between tracks based on their proximity to the respective trajectory.
void apply(const std::vector< CDCWireHit > &wireHits, std::vector< CDCTrack > &tracks)
Main method to apply the track finding.
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:41
Class representing a hit wire in the central drift chamber.
Definition CDCWireHit.h:55
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.