APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
TrackClusterAssociationAlgorithm.h
Go to the documentation of this file.
1 
8 #ifndef APRIL_TRACK_CLUSTER_ASSOCIATION_ALGORITHM_H
9 #define APRIL_TRACK_CLUSTER_ASSOCIATION_ALGORITHM_H 1
10 
11 #include "Pandora/Algorithm.h"
12 
13 #include <unordered_map>
14 
15 namespace april_content
16 {
17 
18 template<typename, unsigned int> class KDTreeLinkerAlgo;
19 template<typename, unsigned int> class KDTreeNodeInfoT;
20 
21 //------------------------------------------------------------------------------------------------------------------------------------------
22 
26 class TrackClusterAssociationAlgorithm : public pandora::Algorithm
27 {
28 public:
32  class Factory : public pandora::AlgorithmFactory
33  {
34  public:
35  pandora::Algorithm *CreateAlgorithm() const;
36  };
37 
38 private:
39  pandora::StatusCode Run();
40 
43  typedef std::unordered_multimap<std::pair<const pandora::Track*, unsigned int>, const pandora::CaloHit*> TracksToHitsInPseudoLayerMap;
44  typedef std::unordered_map<const pandora::CaloHit*, const pandora::Cluster*> HitsToClustersMap;
45 
46  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
47 
50 
51  unsigned int m_maxSearchLayer;
54 };
55 
56 //------------------------------------------------------------------------------------------------------------------------------------------
57 
58 inline pandora::Algorithm *TrackClusterAssociationAlgorithm::Factory::CreateAlgorithm() const
59 {
61 }
62 
63 }
64 
65 #endif
float m_parallelDistanceCut
Max allowed projection of track-hit separation along track direction.
Definition: TrackClusterAssociationAlgorithm.h:52
unsigned int m_maxSearchLayer
Max pseudo layer to examine when calculating track-cluster distance.
Definition: TrackClusterAssociationAlgorithm.h:51
Class that implements the KDTree partition of 2D space and a closest point search algorithm...
Definition: TrackClusterAssociationAlgorithm.h:18
TrackClusterAssociationAlgorithm class.
Definition: TrackClusterAssociationAlgorithm.h:26
Data stored in each KDTree node. The dim1/dim2 fields are usually the duplication of some PFRecHit va...
Definition: TrackClusterAssociationAlgorithm.h:19
float m_maxTrackClusterDistance
Max distance between track and cluster to allow association.
Definition: TrackClusterAssociationAlgorithm.h:49
float m_minTrackClusterCosAngle
Min cos(angle) between track and cluster initial direction.
Definition: TrackClusterAssociationAlgorithm.h:53
float m_lowEnergyCut
Energy cut (GeV). Algorithm prefers to associate tracks to high-energy clusters.
Definition: TrackClusterAssociationAlgorithm.h:48
Factory class for instantiating algorithm.
Definition: TrackClusterAssociationAlgorithm.h:32