Robotics StackExchange | Archived questions

Plugin Inter-communication and Timing

Hi,

I have the following setup in Gazebo 2.2.5:

  1. Plugin A publishes a .proto message at every ConnectWorldUpdateBegin event.

  2. Plugin B: subscribes to the above message AND runs a method at every ConnectWorldUpdateBegin event. This method works on the last received message.

Now my questions are:

  1. Is there any synchronization happening between the Gazebo message passing and raising the ConnectWorldUpdateBegin events? Can I assume the maximum delay in the messages in my setting above is one period (i.e., one update step)

  2. Is there a mechanism to directly call another plugin's public method? Is there a reason for having the following variable private in Model.hh? (calling directly would make things more deterministic)

    private: std::vector plugins;

Thank you for your time.

G

Asked by gajan on 2014-12-05 04:52:17 UTC

Comments

Answers

The transport mechanism run independently from events, including the ConnectWorldUpdateBegin event.

You can't call another plugin's public method directly. You can talk between plugins using pub/sub.

Asked by nkoenig on 2014-12-05 17:38:24 UTC

Comments