Class BurstDetector

Inheritance Relationships

Base Type

  • public IProcessor

Class Documentation

class BurstDetector : public IProcessor

Public Functions

BurstDetector()
void CreatePorts() override
void CompleteStreamInfo() override
void Preprocess(ProcessingContext &context) override
void Process(ProcessingContext &context) override
void Postprocess(ProcessingContext &context) override

Public Members

const std::string THRESHOLD_DEV = "threshold dev"
const std::string SMOOTH_TIME = "smooth time"
const std::string DETECTION_LOCKOUT_TIME = "detection lockout time"
const std::string STREAM_EVENTS = "stream events"
const std::string STREAM_STATISTICS = "stream statistics"

Protected Attributes

PortIn<MUAType> *data_in_port_
PortOut<EventType> *data_out_port_
PortOut<MultiChannelType<double>> *stats_out_port_
BroadcasterState<double> *threshold_
BroadcasterState<double> *signal_mean_
BroadcasterState<double> *signal_dev_
BroadcasterState<bool> *burst_
FollowerState<double> *bin_size_mua_
StaticState<double> *threshold_dev_
StaticState<double> *smooth_time_
StaticState<double> *detection_lockout_time_
StaticState<bool> *stream_events_
StaticState<bool> *stats_out_
bool stats_out_enabled_
std::uint64_t stats_nsamples_
std::uint64_t block_
std::uint64_t burn_in_
double sample_rate_
double acc_
std::unique_ptr<dsp::algorithms::RunningMeanMAD> running_statistics_
std::unique_ptr<dsp::algorithms::ThresholdCrosser> threshold_detector_
const unsigned int N_STATS_OUT = 2
options::Double initial_threshold_dev_ = {6.}
options::Measurement<double, false> initial_smooth_time_{10., "second", options::positive<double>(true)}
options::Measurement<double, false> initial_detection_lockout_time_{30., "ms", options::positive<double>(true)}
options::Bool default_stream_events_ = {true}
options::Bool initial_stats_out_ = {true}
options::Measurement<double, false> stats_buffer_size_{0.5, "second", options::positive<double>(true)}