32 #ifndef RECURSIVE_ESTIMATOR_INTERFACE_H_ 33 #define RECURSIVE_ESTIMATOR_INTERFACE_H_ 49 template <
class StateType,
class MeasurementType>
103 virtual void setMeasurement(
const MeasurementType& acquired_measurement,
const double& measurement_timestamp)
116 virtual void addPredictedState(
const StateType& predicted_state,
const double& predicted_state_timestamp_ns) = 0;
virtual void setMeasurement(const MeasurementType &acquired_measurement, const double &measurement_timestamp)
Set the latest acquired measurement.
virtual void predictState(double time_interval_ns)=0
First step when updating the filter. The next state is predicted from current state and system model...
virtual ~RecursiveEstimatorFilterInterface()
Destructor.
virtual StateType getState() const
Get the currently belief state.
MeasurementType _measurement
double _previous_measurement_timestamp_ns
virtual void predictMeasurement()=0
Second step when updating the filter. The next measurement is predicted from the predicted next state...
double _measurement_timestamp_ns
virtual void addPredictedState(const StateType &predicted_state, const double &predicted_state_timestamp_ns)=0
Add a new prediction about the state generated in the higher level (as prediction about the next meas...
StateType _most_likely_predicted_state
RecursiveEstimatorFilterInterface(double loop_period_ns)
Constructor.
std::vector< StateType > _predicted_states
This class defines an INTERFACE that all recursive estimator filters need to implement It is ROS free...
virtual MeasurementType getPredictedMeasurement() const
Get the predicted next measurement.
MeasurementType _predicted_measurement
virtual void correctState()=0
Third and final step when updating the filter. The predicted next state is corrected based on the dif...