Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
dunedataprep
dunedataprep
DataPrep
Tool
AdcMultiThreshSignalFinder.h
Go to the documentation of this file.
1
// AdcMultiThreshSignalFinder.h
2
//
3
// Tool to find signals and build ROI's with respect to pedestal
4
// subtracted baseline. This is a more basic version of the algorithm
5
// developed by Christoph Alt for the 3x1x1 dual-phase TPC detector
6
//
7
//
8
// Configuration:
9
// LogLevel - 0=silent, 1=init, 2=each event, >2=more
10
// UseStandardDevidation - true/false to define thresholds wrt pedestal RMS
11
// Threshold1 - 1st threshold to seed ROI (in ADC or units of ped RMS)
12
// SamplesAboveThreshold1 - min number of continuous samples to be above 1st threshold
13
// Threshold2 - 2nd threshold to refine ROI search (in ADC or units of ped RMS)
14
// SamplesAboveThreshold2 - min number of continuous samples to be above 2nd threshold
15
// ThresholdMax - threshold for which max value in seeded ROI
16
// ThresholdMin - minimum value to which expand found ROIs
17
// BinsBefore - number of time bins to pad found ROI on the left
18
// BinsAfter - number of time bins to pad found ROI on the right
19
//
20
21
22
#ifndef AdcMultiThreshSignalFinder_H
23
#define AdcMultiThreshSignalFinder_H
24
25
#include "
art/Utilities/ToolMacros.h
"
26
#include "
fhiclcpp/ParameterSet.h
"
27
#include "
dunecore/DuneInterface/Tool/TpcDataTool.h
"
28
#include "
dunecore/DuneInterface/Data/AdcTypes.h
"
29
30
class
AdcMultiThreshSignalFinder
:
TpcDataTool
{
31
32
public
:
33
34
AdcMultiThreshSignalFinder
(
fhicl::ParameterSet
const
&
ps
);
35
36
~AdcMultiThreshSignalFinder
()
override
;
37
38
// Build ROIs
39
DataMap
update
(
AdcChannelData
& acd)
const override
;
40
41
private
:
42
43
// Parameters.
44
int
m_LogLevel
;
45
bool
m_UseStd
;
46
AdcSignal
m_Thresh1
;
47
AdcIndex
m_NsaAbove1
;
48
AdcSignal
m_Thresh2
;
49
AdcIndex
m_NsaAbove2
;
50
AdcSignal
m_ThreshMax
;
51
AdcSignal
m_ThreshMin
;
52
AdcIndex
m_BinsBefore
;
53
AdcIndex
m_BinsAfter
;
54
55
//
56
typedef
struct
57
{
58
bool
isRoi
;
59
AdcIndex
StartRoi
;
60
AdcIndex
EndRoi
;
61
AdcIndex
NsaTh1
;
62
AdcIndex
NsaTh2
;
63
AdcIndex
NsaTh3
;
64
AdcSignal
MaxValue
;
65
66
void
init
()
67
{
68
isRoi =
false
;
69
StartRoi = 0;
70
EndRoi = 0;
71
NsaTh1 = 0;
72
NsaTh2 = 0;
73
NsaTh3 = 0;
74
MaxValue = 0;
75
}
76
77
}
ROICandidate_t
;
78
};
79
80
81
#endif
AdcMultiThreshSignalFinder::m_ThreshMin
AdcSignal m_ThreshMin
Definition:
AdcMultiThreshSignalFinder.h:51
AdcMultiThreshSignalFinder::ROICandidate_t::isRoi
bool isRoi
Definition:
AdcMultiThreshSignalFinder.h:58
AdcMultiThreshSignalFinder::m_NsaAbove2
AdcIndex m_NsaAbove2
Definition:
AdcMultiThreshSignalFinder.h:49
AdcSignal
float AdcSignal
Definition:
AdcTypes.h:21
TpcDataTool.h
AdcMultiThreshSignalFinder::update
DataMap update(AdcChannelData &acd) const override
Definition:
AdcMultiThreshSignalFinder_tool.cc:80
AdcChannelData
Definition:
AdcChannelData.h:95
ParameterSet.h
TpcDataTool
Definition:
TpcDataTool.h:17
AdcMultiThreshSignalFinder::ROICandidate_t::NsaTh2
AdcIndex NsaTh2
Definition:
AdcMultiThreshSignalFinder.h:62
AdcMultiThreshSignalFinder::m_ThreshMax
AdcSignal m_ThreshMax
Definition:
AdcMultiThreshSignalFinder.h:50
ToolMacros.h
AdcMultiThreshSignalFinder::ROICandidate_t::MaxValue
AdcSignal MaxValue
Definition:
AdcMultiThreshSignalFinder.h:64
AdcMultiThreshSignalFinder::m_UseStd
bool m_UseStd
Definition:
AdcMultiThreshSignalFinder.h:45
AdcMultiThreshSignalFinder::ROICandidate_t::init
void init()
Definition:
AdcMultiThreshSignalFinder.h:66
AdcTypes.h
AdcMultiThreshSignalFinder::m_Thresh2
AdcSignal m_Thresh2
Definition:
AdcMultiThreshSignalFinder.h:48
AdcMultiThreshSignalFinder::ROICandidate_t
Definition:
AdcMultiThreshSignalFinder.h:56
genie::units::ps
static constexpr double ps
Definition:
Units.h:99
AdcMultiThreshSignalFinder::m_LogLevel
int m_LogLevel
Definition:
AdcMultiThreshSignalFinder.h:44
AdcMultiThreshSignalFinder::m_Thresh1
AdcSignal m_Thresh1
Definition:
AdcMultiThreshSignalFinder.h:46
AdcIndex
unsigned int AdcIndex
Definition:
AdcTypes.h:15
AdcMultiThreshSignalFinder::ROICandidate_t::NsaTh3
AdcIndex NsaTh3
Definition:
AdcMultiThreshSignalFinder.h:63
AdcMultiThreshSignalFinder::ROICandidate_t::StartRoi
AdcIndex StartRoi
Definition:
AdcMultiThreshSignalFinder.h:59
AdcMultiThreshSignalFinder
Definition:
AdcMultiThreshSignalFinder.h:30
AdcMultiThreshSignalFinder::ROICandidate_t::EndRoi
AdcIndex EndRoi
Definition:
AdcMultiThreshSignalFinder.h:60
AdcMultiThreshSignalFinder::AdcMultiThreshSignalFinder
AdcMultiThreshSignalFinder(fhicl::ParameterSet const &ps)
Definition:
AdcMultiThreshSignalFinder_tool.cc:45
AdcMultiThreshSignalFinder::m_NsaAbove1
AdcIndex m_NsaAbove1
Definition:
AdcMultiThreshSignalFinder.h:47
AdcMultiThreshSignalFinder::~AdcMultiThreshSignalFinder
~AdcMultiThreshSignalFinder() override
Definition:
AdcMultiThreshSignalFinder_tool.cc:75
AdcMultiThreshSignalFinder::m_BinsBefore
AdcIndex m_BinsBefore
Definition:
AdcMultiThreshSignalFinder.h:52
AdcMultiThreshSignalFinder::ROICandidate_t::NsaTh1
AdcIndex NsaTh1
Definition:
AdcMultiThreshSignalFinder.h:61
AdcMultiThreshSignalFinder::m_BinsAfter
AdcIndex m_BinsAfter
Definition:
AdcMultiThreshSignalFinder.h:53
DataMap
Definition:
DataMap.h:43
fhicl::ParameterSet
Definition:
ParameterSet.h:36
Generated by
1.8.11