All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Private Types | List of all members
icarus::trigger::DynamicTriggerGateBuilder Class Reference

Dynamic gate builder. More...

#include <DynamicTriggerGateBuilder.h>

Inheritance diagram for icarus::trigger::DynamicTriggerGateBuilder:
icarus::trigger::ManagedTriggerGateBuilder icarus::trigger::TriggerGateBuilder icarus::trigger::DynamicTriggerGateBuilderTool

Classes

struct  Config
 
class  DynamicGateManager
 

Public Member Functions

 DynamicTriggerGateBuilder (Config const &config)
 Constructor: sets the configuration. More...
 
virtual std::vector< TriggerGatesbuild (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< TriggerGatesunifiedBuild (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< TriggerGatesprepareAllGates () const
 
virtual void doSetThresholds (std::vector< ADCCounts_t > const &thresholds)
 Sets all thresholds anew. More...
 

Detailed Description

Dynamic gate builder.

See Also
icarus::trigger::FixedTriggerGateBuilder

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.

Member Typedef Documentation

Definition at line 59 of file DynamicTriggerGateBuilder.h.

Constructor & Destructor Documentation

icarus::trigger::DynamicTriggerGateBuilder::DynamicTriggerGateBuilder ( Config const &  config)
inline

Constructor: sets the configuration.

Definition at line 95 of file DynamicTriggerGateBuilder.h.

96  : Base_t(config) {}
icarus::trigger::ManagedTriggerGateBuilder Base_t

Member Function Documentation

virtual std::vector<TriggerGates> icarus::trigger::DynamicTriggerGateBuilder::build ( std::vector< WaveformWithBaseline > const &  waveforms) const
inlineoverridevirtual

Returns a collection of TriggerGates objects sorted by threshold.

Implements icarus::trigger::TriggerGateBuilder.

Definition at line 101 of file DynamicTriggerGateBuilder.h.

102  { return unifiedBuild(DynamicGateManager(), waveforms); }
std::vector< TriggerGates > unifiedBuild(GateMgr &&gateManager, std::vector< WaveformWithBaseline > const &waveforms) const
Returns a collection of TriggerGates objects sorted by threshold.

The documentation for this class was generated from the following file: