Base class#

#include "navground/sim/state_estimation.h"
struct StateEstimation : public virtual navground::core::HasRegister<StateEstimation>#

This class describe a generic state estimation that should update the environment state used by the agent navground::core::Behavior.

As the environment state is specialized by sub-classes of navground::core::Behavior like navground::core::GeometricState, concrete sub-classes have to target one or more of them.

In particular, the agent should use a state estimation compatible with its state representation.

Sub-classes are expected to override methods

  • prepare, which is called at the begin of the simulation to set it up.

  • update, which is called at every simulation step.

  • close, which is called at the end of the simulation.

Subclassed by navground::sim::BoundedStateEstimation, navground::sim::Sensor

Public Functions

inline virtual void update(Agent *agent, World *world, EnvironmentState *state)#

Updates an environment state with respect to a given agent.

Parameters:
  • agent – The agent owning the state estimation

  • world[in] The world that the agent is part of

  • state – The environment state to be updated

Protected Functions

void update(Agent *agent, World *world)#

Updates the state of a given agent navground::core::Behavior.

Parameters:
  • agent – The agent owning the state estimation

  • world[in] The world the agent is part of

inline virtual void prepare(Agent *agent, World *world)#

Setup the state estimation.

Called before starting a simulation.

Parameters:
  • agent – The agent owning the state estimation

  • world[in] The world the agent is part of

inline virtual void close()#

Clean-up the state estimation.

Called after finishing a simulation.