LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
BoundedClusterMopUpAlgorithm.h
Go to the documentation of this file.
1 
8 #ifndef LAR_BOUNDED_CLUSTER_MOP_UP_ALGORITHM_H
9 #define LAR_BOUNDED_CLUSTER_MOP_UP_ALGORITHM_H 1
10 
11 #include "Pandora/Algorithm.h"
12 
14 
16 
17 namespace lar_content
18 {
19 
25 {
26 public:
31 
32 private:
36  class XSampling
37  {
38  public:
44  XSampling(const TwoDSlidingFitResult &fitResult);
45 
51  int GetBin(const float x) const;
52 
53  float m_minX;
54  float m_maxX;
55  int m_nPoints;
56  };
57 
58  void ClusterMopUp(const pandora::ClusterList &pfoClusters, const pandora::ClusterList &remnantClusters) const;
59 
67  void GetShowerPositionMap(const TwoDSlidingShowerFitResult &fitResult, const XSampling &xSampling, ShowerPositionMap &showerPositionMap) const;
68 
78  float GetBoundedFraction(const pandora::Cluster *const pCluster, const XSampling &xSampling, const ShowerPositionMap &showerPositionMap) const;
79 
80  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
81 
82  unsigned int m_slidingFitWindow;
85 };
86 
87 } // namespace lar_content
88 
89 #endif // #ifndef LAR_BOUNDED_CLUSTER_MOP_UP_ALGORITHM_H
Float_t x
Definition: compare.C:6
Header file for the lar two dimensional sliding shower fit result class.
XSampling(const TwoDSlidingFitResult &fitResult)
Constructor.
void ClusterMopUp(const pandora::ClusterList &pfoClusters, const pandora::ClusterList &remnantClusters) const
Cluster mop up for a single view. This function is responsible for instructing pandora to make cluste...
float m_minBoundedFraction
The minimum cluster bounded fraction for merging.
void GetShowerPositionMap(const TwoDSlidingShowerFitResult &fitResult, const XSampling &xSampling, ShowerPositionMap &showerPositionMap) const
Get the shower position map containing high and low edge z positions in bins of x.
std::map< int, ShowerExtent > ShowerPositionMap
int GetBin(const float x) const
Convert an x position into a sampling bin.
float m_showerEdgeMultiplier
Artificially tune width of shower envelope so as to make it more/less inclusive.
float GetBoundedFraction(const pandora::Cluster *const pCluster, const XSampling &xSampling, const ShowerPositionMap &showerPositionMap) const
Get the fraction of hits in a cluster bounded by a specified shower position map. ...
Header file for the cluster mop up algorithm base class.
int m_nPoints
The number of sampling points to be used.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
unsigned int m_slidingFitWindow
The layer window for the sliding linear fits.