10 #ifndef SBNOBJ_ICARUS_PMT_TRIGGER_DATA_SINGLECHANNELOPTICALTRIGGERGATE_H
11 #define SBNOBJ_ICARUS_PMT_TRIGGER_DATA_SINGLECHANNELOPTICALTRIGGERGATE_H
39 namespace icarus::trigger {
class SingleChannelOpticalTriggerGate; }
92 {
return channel() < other.channel(); }
111 #endif // SBNOBJ_ICARUS_PMT_TRIGGER_DATA_SINGLECHANNELOPTICALTRIGGERGATE_H
std::vector< raw::OpDetWaveform const * > waveforms() const
ChannelID_t channel() const
Returns the channel associated to the gate data.
bool hasRefWaveform() const
Returns the "reference" waveform, used when a single waveform is needed.
constexpr bool isValidChannel(Channel_t channel)
Returns whether the specified one is a valid channel number.
SingleChannelOpticalTriggerGate(ChannelID_t channel)
Constructor: a closed gate for the specified channel.
bool add(raw::OpDetWaveform const &waveform)
Adds another waveform to the channel (unless it has just been added).
raw::OpDetWaveform const & refWaveform() const
Returns the "reference" waveform, used when a single waveform is needed.
SingleChannelOpticalTriggerGate(raw::OpDetWaveform const &waveform)
Constructor: a closed gate for the channel in waveform.
decltype(auto) channels() const =delete
Do not support multi-channel interface.
constexpr Channel_t InvalidChannel
Mnemonics for an invalid channel number.
Logical multi-level gate associated to one or more readout channels.
raw::OpDetWaveform const * refWaveformPtr() const
Returns the "reference" waveform, used when a single waveform is needed.
SingleChannelOpticalTriggerGate & operator=(SingleChannelOpticalTriggerGate const &)=default
A trigger gate data object for optical detector electronics.
OpticalTriggerGate & operator=(OpticalTriggerGate const &)=default
Logical multi-level gate associated to one or more waveforms.
GateData_t::ChannelID_t ChannelID_t
Type of channel identifier.
Logical multi-level gate.
friend std::ostream & operator(std::ostream &, triggergatedata_t const &)
Logical multi-level gate associated to a optical detector channel.