Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
SimpleClusterCreationAlgorithm.h
Go to the documentation of this file.
1
8#ifndef LAR_SIMPLE_CLUSTER_CREATION_ALGORITHM_H
9#define LAR_SIMPLE_CLUSTER_CREATION_ALGORITHM_H 1
10
11#include "Pandora/Algorithm.h"
12
13#include <unordered_map>
14
15namespace lar_content
16{
17
22{
23public:
28
29private:
31
32 typedef std::unordered_map<const pandora::CaloHit *, pandora::CaloHitList> HitAssociationMap;
33
40 void SelectCaloHits(const pandora::CaloHitList *const pInputList, pandora::CaloHitList &outputList) const;
41
48 void BuildAssociationMap(const pandora::CaloHitList &caloHitList, HitAssociationMap &hitAssociationMap) const;
49
56 void CreateClusters(const pandora::CaloHitList &caloHitList, const HitAssociationMap &hitAssociationMap) const;
57
67 void CollectAssociatedHits(const pandora::CaloHit *const pSeedCaloHit, const pandora::CaloHit *const pCurrentCaloHit,
68 const HitAssociationMap &hitAssociationMap, const pandora::CaloHitSet &vetoList, pandora::CaloHitList &mergeList) const;
69
71
73};
74
75} // namespace lar_content
76
77#endif // #ifndef LAR_SIMPLE_CLUSTER_CREATION_ALGORITHM_H
Header file for the algorithm class.
void CreateClusters(const pandora::CaloHitList &caloHitList, const HitAssociationMap &hitAssociationMap) const
Create clusters from selected calo hits and their associations.
void SelectCaloHits(const pandora::CaloHitList *const pInputList, pandora::CaloHitList &outputList) const
Select calo hits for clustering.
std::unordered_map< const pandora::CaloHit *, pandora::CaloHitList > HitAssociationMap
void CollectAssociatedHits(const pandora::CaloHit *const pSeedCaloHit, const pandora::CaloHit *const pCurrentCaloHit, const HitAssociationMap &hitAssociationMap, const pandora::CaloHitSet &vetoList, pandora::CaloHitList &mergeList) const
For a given seed calo hits, collect up all the associated calo hits.
void BuildAssociationMap(const pandora::CaloHitList &caloHitList, HitAssociationMap &hitAssociationMap) const
Create map of associations between calo hits.
float m_clusteringWindowSquared
Maximum distance (squared) for two hits to be joined.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
Algorithm class. Algorithm addresses are held only by the algorithm manager. They have a fully define...
Definition Algorithm.h:21
CaloHit class.
Definition CaloHit.h:26
std::unordered_set< const CaloHit * > CaloHitSet
MANAGED_CONTAINER< const CaloHit * > CaloHitList
StatusCode
The StatusCode enum.