Plugin that applies a random velocity to a linke periodically. More...
#include <RandomVelocityPlugin.hh>
Inherits ModelPlugin.
Public Types | |
| typedef boost::shared_ptr< ModelPlugin > | TPtr | 
| plugin pointer type definition  More... | |
Public Member Functions | |
| RandomVelocityPlugin () | |
| Constructor.  More... | |
| ~RandomVelocityPlugin () | |
| Destructor.  More... | |
| std::string | GetFilename () const | 
| Get the name of the handler.  More... | |
| std::string | GetHandle () const | 
| Get the short name of the handler.  More... | |
| PluginType | GetType () const | 
| Returns the type of the plugin.  More... | |
| virtual void | Init () | 
| Override this method for custom plugin initialization behavior.  More... | |
| virtual void | Load (physics::ModelPtr _model, sdf::ElementPtr _sdf) | 
| Load function.  More... | |
| virtual void | Reset () | 
| Override this method for custom plugin reset behavior.  More... | |
Static Public Member Functions | |
| static TPtr | Create (const std::string &_filename, const std::string &_name) | 
| a class method that creates a plugin from a file name.  More... | |
Protected Attributes | |
| std::string | filename | 
| Path to the shared library file.  More... | |
| std::string | handleName | 
| Short name.  More... | |
| PluginType | type | 
| Type of plugin.  More... | |
Plugin that applies a random velocity to a linke periodically.
/// <!-- Apply a random velocity to the specified link--> /// <!-- In this example, we move a box around. A key property of the link /// is the frictionless surface --> /// <plugin name="random" filename="libRandomVelocityPlugin.so"> /// /// <!-- Name of the link in this model that receives the velocity --> /// <link>link</link> /// /// <!-- Initial velocity that is applied to the link --> /// <initial_velocity>0 0.5 0</initial_velocity> /// /// <!-- Scaling factor that is used to compute a new velocity --> /// <velocity_factor>0.5</velocity_factor> /// /// <!-- Time, in seconds, between new velocities --> /// <update_period>5</update_period> /// /// <!-- Clamp the X velocity value to between -1 and 1.--> /// <min_x>-1</min_x> /// <max_x>1</max_x> /// /// <!-- Clamp the Y velocity value to between 0 and 1.--> /// <min_y>0</min_y> /// <max_y>1</max_y> /// /// <!-- Clamp the Z velocity value to zero.--> /// <min_z>0</min_z> /// <max_z>0</max_z> /// </plugin> ///
See worlds/random_velocity.world for a complete example.
      
  | 
  inherited | 
plugin pointer type definition
Constructor.
| ~RandomVelocityPlugin | ( | ) | 
Destructor.
      
  | 
  inlinestaticinherited | 
a class method that creates a plugin from a file name.
It locates the shared library and loads it dynamically.
| [in] | _filename | the path to the shared library. | 
| [in] | _name | short name of the plugin | 
References PluginT< T >::filename, gzerr, and SingletonT< SystemPaths >::Instance().
      
  | 
  inlineinherited | 
Get the name of the handler.
References PluginT< T >::filename.
      
  | 
  inlineinherited | 
Get the short name of the handler.
References PluginT< T >::handleName.
      
  | 
  inlineinherited | 
      
  | 
  inlinevirtualinherited | 
Override this method for custom plugin initialization behavior.
Reimplemented in BuoyancyPlugin, HarnessPlugin, FollowerPlugin, VehiclePlugin, LinearBatteryPlugin, MudPlugin, CartDemoPlugin, SphereAtlasDemoPlugin, and DiffDrivePlugin.
      
  | 
  virtual | 
Load function.
Called when a Plugin is first created, and after the World has been loaded. This function should not be blocking.
| [in] | _model | Pointer to the Model | 
| [in] | _sdf | Pointer to the SDF element of the plugin. | 
Implements ModelPlugin.
      
  | 
  virtual | 
Override this method for custom plugin reset behavior.
Reimplemented from ModelPlugin.
      
  | 
  protectedinherited | 
Path to the shared library file.
      
  | 
  protectedinherited | 
Short name.
      
  | 
  protectedinherited | 
Type of plugin.