|
SatCat5
|
Define the basic chain-of-filters API.
Definition at line 38 of file ptp_filters.h.
#include <ptp_filters.h>
Public Member Functions | |
| virtual void | reset ()=0 |
| Flush previous inputs and reset to a neutral state. More... | |
| virtual void | rate (s64 delta_subns, u32 elapsed_usec) |
| Optional handler for fast-acquisition; override if required. More... | |
| virtual s64 | update (s64 next, u32 elapsed_usec)=0 |
| Method called for each new input sample. More... | |
Protected Member Functions | |
| constexpr | Filter () |
| Private constructor and destructor. | |
Private Attributes | |
| satcat5::ptp::Filter * | m_next |
|
inlinevirtual |
Optional handler for fast-acquisition; override if required.
Upstream controller provides estimated rate (i.e., rise/run). The "elapsed_usec" parameter will be between 10^5 and 10^7. Child class MAY override this method.
Reimplemented in satcat5::ptp::LinearPrediction, satcat5::ptp::ControllerLR_Inner, satcat5::ptp::ControllerPII, and satcat5::ptp::ControllerPI.
Definition at line 48 of file ptp_filters.h.
|
pure virtual |
Flush previous inputs and reset to a neutral state.
Child class MUST override this method.
Implemented in satcat5::ptp::LinearPrediction, satcat5::ptp::ControllerLR< MAX_WINDOW >, satcat5::ptp::ControllerPII, satcat5::ptp::ControllerPI, satcat5::ptp::MedianFilter< MAX_ORDER >, satcat5::ptp::BoxcarFilter< MAX_ORDER >, satcat5::ptp::AmplitudeReject, and satcat5::ptp::DebugFilter.
|
pure virtual |
Method called for each new input sample.
Input or output of INT64_MAX indicates the sample should be discarded. Otherwise, return the resulting output sample. The "elapsed_usec" parameter will be between 10^3 and 10^6. Child class MUST override this method.
Implemented in satcat5::ptp::LinearPrediction, satcat5::ptp::ControllerLR< MAX_WINDOW >, satcat5::ptp::ControllerPII, satcat5::ptp::ControllerPI, satcat5::ptp::MedianFilter< MAX_ORDER >, satcat5::ptp::BoxcarFilter< MAX_ORDER >, satcat5::ptp::AmplitudeReject, and satcat5::ptp::DebugFilter.