9 #include "Pandora/AlgorithmHeaders.h" 23 DlClusterCharacterisationAlgorithm::DlClusterCharacterisationAlgorithm()
29 DlClusterCharacterisationAlgorithm::~DlClusterCharacterisationAlgorithm()
35 bool DlClusterCharacterisationAlgorithm::IsClearTrack(
const Cluster *
const pCluster)
const 37 const OrderedCaloHitList &orderedCaloHitList{pCluster->GetOrderedCaloHitList()};
39 orderedCaloHitList.FillCaloHitList(caloHits);
40 const CaloHitList &isolatedHits{pCluster->GetIsolatedCaloHitList()};
41 caloHits.insert(caloHits.end(), isolatedHits.begin(), isolatedHits.end());
42 FloatVector trackLikelihoods;
45 for (
const CaloHit *pCaloHit : caloHits)
49 const float pShower{pLArCaloHit->GetShowerProbability()};
50 if ((pTrack + pShower) > std::numeric_limits<float>::epsilon())
51 trackLikelihoods.emplace_back(pTrack / (pTrack + pShower));
54 const unsigned long N{trackLikelihoods.size()};
64 catch (
const StatusCodeException &)
73 StatusCode DlClusterCharacterisationAlgorithm::ReadSettings(
const TiXmlHandle xmlHandle)
75 return ClusterCharacterisationBaseAlgorithm::ReadSettings(xmlHandle);
Header file for the lar calo hit class.
decltype(auto) constexpr end(T &&obj)
ADL-aware version of std::end.
double mean(const std::vector< short > &wf, size_t start, size_t nsample)
decltype(auto) constexpr begin(T &&obj)
ADL-aware version of std::begin.
float GetTrackProbability() const
Get the probability that the hit is track-like.