8 #ifndef APRIL_TRACK_CLUSTER_ASSOCIATION_ALGORITHM_H
9 #define APRIL_TRACK_CLUSTER_ASSOCIATION_ALGORITHM_H 1
11 #include "Pandora/Algorithm.h"
13 #include <unordered_map>
15 namespace april_content
32 class Factory :
public pandora::AlgorithmFactory
35 pandora::Algorithm *CreateAlgorithm()
const;
39 pandora::StatusCode Run();
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;
46 pandora::StatusCode ReadSettings(
const pandora::TiXmlHandle xmlHandle);
58 inline pandora::Algorithm *TrackClusterAssociationAlgorithm::Factory::CreateAlgorithm()
const
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