APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
IsoHitClusteringAlgorithm.h
Go to the documentation of this file.
1 
8 #ifndef ISOHITCLUSTERINGALGORITHM_H
9 #define ISOHITCLUSTERINGALGORITHM_H 1
10 
11 #include "Pandora/Algorithm.h"
13 
14 namespace april_content
15 {
16 
20 class IsoHitClusteringAlgorithm : public pandora::Algorithm
21 {
22 public:
26  class Factory : public pandora::AlgorithmFactory
27  {
28  public:
29  pandora::Algorithm *CreateAlgorithm() const;
30  };
31 
36 
37 private:
38  pandora::StatusCode Run();
39  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
40 
41  void CreateCluster(const pandora::CaloHitList *const caloHitList) const;
42 
43  pandora::StatusCode GetIsoHits(pandora::CaloHitList& caloHitList);
44 
45  pandora::StatusCode MeanShiftClustering(pandora::CaloHitList& isoHitList, std::vector<pandora::CaloHitList>& clusterHitsCollection);
46 
47 private:
48  float m_kernelBandwidth;
49  float m_clusterEpsilon;
50 };
51 
52 //------------------------------------------------------------------------------------------------------------------------------------------
53 
54 inline pandora::Algorithm *IsoHitClusteringAlgorithm::Factory::CreateAlgorithm() const
55 {
56  return new IsoHitClusteringAlgorithm();
57 }
58 
59 }
60 
61 #endif // ISOHITCLUSTERINGALGORITHM_H
Header file for the kd tree linker algo template class.
IsoHitClusteringAlgorithm class.
Definition: IsoHitClusteringAlgorithm.h:20
Factory class for instantiating algorithm.
Definition: IsoHitClusteringAlgorithm.h:26
IsoHitClusteringAlgorithm()
Default constructor.
Definition: IsoHitClusteringAlgorithm.cc:18