Plugin that initializes joint controllers. More...
#include <JointControlPlugin.hh>
Inherits ModelPlugin.
Public Types | |
typedef boost::shared_ptr< ModelPlugin > | TPtr |
plugin pointer type definition More... | |
Public Member Functions | |
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) |
Parses plugin parameters and sends them to the joint controller. 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 Member Functions | |
void | LoadParam (const sdf::ElementPtr &_sdf, const std::string &_name, V &_target, V _defaultValue=V()) const |
Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found. More... | |
void | LoadParam (sdf::ElementPtr &_sdf, const std::string &_name, std::string &_target, const char *_defaultValue) const |
Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found. 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 initializes joint controllers.
/// <!-- Initialize the joint control parameters for a model. --> /// <plugin name="init_joint_control" filename="libJointControlPlugin.so"> /// /// <!-- Set up a PID position controller. --> /// <!-- Valid controller types: "force", "position", or "velocity". --> /// <controller type="position"> /// /// <!-- Name of a joint for which to apply this controller. --> /// <joint>joint_0</joint> /// <!-- Multiple joints may be specified. --> /// <joint>joint_1</joint> /// <!-- C++ regular expressions may be used. --> /// <joint>joint_(.*)</joint> /// /// <!-- Joint controller effort (force or torque), /// target position (distance or radians), or /// target velocity(distance/second or radians/second). --> /// <target>1.0</target> /// /// <!-- PID controller gains (for position or velocity control). --> /// <pid_gains>1 0.1 0.01</pid_gains> /// </controller> /// /// <!-- Multiple controllers may be specified... --> /// /// </plugin> ///
See worlds/init_joint_control.world for a complete example.
|
inherited |
plugin pointer type definition
|
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 TrackedVehiclePlugin, KeysToCmdVelPlugin, SimpleTrackedVehiclePlugin, BuoyancyPlugin, HarnessPlugin, WheelTrackedVehiclePlugin, FollowerPlugin, PlaneDemoPlugin, MudPlugin, CartDemoPlugin, VehiclePlugin, GimbalSmall2dPlugin, LinearBatteryPlugin, DiffDrivePlugin, and SphereAtlasDemoPlugin.
|
virtual |
Parses plugin parameters and sends them to the joint controller.
Implements ModelPlugin.
|
inlineprotectedinherited |
Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found.
A message is written using gzmsg reporting whether the default value was used or not.
[in] | _sdf | The SDF element of the plugin. |
[in] | _name | Name of a tag inside the SDF. |
[out] | _target | The reference to store the param value to. |
[in] | _defaultValue | The default value. |
References gzmsg, and PluginT< T >::handleName.
|
inlineprotectedinherited |
Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found.
A message is written using gzmsg reporting whether the default value was used or not. String specialization to allow accepting const char* values for std::string parameters.
[in] | _sdf | The SDF element of the plugin. |
[in] | _name | Name of a tag inside the SDF. |
[out] | _target | The reference to store the param value to. |
[in] | _defaultValue | The default value. |
|
inlinevirtualinherited |
Override this method for custom plugin reset behavior.
Reimplemented in TrackedVehiclePlugin, KeysToCmdVelPlugin, RandomVelocityPlugin, SimpleTrackedVehiclePlugin, ElevatorPlugin, WheelTrackedVehiclePlugin, FollowerPlugin, LinearBatteryPlugin, ActorPlugin, InitialVelocityPlugin, and SphereAtlasDemoPlugin.
|
protectedinherited |
Path to the shared library file.
|
protectedinherited |
Short name.
|
protectedinherited |
Type of plugin.