Flexiv RDK APIs  1.5.1
Classes | Typedefs | Enumerations | Functions | Variables
data.hpp File Reference

Header file containing various constant expressions, data structs, and enums. More...

#include <array>
#include <vector>
#include <string>
#include <ostream>
#include <variant>
Include dependency graph for data.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  flexiv::rdk::RobotInfo
 General information about the connected robot. More...
 
struct  flexiv::rdk::RobotStates
 Data structure containing the joint- and Cartesian-space robot states. More...
 
struct  flexiv::rdk::PlanInfo
 Data structure containing information of the on-going primitive/plan. More...
 
struct  flexiv::rdk::GripperStates
 Data structure containing the gripper states. More...
 
struct  flexiv::rdk::ToolParams
 Data structure containing robot tool parameters. More...
 
struct  flexiv::rdk::JPos
 Data structure representing the customized data type "JPOS" in Flexiv Elements. More...
 
struct  flexiv::rdk::Coord
 Data structure representing the customized data type "COORD" in Flexiv Elements. More...
 

Typedefs

using flexiv::rdk::FlexivDataTypes = std::variant< int, double, std::string, rdk::JPos, rdk::Coord, std::vector< int >, std::vector< double >, std::vector< std::string >, std::vector< rdk::JPos >, std::vector< rdk::Coord > >
 

Enumerations

enum class  flexiv::rdk::OperationalStatus {
  UNKNOWN = 0 , READY , BOOTING , ESTOP_NOT_RELEASED ,
  NOT_ENABLED , RELEASING_BRAKE , MINOR_FAULT , CRITICAL_FAULT ,
  IN_REDUCED_STATE , IN_RECOVERY_STATE , IN_MANUAL_MODE , IN_AUTO_MODE
}
 Operational status of the robot. Except for the first two, the other enumerators indicate the cause of the robot being not ready to operate. More...
 
enum class  flexiv::rdk::CoordType { WORLD , TCP }
 Type of commonly-used reference coordinates. More...
 

Functions

std::ostream & flexiv::rdk::operator<< (std::ostream &ostream, const RobotInfo &robot_info)
 Operator overloading to out stream all robot info in JSON format: {"info_1": [val1,val2,val3,...], "info_2": [val1,val2,val3,...], ...}. More...
 
std::ostream & flexiv::rdk::operator<< (std::ostream &ostream, const RobotStates &robot_states)
 Operator overloading to out stream all robot states in JSON format: {"state_1": [val1,val2,val3,...], "state_2": [val1,val2,val3,...], ...}. More...
 
std::ostream & flexiv::rdk::operator<< (std::ostream &ostream, const PlanInfo &plan_info)
 Operator overloading to out stream all plan info in JSON format: {"info_1": [val1,val2,val3,...], "info_2": [val1,val2,val3,...], ...}. More...
 
std::ostream & flexiv::rdk::operator<< (std::ostream &ostream, const GripperStates &gripper_states)
 Operator overloading to out stream all gripper states in JSON format: {"state_1": [val1,val2,val3,...], "state_2": [val1,val2,val3,...], ...}. More...
 

Variables

constexpr size_t flexiv::rdk::kCartDoF = 6
 
constexpr size_t flexiv::rdk::kSerialJointDoF = 7
 
constexpr size_t flexiv::rdk::kPoseSize = 7
 
constexpr size_t flexiv::rdk::kIOPorts = 18
 
constexpr size_t flexiv::rdk::kMaxExtAxes = 6
 

Detailed Description

Header file containing various constant expressions, data structs, and enums.

Definition in file data.hpp.

Typedef Documentation

◆ FlexivDataTypes

using flexiv::rdk::FlexivDataTypes = typedef std::variant<int, double, std::string, rdk::JPos, rdk::Coord, std::vector<int>, std::vector<double>, std::vector<std::string>, std::vector<rdk::JPos>, std::vector<rdk::Coord> >

Alias of the variant that holds all possible types of data exchanged with Flexiv robots

Definition at line 436 of file data.hpp.

Enumeration Type Documentation

◆ CoordType

Type of commonly-used reference coordinates.

Enumerator
WORLD 

World frame (fixed).

TCP 

TCP frame (move with the robot's end effector).

Examples
intermediate6_realtime_cartesian_motion_force_control.cpp.

Definition at line 57 of file data.hpp.

◆ OperationalStatus

Operational status of the robot. Except for the first two, the other enumerators indicate the cause of the robot being not ready to operate.

See also
Robot::operational_status().
Enumerator
UNKNOWN 

Unkown status.

READY 

Ready to be operated.

BOOTING 

System still booting, please wait.

ESTOP_NOT_RELEASED 

E-Stop is not released.

NOT_ENABLED 

Not enabled, call Enable() to send the signal.

RELEASING_BRAKE 

Brake release in progress, please wait.

MINOR_FAULT 

Minor fault occurred, call ClearFault() to try clearing it.

CRITICAL_FAULT 

Critical fault occurred, call ClearFault() to try clearing it.

IN_REDUCED_STATE 

In reduced state, see reduced().

IN_RECOVERY_STATE 

In recovery state, see recovery().

IN_MANUAL_MODE 

In Manual mode, need to switch to Auto (Remote) mode.

IN_AUTO_MODE 

In regular Auto mode, need to switch to Auto (Remote) mode.

Definition at line 38 of file data.hpp.

Function Documentation

◆ operator<<() [1/4]

std::ostream& flexiv::rdk::operator<< ( std::ostream &  ostream,
const GripperStates gripper_states 
)

Operator overloading to out stream all gripper states in JSON format: {"state_1": [val1,val2,val3,...], "state_2": [val1,val2,val3,...], ...}.

Parameters
[in]ostreamOstream instance.
[in]gripper_statesGripperStates data structure to out stream.
Returns
Updated ostream instance.

◆ operator<<() [2/4]

std::ostream& flexiv::rdk::operator<< ( std::ostream &  ostream,
const PlanInfo plan_info 
)

Operator overloading to out stream all plan info in JSON format: {"info_1": [val1,val2,val3,...], "info_2": [val1,val2,val3,...], ...}.

Parameters
[in]ostreamOstream instance.
[in]plan_infoPlanInfo data structure to out stream.
Returns
Updated ostream instance.

◆ operator<<() [3/4]

std::ostream& flexiv::rdk::operator<< ( std::ostream &  ostream,
const RobotInfo robot_info 
)

Operator overloading to out stream all robot info in JSON format: {"info_1": [val1,val2,val3,...], "info_2": [val1,val2,val3,...], ...}.

Parameters
[in]ostreamOstream instance.
[in]robot_infoRobotInfo data structure to out stream.
Returns
Updated ostream instance.

◆ operator<<() [4/4]

std::ostream& flexiv::rdk::operator<< ( std::ostream &  ostream,
const RobotStates robot_states 
)

Operator overloading to out stream all robot states in JSON format: {"state_1": [val1,val2,val3,...], "state_2": [val1,val2,val3,...], ...}.

Parameters
[in]ostreamOstream instance.
[in]robot_statesRobotStates data structure to out stream.
Returns
Updated ostream instance.

Variable Documentation

◆ kCartDoF

constexpr size_t flexiv::rdk::kCartDoF = 6
constexpr

Cartesian-space degrees of freedom

Definition at line 19 of file data.hpp.

◆ kIOPorts

constexpr size_t flexiv::rdk::kIOPorts = 18
constexpr

Number of digital IO ports (16 on control box + 2 inside the wrist connector)

Definition at line 28 of file data.hpp.

◆ kMaxExtAxes

constexpr size_t flexiv::rdk::kMaxExtAxes = 6
constexpr

Maximum number of external axes

Definition at line 31 of file data.hpp.

◆ kPoseSize

constexpr size_t flexiv::rdk::kPoseSize = 7
constexpr

Size of pose array (3 position + 4 quaternion)

Definition at line 25 of file data.hpp.

◆ kSerialJointDoF

constexpr size_t flexiv::rdk::kSerialJointDoF = 7
constexpr

Joint-space degrees of freedom of Flexiv's serial robots

Definition at line 22 of file data.hpp.