9 #ifndef expression_parser_h
10 #define expression_parser_h
15 #include <eigen3/Eigen/Dense>
41 void set_expressions(
const std::string ¶meters,
const std::string &expr_x,
42 const std::string &expr_y,
const std::string &expr_z)
const;
55 bool is_set()
const {
return duk_get_top(
ctx) == 1 && duk_is_function(
ctx, -1); }
75 Eigen::Vector3d
get_vector(
const Eigen::Ref<const Eigen::Vector3d> arg)
const;
80 Eigen::Vector3d
get_vector(
const Eigen::Ref<const Eigen::Vector3d> position,
81 const std::vector<std::string> ®ions)
const;
Definition: expression_parser.h:22
void define_global_function(const std::string &name, const std::string &js_function) const
Definition: expression_parser.cpp:81
bool is_set() const
Definition: expression_parser.h:55
Eigen::Vector3d compute_vector(int argument_count) const
Definition: expression_parser.cpp:114
double get_vector_component(int idx) const
Definition: expression_parser.cpp:100
double get_scalar(double arg) const
Definition: expression_parser.cpp:89
Eigen::Vector3d get_vector(double arg) const
Definition: expression_parser.cpp:125
int parameter_count() const
Definition: expression_parser.h:60
duk_context * ctx
Definition: expression_parser.h:104
void set_expressions(const std::string ¶meters, const std::string &expr_x, const std::string &expr_y, const std::string &expr_z) const
Definition: expression_parser.cpp:74
void die_if_error(duk_int_t err) const
Definition: expression_parser.cpp:54
void set_function(const std::string &js_function) const
Definition: expression_parser.cpp:62