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

from dynamic_reconfigure.parameter_generator_catkin import *

gen = ParameterGenerator()

# gen.add(name, type, level, description, [default, min, max])

# Accelerationd and deceleration parameters. Default, max and min are set by
# node.
gen.add("trans_accel", double_t, 0, "Translational acceleration (m/s^2)")
gen.add("trans_decel", double_t, 0, "Translational deceleration (m/s^2)")
gen.add("lat_accel"  , double_t, 0, "Lateral acceleration (m/s^2)")
gen.add("lat_decel"  , double_t, 0, "Lateral deceleration (m/s^2)")
gen.add("rot_accel"  , double_t, 0, "Rotational acceleration (rad/s^2)")
gen.add("rot_decel"  , double_t, 0, "Rotational deceleration (rad/s^2)")

# Robot calibration.
# Default values of 0 mean to not set, but to let robot controller use its internally stored calibration value.
gen.add("TicksMM"    , int_t, 0, "Encoder ticks/mm, or 0 to disable and use robot internal setting"                            , 0)
gen.add("DriftFactor", int_t, 0, "Value in 1/8192 increments to be added or " + 
                                 "subtracted from the left encoder ticks in " +
                                 "order to compensate for tire differences. Or " +
                                 "-99999 to disable and use robot internal setting"   , -99999)
gen.add("RevCount"   , int_t, 0, "The number of differential encoder ticks " + 
                                 "for a 180-degree revolution of the robot." +
                                 "Or 0 to disable and use robot internal setting."   , 0)

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