8#ifndef LAR_TWO_D_SLIDING_SHOWER_FIT_RESULT_H
9#define LAR_TWO_D_SLIDING_SHOWER_FIT_RESULT_H 1
15#include <unordered_map>
47 const T *
const pT,
const unsigned int slidingFitWindow,
const float slidingFitLayerPitch,
const float showerEdgeMultiplier = 1.f);
91 const ShowerEdge showerEdge,
const float showerEdgeMultiplier);
133 ShowerExtent(
const float xCoordinate,
const float highEdgeZ,
const float lowEdgeZ);
190 m_xCoordinate(xCoordinate),
191 m_highEdgeZ(std::max(edge1, edge2)),
192 m_lowEdgeZ(std::min(edge1, edge2))
Header file for the lar two dimensional sliding fit result class.
Header file for the pandora api class.
ShowerExtent(const float xCoordinate, const float highEdgeZ, const float lowEdgeZ)
Constructor.
float GetXCoordinate() const
float m_xCoordinate
The x coordinate.
float m_lowEdgeZ
The shower low edge z coordinate.
float GetHighEdgeZ() const
float GetLowEdgeZ() const
float m_highEdgeZ
The shower high edge z coordinate.
TwoDSlidingFitResult class.
TwoDSlidingShowerFitResult class.
TwoDSlidingFitResult m_positiveEdgeFitResult
The sliding fit result for the positive shower edge.
TwoDSlidingFitResult m_showerFitResult
The sliding fit result for the full shower cluster.
void GetShowerEdges(const float x, const bool widenIfAmbiguity, pandora::FloatVector &edgePositions) const
Get the most appropriate shower edges at a given x coordinate.
const TwoDSlidingFitResult & GetNegativeEdgeFitResult() const
Get the sliding fit result for the negative shower edge.
std::vector< FitCoordinate > FitCoordinateList
std::pair< float, float > FitCoordinate
const TwoDSlidingFitResult & GetShowerFitResult() const
Get the sliding fit result for the full shower cluster.
static TwoDSlidingFitResult LArTwoDShowerEdgeFit(const pandora::Cluster *const pCluster, const TwoDSlidingFitResult &fullShowerFit, const ShowerEdge showerEdge, const float showerEdgeMultiplier)
Perform two dimensional sliding fit to shower edge, using specified primary axis.
const TwoDSlidingFitResult & GetPositiveEdgeFitResult() const
Get the sliding fit result for the positive shower edge.
TwoDSlidingFitResult m_negativeEdgeFitResult
The sliding fit result for the negative shower edge.
std::map< int, FitCoordinateList > FitCoordinateMap
std::unordered_map< const pandora::Cluster *, TwoDSlidingShowerFitResult > TwoDSlidingShowerFitResultMap
std::vector< TwoDSlidingShowerFitResult > TwoDSlidingShowerFitResultList
ShowerEdge
ShowerEdge enum.
std::map< int, ShowerExtent > ShowerPositionMap
std::vector< CartesianVector > CartesianPointVector
std::vector< float > FloatVector