LArSoft  v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
IHit3DBuilder.h
Go to the documentation of this file.
1 
10 #ifndef IHit3DBuilder_h
11 #define IHit3DBuilder_h
12 
13 // Framework Includes
16 
17 // Algorithm includes
20 
21 //------------------------------------------------------------------------------------------------------------------------------------------
22 
23 namespace lar_cluster3d {
27  class IHit3DBuilder {
28  public:
32  virtual ~IHit3DBuilder() noexcept = default;
33 
38  virtual void produces(art::ProducesCollector&) = 0;
39 
43  using RecobHitToPtrMap = std::unordered_map<const recob::Hit*, art::Ptr<recob::Hit>>;
44 
52 
57 
61  virtual float getTimeToExecute(TimeValues index) const = 0;
62  };
63 
64 } // namespace lar_cluster3d
65 #endif
std::list< reco::ClusterHit3D > HitPairList
Definition: Cluster3D.h:330
Declaration of signal hit object.
virtual float getTimeToExecute(TimeValues index) const =0
If monitoring, recover the time to execute a particular function.
TimeValues
enumerate the possible values for time checking if monitoring timing
Definition: IHit3DBuilder.h:56
IHit3DBuilder interface class definiton.
Definition: IHit3DBuilder.h:27
virtual void Hit3DBuilder(art::Event &, reco::HitPairList &, RecobHitToPtrMap &)=0
Given a set of recob hits, run DBscan to form 3D clusters.
virtual ~IHit3DBuilder() noexcept=default
Virtual Destructor.
virtual void produces(art::ProducesCollector &)=0
The space point building should output the hit collection for those hits which combine to form space ...
std::unordered_map< const recob::Hit *, art::Ptr< recob::Hit >> RecobHitToPtrMap
Defines a structure mapping art representation to internal.
Definition: IHit3DBuilder.h:43