8 #ifndef LAR_ASYMMETRY_FEATURE_BASE_TOOL_H
9 #define LAR_ASYMMETRY_FEATURE_BASE_TOOL_H 1
43 pandora::StatusCode
ReadSettings(
const pandora::TiXmlHandle xmlHandle);
66 const float weight,
const pandora::CartesianVector &clusterDirection, pandora::CartesianVector &localWeightedDirectionSum)
const;
78 virtual float CalculateAsymmetry(
const bool useEnergyMetrics,
const pandora::CartesianVector &vertexPosition2D,
79 const pandora::ClusterVector &asymmetryClusters,
const pandora::CartesianVector &localWeightedDirectionSum)
const;
86 #endif // #ifndef LAR_ASYMMETRY_FEATURE_BASE_TOOL_H
virtual float GetAsymmetryForView(const pandora::CartesianVector &vertexPosition2D, const VertexSelectionBaseAlgorithm::SlidingFitDataList &slidingFitDataList, const VertexSelectionBaseAlgorithm::ShowerClusterList &showerClusterList) const =0
Get the asymmetry feature for a given view.
MvaTypes::MvaFeatureVector MvaFeatureVector
virtual float CalculateAsymmetry(const bool useEnergyMetrics, const pandora::CartesianVector &vertexPosition2D, const pandora::ClusterVector &asymmetryClusters, const pandora::CartesianVector &localWeightedDirectionSum) const
Calculate the asymmetry feature.
std::vector< ShowerCluster > ShowerClusterList
float m_maxAsymmetryDistance
The max distance between cluster (any hit) and vertex to calculate asymmetry score.
std::vector< SlidingFitData > SlidingFitDataList
std::map< pandora::HitType, const ShowerClusterList > ShowerClusterListMap
Map of shower cluster lists for passing to tools.
std::map< pandora::HitType, const pandora::ClusterList & > ClusterListMap
Map array of cluster lists for passing to tools.
Header file for the vertex selection base algorithm class.
VertexSelectionBaseAlgorithm class.
AsymmetryFeatureBaseTool class.
void Run(LArMvaHelper::MvaFeatureVector &featureVector, const VertexSelectionBaseAlgorithm *const pAlgorithm, const pandora::Vertex *const pVertex, const VertexSelectionBaseAlgorithm::SlidingFitDataListMap &slidingFitDataListMap, const VertexSelectionBaseAlgorithm::ClusterListMap &, const VertexSelectionBaseAlgorithm::KDTreeMap &, const VertexSelectionBaseAlgorithm::ShowerClusterListMap &showerClusterListMap, const float, float &)
Run the tool.
std::map< pandora::HitType, const SlidingFitDataList > SlidingFitDataListMap
Map of sliding fit data lists for passing to tools.
void IncrementAsymmetryParameters(const float weight, const pandora::CartesianVector &clusterDirection, pandora::CartesianVector &localWeightedDirectionSum) const
Increment the asymmetry parameters.
AsymmetryFeatureBaseTool()
Default constructor.
std::map< pandora::HitType, const std::reference_wrapper< HitKDTree2D > > KDTreeMap
Map array of hit kd trees for passing to tools.
std::vector< art::Ptr< recob::Cluster > > ClusterVector
MvaFeatureTool class template.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)