|
double | gams::pose::simple_rotate::calc_angle (const ReferenceFrameType *self, double rx1, double ry1, double rz1, double rx2, double ry2, double rz2) |
| Calculates smallest angle between two AngularVectors. More...
|
|
void | gams::pose::default_normalize_angular (const ReferenceFrameType *, double &, double &, double &) |
|
void | gams::pose::default_normalize_linear (const ReferenceFrameType *, double &, double &, double &) |
|
void | gams::pose::default_normalize_pose (const ReferenceFrameType *self, double &x, double &y, double &z, double &rx, double &ry, double &rz) |
|
GAMS_EXPORT const ReferenceFrame * | gams::pose::find_common_frame (const ReferenceFrame *from, const ReferenceFrame *to, std::vector< const ReferenceFrame * > *to_stack=nullptr) |
| Helper function to find the common frame between two frames. More...
|
|
| gams::pose::MADARA_MAKE_VAL_SUPPORT_TEST (nano_timestamp, x,(x.nanos(), x.nanos(0UL))) |
| Type trait to detect stamped types. More...
|
|
static std::string & | gams::pose::impl::make_kb_key (std::string &prefix, const std::string &id) |
|
static std::string & | gams::pose::impl::make_kb_key (std::string &prefix, uint64_t timestamp) |
|
static std::string & | gams::pose::impl::make_kb_key (std::string &prefix, const std::string &id, uint64_t timestamp) |
|
void | gams::pose::simple_rotate::orient_linear_vec (double &x, double &y, double &z, double rx, double ry, double rz, bool reverse=false) |
| Rotates a LinearVector according to a AngularVector. More...
|
|
void | gams::pose::simple_rotate::transform_angular_from_origin (const ReferenceFrameType *origin, const ReferenceFrameType *self, double orx, double ory, double orz, double &rx, double &ry, double &rz) |
| Transform AngularVector in-place from its origin frame. More...
|
|
void | gams::pose::simple_rotate::transform_angular_to_origin (const ReferenceFrameType *origin, const ReferenceFrameType *self, double orx, double ory, double orz, double &rx, double &ry, double &rz) |
| Transform AngularVector in-place into its origin frame from this frame. More...
|
|
void | gams::pose::simple_rotate::transform_pose_from_origin (const ReferenceFrameType *origin, const ReferenceFrameType *self, double ox, double oy, double oz, double orx, double ory, double orz, double &x, double &y, double &z, double &rx, double &ry, double &rz, bool fixed) |
| Transform pose in-place from its origin frame Simply applies linear and angular transforms independantly. More...
|
|
void | gams::pose::simple_rotate::transform_pose_to_origin (const ReferenceFrameType *origin, const ReferenceFrameType *self, double ox, double oy, double oz, double orx, double ory, double orz, double &x, double &y, double &z, double &rx, double &ry, double &rz, bool fixed) |
| Transform pose in-place into its origin frame from this frame. More...
|
|
uint64_t | gams::pose::try_get_nano_time (uint64_t def) |
| Base case: return default. More...
|
|
template<typename T , typename... Args> |
auto | gams::pose::try_get_nano_time (uint64_t, const T &v, Args &&...) -> typename std::enable_if< supports_nano_timestamp< T >::value, uint64_t >::type |
| If T supports nanos(), call it and return value. More...
|
|
template<typename T , typename... Args> |
auto | gams::pose::try_get_nano_time (uint64_t def, const T &, Args &&...args) -> typename std::enable_if<!supports_nano_timestamp< T >::value, uint64_t >::type |
| If T doesn't support nanos(), recurse to remaining args. More...
|
|