28 if (caloHitVector1.empty() || caloHitVector2.empty())
31 const HitType hitType1(caloHitVector1.at(0)->GetHitType());
32 const HitType hitType2(caloHitVector2.at(0)->GetHitType());
38 for (
const CaloHit *
const pCaloHit1 : caloHitVector1)
43 for (
const CaloHit *
const pCaloHit2 : caloHitVector2)
54 protoHit = thisProtoHit;
Header file for the geometry helper class.
#define PANDORA_RETURN_RESULT_IF_AND_IF(StatusCode1, StatusCode2, Operator, Command)
virtual void GetBestPosition3D(const pandora::HitType hitType1, const pandora::HitType hitType2, const pandora::CartesianPointVector &fitPositionList1, const pandora::CartesianPointVector &fitPositionList2, ProtoHit &protoHit) const
Get the three dimensional position using a provided two dimensional calo hit and candidate fit positi...
static float MergeTwoPositions(const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const float position1, const float position2)
Merge two views (U,V) to give a third view (Z).
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
Proto hits are temporary constructs to be used during iterative 3D hit procedure.
double GetChi2() const
Get the chi squared value.
bool IsPositionSet() const
Whether the proto hit position is set.
const pandora::CaloHit * GetParentCaloHit2D() const
Get the address of the parent 2D calo hit.
float m_zTolerance
The z tolerance to use when looking for associated calo hits between views.
ThreeViewShowerHitsTool()
Default constructor.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
void GetShowerHit3D(const pandora::CaloHitVector &caloHitVector1, const pandora::CaloHitVector &caloHitVector2, ProtoHit &protoHit) const
Get the three dimensional position for to a two dimensional calo hit, using the hit and a list of can...
HitType GetHitType() const
Get the calorimeter hit type.
const CartesianVector & GetPositionVector() const
Get the position vector of center of calorimeter cell, units mm.
float GetZ() const
Get the cartesian z coordinate.
const Pandora & GetPandora() const
Get the associated pandora instance.
StatusCodeException class.
static StatusCode ReadValue(const TiXmlHandle &xmlHandle, const std::string &xmlElementName, T &t)
Read a value from an xml element.
HitType
Calorimeter hit type enum.
std::vector< const CaloHit * > CaloHitVector
StatusCode
The StatusCode enum.