ModelPlugin Class Referenceabstract

A plugin with access to physics::Model. More...

#include <Plugin.hh>

Inherits PluginT< ModelPlugin >.

Inherited by ActorPlugin, ActuatorPlugin, ArduCopterPlugin, BuoyancyPlugin, CartDemoPlugin, CessnaPlugin, DiffDrivePlugin, ElevatorPlugin, FollowerPlugin, GimbalSmall2dPlugin, HarnessPlugin, HydraDemoPlugin, InitialVelocityPlugin, JointTrajectoryPlugin, KeysToJointsPlugin, LiftDragPlugin, LinearBatteryConsumerPlugin, LinearBatteryPlugin, LinkPlot3DPlugin, MudPlugin, PlaneDemoPlugin, RandomVelocityPlugin, RegionEventBoxPlugin, SkidSteerDrivePlugin, SphereAtlasDemoPlugin, and VehiclePlugin.

Public Types

typedef boost::shared_ptr< ModelPluginTPtr
 plugin pointer type definition More...

Public Member Functions

 ModelPlugin ()
 Constructor. More...
virtual ~ModelPlugin ()
 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)=0
 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...

Detailed Description

A plugin with access to physics::Model.

See reference.

Member Typedef Documentation

typedef boost::shared_ptr<ModelPlugin > TPtr

plugin pointer type definition

Constructor & Destructor Documentation

ModelPlugin ( )


References gazebo::MODEL_PLUGIN, and PluginT< T >::type.

virtual ~ModelPlugin ( )


Member Function Documentation

static TPtr Create ( const std::string &  _filename,
const std::string &  _name 

a class method that creates a plugin from a file name.

It locates the shared library and loads it dynamically.

[in]_filenamethe path to the shared library.
[in]_nameshort name of the plugin
Shared Pointer to this class type

References PluginT< T >::filename, gzerr, and SingletonT< SystemPaths >::Instance().

std::string GetFilename ( ) const

Get the name of the handler.

References PluginT< T >::filename.

std::string GetHandle ( ) const

Get the short name of the handler.

References PluginT< T >::handleName.

PluginType GetType ( ) const

Returns the type of the plugin.

type of the plugin

References PluginT< T >::type.

virtual void Init ( )
virtual void Load ( physics::ModelPtr  _model,
sdf::ElementPtr  _sdf 
pure virtual

Load function.

Called when a Plugin is first created, and after the World has been loaded. This function should not be blocking.

[in]_modelPointer to the Model
[in]_sdfPointer to the SDF element of the plugin.

Implemented in KeysToJointsPlugin, ActuatorPlugin, LinkPlot3DPlugin, RandomVelocityPlugin, CessnaPlugin, BuoyancyPlugin, ElevatorPlugin, HarnessPlugin, ArduCopterPlugin, RegionEventBoxPlugin, FollowerPlugin, SkidSteerDrivePlugin, LiftDragPlugin, HydraDemoPlugin, PlaneDemoPlugin, CartDemoPlugin, JointTrajectoryPlugin, VehiclePlugin, ActorPlugin, InitialVelocityPlugin, MudPlugin, GimbalSmall2dPlugin, LinearBatteryConsumerPlugin, LinearBatteryPlugin, DiffDrivePlugin, and SphereAtlasDemoPlugin.

virtual void Reset ( )

Override this method for custom plugin reset behavior.

Reimplemented in RandomVelocityPlugin, ElevatorPlugin, FollowerPlugin, LinearBatteryPlugin, InitialVelocityPlugin, and SphereAtlasDemoPlugin.

Member Data Documentation

std::string filename

Path to the shared library file.

std::string handleName

Short name.

PluginType type

Type of plugin.

The documentation for this class was generated from the following file: