8 #ifndef LAR_TWO_D_SLIDING_SHOWER_FIT_RESULT_H 9 #define LAR_TWO_D_SLIDING_SHOWER_FIT_RESULT_H 1 11 #include "Api/PandoraApi.h" 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);
140 float GetXCoordinate()
const;
147 float GetHighEdgeZ()
const;
154 float GetLowEdgeZ()
const;
190 m_xCoordinate(xCoordinate),
191 m_highEdgeZ(
std::
max(edge1, edge2)),
192 m_lowEdgeZ(
std::
min(edge1, edge2))
219 #endif // #ifndef LAR_TWO_D_SLIDING_SHOWER_FIT_RESULT_H
ShowerEdge
ShowerEdge enum.
std::map< int, FitCoordinateList > FitCoordinateMap
float GetXCoordinate() const
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. ...
ShowerExtent(const float xCoordinate, const float highEdgeZ, const float lowEdgeZ)
Constructor.
TwoDSlidingShowerFitResult class.
float m_xCoordinate
The x coordinate.
std::map< int, ShowerExtent > ShowerPositionMap
TwoDSlidingFitResult m_showerFitResult
The sliding fit result for the full shower cluster.
TwoDSlidingFitResult m_negativeEdgeFitResult
The sliding fit result for the negative shower edge.
float GetLowEdgeZ() const
Header file for the lar two dimensional sliding fit result class.
std::pair< float, float > FitCoordinate
const TwoDSlidingFitResult & GetPositiveEdgeFitResult() const
Get the sliding fit result for the positive shower edge.
std::vector< TwoDSlidingShowerFitResult > TwoDSlidingShowerFitResultList
static int max(int a, int b)
TwoDSlidingFitResult m_positiveEdgeFitResult
The sliding fit result for the positive shower edge.
T min(sqlite3 *const db, std::string const &table_name, std::string const &column_name)
float m_lowEdgeZ
The shower low edge z coordinate.
const TwoDSlidingFitResult & GetNegativeEdgeFitResult() const
Get the sliding fit result for the negative shower edge.
float m_highEdgeZ
The shower high edge z coordinate.
float GetHighEdgeZ() const
std::unordered_map< const pandora::Cluster *, TwoDSlidingShowerFitResult > TwoDSlidingShowerFitResultMap
Dft::FloatVector FloatVector
TwoDSlidingShowerFitResult(const T *const pT, const unsigned int slidingFitWindow, const float slidingFitLayerPitch, const float showerEdgeMultiplier=1.f)
Constructor.
TwoDSlidingFitResult class.
void GetShowerEdges(const float x, const bool widenIfAmbiguity, pandora::FloatVector &edgePositions) const
Get the most appropriate shower edges at a given x coordinate.
std::vector< FitCoordinate > FitCoordinateList