Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
srcs
icaruscode
icaruscode
TPC
SignalProcessing
RecoWire
DeconTools
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h
Go to the documentation of this file.
1
///////////////////////////////////////////////////////////////////////
2
///
3
/// \file IROIFinder.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 IROIFinder_H
14
#define IROIFinder_H
15
16
#include "fhiclcpp/ParameterSet.h"
17
#include "TProfile.h"
18
19
namespace
art
20
{
21
class
TFileDirectory;
22
}
23
24
namespace
icarus_tool
25
{
26
enum
HistogramType
:
int
27
{
28
WAVEFORM
,
29
WAVELESSAVE
,
30
EROSION
,
31
DILATION
,
32
AVERAGE
,
33
DIFFERENCE
,
34
OPENING
,
35
CLOSING
,
36
DOPENCLOSING
,
37
LASTELEMENT
38
};
39
40
using
HistogramMap
= std::map<int, TProfile*>;
41
42
class
IROIFinder
43
{
44
public
:
45
virtual
~IROIFinder
() noexcept =
default
;
46
47
virtual
void
configure
(
const
fhicl::ParameterSet& pset) = 0;
48
virtual
void
initializeHistograms
(art::TFileDirectory&)
const
= 0;
49
virtual
size_t
plane
()
const
= 0;
50
51
// Define the waveform container
52
using
Waveform
= std::vector<float>;
53
54
// Define the ROI and its container
55
using
CandidateROI
= std::pair<size_t, size_t>;
56
using
CandidateROIVec
= std::vector<CandidateROI>;
57
58
// Find the ROI's
59
virtual
void
FindROIs
(
const
Waveform
&,
size_t
,
size_t
,
double
,
CandidateROIVec
&)
const
= 0;
60
};
61
}
62
63
#endif
icarus_tool::IROIFinder::configure
virtual void configure(const fhicl::ParameterSet &pset)=0
icarus_tool::IROIFinder::initializeHistograms
virtual void initializeHistograms(art::TFileDirectory &) const =0
icarus_tool::WAVELESSAVE
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:29
icarus_tool::IROIFinder::CandidateROIVec
std::vector< CandidateROI > CandidateROIVec
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:56
icarus_tool::EROSION
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:30
icarus_tool::AVERAGE
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:32
icarus_tool::HistogramType
HistogramType
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:26
icarus_tool::OPENING
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:34
icarus_tool::DOPENCLOSING
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:36
icarus_tool::DILATION
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:31
icarus_tool::IROIFinder::FindROIs
virtual void FindROIs(const Waveform &, size_t, size_t, double, CandidateROIVec &) const =0
icarus_tool::IROIFinder::Waveform
std::vector< float > Waveform
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:52
icarus_tool::CLOSING
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:35
icarus_tool::IROIFinder
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:42
icarus_tool::WAVEFORM
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:28
icarus_tool::IROIFinder::plane
virtual size_t plane() const =0
icarus_tool::HistogramMap
std::map< int, TProfile * > HistogramMap
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:40
icarus_tool::IROIFinder::CandidateROI
std::pair< size_t, size_t > CandidateROI
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:55
icarus_tool::DIFFERENCE
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:33
icarus_tool::IROIFinder::~IROIFinder
virtual ~IROIFinder() noexcept=default
icarus_tool::LASTELEMENT
Definition:
icaruscode/icaruscode/TPC/SignalProcessing/RecoWire/DeconTools/IROIFinder.h:37
Generated by
1.8.5