SatCat5
satcat5::ptp::ControllerLR_Inner Class Referenceabstract

Detailed Description

Helper class for "ControllerLR" is never used directly.

(It minimizes the amount of code in the class-template wrapper.)

Definition at line 427 of file ptp_filters.h.

#include <ptp_filters.h>

Inheritance diagram for satcat5::ptp::ControllerLR_Inner:
[legend]
Collaboration diagram for satcat5::ptp::ControllerLR_Inner:
[legend]

Public Member Functions

void set_coeff (const satcat5::ptp::CoeffLR &coeff)
 Adjust loop bandwidth.
 
void rate (s64 delta, u32 elapsed_usec) override
 Partial API from ptp::Filter.
 
virtual void reset ()=0
 Flush previous inputs and reset to a neutral state. More...
 
virtual s64 update (s64 next, u32 elapsed_usec)=0
 Method called for each new input sample. More...
 

Protected Member Functions

 ControllerLR_Inner (const satcat5::ptp::CoeffLR &coeff, unsigned window)
 Private constructor and destructor.
 
s64 update_inner (const u32 *dt, const s64 *y)
 

Protected Attributes

satcat5::ptp::CoeffLR m_coeff
 
satcat5::util::int128_t m_accum
 
unsigned m_window
 

Private Attributes

satcat5::ptp::Filterm_next
 

Member Function Documentation

◆ reset()

virtual void satcat5::ptp::Filter::reset ( )
pure virtualinherited

◆ update()

virtual s64 satcat5::ptp::Filter::update ( s64  next,
u32  elapsed_usec 
)
pure virtualinherited

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.


The documentation for this class was generated from the following files: