All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
IROILocator.h
Go to the documentation of this file.
1 ///////////////////////////////////////////////////////////////////////
2 ///
3 /// \file IROILocator.h
4 ///
5 /// \brief This provides an interface for tools which are tasked with
6 /// finding ROI's in input waveforms. This allows different
7 /// approaches to be tried interchangeably
8 ///
9 /// \author T. Usher
10 ///
11 ////////////////////////////////////////////////////////////////////////
12 
13 #ifndef IROILocator_H
14 #define IROILocator_H
15 
16 #include "fhiclcpp/ParameterSet.h"
18 #include "art/Framework/Principal/Event.h"
20 
21 namespace art { class TFileDirectory; }
22 
23 namespace icarus_tool
24 {
26  {
27  public:
28  virtual ~IROILocator() noexcept = default;
29 
30  virtual void configure(const fhicl::ParameterSet& pset) = 0;
31  virtual void initializeHistograms(art::TFileDirectory&) = 0;
32 
33  // Define the waveform container
34  using VectorBool = std::vector<bool>;
35  using VectorFloat = std::vector<float>;
36  using ArrayBool = std::vector<VectorBool>;
37  using ArrayFloat = std::vector<VectorFloat>;
38 
39  using PlaneIDVec = std::vector<geo::PlaneID>;
40 
41  // Find the ROI's
42  virtual void FindROIs(const art::Event&, const ArrayFloat&, const std::vector<raw::ChannelID_t>&, const geo::PlaneID&, ArrayFloat&, ArrayBool&) = 0;
43  };
44 }
45 
46 #endif
std::vector< bool > VectorBool
Definition: IROILocator.h:34
std::vector< VectorBool > ArrayBool
Definition: IROILocator.h:36
The data type to uniquely identify a Plane.
Definition: geo_types.h:472
std::vector< VectorFloat > ArrayFloat
Definition: IROILocator.h:37
virtual void initializeHistograms(art::TFileDirectory &)=0
virtual ~IROILocator() noexcept=default
std::vector< float > VectorFloat
Definition: IROILocator.h:35
std::vector< geo::PlaneID > PlaneIDVec
Definition: IROILocator.h:39
virtual void configure(const fhicl::ParameterSet &pset)=0
art framework interface to geometry description
virtual void FindROIs(const art::Event &, const ArrayFloat &, const std::vector< raw::ChannelID_t > &, const geo::PlaneID &, ArrayFloat &, ArrayBool &)=0