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

from dynamic_reconfigure.parameter_generator_catkin import *

gen = ParameterGenerator()

gen.add("weight_slope", double_t, 0, "Slope of the weighting of future states for MPC (no real units)", 1, -5, 5)
gen.add("weight_start", double_t, 0, "Y intercept of weight line", 10, 0, 100)

gen.add("rudders", int_t, 0, "Number of distinct rudders to consider", 8, 3, 100)
gen.add("throttles", int_t, 0, "Number of distinct throttles to consider", 4, 2, 10)

gen.add("distance_weight", double_t, 0, "Weight of Euclidean distance (in meters) in reference trajectory comparison",
        1, 0, 10)
gen.add("heading_weight", double_t, 0, "Weight of heading difference (in radians) in reference trajectory comparison",
        1, 0, 60)
gen.add("speed_weight", double_t, 0, "Weight of speed difference (in m/s) in reference trajectory comparison", 0, 0, 10)

gen.add("achievable_threshold", double_t, 0, "Score threshold below which the reference trajectory is considered " +
        "achievable. Score is the weighted sum distance, heading difference, and speed difference", 3, 0, 1000)

exit(gen.generate(PACKAGE, "mpc", "mpc"))
