#!/usr/bin/env python

# Copyright (C) 2017 Udacity Inc.
# All Rights Reserved.

PACKAGE = "position_controller"

from dynamic_reconfigure.parameter_generator_catkin import *
import math

gen = ParameterGenerator()

gen.add('use_dr_set_point', bool_t,   0, 'Use dynamic reconfig setpoint', False)
gen.add('set_point_x',      double_t, 0, 'Set Point: X',                  0.0, -240.0, 240.0)
gen.add('set_point_y',      double_t, 0, 'Set Point: Y',                  0.0, -240.0, 240.0)
gen.add('set_point_z',      double_t, 0, 'Set Point: Z',                  0.0,    0.0, 100.0)

gen.add('x_kp',     double_t, 0, 'X P',            0, 0, 100)
gen.add('x_ki',     double_t, 0, 'X I',            0, 0, 100)
gen.add('x_ki_max', double_t, 0, 'X Max Windup',   0, 0, 100)
gen.add('x_kd',     double_t, 0, 'X D',            0, 0, 100)

gen.add('y_kp',     double_t, 0, 'Y P',          0, 0, 100)
gen.add('y_ki',     double_t, 0, 'Y I',          0, 0, 100)
gen.add('y_ki_max', double_t, 0, 'Y Max Windup', 0, 0, 100)
gen.add('y_kd',     double_t, 0, 'Y D',          0, 0, 100)

gen.add('z_kp',     double_t, 0, 'Z P',          0, 0, 100)
gen.add('z_ki',     double_t, 0, 'Z I',          0, 0, 100)
gen.add('z_ki_max', double_t, 0, 'Z Max Windup', 0, 0, 100)
gen.add('z_kd',     double_t, 0, 'Z D',          0, 0, 100)

exit(gen.generate(PACKAGE, 'position_controller', 'position_controller_params'))
