gusimplewhiteboard
wb_hal_arm_target.h File Reference
#include <gu_util.h>
#include <stdint.h>
Include dependency graph for wb_hal_arm_target.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  wb_hal_arm_target
 WHITEBOARD_POSTER_STRING_CONVERSION. More...
 

Macros

#define _XOPEN_SOURCE   700
 
#define LEFT_ARM   (static_cast<uint8_t>(0))
 
#define RIGHT_ARM   (static_cast<uint8_t>(1))
 
#define SHOULDER_PITCH_LIMIT_DOWN_DEG   119.5f
 Issued Commands that exceed the movement limits given below are treated as NO-OP. More...
 
#define SHOULDER_PITCH_LIMIT_UP_DEG   -SHOULDER_PITCH_LIMIT_DOWN_DEG
 
#define LEFT_SHOULDER_ROLL_OUT_DEG   76.0f
 
#define LEFT_SHOULDER_ROLL_IN_DEG   -18.0f
 
#define RIGHT_SHOULDER_ROLL_OUT_DEG   -LEFT_SHOULDER_ROLL_OUT_DEG
 
#define RIGHT_SHOULDER_ROLL_IN_DEG   -LEFT_SHOULDER_ROLL_IN_DEG
 
#define LEFT_ELBOW_ROLL_STRAIGHT_DEG   -2.0f
 
#define LEFT_ELBOW_ROLL_BENT_DEG   -88.5f
 
#define RIGHT_ELBOW_ROLL_STRAIGHT_DEG   -LEFT_ELBOW_ROLL_STRAIGHT_DEG
 
#define RIGHT_ELBOW_ROLL_BENT_DEG   -LEFT_ELBOW_ROLL_BENT_DEG
 
#define LEFT_ELBOW_YAW_RIGHT_DEG   119.5f
 
#define LEFT_ELBOW_YAW_LEFT_DEG   -LEFT_ELBOW_YAW_RIGHT_DEG
 
#define RIGHT_ELBOW_YAW_RIGHT_DEG   LEFT_ELBOW_YAW_RIGHT_DEG
 
#define RIGHT_ELBOW_YAW_LEFT_DEG   -LEFT_ELBOW_YAW_RIGHT_DEG
 
#define LEFT_WRIST_YAW_RIGHT_DEG   104.5f
 
#define LEFT_WRIST_YAW_LEFT_DEG   -LEFT_WRIST_YAW_RIGHT_DEG
 
#define RIGHT_WRIST_YAW_RIGHT_DEG   LEFT_WRIST_YAW_RIGHT_DEG
 
#define RIGHT_WRIST_YAW_LEFT_DEG   -LEFT_WRIST_YAW_RIGHT_DEG
 
#define SHOULDER_PITCH_LIMIT_DOWN_RAD   2.0857f
 Limits expressed in radians. More...
 
#define SHOULDER_PITCH_LIMIT_UP_RAD   -SHOULDER_PITCH_LIMIT_DOWN_RAD
 
#define LEFT_SHOULDER_ROLL_OUT_RAD   1.3265f
 
#define LEFT_SHOULDER_ROLL_IN_RAD   -0.3142f
 
#define RIGHT_SHOULDER_ROLL_OUT_RAD   -LEFT_SHOULDER_ROLL_OUT_RAD
 
#define RIGHT_SHOULDER_ROLL_IN_RAD   -LEFT_SHOULDER_ROLL_IN_RAD
 
#define LEFT_ELBOW_ROLL_STRAIGHT_RAD   -0.0349f
 
#define LEFT_ELBOW_ROLL_BENT_RAD   -1.5446f
 
#define RIGHT_ELBOW_ROLL_STRAIGHT_RAD   -LEFT_ELBOW_ROLL_STRAIGHT_RAD
 
#define RIGHT_ELBOW_ROLL_BENT_RAD   -LEFT_ELBOW_ROLL_BENT_RAD
 
#define LEFT_ELBOW_YAW_RIGHT_RAD   2.0857f
 
#define LEFT_ELBOW_YAW_LEFT_RAD   -LEFT_ELBOW_YAW_RIGHT_RAD
 
#define RIGHT_ELBOW_YAW_RIGHT_RAD   LEFT_ELBOW_YAW_RIGHT_RAD
 
#define RIGHT_ELBOW_YAW_LEFT_RAD   -LEFT_ELBOW_YAW_RIGHT_RAD
 
#define LEFT_WRIST_YAW_RIGHT_RAD   1.8238f
 
#define LEFT_WRIST_YAW_LEFT_RAD   -LEFT_WRIST_YAW_RIGHT_RAD
 
#define RIGHT_WRIST_YAW_RIGHT_RAD   LEFT_WRIST_YAW_RIGHT_RAD
 
#define RIGHT_WRIST_YAW_LEFT_RAD   -LEFT_WRIST_YAW_RIGHT_RAD
 
#define HAL_ARM_TARGET_GENERATED
 
#define HAL_ARM_TARGET_C_STRUCT   wb_hal_arm_target
 
#define HAL_ARM_TARGET_NUMBER_OF_VARIABLES   23
 
#define HAL_ARM_TARGET_DESC_BUFFER_SIZE   685
 
#define HAL_ARM_TARGET_TO_STRING_BUFFER_SIZE   201
 

Functions

const char * wb_hal_arm_target_description (const struct wb_hal_arm_target *self, char *descString, size_t bufferSize)
 Convert to a description string. More...
 
const char * wb_hal_arm_target_to_string (const struct wb_hal_arm_target *self, char *toString, size_t bufferSize)
 Convert to a string. More...
 
struct wb_hal_arm_targetwb_hal_arm_target_from_string (struct wb_hal_arm_target *self, const char *str)
 Convert from a string. More...
 
const char * wb_hal_arm_target_value_description (const struct wb_hal_arm_target *self, char *toString, size_t bufferSize)
 WHITEBOARD_POSTER_STRING_CONVERSION. More...
 
size_t wb_hal_arm_target_to_network_serialised (const struct wb_hal_arm_target *self, char *dst)
 Network stream serialisation. More...
 
size_t wb_hal_arm_target_from_network_serialised (const char *src, struct wb_hal_arm_target *dst)
 Network stream deserialisation. More...
 

Macro Definition Documentation

◆ _XOPEN_SOURCE

#define _XOPEN_SOURCE   700

Definition at line 72 of file wb_hal_arm_target.h.

◆ HAL_ARM_TARGET_C_STRUCT

#define HAL_ARM_TARGET_C_STRUCT   wb_hal_arm_target

Definition at line 150 of file wb_hal_arm_target.h.

◆ HAL_ARM_TARGET_DESC_BUFFER_SIZE

#define HAL_ARM_TARGET_DESC_BUFFER_SIZE   685

Definition at line 154 of file wb_hal_arm_target.h.

◆ HAL_ARM_TARGET_GENERATED

#define HAL_ARM_TARGET_GENERATED

Definition at line 149 of file wb_hal_arm_target.h.

◆ HAL_ARM_TARGET_NUMBER_OF_VARIABLES

#define HAL_ARM_TARGET_NUMBER_OF_VARIABLES   23

Definition at line 151 of file wb_hal_arm_target.h.

◆ HAL_ARM_TARGET_TO_STRING_BUFFER_SIZE

#define HAL_ARM_TARGET_TO_STRING_BUFFER_SIZE   201

Definition at line 155 of file wb_hal_arm_target.h.

◆ LEFT_ARM

#define LEFT_ARM   (static_cast<uint8_t>(0))

Definition at line 89 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_ROLL_BENT_DEG

#define LEFT_ELBOW_ROLL_BENT_DEG   -88.5f

Definition at line 111 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_ROLL_BENT_RAD

#define LEFT_ELBOW_ROLL_BENT_RAD   -1.5446f

Definition at line 135 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_ROLL_STRAIGHT_DEG

#define LEFT_ELBOW_ROLL_STRAIGHT_DEG   -2.0f

Definition at line 110 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_ROLL_STRAIGHT_RAD

#define LEFT_ELBOW_ROLL_STRAIGHT_RAD   -0.0349f

Definition at line 134 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_YAW_LEFT_DEG

#define LEFT_ELBOW_YAW_LEFT_DEG   -LEFT_ELBOW_YAW_RIGHT_DEG

Definition at line 116 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_YAW_LEFT_RAD

#define LEFT_ELBOW_YAW_LEFT_RAD   -LEFT_ELBOW_YAW_RIGHT_RAD

Definition at line 140 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_YAW_RIGHT_DEG

#define LEFT_ELBOW_YAW_RIGHT_DEG   119.5f

Definition at line 115 of file wb_hal_arm_target.h.

◆ LEFT_ELBOW_YAW_RIGHT_RAD

#define LEFT_ELBOW_YAW_RIGHT_RAD   2.0857f

Definition at line 139 of file wb_hal_arm_target.h.

◆ LEFT_SHOULDER_ROLL_IN_DEG

#define LEFT_SHOULDER_ROLL_IN_DEG   -18.0f

Definition at line 106 of file wb_hal_arm_target.h.

◆ LEFT_SHOULDER_ROLL_IN_RAD

#define LEFT_SHOULDER_ROLL_IN_RAD   -0.3142f

Definition at line 130 of file wb_hal_arm_target.h.

◆ LEFT_SHOULDER_ROLL_OUT_DEG

#define LEFT_SHOULDER_ROLL_OUT_DEG   76.0f

Definition at line 105 of file wb_hal_arm_target.h.

◆ LEFT_SHOULDER_ROLL_OUT_RAD

#define LEFT_SHOULDER_ROLL_OUT_RAD   1.3265f

Definition at line 129 of file wb_hal_arm_target.h.

◆ LEFT_WRIST_YAW_LEFT_DEG

#define LEFT_WRIST_YAW_LEFT_DEG   -LEFT_WRIST_YAW_RIGHT_DEG

Definition at line 121 of file wb_hal_arm_target.h.

◆ LEFT_WRIST_YAW_LEFT_RAD

#define LEFT_WRIST_YAW_LEFT_RAD   -LEFT_WRIST_YAW_RIGHT_RAD

Definition at line 145 of file wb_hal_arm_target.h.

◆ LEFT_WRIST_YAW_RIGHT_DEG

#define LEFT_WRIST_YAW_RIGHT_DEG   104.5f

Definition at line 120 of file wb_hal_arm_target.h.

◆ LEFT_WRIST_YAW_RIGHT_RAD

#define LEFT_WRIST_YAW_RIGHT_RAD   1.8238f

Definition at line 144 of file wb_hal_arm_target.h.

◆ RIGHT_ARM

#define RIGHT_ARM   (static_cast<uint8_t>(1))

Definition at line 90 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_ROLL_BENT_DEG

#define RIGHT_ELBOW_ROLL_BENT_DEG   -LEFT_ELBOW_ROLL_BENT_DEG

Definition at line 113 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_ROLL_BENT_RAD

#define RIGHT_ELBOW_ROLL_BENT_RAD   -LEFT_ELBOW_ROLL_BENT_RAD

Definition at line 137 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_ROLL_STRAIGHT_DEG

#define RIGHT_ELBOW_ROLL_STRAIGHT_DEG   -LEFT_ELBOW_ROLL_STRAIGHT_DEG

Definition at line 112 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_ROLL_STRAIGHT_RAD

#define RIGHT_ELBOW_ROLL_STRAIGHT_RAD   -LEFT_ELBOW_ROLL_STRAIGHT_RAD

Definition at line 136 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_YAW_LEFT_DEG

#define RIGHT_ELBOW_YAW_LEFT_DEG   -LEFT_ELBOW_YAW_RIGHT_DEG

Definition at line 118 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_YAW_LEFT_RAD

#define RIGHT_ELBOW_YAW_LEFT_RAD   -LEFT_ELBOW_YAW_RIGHT_RAD

Definition at line 142 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_YAW_RIGHT_DEG

#define RIGHT_ELBOW_YAW_RIGHT_DEG   LEFT_ELBOW_YAW_RIGHT_DEG

Definition at line 117 of file wb_hal_arm_target.h.

◆ RIGHT_ELBOW_YAW_RIGHT_RAD

#define RIGHT_ELBOW_YAW_RIGHT_RAD   LEFT_ELBOW_YAW_RIGHT_RAD

Definition at line 141 of file wb_hal_arm_target.h.

◆ RIGHT_SHOULDER_ROLL_IN_DEG

#define RIGHT_SHOULDER_ROLL_IN_DEG   -LEFT_SHOULDER_ROLL_IN_DEG

Definition at line 108 of file wb_hal_arm_target.h.

◆ RIGHT_SHOULDER_ROLL_IN_RAD

#define RIGHT_SHOULDER_ROLL_IN_RAD   -LEFT_SHOULDER_ROLL_IN_RAD

Definition at line 132 of file wb_hal_arm_target.h.

◆ RIGHT_SHOULDER_ROLL_OUT_DEG

#define RIGHT_SHOULDER_ROLL_OUT_DEG   -LEFT_SHOULDER_ROLL_OUT_DEG

Definition at line 107 of file wb_hal_arm_target.h.

◆ RIGHT_SHOULDER_ROLL_OUT_RAD

#define RIGHT_SHOULDER_ROLL_OUT_RAD   -LEFT_SHOULDER_ROLL_OUT_RAD

Definition at line 131 of file wb_hal_arm_target.h.

◆ RIGHT_WRIST_YAW_LEFT_DEG

#define RIGHT_WRIST_YAW_LEFT_DEG   -LEFT_WRIST_YAW_RIGHT_DEG

Definition at line 123 of file wb_hal_arm_target.h.

◆ RIGHT_WRIST_YAW_LEFT_RAD

#define RIGHT_WRIST_YAW_LEFT_RAD   -LEFT_WRIST_YAW_RIGHT_RAD

Definition at line 147 of file wb_hal_arm_target.h.

◆ RIGHT_WRIST_YAW_RIGHT_DEG

#define RIGHT_WRIST_YAW_RIGHT_DEG   LEFT_WRIST_YAW_RIGHT_DEG

Definition at line 122 of file wb_hal_arm_target.h.

◆ RIGHT_WRIST_YAW_RIGHT_RAD

#define RIGHT_WRIST_YAW_RIGHT_RAD   LEFT_WRIST_YAW_RIGHT_RAD

Definition at line 146 of file wb_hal_arm_target.h.

◆ SHOULDER_PITCH_LIMIT_DOWN_DEG

#define SHOULDER_PITCH_LIMIT_DOWN_DEG   119.5f

Issued Commands that exceed the movement limits given below are treated as NO-OP.

I.e. the pose of the joint is not altered by the command. Limits expressed in degrees

Definition at line 102 of file wb_hal_arm_target.h.

◆ SHOULDER_PITCH_LIMIT_DOWN_RAD

#define SHOULDER_PITCH_LIMIT_DOWN_RAD   2.0857f

Limits expressed in radians.

Definition at line 126 of file wb_hal_arm_target.h.

◆ SHOULDER_PITCH_LIMIT_UP_DEG

#define SHOULDER_PITCH_LIMIT_UP_DEG   -SHOULDER_PITCH_LIMIT_DOWN_DEG

Definition at line 103 of file wb_hal_arm_target.h.

◆ SHOULDER_PITCH_LIMIT_UP_RAD

#define SHOULDER_PITCH_LIMIT_UP_RAD   -SHOULDER_PITCH_LIMIT_DOWN_RAD

Definition at line 127 of file wb_hal_arm_target.h.

Function Documentation

◆ wb_hal_arm_target_description()

const char * wb_hal_arm_target_description ( const struct wb_hal_arm_target self,
char *  descString,
size_t  bufferSize 
)

Convert to a description string.

Definition at line 310 of file wb_hal_arm_target.c.

Referenced by guWhiteboard::HalArmTarget::description().

◆ wb_hal_arm_target_from_network_serialised()

◆ wb_hal_arm_target_from_string()

struct wb_hal_arm_target * wb_hal_arm_target_from_string ( struct wb_hal_arm_target self,
const char *  str 
)

Convert from a string.

Definition at line 694 of file wb_hal_arm_target.c.

References HAL_ARM_TARGET_DESC_BUFFER_SIZE.

◆ wb_hal_arm_target_to_network_serialised()

size_t wb_hal_arm_target_to_network_serialised ( const struct wb_hal_arm_target self,
char *  dst 
)

Network stream serialisation.

Network stream serialisation.

Definition at line 944 of file wb_hal_arm_target.c.

References htonl, and htons.

◆ wb_hal_arm_target_to_string()

const char * wb_hal_arm_target_to_string ( const struct wb_hal_arm_target self,
char *  toString,
size_t  bufferSize 
)

Convert to a string.

Definition at line 502 of file wb_hal_arm_target.c.

Referenced by guWhiteboard::HalArmTarget::to_string().

◆ wb_hal_arm_target_value_description()

const char * wb_hal_arm_target_value_description ( const struct wb_hal_arm_target self,
char *  toString,
size_t  bufferSize 
)

WHITEBOARD_POSTER_STRING_CONVERSION.

WHITEBOARD_POSTER_STRING_CONVERSION.

Definition at line 124 of file wb_hal_arm_target.c.

Referenced by guWhiteboard::HalArmTarget::valueDescription().