|
| GAMS_EXPORT const ReferenceFrame & | default_frame (void) |
| | Default frame. More...
|
| |
| void | default_normalize_angular (const ReferenceFrameType *, double &, double &, double &) |
| |
| void | default_normalize_linear (const ReferenceFrameType *, double &, double &, double &) |
| |
| void | default_normalize_pose (const ReferenceFrameType *self, double &x, double &y, double &z, double &rx, double &ry, double &rz) |
| |
| GAMS_EXPORT const ReferenceFrame * | 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_EXPORT const ReferenceFrame & | gps_frame (void) |
| | Returns the canonical GPS frame representing Earth. More...
|
| |
| | MADARA_MAKE_VAL_SUPPORT_TEST (transform_to, x,(x.transform_to(std::declval< ReferenceFrame >()))) |
| |
| | MADARA_MAKE_VAL_SUPPORT_TEST (timestamp, x,(x.time(), x.time(TimeValue{}))) |
| | Type trait to detect stamped types. More...
|
| |
| | MADARA_MAKE_VAL_SUPPORT_TEST (nano_timestamp, x,(x.nanos(), x.nanos(0UL))) |
| | Type trait to detect stamped types. More...
|
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator!= (const Framed< BasicVector< LDerived, Units >> &lhs, const Framed< BasicVector< RDerived, Units >> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator!= (const Stamped< Framed< BasicVector< LDerived, Units >>> &lhs, const Stamped< Framed< BasicVector< RDerived, Units >>> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator!= (const BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) |
| |
| template<typename Derived , typename Units , typename Scalar > |
| auto | operator* (Scalar scalar, const BasicVector< Derived, Units > &vec) -> decltype(vec *scalar) |
| |
| template<typename Derived , typename Units , typename Scalar > |
| auto | operator* (const BasicVector< Derived, Units > &vec, Scalar scalar) -> typename std::enable_if< std::is_arithmetic< Scalar >::value &&BasicVector< Derived, Units >::free(), typename BasicVector< Derived, Units >::derived_type >::type |
| |
| template<typename Derived , typename Units , typename Scalar > |
| auto | operator*= (BasicVector< Derived, Units > &vec, Scalar scalar) -> typename std::enable_if< std::is_arithmetic< Scalar >::value &&BasicVector< Derived, Units >::free(), typename BasicVector< Derived, Units >::derived_type & >::type |
| |
| template<typename LDerived , typename LUnits , typename RDerived , typename RUnits > |
| auto | operator+ (const BasicVector< LDerived, LUnits > &lhs, const BasicVector< RDerived, RUnits > &rhs) -> typename std::enable_if< RDerived::free(), LDerived >::type |
| | Pass through to Eigen operator- on vectors, if RHS is free. More...
|
| |
| template<typename LDerived , typename RDerived , typename Units > |
| auto | operator+= (BasicVector< LDerived, Units > &lhs, const Eigen::MatrixBase< RDerived > &rhs) -> typename std::enable_if< unit_traits< Units >::positional, LDerived & >::type |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| auto | operator+= (BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) -> typename std::enable_if< unit_traits< Units >::positional &&unit_traits< Units >::free, LDerived & >::type |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| auto | operator+= (BasicVector< LDerived, units::absolute< Units >> &lhs, const BasicVector< RDerived, Units > &rhs) -> typename std::enable_if< unit_traits< Units >::positional &&unit_traits< Units >::free, LDerived & >::type |
| |
| template<typename LDerived , typename LUnits , typename RDerived , typename RUnits > |
| auto | operator- (const BasicVector< LDerived, LUnits > &lhs, const BasicVector< RDerived, RUnits > &rhs) -> typename std::enable_if< LDerived::free()&&RDerived::free(), LDerived >::type |
| | Pass through to Eigen operator- on vectors, for free types. More...
|
| |
| template<typename LDerived , typename RDerived , typename Units > |
| auto | operator-= (BasicVector< LDerived, Units > &lhs, const Eigen::MatrixBase< RDerived > &rhs) -> typename std::enable_if< unit_traits< Units >::positional, LDerived & >::type |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| auto | operator-= (BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) -> typename std::enable_if< unit_traits< Units >::positional &&unit_traits< Units >::free, LDerived & >::type |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| auto | operator-= (BasicVector< LDerived, units::absolute< Units >> &lhs, const BasicVector< RDerived, Units > &rhs) -> typename std::enable_if< unit_traits< Units >::positional &&unit_traits< Units >::free, LDerived & >::type |
| |
| template<typename Derived , typename Units , typename Scalar > |
| auto | operator/ (const BasicVector< Derived, Units > &vec, Scalar scalar) -> typename std::enable_if< std::is_arithmetic< Scalar >::value &&BasicVector< Derived, Units >::free(), typename BasicVector< Derived, Units >::derived_type >::type |
| |
| template<typename Derived , typename Units , typename Scalar > |
| auto | operator/ (Scalar scalar, const BasicVector< Derived, Units > &vec) -> decltype(vec/scalar) |
| |
| template<typename Derived , typename Units , typename Scalar > |
| auto | operator/= (BasicVector< Derived, Units > &vec, Scalar scalar) -> typename std::enable_if< std::is_arithmetic< Scalar >::value &&BasicVector< Derived, Units >::free(), typename BasicVector< Derived, Units >::derived_type & >::type |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator< (const BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator< (const Framed< BasicVector< LDerived, Units >> &lhs, const Framed< BasicVector< RDerived, Units >> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator< (const Stamped< Framed< BasicVector< LDerived, Units >>> &lhs, const Stamped< Framed< BasicVector< RDerived, Units >>> &rhs) |
| |
| template<typename Base > |
| std::ostream & | operator<< (std::ostream &o, const Stamped< Base > &v) |
| |
| template<typename Derived > |
| std::ostream & | operator<< (std::ostream &o, const BasicPose< Derived > &pose) |
| |
| std::ostream & | operator<< (std::ostream &o, const Eigen::Vector3d &v) |
| |
| template<typename Derived , typename Units > |
| std::ostream & | operator<< (std::ostream &o, const BasicVector< Derived, Units > &v) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator<= (const BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator<= (const Framed< BasicVector< LDerived, Units >> &lhs, const Framed< BasicVector< RDerived, Units >> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator<= (const Stamped< Framed< BasicVector< LDerived, Units >>> &lhs, const Stamped< Framed< BasicVector< RDerived, Units >>> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator== (const Framed< BasicVector< LDerived, Units >> &lhs, const Framed< BasicVector< RDerived, Units >> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator== (const Stamped< Framed< BasicVector< LDerived, Units >>> &lhs, const Stamped< Framed< BasicVector< RDerived, Units >>> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator== (const BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator> (const BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator> (const Framed< BasicVector< LDerived, Units >> &lhs, const Framed< BasicVector< RDerived, Units >> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator> (const Stamped< Framed< BasicVector< LDerived, Units >>> &lhs, const Stamped< Framed< BasicVector< RDerived, Units >>> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator>= (const Framed< BasicVector< LDerived, Units >> &lhs, const Framed< BasicVector< RDerived, Units >> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator>= (const Stamped< Framed< BasicVector< LDerived, Units >>> &lhs, const Stamped< Framed< BasicVector< RDerived, Units >>> &rhs) |
| |
| template<typename LDerived , typename RDerived , typename Units > |
| bool | operator>= (const BasicVector< LDerived, Units > &lhs, const BasicVector< RDerived, Units > &rhs) |
| |
| Eigen::Vector3d | quat_to_axis_angle (const Eigen::Quaterniond &quat) |
| |
| ReferenceFrame | try_get_frame () |
| |
| template<typename T , typename... Args> |
| auto | try_get_frame (const T &v, Args &&...) -> typename std::enable_if< supports_transform_to< T >::value, ReferenceFrame >::type |
| |
| template<typename T , typename... Args> |
| auto | try_get_frame (const T &, Args &&...args) -> typename std::enable_if<!supports_transform_to< T >::value, ReferenceFrame >::type |
| |
| uint64_t | try_get_nano_time (uint64_t def) |
| | Base case: return default. More...
|
| |
| template<typename T , typename... Args> |
| auto | 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 | 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...
|
| |
| TimeValue | try_get_time () |
| |
| template<typename T , typename... Args> |
| auto | try_get_time (const T &v, Args &&...) -> typename std::enable_if< supports_timestamp< T >::value, TimeValue >::type |
| |
| template<typename T , typename... Args> |
| auto | try_get_time (const T &, Args &&...args) -> typename std::enable_if<!supports_timestamp< T >::value, TimeValue >::type |
| |
| template<typename T > |
| auto | try_transform_to (const T &v, const ReferenceFrame &frame) -> typename std::enable_if< supports_transform_to< T >::value, T >::type |
| |