LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
CheatingSliceIdBaseTool.h
Go to the documentation of this file.
1 
8 #ifndef LAR_CHEATING_SLICE_ID_BASE_TOOL_H
9 #define LAR_CHEATING_SLICE_ID_BASE_TOOL_H 1
10 
13 
14 #include <functional>
15 
16 namespace lar_content
17 {
18 
23 {
24 public:
25  virtual void SelectOutputPfos(const pandora::Algorithm *const pAlgorithm, const SliceHypotheses &nuSliceHypotheses,
26  const SliceHypotheses &crSliceHypotheses, pandora::PfoList &selectedPfos) = 0;
27 
36  static void GetTargetParticleWeight(const pandora::PfoList *const pPfoList, float &targetParticleWeight, float &totalWeight,
37  std::function<bool(const pandora::MCParticle *const)> fCriteria);
38 
47  static void GetTargetParticleWeight(const pandora::CaloHit *const pCaloHit, float &targetParticleWeight, float &totalWeight,
48  std::function<bool(const pandora::MCParticle *const)> fCriteria);
49 
50 private:
51  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
52 };
53 
54 } // namespace lar_content
55 
56 #endif // #ifndef LAR_CHEATING_SLICE_ID_BASE_TOOL_H
std::vector< pandora::PfoList > SliceHypotheses
CheatingSliceIdBaseTool class.
virtual void SelectOutputPfos(const pandora::Algorithm *const pAlgorithm, const SliceHypotheses &nuSliceHypotheses, const SliceHypotheses &crSliceHypotheses, pandora::PfoList &selectedPfos)=0
Select which reconstruction hypotheses to use; neutrino outcomes or cosmic-ray muon outcomes for each...
Header file for the master algorithm class.
SliceIdBaseTool class.
static void GetTargetParticleWeight(const pandora::PfoList *const pPfoList, float &targetParticleWeight, float &totalWeight, std::function< bool(const pandora::MCParticle *const)> fCriteria)
Get the target particle weight in a list of pfos.
Header file for the stitching tool base class.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)