Dynamic gate builder. More...
#include <DynamicTriggerGateBuilder.h>
Classes | |
struct | Config |
class | DynamicGateManager |
Public Member Functions | |
DynamicTriggerGateBuilder (Config const &config) | |
Constructor: sets the configuration. More... | |
virtual std::vector< TriggerGates > | build (std::vector< WaveformWithBaseline > const &waveforms) const override |
Returns a collection of TriggerGates objects sorted by threshold. More... | |
Public Member Functions inherited from icarus::trigger::TriggerGateBuilder | |
TriggerGateBuilder (Config const &config) | |
Constructor: sets the configuration. More... | |
virtual | ~TriggerGateBuilder ()=default |
Virtual destructor. Nothing special about it, except that it's virtual. More... | |
virtual void | setup (detinfo::DetectorTimings const &timings) |
Algorithm setup. More... | |
virtual void | reset () |
Algorithm reset. It will require a new setup before using it again. More... | |
virtual void | resetup (detinfo::DetectorTimings const &timings) |
Resets and sets up. More... | |
virtual void | resetup (detinfo::DetectorTimings const &timings, std::vector< ADCCounts_t > const &thresholds) |
Resets and sets up (including a new set of thresholds). More... | |
std::vector< ADCCounts_t > const & | channelThresholds () const |
Returns all the configured thresholds. More... | |
std::size_t | nChannelThresholds () const |
Returns the number of configured thresholds. More... | |
optical_tick | timeToOpticalTick (microsecond time) const |
Converts a time [s] into optical ticks. More... | |
optical_tick | timeStampToOpticalTick (raw::TimeStamp_t time) const |
Converts a timestamp from raw::OpDetWaveform into optical ticks. More... | |
Private Types | |
using | Base_t = icarus::trigger::ManagedTriggerGateBuilder |
Additional Inherited Members | |
Public Types inherited from icarus::trigger::TriggerGateBuilder | |
using | Channel_t = raw::Channel_t |
Static Public Member Functions inherited from icarus::trigger::TriggerGateBuilder | |
static constexpr bool | isValidChannel (Channel_t channel) |
Returns whether channel is valid. More... | |
Static Public Attributes inherited from icarus::trigger::TriggerGateBuilder | |
static constexpr Channel_t | InvalidChannel = std::numeric_limits<Channel_t>::max() |
Mnemonic for an invalid optical detector channel. More... | |
Protected Member Functions inherited from icarus::trigger::ManagedTriggerGateBuilder | |
template<typename GateMgr > | |
std::vector< TriggerGates > | unifiedBuild (GateMgr &&gateManager, std::vector< WaveformWithBaseline > const &waveforms) const |
Returns a collection of TriggerGates objects sorted by threshold. More... | |
template<typename GateInfo , typename Waveforms > | |
void | buildChannelGates (std::vector< GateInfo > &channelGates, Waveforms const &channelWaveforms) const |
Computes the gates for all the waveforms in one optical channel. More... | |
Protected Member Functions inherited from icarus::trigger::TriggerGateBuilder | |
detinfo::DetectorTimings const & | detTimings () const |
Returns a detector timings object. More... | |
std::vector< TriggerGates > | prepareAllGates () const |
virtual void | doSetThresholds (std::vector< ADCCounts_t > const &thresholds) |
Sets all thresholds anew. More... | |
Dynamic gate builder.
Gates are opened when the waveform goes above threshold, and closed when it goes below.
By construction a gate with higher threshold will be fully included in one with lower threshold.
Definition at line 56 of file DynamicTriggerGateBuilder.h.
|
private |
Definition at line 59 of file DynamicTriggerGateBuilder.h.
|
inline |
Constructor: sets the configuration.
Definition at line 95 of file DynamicTriggerGateBuilder.h.
|
inlineoverridevirtual |
Returns a collection of TriggerGates
objects sorted by threshold.
Implements icarus::trigger::TriggerGateBuilder.
Definition at line 101 of file DynamicTriggerGateBuilder.h.