LArSoft  v10_06_00
Liquid Argon Software toolkit - https://larsoft.org/
RandomFigureOfMeritTool.h
Go to the documentation of this file.
1 
9 #ifndef LAR_RANDOM_FIGURE_OF_MERIT_TOOL_H
10 #define LAR_RANDOM_FIGURE_OF_MERIT_TOOL_H 1
11 
13 
14 namespace lar_content
15 {
16 
21 {
22 public:
27 
31  ~RandomFigureOfMeritTool() = default;
32 
33  pandora::StatusCode GetPfosToRecluster(const pandora::PfoList *pPfos, pandora::PfoList &pfosToRecluster);
34 
35  pandora::StatusCode CalcClusteringFom(const pandora::ClusterList &clusters, float &fom);
36 
37 private:
38  float GetRandomFom();
39 
40  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
41 
43 };
44 
45 //------------------------------------------------------------------------------------------------------------------------------------------
46 
48 {
49  return static_cast<float>(rand()) / static_cast<float>(RAND_MAX);
50 }
51 
52 } // namespace lar_content
53 
54 #endif // #ifndef LAR_RANDOM_FIGURE_OF_MERIT_TOOL_H
~RandomFigureOfMeritTool()=default
Default destructor.
float m_maxFomToRecluster
threshold figure of merit for reclustering a pfo
pandora::StatusCode GetPfosToRecluster(const pandora::PfoList *pPfos, pandora::PfoList &pfosToRecluster)
Identify pfos for which an attempt at 3D reclustering should be made.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
RandomFigureOfMeritTool class.
pandora::StatusCode CalcClusteringFom(const pandora::ClusterList &clusters, float &fom)
Calculate a measure of the goodness of a clustering.
Header file for the reclustering figure of merit algorithm tool base class.