10 #include <fmt/format.h>
50 virtual std::string ToString()
const;
53 static bool EigenVector3dFromJsonArray(Eigen::Vector3d &vec,
54 const Json::Value &value);
55 static bool EigenVector3dToJsonArray(
const Eigen::Vector3d &vec,
57 static bool EigenVector4dFromJsonArray(Eigen::Vector4d &vec,
58 const Json::Value &value);
59 static bool EigenVector4dToJsonArray(
const Eigen::Vector4d &vec,
61 static bool EigenMatrix3dFromJsonArray(Eigen::Matrix3d &mat,
62 const Json::Value &value);
63 static bool EigenMatrix3dToJsonArray(
const Eigen::Matrix3d &mat,
65 static bool EigenMatrix4dFromJsonArray(Eigen::Matrix4d &mat,
66 const Json::Value &value);
67 static bool EigenMatrix4dToJsonArray(
const Eigen::Matrix4d &mat,
70 const Json::Value &value);
74 const Json::Value &value);
78 const Json::Value &value);
88 struct formatter<Json::Value> {
89 template <
typename FormatContext>
90 auto format(
const Json::Value &value,
91 FormatContext &ctx)
const -> decltype(ctx.out()) {
92 return format_to(ctx.out(),
"{}",
96 template <
typename ParseContext>
97 constexpr
auto parse(ParseContext &ctx) -> decltype(ctx.begin()) {
virtual bool ConvertToJsonValue(Json::Value &value) const =0
virtual bool ConvertFromJsonValue(const Json::Value &value)=0
virtual ~IJsonConvertible()
Eigen::Matrix< double, 6, 6, Eigen::DontAlign > Matrix6d_u
Eigen::Matrix< double, 4, 4, Eigen::DontAlign > Matrix4d_u
Eigen::Matrix< double, 6, 6 > Matrix6d
Extending Eigen namespace by adding frequently used matrix type.
Json::Value StringToJson(const std::string &json_str)
Parse string and conver to Json::value. Throws exception if the conversion is invalid.
std::string JsonToString(const Json::Value &json)
Serialize a Json::Value to a string.
Generic file read and write utility for python interface.