Class FilterBase

Inheritance Relationships

Base Types

Class Documentation

class FilterBase : public mola::RawDataSourceBase, private mola::RawDataConsumer

Base class for filters: get observations via onNewObservation(), and immediately send them to a worker thread that works on it, possibly publishing the output via sendObservationsToFrontEnds().

Virtual interface of any Filter

{

virtual CObservation::Ptr doFilter(const CObservation::Ptr &o) = 0

To be called for each incoming observation. Process it and return the modified observation.

Public Functions

FilterBase()
virtual void spinOnce() override

Runs any required action on a timely manner

virtual void onNewObservation(const CObservation::Ptr &o) override

To be called whenever a new observation arrives. It should return as fast as possible, enqueuing the data for processing in another thread.

Protected Functions

virtual void initialize_rds(const Yaml &cfg) override

Loads children specific parameters