mirror of
https://github.com/esphome/esphome.git
synced 2025-10-23 20:23:50 +01:00
Merge branch 'min_filter_ring_buffer' into integration
This commit is contained in:
@@ -30,12 +30,14 @@ class DateTimeBase : public EntityBase {
|
||||
#endif
|
||||
};
|
||||
|
||||
#ifdef USE_TIME
|
||||
class DateTimeStateTrigger : public Trigger<ESPTime> {
|
||||
public:
|
||||
explicit DateTimeStateTrigger(DateTimeBase *parent) {
|
||||
parent->add_on_state_callback([this, parent]() { this->trigger(parent->state_as_esptime()); });
|
||||
}
|
||||
};
|
||||
#endif
|
||||
|
||||
} // namespace datetime
|
||||
} // namespace esphome
|
||||
|
||||
@@ -39,14 +39,6 @@ SlidingWindowFilter::SlidingWindowFilter(size_t window_size, size_t send_every,
|
||||
this->window_.init(window_size);
|
||||
}
|
||||
|
||||
void SlidingWindowFilter::set_window_size(size_t window_size) {
|
||||
this->window_size_ = window_size;
|
||||
// Reallocate buffer with new size
|
||||
this->window_.init(window_size);
|
||||
this->window_head_ = 0;
|
||||
this->window_count_ = 0;
|
||||
}
|
||||
|
||||
optional<float> SlidingWindowFilter::new_value(float value) {
|
||||
// Add value to ring buffer
|
||||
if (this->window_count_ < this->window_size_) {
|
||||
|
||||
@@ -53,9 +53,6 @@ class SlidingWindowFilter : public Filter {
|
||||
public:
|
||||
SlidingWindowFilter(size_t window_size, size_t send_every, size_t send_first_at);
|
||||
|
||||
void set_send_every(size_t send_every) { this->send_every_ = send_every; }
|
||||
void set_window_size(size_t window_size);
|
||||
|
||||
optional<float> new_value(float value) final;
|
||||
|
||||
protected:
|
||||
|
||||
Reference in New Issue
Block a user