All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
IHitParticleAssociations.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 ///
3 /// \file IMCTruthMatching.h
4 /// \brief This provides an interface which defines truth matching functions
5 /// made available to downstream analysis code
6 ///
7 /// \author usher@slac.stanford.edu
8 ///
9 ////////////////////////////////////////////////////////////////////////
10 #ifndef IMCTRUTHMATCHING_H
11 #define IMCTRUTHMATCHING_H
12 
13 namespace art { class Event; }
14 namespace fhicl { class ParameterSet; }
15 namespace recob { class Hit; }
16 namespace simb { class MCParticle; }
17 
18 #include "canvas/Persistency/Common/Assns.h"
19 
21 
22 ///code to link reconstructed objects back to the MC truth information
23 namespace t0
24 {
25 
26 using HitParticleAssociations = art::Assns<simb::MCParticle, recob::Hit, anab::BackTrackerHitMatchingData>;
27 
29 {
30 public:
31  /**
32  * @brief Virtual Destructor
33  */
34  virtual ~IHitParticleAssociations() noexcept = default;
35 
36  /**
37  * @brief Interface for configuring the particular algorithm tool
38  *
39  * @param ParameterSet The input set of parameters for configuration
40  */
41  virtual void reconfigure(fhicl::ParameterSet const& pset) = 0;
42 
43  /**
44  * @brief This rebuilds the internal maps
45  */
46  virtual void CreateHitParticleAssociations(art::Event&, HitParticleAssociations*) = 0;
47 };
48 
49 } // namespace
50 #endif // IMCTRUTHMATCHING_H
art::Assns< simb::MCParticle, recob::Hit, anab::BackTrackerHitMatchingData > HitParticleAssociations
virtual void reconfigure(fhicl::ParameterSet const &pset)=0
Interface for configuring the particular algorithm tool.
virtual void CreateHitParticleAssociations(art::Event &, HitParticleAssociations *)=0
This rebuilds the internal maps.
virtual ~IHitParticleAssociations() noexcept=default
Virtual Destructor.