|
| | EdgeCounterFilter (int requiredEdges, units::second_t windowTime) |
| | Creates a new EdgeCounterFilter.
|
| |
| bool | Calculate (bool input) |
| | Applies the edge counter filter to the input stream.
|
| |
| constexpr void | SetWindowTime (units::second_t windowTime) |
| | Sets the time window duration.
|
| |
| constexpr units::second_t | GetWindowTime () const |
| | Gets the time window duration.
|
| |
| constexpr void | SetRequiredEdges (int requiredEdges) |
| | Sets the required number of edges.
|
| |
| constexpr int | GetRequiredEdges () const |
| | Gets the required number of edges.
|
| |
A rising edge counter for boolean streams.
Requires that the boolean change value to true for a specified number of times within a specified time window after the first rising edge before the filtered value changes.
The filter activates when the input has risen (transitioned from false to true) the required number of times within the time window. Once activated, the output remains true as long as the input is true. The edge count resets when the time window expires or when the input goes false after activation.
Input must be stable; consider using a Debouncer before this filter to avoid counting noise as multiple edges.