LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
LayerSplittingAlgorithm.h
Go to the documentation of this file.
1 
8 #ifndef LAR_LAYER_SPLITTING_ALGORITHM_H
9 #define LAR_LAYER_SPLITTING_ALGORITHM_H 1
10 
12 
13 namespace lar_content
14 {
15 
20 {
21 public:
26 
27 private:
28  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
29  pandora::StatusCode DivideCaloHits(
30  const pandora::Cluster *const pCluster, pandora::CaloHitList &firstCaloHitList, pandora::CaloHitList &secondCaloHitList) const;
31 
38  pandora::StatusCode FindBestSplitLayer(const pandora::Cluster *const pCluster, unsigned int &splitLayer) const;
39 
48  pandora::StatusCode DivideCaloHits(const pandora::Cluster *const pCluster, const unsigned int &splitLayer,
49  pandora::CaloHitList &firstCaloHitList, pandora::CaloHitList &secondCaloHitList) const;
50 
58  float CalculateRms(const pandora::Cluster *const pCluster, const unsigned int &firstLayer, const unsigned int &secondLayer) const;
59 
60  unsigned int m_minClusterLayers;
61  unsigned int m_layerWindow;
65 };
66 
67 } // namespace lar_content
68 
69 #endif // #ifndef LAR_LAYER_SPLITTING_ALGORITHM_H
Header file for the cluster splitting algorithm class.
pandora::StatusCode FindBestSplitLayer(const pandora::Cluster *const pCluster, unsigned int &splitLayer) const
Find the best layer for splitting the cluster.
LayerSplittingAlgorithm class.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
float CalculateRms(const pandora::Cluster *const pCluster, const unsigned int &firstLayer, const unsigned int &secondLayer) const
Calculate rms deviation of cluster centroids between two extremal layers.
pandora::StatusCode DivideCaloHits(const pandora::Cluster *const pCluster, pandora::CaloHitList &firstCaloHitList, pandora::CaloHitList &secondCaloHitList) const
Divide calo hits in a cluster into two lists, each associated with a separate fragment cluster...