Go to the documentation of this file.
15 #include <Eigen/Geometry>
26 #include <type_traits>
29 #define TION __PRETTY_FUNCTION__
30 #elif (_MSC_VER >= 1310)
31 #define TION __FUNCTION__
33 #define TION "unknown"
37 #define SOPHUS_FORMAT(...) FARM_FORMAT(__VA_ARGS__)
40 #define SOPHUS_ASSERT(...) FARM_ASSERT(__VA_ARGS__)
41 #define SOPHUS_ASSERT_EQ(...) FARM_ASSERT_EQ(__VA_ARGS__)
42 #define SOPHUS_ASSERT_GE(...) FARM_ASSERT_GE(__VA_ARGS__)
43 #define SOPHUS_ASSERT_GT(...) FARM_ASSERT_GT(__VA_ARGS__)
44 #define SOPHUS_ASSERT_LE(...) FARM_ASSERT_LE(__VA_ARGS__)
45 #define SOPHUS_ASSERT_LT(...) FARM_ASSERT_LT(__VA_ARGS__)
46 #define SOPHUS_ASSERT_NE(...) FARM_ASSERT_NE(__VA_ARGS__)
47 #define SOPHUS_ASSERT_NEAR(...) FARM_ASSERT_NEAR(__VA_ARGS__)
48 #define SOPHUS_AT(...) FARM_AT(__VA_ARGS__)
49 #define SOPHUS_INFO(...) FARM_INFO(__VA_ARGS__)
50 #define SOPHUS_PANIC(...) FARM_PANIC(__VA_ARGS__)
51 #define SOPHUS_UNIMPLEMENTED(...) FARM_UNIMPLEMENTED(__VA_ARGS__)
52 #define SOPHUS_UNWRAP(...) FARM_UNWRAP(__VA_ARGS__)
55 #define SOPHUS_TRY(...) FARM_TRY(__VA_ARGS__)
56 #define SOPHUS_ASSERT_OR_ERROR(...) FARM_ASSERT_OR_ERROR(__VA_ARGS__)
57 #define SOPHUS_UNEXPECTED(...) FARM_UNEXPECTED(__VA_ARGS__)
68 using ::farm_ng::Success;
72 template <
class TScalar>
79 static float const kEpsilonF64 = kEpsilon<double>;
81 template <
class TScalar>
83 kEpsilon<TScalar>*(TScalar(1.) + kEpsilon<TScalar>);
86 template <
class TScalar>
93 static float const kEpsilonSqrtF64 = kEpsilonSqrt<double>;
95 template <
class TScalar>
96 TScalar
const kPi = TScalar(3.141592653589793238462643383279502884);
100 template <
class TGenerator>
103 std::is_unsigned<typename TGenerator::result_type>::value &&
108 template <
class TGenerator>
constexpr bool AlwaysFalse
https://en.cppreference.com/w/cpp/utility/variant/visit
Definition: variant_utils.h:31
const float kEpsilonSqrt< float >
Definition: common.h:90
constexpr bool has_type_v
Definition: variant_utils.h:51
const TScalar kEpsilon
Definition: common.h:73
const double kPiF64
Definition: common.h:98
Image MutImage, owning images types.
Definition: num_diff.h:20
auto min(TPoint const &a, TPoint const &b) -> TPoint
Definition: vector_space.h:104
Overload(Ts...) -> Overload< Ts... >
constexpr bool kIsUniformRandomBitGeneratorV
Definition: common.h:109
const TScalar kEpsilonSqrt
Definition: common.h:87
const TScalar kEpsilonPlus
Definition: common.h:82
const float kPiF32
Definition: common.h:97
auto max(TPoint const &a, TPoint const &b) -> TPoint
Definition: vector_space.h:114
tl::expected< TT, TE > Expected
Definition: expected.h:37
const float kEpsilon< float >
Definition: common.h:76
const TScalar kPi
Definition: common.h:96