#!/usr/bin/env python

from dynamic_reconfigure.parameter_generator_catkin import *

gen = ParameterGenerator()

#       Name                 Type  Reconf. level  Description                                Default    Min   Max
gen.add("output_frame_id",      str_t,     0,  "Frame id for the output laserscan.",         "camera_depth_frame")
gen.add("range_min",            double_t,  0,  "Minimum sensor range (m).",                  0.5, 0.1, 10.0)
gen.add("range_max",            double_t,  0,  "Maximum sensor range (m).",                  5.0, 0.5, 20.0)
gen.add("scan_height",          int_t,     0,  "Height of used part of depth img (px).",     440, 1, 460)
gen.add("depth_img_row_step",   int_t,     0,  "Row step in depth image processing (px).",   2, 1, 80)
gen.add("cam_model_update",     bool_t,    0,  "If continously camera data update.",         False)
gen.add("sensor_mount_height",  double_t,  0,  "Height of sensor optical center mount (m).", 0.4, 0.0, 10.0)
gen.add("sensor_tilt_angle",    double_t,  0,  "Sensor tilt angle (in degrees).",            0.0, -30.0, 30.0)
gen.add("ground_remove_en",     bool_t,    0,  "Remove ground from scan.",                   False)
gen.add("ground_margin",        double_t,  0,  "Ground margin (m).",                         0.05, 0.0, 0.5)
gen.add("tilt_compensation_en", bool_t,    0,  "Sensor tilt angle compensation.",            False)

exit(gen.generate("laserscan_kinect", "laserscan_kinect", "LaserscanKinect"))
