shadowrobot::SRArticulatedRobot Class Reference

This is a parent class for the different types of Shadowhand we can have. It makes it possible to swap from a virtual to a real hand while using the same utilities to interact with the hand. One (or more) ROS subscriber and publisher can then share the same instance of a Shadowhand object to update the information contained in this object. More...

#include <sr_articulated_robot.h>

Inheritance diagram for shadowrobot::SRArticulatedRobot:
Inheritance graph
[legend]

List of all members.

Public Types

typedef std::map< std::string,
JointData
JointsMap
typedef std::map< std::string,
enum controller_parameters
ParametersMap

Public Member Functions

virtual JointsMap getAllJointsData ()=0
virtual void getConfig (std::string joint_name)=0
virtual JointControllerData getContrl (std::string contrlr_name)=0
virtual std::vector
< DiagnosticData
getDiagnostics ()=0
virtual JointData getJointData (std::string joint_name)=0
virtual short sendupdate (std::string joint_name, double target)=0
virtual short setConfig (std::vector< std::string > myConfig)=0
virtual short setContrl (std::string contrlr_name, JointControllerData ctrlr_data)=0
 SRArticulatedRobot ()
 ~SRArticulatedRobot ()

Public Attributes

boost::mutex controllers_map_mutex
JointsMap joints_map
 A mapping between the joint names and the information regarding those joints.
boost::mutex joints_map_mutex
ParametersMap parameters_map
 A mapping between the parameter names and their values.
boost::mutex parameters_map_mutex

Detailed Description

This is a parent class for the different types of Shadowhand we can have. It makes it possible to swap from a virtual to a real hand while using the same utilities to interact with the hand. One (or more) ROS subscriber and publisher can then share the same instance of a Shadowhand object to update the information contained in this object.

Definition at line 239 of file sr_articulated_robot.h.


Member Typedef Documentation

typedef std::map<std::string, JointData> shadowrobot::SRArticulatedRobot::JointsMap
See also:
joints_map

Definition at line 256 of file sr_articulated_robot.h.

See also:
parameters_map

Definition at line 261 of file sr_articulated_robot.h.


Constructor & Destructor Documentation

shadowrobot::SRArticulatedRobot::SRArticulatedRobot (  )  [inline]

empty constructor.

Definition at line 245 of file sr_articulated_robot.h.

shadowrobot::SRArticulatedRobot::~SRArticulatedRobot (  )  [inline]

empty destructor.

Definition at line 253 of file sr_articulated_robot.h.


Member Function Documentation

virtual JointsMap shadowrobot::SRArticulatedRobot::getAllJointsData (  )  [pure virtual]

Get the data for all the joints.

Returns:
a mapping between the joints names and the information for each joint.

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.

virtual void shadowrobot::SRArticulatedRobot::getConfig ( std::string  joint_name  )  [pure virtual]

Get the config of the palm

Todo:
Not implemented yet
Parameters:
joint_name 

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.

virtual JointControllerData shadowrobot::SRArticulatedRobot::getContrl ( std::string  contrlr_name  )  [pure virtual]

Get the controller parameters for a given controller name.

Parameters:
contrlr_name the name of the controller.
Returns:
The parameters of this controller

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.

virtual std::vector<DiagnosticData> shadowrobot::SRArticulatedRobot::getDiagnostics (  )  [pure virtual]

Get the diagnostics for the whole articulated robot.

Returns:
A vector containing all the diagnostics for the robot (motor information, etc...)

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.

virtual JointData shadowrobot::SRArticulatedRobot::getJointData ( std::string  joint_name  )  [pure virtual]

Get the joint data for a specific joint.

See also:
JointData
Parameters:
joint_name The name of the joint, as specified in joints_map.
Returns:
The information regarding this joint.

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.

virtual short shadowrobot::SRArticulatedRobot::sendupdate ( std::string  joint_name,
double  target 
) [pure virtual]

Generic method called to pass a new target to an articulated robot.

Parameters:
joint_name The Joint in joints_map you wish to send the target to.
target The target in degree
Returns:
0 if success ; -1 if error

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.

virtual short shadowrobot::SRArticulatedRobot::setConfig ( std::vector< std::string >  myConfig  )  [pure virtual]

Set the config of the palm

Todo:
Not implemented yet
Parameters:
myConfig 
Returns:

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.

virtual short shadowrobot::SRArticulatedRobot::setContrl ( std::string  contrlr_name,
JointControllerData  ctrlr_data 
) [pure virtual]

Set the controller parameters for a given controller name.

Parameters:
contrlr_name The name of the controller to setup.
ctrlr_data The data to pass to this controller.
Returns:
0 if success.

Implemented in shadowrobot::RealArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhand.


Member Data Documentation

Definition at line 330 of file sr_articulated_robot.h.

A mapping between the joint names and the information regarding those joints.

Definition at line 323 of file sr_articulated_robot.h.

Definition at line 328 of file sr_articulated_robot.h.

A mapping between the parameter names and their values.

Definition at line 326 of file sr_articulated_robot.h.

Definition at line 329 of file sr_articulated_robot.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator


sr_hand
Author(s): Ugo Cupcic / ugo@shadowrobot.com, contact@shadowrobot.com
autogenerated on Fri Jan 11 09:32:58 2013