By using services, we ensure that actions are buffered so that a simulation step always uses the newly set action. Similarly, we fill the observation buffers on the physics bridge side, before we exit after a step(). This ensures we get the newest observation in ros_env.
As of now however, when we put custom pre-processing/reset nodes in-between, we do not ensure this. So, how can we enforce this?
By using services, we ensure that actions are buffered so that a simulation step always uses the newly set action. Similarly, we fill the observation buffers on the physics bridge side, before we exit after a step(). This ensures we get the newest observation in ros_env.
As of now however, when we put custom pre-processing/reset nodes in-between, we do not ensure this. So, how can we enforce this?