#ifndef vision_solver_mpc #define vision_solver_mpc #include #include "../convexMPC/common_types.h" #include "VisionMPC_interface.h" #include #include using Eigen::Matrix; using Eigen::Quaternionf; using Eigen::Quaterniond; template T vision_t_min(T a, T b) { if(a T vision_sq(T a) { return a*a; } void vision_solve_mpc(vision_mpc_update_data_t* update, vision_mpc_problem_setup* setup); void vision_quat_to_rpy(Quaternionf q, Matrix& rpy); void vision_ct_ss_mats(Matrix I_world, fpt m, Matrix r_feet, Matrix R_yaw, Matrix& A, Matrix& B); void vision_resize_qp_mats(s16 horizon); void vision_c2qp(Matrix Ac, Matrix Bc,fpt dt,s16 horizon); mfp* vision_get_q_soln(); #endif