Class SpikeDetector

Inheritance Relationships

Base Type

  • public IProcessor

Class Documentation

class SpikeDetector : public IProcessor

Public Functions

SpikeDetector()
void CreatePorts() override
void CompleteStreamInfo() override
void Prepare(GlobalContext &context) override
void Process(ProcessingContext &context) override
void Postprocess(ProcessingContext &context) override

Public Members

unsigned int MAX_N_CHANNELS = 8
const std::string PEAK_LIFETIME = "peak lifetime"
const std::string THRESHOLD = "threshold"
const int RINGBUFFER_SIZE = 1e5

Protected Attributes

PortIn<MultiChannelType<double>> *data_in_port_
PortOut<SpikeType> *data_out_port_spikes_
PortOut<EventType> *data_out_port_events_
StaticState<double> *threshold_
StaticState<unsigned int> *peak_lifetime_
unsigned int n_channels_
size_t n_incoming_
size_t incoming_buffer_size_samples_
uint64_t n_streamed_events_
std::unique_ptr<dsp::algorithms::SpikeDetector> spike_detector_
std::unique_ptr<MultiChannelType<double>::Data> inverted_signals_
options::Double initial_threshold_ = {60.}
options::Bool invert_signal_ = {true}
options::Measurement<double, false> buffer_size_{0.5, "ms", options::positive<double>(true)}
options::Bool strict_time_bin_check_ = {true}
options::Measurement<unsigned int, false> initial_peak_lifetime_ = {8, "sample"}