YARP
Yet Another Robot Platform
yarp::dev::IInteractionMode Class Referenceabstract

Interface settings the way the robot interacts with the environment: basic interaction types are Stiff and Compliant. More...

#include <yarp/dev/IInteractionMode.h>

+ Inheritance diagram for yarp::dev::IInteractionMode:

Public Member Functions

virtual ~IInteractionMode ()
 Destructor. More...
 
virtual bool getInteractionMode (int axis, yarp::dev::InteractionModeEnum *mode)=0
 Get the current interaction mode of the robot, values can be stiff or compliant. More...
 
virtual bool getInteractionModes (int n_joints, int *joints, yarp::dev::InteractionModeEnum *modes)=0
 Get the current interaction mode of the robot for a set of joints, values can be stiff or compliant. More...
 
virtual bool getInteractionModes (yarp::dev::InteractionModeEnum *modes)=0
 Get the current interaction mode of the robot for a all the joints, values can be stiff or compliant. More...
 
virtual bool setInteractionMode (int axis, yarp::dev::InteractionModeEnum mode)=0
 Set the interaction mode of the robot, values can be stiff or compliant. More...
 
virtual bool setInteractionModes (int n_joints, int *joints, yarp::dev::InteractionModeEnum *modes)=0
 Set the interaction mode of the robot for a set of joints, values can be stiff or compliant. More...
 
virtual bool setInteractionModes (yarp::dev::InteractionModeEnum *modes)=0
 Set the interaction mode of the robot for a all the joints, values can be stiff or compliant. More...
 

Detailed Description

Interface settings the way the robot interacts with the environment: basic interaction types are Stiff and Compliant.

This setting is intended to work in conjunction with other settings like position or velocity control.

Definition at line 42 of file IInteractionMode.h.

Constructor & Destructor Documentation

◆ ~IInteractionMode()

virtual yarp::dev::IInteractionMode::~IInteractionMode ( )
inlinevirtual

Destructor.

Definition at line 48 of file IInteractionMode.h.

Member Function Documentation

◆ getInteractionMode()

virtual bool yarp::dev::IInteractionMode::getInteractionMode ( int  axis,
yarp::dev::InteractionModeEnum mode 
)
pure virtual

Get the current interaction mode of the robot, values can be stiff or compliant.

Parameters
axisjoint number
modecontains the requested information about interaction mode of the joint
Returns
true or false on success or failure.

Implemented in ControlBoardWrapperInteractionMode, ControlBoardRemapper, yarp::dev::ImplementInteractionMode, and RemoteControlBoard.

◆ getInteractionModes() [1/2]

virtual bool yarp::dev::IInteractionMode::getInteractionModes ( int  n_joints,
int *  joints,
yarp::dev::InteractionModeEnum modes 
)
pure virtual

Get the current interaction mode of the robot for a set of joints, values can be stiff or compliant.

Parameters
n_jointshow many joints this command is referring to
jointslist of joints controlled. The size of this array is n_joints
modesarray containing the requested information about interaction mode, one value for each joint, the size is n_joints. for example: n_joint 3 joints 0 2 4 refs VOCAB_IM_STIFF VOCAB_IM_STIFF VOCAB_IM_COMPLIANT
Returns
true or false on success or failure.

Implemented in yarp::dev::ImplementInteractionMode, RemoteControlBoard, ControlBoardWrapperInteractionMode, and ControlBoardRemapper.

◆ getInteractionModes() [2/2]

virtual bool yarp::dev::IInteractionMode::getInteractionModes ( yarp::dev::InteractionModeEnum modes)
pure virtual

Get the current interaction mode of the robot for a all the joints, values can be stiff or compliant.

Parameters
modearray containing the requested information about interaction mode, one value for each joint.
Returns
true or false on success or failure.

Implemented in yarp::dev::ImplementInteractionMode, RemoteControlBoard, ControlBoardWrapperInteractionMode, and ControlBoardRemapper.

◆ setInteractionMode()

virtual bool yarp::dev::IInteractionMode::setInteractionMode ( int  axis,
yarp::dev::InteractionModeEnum  mode 
)
pure virtual

Set the interaction mode of the robot, values can be stiff or compliant.

Please note that some robot may not implement certain types of interaction, so always check the return value.

Parameters
axisjoint number
modethe desired interaction mode
Returns
true or false on success or failure.

Implemented in ControlBoardWrapperInteractionMode, ControlBoardRemapper, yarp::dev::ImplementInteractionMode, and RemoteControlBoard.

◆ setInteractionModes() [1/2]

virtual bool yarp::dev::IInteractionMode::setInteractionModes ( int  n_joints,
int *  joints,
yarp::dev::InteractionModeEnum modes 
)
pure virtual

Set the interaction mode of the robot for a set of joints, values can be stiff or compliant.

Please note that some robot may not implement certain types of interaction, so always check the return value.

Parameters
n_jointshow many joints this command is referring to
jointslist of joints controlled. The size of this array is n_joints
modesarray containing the desired interaction mode, one value for each joint, the size is n_joints. for example: n_joint 3 joints 0 2 4 refs VOCAB_IM_STIFF VOCAB_IM_STIFF VOCAB_IM_COMPLIANT
Returns
true or false on success or failure. If one or more joint fails, the return value will be false.

Implemented in yarp::dev::ImplementInteractionMode, RemoteControlBoard, ControlBoardWrapperInteractionMode, and ControlBoardRemapper.

◆ setInteractionModes() [2/2]

virtual bool yarp::dev::IInteractionMode::setInteractionModes ( yarp::dev::InteractionModeEnum modes)
pure virtual

Set the interaction mode of the robot for a all the joints, values can be stiff or compliant.

Some robot may not implement some types of interaction, so always check the return value

Parameters
modearray with the desired interaction mode for all joints, length is the total number of joints for the part
Returns
true or false on success or failure. If one or more joint fails, the return value will be false.

Implemented in yarp::dev::ImplementInteractionMode, RemoteControlBoard, ControlBoardWrapperInteractionMode, and ControlBoardRemapper.


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