Public Types | Public Member Functions | Public Attributes | Protected Attributes
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 ()
virtual ~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

Protected Attributes

boost::shared_ptr
< self_test::TestRunner
self_test
 this is the handle for the self tests.

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 255 of file sr_articulated_robot.h.


Member Typedef Documentation

See also:
joints_map

Definition at line 272 of file sr_articulated_robot.h.

See also:
parameters_map

Definition at line 277 of file sr_articulated_robot.h.


Constructor & Destructor Documentation

empty constructor.

Definition at line 261 of file sr_articulated_robot.h.

empty destructor.

Definition at line 269 of file sr_articulated_robot.h.


Member Function Documentation

Get the data for all the joints.

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

Implemented in shadowrobot::RealShadowhand, shadowrobot::VirtualShadowhand, shadowrobot::EtherCATCompatibilityHand, shadowrobot::CANCompatibilityArm, shadowrobot::VirtualArm, shadowrobot::RealArm, and shadowrobot::VirtualShadowhandLibrary.

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

Get the controller parameters for a given controller name.

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

Implemented in shadowrobot::RealShadowhand, shadowrobot::VirtualShadowhand, shadowrobot::EtherCATCompatibilityHand, shadowrobot::CANCompatibilityArm, shadowrobot::VirtualArm, shadowrobot::RealArm, and shadowrobot::VirtualShadowhandLibrary.

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::VirtualShadowhand, shadowrobot::EtherCATCompatibilityHand, shadowrobot::CANCompatibilityArm, shadowrobot::RealShadowhand, shadowrobot::VirtualArm, shadowrobot::RealArm, and shadowrobot::VirtualShadowhandLibrary.

Get the joint data for a specific joint.

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

Implemented in shadowrobot::RealShadowhand, shadowrobot::VirtualShadowhand, shadowrobot::EtherCATCompatibilityHand, shadowrobot::CANCompatibilityArm, shadowrobot::VirtualArm, shadowrobot::RealArm, and shadowrobot::VirtualShadowhandLibrary.

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_nameThe Joint in joints_map you wish to send the target to.
targetThe target in degree
Returns:
0 if success ; -1 if error

Implemented in shadowrobot::RealShadowhand, shadowrobot::VirtualShadowhand, shadowrobot::EtherCATCompatibilityHand, shadowrobot::CANCompatibilityArm, shadowrobot::RealArm, shadowrobot::VirtualArm, and shadowrobot::VirtualShadowhandLibrary.

virtual short shadowrobot::SRArticulatedRobot::setConfig ( std::vector< std::string myConfig) [pure virtual]
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_nameThe name of the controller to setup.
ctrlr_dataThe data to pass to this controller.
Returns:
0 if success.

Implemented in shadowrobot::RealShadowhand, shadowrobot::VirtualShadowhand, shadowrobot::EtherCATCompatibilityHand, shadowrobot::CANCompatibilityArm, shadowrobot::VirtualArm, shadowrobot::RealArm, and shadowrobot::VirtualShadowhandLibrary.


Member Data Documentation

Definition at line 346 of file sr_articulated_robot.h.

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

Definition at line 339 of file sr_articulated_robot.h.

Definition at line 344 of file sr_articulated_robot.h.

A mapping between the parameter names and their values.

Definition at line 342 of file sr_articulated_robot.h.

Definition at line 345 of file sr_articulated_robot.h.

this is the handle for the self tests.

Definition at line 350 of file sr_articulated_robot.h.


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


sr_hand
Author(s): Ugo Cupcic
autogenerated on Fri Aug 21 2015 12:24:55