Belle II Software  release-05-01-25
AxialStraightTrackCreator.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Dmitrii Neverov *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <tracking/trackFindingCDC/findlets/base/Findlet.h>
14 
15 namespace Belle2 {
20  class ECLCluster;
21 
22  namespace TrackFindingCDC {
23  class CDCTrack;
24  class CDCWireHit;
25  class CDCTrajectory2D;
26 
30  class AxialStraightTrackCreator : public Findlet<const ECLCluster* const, const CDCWireHit* const, CDCTrack> {
31 
32  private:
34  using Super = Findlet<const ECLCluster* const, const CDCWireHit* const, CDCTrack>;
35 
36  public:
39 
41  std::string getDescription() final;
42 
44  void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) final;
45 
47  void initialize() final;
48 
50  void apply(const std::vector<const ECLCluster*>& eclClusters,
51  const std::vector<const CDCWireHit*>& axialWireHits,
52  std::vector<CDCTrack>& tracks) final;
53 
54  private:
56  std::vector<const CDCWireHit*> search(const std::vector<const CDCWireHit*>& axialWireHits,
57  const CDCTrajectory2D& guidingTrajectory2D);
58 
59  private:
61  float m_param_minEnergy = 0.050; //GeV
62 
64  unsigned int m_param_minNHits = 5;
65 
67  float m_param_maxDistance = 0.5; //cm, NOTE for conventional tracking it is 0.2
68  };
69  }
71 }
Belle2::TrackFindingCDC::CDCTrack
Class representing a sequence of three dimensional reconstructed hits.
Definition: CDCTrack.h:51
Belle2::ECLCluster
ECL cluster data.
Definition: ECLCluster.h:39
Belle2::TrackFindingCDC::AxialStraightTrackCreator::apply
void apply(const std::vector< const ECLCluster * > &eclClusters, const std::vector< const CDCWireHit * > &axialWireHits, std::vector< CDCTrack > &tracks) final
Execute one pass over given clusters and wirehits and create tracks.
Definition: AxialStraightTrackCreator.cc:58
Belle2::TrackFindingCDC::CDCTrajectory2D
Particle trajectory as it is seen in xy projection represented as a circle.
Definition: CDCTrajectory2D.h:46
Belle2::TrackFindingCDC::AxialStraightTrackCreator::getDescription
std::string getDescription() final
Short description of the findlet.
Definition: AxialStraightTrackCreator.cc:31
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::TrackFindingCDC::AxialStraightTrackCreator::m_param_minEnergy
float m_param_minEnergy
ECL cluster energy threshold.
Definition: AxialStraightTrackCreator.h:69
Belle2::TrackFindingCDC::AxialStraightTrackCreator::search
std::vector< const CDCWireHit * > search(const std::vector< const CDCWireHit * > &axialWireHits, const CDCTrajectory2D &guidingTrajectory2D)
Search for hits compatible with given trajectory.
Definition: AxialStraightTrackCreator.cc:87
Belle2::TrackFindingCDC::AxialStraightTrackCreator::m_param_minNHits
unsigned int m_param_minNHits
Track number of hits threshold.
Definition: AxialStraightTrackCreator.h:72
Belle2::TrackFindingCDC::AxialStraightTrackCreator::initialize
void initialize() final
Initialisation before the event processing starts.
Definition: AxialStraightTrackCreator.cc:53
Belle2::TrackFindingCDC::AxialStraightTrackCreator::m_param_maxDistance
float m_param_maxDistance
Maximum distance from hits to the track.
Definition: AxialStraightTrackCreator.h:75
Belle2::TrackFindingCDC::AxialStraightTrackCreator::AxialStraightTrackCreator
AxialStraightTrackCreator()
Constructor.
Belle2::TrackFindingCDC::AxialStraightTrackCreator::exposeParameters
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
Definition: AxialStraightTrackCreator.cc:36
Belle2::TrackFindingCDC::CDCWireHit
Class representing a hit wire in the central drift chamber.
Definition: CDCWireHit.h:65
Belle2::ModuleParamList
The Module parameter list class.
Definition: ModuleParamList.h:46
Belle2::TrackFindingCDC::AxialStraightTrackCreator::Super
Findlet< const ECLCluster *const, const CDCWireHit *const, CDCTrack > Super
Type of the base class.
Definition: AxialStraightTrackCreator.h:42