syntax = "proto2";
package gazebo.msgs;

/// \ingroup gazebo_msgs
/// \interface LogPlaybackControl
/// \brief A message that allows for control of log playback functions.

import "time.proto";

message LogPlaybackControl
{
  /// \brief Pause/play the log file.
  optional bool pause        = 1;

  /// \brief Make a relative jump. The value indicates the number of
  ///        iterations that will be executed at once. If a negative
  ///        value is specified, the playback will jump backwards.
  optional sint32 multi_step = 2;

  /// \brief Jump to the beginning of the log file.
  optional bool rewind       = 3;

  /// \brief Jump to the end of the log file.
  optional bool forward      = 4;

  /// \brief Jump to a specific simulation time in the log file. The
  ///        playback service will load the frame with the closest
  ///        simulation time bigger than the "seek" value.
  optional Time seek         = 5;

  /// \brief Set the real time factor for log playing, 0.0 will disable it.
  optional double rt_factor  = 6;
}
