#!/usr/bin/env python
PACKAGE = "linear_mpc"

from dynamic_reconfigure.parameter_generator_catkin import *

gen = ParameterGenerator()

gen.add("q_x",    double_t,    0, "Penality on x axis pos", 46.0 ,  0.001, 100.0)
gen.add("q_y",    double_t,    0, "Penality on y axis pos", 46.0 ,  0.001, 100.0)
gen.add("q_z",    double_t,    0, "Penality on z axis pos", 59.0 ,  0.001, 100.0)

gen.add("q_vx",    double_t,    0, "Penality on x axis vel", 1.0 ,  0.001, 100.0)
gen.add("q_vy",    double_t,    0, "Penality on y axis vel", 1.0 ,  0.001, 100.0)
gen.add("q_vz",    double_t,    0, "Penality on z axis vel", 1.0 ,  0.001, 100.0)

gen.add("q_final_x",    double_t,    0, "Penality on x axis final pos", 1.0 ,  0.001, 100.0)
gen.add("q_final_y",    double_t,    0, "Penality on y axis final pos", 1.0 ,  0.001, 100.0)
gen.add("q_final_z",    double_t,    0, "Penality on z axis final pos", 1.0 ,  0.001, 100.0)

gen.add("q_final_vx",    double_t,    0, "Penality on x axis final vel", 1.0 ,  0.001, 100.0)
gen.add("q_final_vy",    double_t,    0, "Penality on y axis final vel", 1.0 ,  0.001, 100.0)
gen.add("q_final_vz",    double_t,    0, "Penality on z axis final vel", 1.0 ,  0.001, 100.0)

gen.add("r_roll",     double_t,    0, "Penality on roll cmd", 50.0 ,  1.0, 100.0)
gen.add("r_pitch",    double_t,    0, "Penality on pitch cmd", 50.0 , 1.0, 100.0)
gen.add("r_thrust",   double_t,    0, "Penality on thrust cmd", 1.0 , 1.0, 100.0)

gen.add("roll_max",     double_t,    0, "max roll cmd [rad]", 0.45, 0.1, 1.0)
gen.add("pitch_max",    double_t,    0, "max pitch cmd [rad]", 0.45, 0.1, 1.0)
gen.add("thrust_min",   double_t,    0, "min thrust cmd [m/s2]", 1.25 ,  0.0, 15.0)
gen.add("thrust_max",   double_t,    0, "max thrust cmd [m/s2]", 13.25 ,  0.0, 15.0)

exit(gen.generate(PACKAGE, "Config", "LinearMPC"))
