94 changed files with 3424 additions and 354 deletions
@ -1,25 +1,42 @@ |
|||||
detect_targets |
detect_targets |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/__init__.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/__init__.py |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/__init__.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/__init__.py |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/msg/_control.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/msg/_control.py |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/msg/_component_centers.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/msg/_component_centers.py |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/msg/_component_centers.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/msg/_component_centers.py |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/msg/__init__.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/msg/__init__.py |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/msg/__init__.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/msg/__init__.py |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/msg/_component_center.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/msg/_component_center.py |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/cfg/__init__.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/cfg/__init__.py |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/cfg/__init__.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/cfg/__init__.py |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/cfg/TriangleParamConfig.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/cfg/TriangleParamConfig.py |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/cfg/DetectTargetsConfig.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/cfg/DetectTargetsConfig.py |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/python2.7/dist-packages/detect_targets/cfg/DetectTargetsConfig.py /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/python2.7/dist-packages/detect_targets/cfg/DetectTargetsConfig.py |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/pkgconfig/detect_targets.pc /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/pkgconfig/detect_targets.pc |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/lib/pkgconfig/detect_targets.pc /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/lib/pkgconfig/detect_targets.pc |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/DetectTargetsConfig.h /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/include/detect_targets/DetectTargetsConfig.h |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/DetectTargetsConfig.h /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/include/detect_targets/DetectTargetsConfig.h |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/component_centers.h /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/include/detect_targets/component_centers.h |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/component_centers.h /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/include/detect_targets/component_centers.h |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/control.h /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/include/detect_targets/control.h |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/TriangleParamConfig.h /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/include/detect_targets/TriangleParamConfig.h |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/component_center.h /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/include/detect_targets/component_center.h |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/DetectTargetsConfig-usage.dox /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/DetectTargetsConfig-usage.dox |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/DetectTargetsConfig-usage.dox /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/DetectTargetsConfig-usage.dox |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/TriangleParamConfig.wikidoc /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/TriangleParamConfig.wikidoc |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/DetectTargetsConfig.wikidoc /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/DetectTargetsConfig.wikidoc |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/DetectTargetsConfig.wikidoc /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/DetectTargetsConfig.wikidoc |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/TriangleParamConfig.dox /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/TriangleParamConfig.dox |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/DetectTargetsConfig.dox /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/DetectTargetsConfig.dox |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/DetectTargetsConfig.dox /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/DetectTargetsConfig.dox |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/TriangleParamConfig-usage.dox /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/docs/TriangleParamConfig-usage.dox |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targets-msg-extras.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targets-msg-extras.cmake |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targets-msg-extras.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targets-msg-extras.cmake |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targets-msg-paths.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targets-msg-paths.cmake |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targets-msg-paths.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targets-msg-paths.cmake |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targetsConfig.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targetsConfig.cmake |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targetsConfig.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targetsConfig.cmake |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targetsConfig-version.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targetsConfig-version.cmake |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/cmake/detect_targetsConfig-version.cmake /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/detect_targets/cmake/detect_targetsConfig-version.cmake |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/manifest.l /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/roseus/ros/detect_targets/manifest.l |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/manifest.l /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/roseus/ros/detect_targets/manifest.l |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/msg/control.l /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/roseus/ros/detect_targets/msg/control.l |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/msg/component_center.l /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/roseus/ros/detect_targets/msg/component_center.l |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/msg/component_centers.l /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/roseus/ros/detect_targets/msg/component_centers.l |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/msg/component_centers.l /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/roseus/ros/detect_targets/msg/component_centers.l |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/_index.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/_index.js |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/_index.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/_index.js |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/component_centers.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/msg/component_centers.js |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/component_centers.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/msg/component_centers.js |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/_index.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/msg/_index.js |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/_index.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/msg/_index.js |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/control.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/msg/control.js |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/component_center.js /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/gennodejs/ros/detect_targets/msg/component_center.js |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/control.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/control.lisp |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package_component_center.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/_package_component_center.lisp |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/_package.lisp |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/_package.lisp |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/component_centers.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/component_centers.lisp |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/component_centers.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/component_centers.lisp |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/detect_targets-msg.asd /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/detect_targets-msg.asd |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/detect_targets-msg.asd /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/detect_targets-msg.asd |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/component_center.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/component_center.lisp |
||||
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package_component_centers.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/_package_component_centers.lisp |
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package_component_centers.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/_package_component_centers.lisp |
||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package_control.lisp /home/klafyvel/Documents/supelec/2A/projet/workspace/devel/share/common-lisp/ros/detect_targets/msg/_package_control.lisp |
||||
|
|||||
@ -0,0 +1,11 @@ |
|||||
|
# The set of languages for which implicit dependencies are needed: |
||||
|
set(CMAKE_DEPENDS_LANGUAGES |
||||
|
) |
||||
|
# The set of files for implicit dependencies of each language: |
||||
|
|
||||
|
# Targets to which this target links. |
||||
|
set(CMAKE_TARGET_LINKED_INFO_FILES |
||||
|
) |
||||
|
|
||||
|
# Fortran module output directory. |
||||
|
set(CMAKE_Fortran_TARGET_MODULE_DIR "") |
||||
@ -0,0 +1,76 @@ |
|||||
|
# CMAKE generated file: DO NOT EDIT! |
||||
|
# Generated by "Unix Makefiles" Generator, CMake Version 3.10 |
||||
|
|
||||
|
# Delete rule output on recipe failure. |
||||
|
.DELETE_ON_ERROR: |
||||
|
|
||||
|
|
||||
|
#============================================================================= |
||||
|
# Special targets provided by cmake. |
||||
|
|
||||
|
# Disable implicit rules so canonical targets will work. |
||||
|
.SUFFIXES: |
||||
|
|
||||
|
|
||||
|
# Remove some rules from gmake that .SUFFIXES does not remove. |
||||
|
SUFFIXES = |
||||
|
|
||||
|
.SUFFIXES: .hpux_make_needs_suffix_list |
||||
|
|
||||
|
|
||||
|
# Suppress display of executed commands. |
||||
|
$(VERBOSE).SILENT: |
||||
|
|
||||
|
|
||||
|
# A target that is always out of date. |
||||
|
cmake_force: |
||||
|
|
||||
|
.PHONY : cmake_force |
||||
|
|
||||
|
#============================================================================= |
||||
|
# Set environment variables for the build. |
||||
|
|
||||
|
# The shell in which to execute make rules. |
||||
|
SHELL = /bin/sh |
||||
|
|
||||
|
# The CMake executable. |
||||
|
CMAKE_COMMAND = /usr/bin/cmake |
||||
|
|
||||
|
# The command to remove a file. |
||||
|
RM = /usr/bin/cmake -E remove -f |
||||
|
|
||||
|
# Escaping for special characters. |
||||
|
EQUALS = = |
||||
|
|
||||
|
# The top-level source directory on which CMake was run. |
||||
|
CMAKE_SOURCE_DIR = /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets |
||||
|
|
||||
|
# The top-level build directory on which CMake was run. |
||||
|
CMAKE_BINARY_DIR = /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets |
||||
|
|
||||
|
# Utility rule file for _detect_targets_generate_messages_check_deps_component_center. |
||||
|
|
||||
|
# Include the progress variables for this target. |
||||
|
include CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/progress.make |
||||
|
|
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_component_center: |
||||
|
catkin_generated/env_cached.sh /usr/bin/python2 /opt/ros/melodic/share/genmsg/cmake/../../../lib/genmsg/genmsg_check_deps.py detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/component_center.msg |
||||
|
|
||||
|
_detect_targets_generate_messages_check_deps_component_center: CMakeFiles/_detect_targets_generate_messages_check_deps_component_center |
||||
|
_detect_targets_generate_messages_check_deps_component_center: CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/build.make |
||||
|
|
||||
|
.PHONY : _detect_targets_generate_messages_check_deps_component_center |
||||
|
|
||||
|
# Rule to build all files generated by this target. |
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/build: _detect_targets_generate_messages_check_deps_component_center |
||||
|
|
||||
|
.PHONY : CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/build |
||||
|
|
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/clean: |
||||
|
$(CMAKE_COMMAND) -P CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/cmake_clean.cmake |
||||
|
.PHONY : CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/clean |
||||
|
|
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/depend: |
||||
|
cd /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets/CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/DependInfo.cmake --color=$(COLOR) |
||||
|
.PHONY : CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/depend |
||||
|
|
||||
@ -0,0 +1,8 @@ |
|||||
|
file(REMOVE_RECURSE |
||||
|
"CMakeFiles/_detect_targets_generate_messages_check_deps_component_center" |
||||
|
) |
||||
|
|
||||
|
# Per-language clean rules from dependency scanning. |
||||
|
foreach(lang ) |
||||
|
include(CMakeFiles/_detect_targets_generate_messages_check_deps_component_center.dir/cmake_clean_${lang}.cmake OPTIONAL) |
||||
|
endforeach() |
||||
@ -0,0 +1,3 @@ |
|||||
|
# CMAKE generated file: DO NOT EDIT! |
||||
|
# Generated by "Unix Makefiles" Generator, CMake Version 3.10 |
||||
|
|
||||
@ -0,0 +1,3 @@ |
|||||
|
# CMAKE generated file: DO NOT EDIT! |
||||
|
# Generated by "Unix Makefiles" Generator, CMake Version 3.10 |
||||
|
|
||||
@ -0,0 +1 @@ |
|||||
|
|
||||
@ -0,0 +1,11 @@ |
|||||
|
# The set of languages for which implicit dependencies are needed: |
||||
|
set(CMAKE_DEPENDS_LANGUAGES |
||||
|
) |
||||
|
# The set of files for implicit dependencies of each language: |
||||
|
|
||||
|
# Targets to which this target links. |
||||
|
set(CMAKE_TARGET_LINKED_INFO_FILES |
||||
|
) |
||||
|
|
||||
|
# Fortran module output directory. |
||||
|
set(CMAKE_Fortran_TARGET_MODULE_DIR "") |
||||
@ -0,0 +1,76 @@ |
|||||
|
# CMAKE generated file: DO NOT EDIT! |
||||
|
# Generated by "Unix Makefiles" Generator, CMake Version 3.10 |
||||
|
|
||||
|
# Delete rule output on recipe failure. |
||||
|
.DELETE_ON_ERROR: |
||||
|
|
||||
|
|
||||
|
#============================================================================= |
||||
|
# Special targets provided by cmake. |
||||
|
|
||||
|
# Disable implicit rules so canonical targets will work. |
||||
|
.SUFFIXES: |
||||
|
|
||||
|
|
||||
|
# Remove some rules from gmake that .SUFFIXES does not remove. |
||||
|
SUFFIXES = |
||||
|
|
||||
|
.SUFFIXES: .hpux_make_needs_suffix_list |
||||
|
|
||||
|
|
||||
|
# Suppress display of executed commands. |
||||
|
$(VERBOSE).SILENT: |
||||
|
|
||||
|
|
||||
|
# A target that is always out of date. |
||||
|
cmake_force: |
||||
|
|
||||
|
.PHONY : cmake_force |
||||
|
|
||||
|
#============================================================================= |
||||
|
# Set environment variables for the build. |
||||
|
|
||||
|
# The shell in which to execute make rules. |
||||
|
SHELL = /bin/sh |
||||
|
|
||||
|
# The CMake executable. |
||||
|
CMAKE_COMMAND = /usr/bin/cmake |
||||
|
|
||||
|
# The command to remove a file. |
||||
|
RM = /usr/bin/cmake -E remove -f |
||||
|
|
||||
|
# Escaping for special characters. |
||||
|
EQUALS = = |
||||
|
|
||||
|
# The top-level source directory on which CMake was run. |
||||
|
CMAKE_SOURCE_DIR = /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets |
||||
|
|
||||
|
# The top-level build directory on which CMake was run. |
||||
|
CMAKE_BINARY_DIR = /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets |
||||
|
|
||||
|
# Utility rule file for _detect_targets_generate_messages_check_deps_control. |
||||
|
|
||||
|
# Include the progress variables for this target. |
||||
|
include CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/progress.make |
||||
|
|
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_control: |
||||
|
catkin_generated/env_cached.sh /usr/bin/python2 /opt/ros/melodic/share/genmsg/cmake/../../../lib/genmsg/genmsg_check_deps.py detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/control.msg |
||||
|
|
||||
|
_detect_targets_generate_messages_check_deps_control: CMakeFiles/_detect_targets_generate_messages_check_deps_control |
||||
|
_detect_targets_generate_messages_check_deps_control: CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/build.make |
||||
|
|
||||
|
.PHONY : _detect_targets_generate_messages_check_deps_control |
||||
|
|
||||
|
# Rule to build all files generated by this target. |
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/build: _detect_targets_generate_messages_check_deps_control |
||||
|
|
||||
|
.PHONY : CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/build |
||||
|
|
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/clean: |
||||
|
$(CMAKE_COMMAND) -P CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/cmake_clean.cmake |
||||
|
.PHONY : CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/clean |
||||
|
|
||||
|
CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/depend: |
||||
|
cd /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets /home/klafyvel/Documents/supelec/2A/projet/workspace/build/detect_targets/CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/DependInfo.cmake --color=$(COLOR) |
||||
|
.PHONY : CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/depend |
||||
|
|
||||
@ -0,0 +1,8 @@ |
|||||
|
file(REMOVE_RECURSE |
||||
|
"CMakeFiles/_detect_targets_generate_messages_check_deps_control" |
||||
|
) |
||||
|
|
||||
|
# Per-language clean rules from dependency scanning. |
||||
|
foreach(lang ) |
||||
|
include(CMakeFiles/_detect_targets_generate_messages_check_deps_control.dir/cmake_clean_${lang}.cmake OPTIONAL) |
||||
|
endforeach() |
||||
@ -0,0 +1,3 @@ |
|||||
|
# CMAKE generated file: DO NOT EDIT! |
||||
|
# Generated by "Unix Makefiles" Generator, CMake Version 3.10 |
||||
|
|
||||
@ -0,0 +1,3 @@ |
|||||
|
# CMAKE generated file: DO NOT EDIT! |
||||
|
# Generated by "Unix Makefiles" Generator, CMake Version 3.10 |
||||
|
|
||||
@ -0,0 +1 @@ |
|||||
|
|
||||
@ -1,2 +1,3 @@ |
|||||
CMAKE_PROGRESS_1 = 1 |
CMAKE_PROGRESS_1 = 1 |
||||
|
CMAKE_PROGRESS_2 = 2 |
||||
|
|
||||
|
|||||
@ -1,2 +1,4 @@ |
|||||
CMAKE_PROGRESS_1 = 2 |
CMAKE_PROGRESS_1 = 3 |
||||
|
CMAKE_PROGRESS_2 = 4 |
||||
|
CMAKE_PROGRESS_3 = 5 |
||||
|
|
||||
|
|||||
@ -1,3 +1,5 @@ |
|||||
CMAKE_PROGRESS_1 = 3 |
CMAKE_PROGRESS_1 = 6 |
||||
CMAKE_PROGRESS_2 = 4 |
CMAKE_PROGRESS_2 = 7 |
||||
|
CMAKE_PROGRESS_3 = 8 |
||||
|
CMAKE_PROGRESS_4 = 9 |
||||
|
|
||||
|
|||||
@ -1,2 +1,4 @@ |
|||||
CMAKE_PROGRESS_1 = 5 |
CMAKE_PROGRESS_1 = 10 |
||||
|
CMAKE_PROGRESS_2 = 11 |
||||
|
CMAKE_PROGRESS_3 = 12 |
||||
|
|
||||
|
|||||
@ -1,2 +1,4 @@ |
|||||
CMAKE_PROGRESS_1 = 6 |
CMAKE_PROGRESS_1 = 13 |
||||
|
CMAKE_PROGRESS_2 = 14 |
||||
|
CMAKE_PROGRESS_3 = 15 |
||||
|
|
||||
|
|||||
@ -1,3 +1,5 @@ |
|||||
CMAKE_PROGRESS_1 = 7 |
CMAKE_PROGRESS_1 = 16 |
||||
CMAKE_PROGRESS_2 = 8 |
CMAKE_PROGRESS_2 = 17 |
||||
|
CMAKE_PROGRESS_3 = 18 |
||||
|
CMAKE_PROGRESS_4 = 19 |
||||
|
|
||||
|
|||||
@ -1 +1 @@ |
|||||
8 |
19 |
||||
|
|||||
@ -1,2 +1,2 @@ |
|||||
set(detect_targets_MESSAGE_FILES "/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/component_centers.msg") |
set(detect_targets_MESSAGE_FILES "/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/component_centers.msg;/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/component_center.msg;/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/control.msg") |
||||
set(detect_targets_SERVICE_FILES "") |
set(detect_targets_SERVICE_FILES "") |
||||
|
|||||
@ -1,2 +1,2 @@ |
|||||
set(detect_targets_MESSAGE_FILES "msg/component_centers.msg") |
set(detect_targets_MESSAGE_FILES "msg/component_centers.msg;msg/component_center.msg;msg/control.msg") |
||||
set(detect_targets_SERVICE_FILES "") |
set(detect_targets_SERVICE_FILES "") |
||||
|
|||||
@ -1,2 +1,2 @@ |
|||||
set(detect_targets_MESSAGE_FILES "msg/component_centers.msg") |
set(detect_targets_MESSAGE_FILES "msg/component_centers.msg;msg/component_center.msg;msg/control.msg") |
||||
set(detect_targets_SERVICE_FILES "") |
set(detect_targets_SERVICE_FILES "") |
||||
|
|||||
@ -1,4 +1,4 @@ |
|||||
CMAKE_PROGRESS_1 = 9 |
CMAKE_PROGRESS_1 = 20 |
||||
CMAKE_PROGRESS_2 = 10 |
CMAKE_PROGRESS_2 = 21 |
||||
CMAKE_PROGRESS_3 = 11 |
CMAKE_PROGRESS_3 = 22 |
||||
|
|
||||
|
|||||
@ -1,5 +1,5 @@ |
|||||
CMAKE_PROGRESS_1 = 12 |
CMAKE_PROGRESS_1 = 23 |
||||
CMAKE_PROGRESS_2 = 13 |
CMAKE_PROGRESS_2 = 24 |
||||
CMAKE_PROGRESS_3 = 14 |
CMAKE_PROGRESS_3 = 25 |
||||
CMAKE_PROGRESS_4 = 15 |
CMAKE_PROGRESS_4 = 26 |
||||
|
|
||||
|
|||||
@ -1,3 +1,3 @@ |
|||||
CMAKE_PROGRESS_1 = 16 |
CMAKE_PROGRESS_1 = 27 |
||||
CMAKE_PROGRESS_2 = 17 |
CMAKE_PROGRESS_2 = 28 |
||||
|
|
||||
|
|||||
@ -1,3 +1,3 @@ |
|||||
CMAKE_PROGRESS_1 = 18 |
CMAKE_PROGRESS_1 = 29 |
||||
CMAKE_PROGRESS_2 = 19 |
CMAKE_PROGRESS_2 = 30 |
||||
|
|
||||
|
|||||
@ -0,0 +1,767 @@ |
|||||
|
//#line 2 "/opt/ros/melodic/share/dynamic_reconfigure/cmake/../templates/ConfigType.h.template"
|
||||
|
// *********************************************************
|
||||
|
//
|
||||
|
// File autogenerated for the detect_targets package
|
||||
|
// by the dynamic_reconfigure package.
|
||||
|
// Please do not edit.
|
||||
|
//
|
||||
|
// ********************************************************/
|
||||
|
|
||||
|
#ifndef __detect_targets__TRIANGLEPARAMCONFIG_H__ |
||||
|
#define __detect_targets__TRIANGLEPARAMCONFIG_H__ |
||||
|
|
||||
|
#if __cplusplus >= 201103L |
||||
|
#define DYNAMIC_RECONFIGURE_FINAL final |
||||
|
#else |
||||
|
#define DYNAMIC_RECONFIGURE_FINAL |
||||
|
#endif |
||||
|
|
||||
|
#include <dynamic_reconfigure/config_tools.h> |
||||
|
#include <limits> |
||||
|
#include <ros/node_handle.h> |
||||
|
#include <dynamic_reconfigure/ConfigDescription.h> |
||||
|
#include <dynamic_reconfigure/ParamDescription.h> |
||||
|
#include <dynamic_reconfigure/Group.h> |
||||
|
#include <dynamic_reconfigure/config_init_mutex.h> |
||||
|
#include <boost/any.hpp> |
||||
|
|
||||
|
namespace detect_targets |
||||
|
{ |
||||
|
class TriangleParamConfigStatics; |
||||
|
|
||||
|
class TriangleParamConfig |
||||
|
{ |
||||
|
public: |
||||
|
class AbstractParamDescription : public dynamic_reconfigure::ParamDescription |
||||
|
{ |
||||
|
public: |
||||
|
AbstractParamDescription(std::string n, std::string t, uint32_t l, |
||||
|
std::string d, std::string e) |
||||
|
{ |
||||
|
name = n; |
||||
|
type = t; |
||||
|
level = l; |
||||
|
description = d; |
||||
|
edit_method = e; |
||||
|
} |
||||
|
|
||||
|
virtual void clamp(TriangleParamConfig &config, const TriangleParamConfig &max, const TriangleParamConfig &min) const = 0; |
||||
|
virtual void calcLevel(uint32_t &level, const TriangleParamConfig &config1, const TriangleParamConfig &config2) const = 0; |
||||
|
virtual void fromServer(const ros::NodeHandle &nh, TriangleParamConfig &config) const = 0; |
||||
|
virtual void toServer(const ros::NodeHandle &nh, const TriangleParamConfig &config) const = 0; |
||||
|
virtual bool fromMessage(const dynamic_reconfigure::Config &msg, TriangleParamConfig &config) const = 0; |
||||
|
virtual void toMessage(dynamic_reconfigure::Config &msg, const TriangleParamConfig &config) const = 0; |
||||
|
virtual void getValue(const TriangleParamConfig &config, boost::any &val) const = 0; |
||||
|
}; |
||||
|
|
||||
|
typedef boost::shared_ptr<AbstractParamDescription> AbstractParamDescriptionPtr; |
||||
|
typedef boost::shared_ptr<const AbstractParamDescription> AbstractParamDescriptionConstPtr; |
||||
|
|
||||
|
// Final keyword added to class because it has virtual methods and inherits
|
||||
|
// from a class with a non-virtual destructor.
|
||||
|
template <class T> |
||||
|
class ParamDescription DYNAMIC_RECONFIGURE_FINAL : public AbstractParamDescription |
||||
|
{ |
||||
|
public: |
||||
|
ParamDescription(std::string a_name, std::string a_type, uint32_t a_level, |
||||
|
std::string a_description, std::string a_edit_method, T TriangleParamConfig::* a_f) : |
||||
|
AbstractParamDescription(a_name, a_type, a_level, a_description, a_edit_method), |
||||
|
field(a_f) |
||||
|
{} |
||||
|
|
||||
|
T (TriangleParamConfig::* field); |
||||
|
|
||||
|
virtual void clamp(TriangleParamConfig &config, const TriangleParamConfig &max, const TriangleParamConfig &min) const |
||||
|
{ |
||||
|
if (config.*field > max.*field) |
||||
|
config.*field = max.*field; |
||||
|
|
||||
|
if (config.*field < min.*field) |
||||
|
config.*field = min.*field; |
||||
|
} |
||||
|
|
||||
|
virtual void calcLevel(uint32_t &comb_level, const TriangleParamConfig &config1, const TriangleParamConfig &config2) const |
||||
|
{ |
||||
|
if (config1.*field != config2.*field) |
||||
|
comb_level |= level; |
||||
|
} |
||||
|
|
||||
|
virtual void fromServer(const ros::NodeHandle &nh, TriangleParamConfig &config) const |
||||
|
{ |
||||
|
nh.getParam(name, config.*field); |
||||
|
} |
||||
|
|
||||
|
virtual void toServer(const ros::NodeHandle &nh, const TriangleParamConfig &config) const |
||||
|
{ |
||||
|
nh.setParam(name, config.*field); |
||||
|
} |
||||
|
|
||||
|
virtual bool fromMessage(const dynamic_reconfigure::Config &msg, TriangleParamConfig &config) const |
||||
|
{ |
||||
|
return dynamic_reconfigure::ConfigTools::getParameter(msg, name, config.*field); |
||||
|
} |
||||
|
|
||||
|
virtual void toMessage(dynamic_reconfigure::Config &msg, const TriangleParamConfig &config) const |
||||
|
{ |
||||
|
dynamic_reconfigure::ConfigTools::appendParameter(msg, name, config.*field); |
||||
|
} |
||||
|
|
||||
|
virtual void getValue(const TriangleParamConfig &config, boost::any &val) const |
||||
|
{ |
||||
|
val = config.*field; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
class AbstractGroupDescription : public dynamic_reconfigure::Group |
||||
|
{ |
||||
|
public: |
||||
|
AbstractGroupDescription(std::string n, std::string t, int p, int i, bool s) |
||||
|
{ |
||||
|
name = n; |
||||
|
type = t; |
||||
|
parent = p; |
||||
|
state = s; |
||||
|
id = i; |
||||
|
} |
||||
|
|
||||
|
std::vector<AbstractParamDescriptionConstPtr> abstract_parameters; |
||||
|
bool state; |
||||
|
|
||||
|
virtual void toMessage(dynamic_reconfigure::Config &msg, const boost::any &config) const = 0; |
||||
|
virtual bool fromMessage(const dynamic_reconfigure::Config &msg, boost::any &config) const =0; |
||||
|
virtual void updateParams(boost::any &cfg, TriangleParamConfig &top) const= 0; |
||||
|
virtual void setInitialState(boost::any &cfg) const = 0; |
||||
|
|
||||
|
|
||||
|
void convertParams() |
||||
|
{ |
||||
|
for(std::vector<AbstractParamDescriptionConstPtr>::const_iterator i = abstract_parameters.begin(); i != abstract_parameters.end(); ++i) |
||||
|
{ |
||||
|
parameters.push_back(dynamic_reconfigure::ParamDescription(**i)); |
||||
|
} |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
typedef boost::shared_ptr<AbstractGroupDescription> AbstractGroupDescriptionPtr; |
||||
|
typedef boost::shared_ptr<const AbstractGroupDescription> AbstractGroupDescriptionConstPtr; |
||||
|
|
||||
|
// Final keyword added to class because it has virtual methods and inherits
|
||||
|
// from a class with a non-virtual destructor.
|
||||
|
template<class T, class PT> |
||||
|
class GroupDescription DYNAMIC_RECONFIGURE_FINAL : public AbstractGroupDescription |
||||
|
{ |
||||
|
public: |
||||
|
GroupDescription(std::string a_name, std::string a_type, int a_parent, int a_id, bool a_s, T PT::* a_f) : AbstractGroupDescription(a_name, a_type, a_parent, a_id, a_s), field(a_f) |
||||
|
{ |
||||
|
} |
||||
|
|
||||
|
GroupDescription(const GroupDescription<T, PT>& g): AbstractGroupDescription(g.name, g.type, g.parent, g.id, g.state), field(g.field), groups(g.groups) |
||||
|
{ |
||||
|
parameters = g.parameters; |
||||
|
abstract_parameters = g.abstract_parameters; |
||||
|
} |
||||
|
|
||||
|
virtual bool fromMessage(const dynamic_reconfigure::Config &msg, boost::any &cfg) const |
||||
|
{ |
||||
|
PT* config = boost::any_cast<PT*>(cfg); |
||||
|
if(!dynamic_reconfigure::ConfigTools::getGroupState(msg, name, (*config).*field)) |
||||
|
return false; |
||||
|
|
||||
|
for(std::vector<AbstractGroupDescriptionConstPtr>::const_iterator i = groups.begin(); i != groups.end(); ++i) |
||||
|
{ |
||||
|
boost::any n = &((*config).*field); |
||||
|
if(!(*i)->fromMessage(msg, n)) |
||||
|
return false; |
||||
|
} |
||||
|
|
||||
|
return true; |
||||
|
} |
||||
|
|
||||
|
virtual void setInitialState(boost::any &cfg) const |
||||
|
{ |
||||
|
PT* config = boost::any_cast<PT*>(cfg); |
||||
|
T* group = &((*config).*field); |
||||
|
group->state = state; |
||||
|
|
||||
|
for(std::vector<AbstractGroupDescriptionConstPtr>::const_iterator i = groups.begin(); i != groups.end(); ++i) |
||||
|
{ |
||||
|
boost::any n = boost::any(&((*config).*field)); |
||||
|
(*i)->setInitialState(n); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
virtual void updateParams(boost::any &cfg, TriangleParamConfig &top) const |
||||
|
{ |
||||
|
PT* config = boost::any_cast<PT*>(cfg); |
||||
|
|
||||
|
T* f = &((*config).*field); |
||||
|
f->setParams(top, abstract_parameters); |
||||
|
|
||||
|
for(std::vector<AbstractGroupDescriptionConstPtr>::const_iterator i = groups.begin(); i != groups.end(); ++i) |
||||
|
{ |
||||
|
boost::any n = &((*config).*field); |
||||
|
(*i)->updateParams(n, top); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
virtual void toMessage(dynamic_reconfigure::Config &msg, const boost::any &cfg) const |
||||
|
{ |
||||
|
const PT config = boost::any_cast<PT>(cfg); |
||||
|
dynamic_reconfigure::ConfigTools::appendGroup<T>(msg, name, id, parent, config.*field); |
||||
|
|
||||
|
for(std::vector<AbstractGroupDescriptionConstPtr>::const_iterator i = groups.begin(); i != groups.end(); ++i) |
||||
|
{ |
||||
|
(*i)->toMessage(msg, config.*field); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
T (PT::* field); |
||||
|
std::vector<TriangleParamConfig::AbstractGroupDescriptionConstPtr> groups; |
||||
|
}; |
||||
|
|
||||
|
class DEFAULT |
||||
|
{ |
||||
|
public: |
||||
|
DEFAULT() |
||||
|
{ |
||||
|
state = true; |
||||
|
name = "Default"; |
||||
|
} |
||||
|
|
||||
|
void setParams(TriangleParamConfig &config, const std::vector<AbstractParamDescriptionConstPtr> params) |
||||
|
{ |
||||
|
for (std::vector<AbstractParamDescriptionConstPtr>::const_iterator _i = params.begin(); _i != params.end(); ++_i) |
||||
|
{ |
||||
|
boost::any val; |
||||
|
(*_i)->getValue(config, val); |
||||
|
|
||||
|
if("camera_angle"==(*_i)->name){camera_angle = boost::any_cast<double>(val);} |
||||
|
if("target_width"==(*_i)->name){target_width = boost::any_cast<double>(val);} |
||||
|
if("target_depth"==(*_i)->name){target_depth = boost::any_cast<double>(val);} |
||||
|
if("distance_to_target"==(*_i)->name){distance_to_target = boost::any_cast<double>(val);} |
||||
|
if("max_speed"==(*_i)->name){max_speed = boost::any_cast<double>(val);} |
||||
|
if("linear_x_Kp"==(*_i)->name){linear_x_Kp = boost::any_cast<double>(val);} |
||||
|
if("linear_x_Ki"==(*_i)->name){linear_x_Ki = boost::any_cast<double>(val);} |
||||
|
if("linear_x_Kd"==(*_i)->name){linear_x_Kd = boost::any_cast<double>(val);} |
||||
|
if("control_linear_x"==(*_i)->name){control_linear_x = boost::any_cast<bool>(val);} |
||||
|
if("linear_y_Kp"==(*_i)->name){linear_y_Kp = boost::any_cast<double>(val);} |
||||
|
if("linear_y_Ki"==(*_i)->name){linear_y_Ki = boost::any_cast<double>(val);} |
||||
|
if("linear_y_Kd"==(*_i)->name){linear_y_Kd = boost::any_cast<double>(val);} |
||||
|
if("control_linear_y"==(*_i)->name){control_linear_y = boost::any_cast<bool>(val);} |
||||
|
if("linear_z_Kp"==(*_i)->name){linear_z_Kp = boost::any_cast<double>(val);} |
||||
|
if("linear_z_Ki"==(*_i)->name){linear_z_Ki = boost::any_cast<double>(val);} |
||||
|
if("linear_z_Kd"==(*_i)->name){linear_z_Kd = boost::any_cast<double>(val);} |
||||
|
if("control_linear_z"==(*_i)->name){control_linear_z = boost::any_cast<bool>(val);} |
||||
|
if("angular_z_Kp"==(*_i)->name){angular_z_Kp = boost::any_cast<double>(val);} |
||||
|
if("angular_z_Ki"==(*_i)->name){angular_z_Ki = boost::any_cast<double>(val);} |
||||
|
if("angular_z_Kd"==(*_i)->name){angular_z_Kd = boost::any_cast<double>(val);} |
||||
|
if("control_angular_z"==(*_i)->name){control_angular_z = boost::any_cast<bool>(val);} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
double camera_angle; |
||||
|
double target_width; |
||||
|
double target_depth; |
||||
|
double distance_to_target; |
||||
|
double max_speed; |
||||
|
double linear_x_Kp; |
||||
|
double linear_x_Ki; |
||||
|
double linear_x_Kd; |
||||
|
bool control_linear_x; |
||||
|
double linear_y_Kp; |
||||
|
double linear_y_Ki; |
||||
|
double linear_y_Kd; |
||||
|
bool control_linear_y; |
||||
|
double linear_z_Kp; |
||||
|
double linear_z_Ki; |
||||
|
double linear_z_Kd; |
||||
|
bool control_linear_z; |
||||
|
double angular_z_Kp; |
||||
|
double angular_z_Ki; |
||||
|
double angular_z_Kd; |
||||
|
bool control_angular_z; |
||||
|
|
||||
|
bool state; |
||||
|
std::string name; |
||||
|
|
||||
|
|
||||
|
}groups; |
||||
|
|
||||
|
|
||||
|
|
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double camera_angle; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double target_width; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double target_depth; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double distance_to_target; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double max_speed; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_x_Kp; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_x_Ki; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_x_Kd; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
bool control_linear_x; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_y_Kp; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_y_Ki; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_y_Kd; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
bool control_linear_y; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_z_Kp; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_z_Ki; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double linear_z_Kd; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
bool control_linear_z; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double angular_z_Kp; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double angular_z_Ki; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
double angular_z_Kd; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
bool control_angular_z; |
||||
|
//#line 228 "/opt/ros/melodic/share/dynamic_reconfigure/cmake/../templates/ConfigType.h.template"
|
||||
|
|
||||
|
bool __fromMessage__(dynamic_reconfigure::Config &msg) |
||||
|
{ |
||||
|
const std::vector<AbstractParamDescriptionConstPtr> &__param_descriptions__ = __getParamDescriptions__(); |
||||
|
const std::vector<AbstractGroupDescriptionConstPtr> &__group_descriptions__ = __getGroupDescriptions__(); |
||||
|
|
||||
|
int count = 0; |
||||
|
for (std::vector<AbstractParamDescriptionConstPtr>::const_iterator i = __param_descriptions__.begin(); i != __param_descriptions__.end(); ++i) |
||||
|
if ((*i)->fromMessage(msg, *this)) |
||||
|
count++; |
||||
|
|
||||
|
for (std::vector<AbstractGroupDescriptionConstPtr>::const_iterator i = __group_descriptions__.begin(); i != __group_descriptions__.end(); i ++) |
||||
|
{ |
||||
|
if ((*i)->id == 0) |
||||
|
{ |
||||
|
boost::any n = boost::any(this); |
||||
|
(*i)->updateParams(n, *this); |
||||
|
(*i)->fromMessage(msg, n); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
if (count != dynamic_reconfigure::ConfigTools::size(msg)) |
||||
|
{ |
||||
|
ROS_ERROR("TriangleParamConfig::__fromMessage__ called with an unexpected parameter."); |
||||
|
ROS_ERROR("Booleans:"); |
||||
|
for (unsigned int i = 0; i < msg.bools.size(); i++) |
||||
|
ROS_ERROR(" %s", msg.bools[i].name.c_str()); |
||||
|
ROS_ERROR("Integers:"); |
||||
|
for (unsigned int i = 0; i < msg.ints.size(); i++) |
||||
|
ROS_ERROR(" %s", msg.ints[i].name.c_str()); |
||||
|
ROS_ERROR("Doubles:"); |
||||
|
for (unsigned int i = 0; i < msg.doubles.size(); i++) |
||||
|
ROS_ERROR(" %s", msg.doubles[i].name.c_str()); |
||||
|
ROS_ERROR("Strings:"); |
||||
|
for (unsigned int i = 0; i < msg.strs.size(); i++) |
||||
|
ROS_ERROR(" %s", msg.strs[i].name.c_str()); |
||||
|
// @todo Check that there are no duplicates. Make this error more
|
||||
|
// explicit.
|
||||
|
return false; |
||||
|
} |
||||
|
return true; |
||||
|
} |
||||
|
|
||||
|
// This version of __toMessage__ is used during initialization of
|
||||
|
// statics when __getParamDescriptions__ can't be called yet.
|
||||
|
void __toMessage__(dynamic_reconfigure::Config &msg, const std::vector<AbstractParamDescriptionConstPtr> &__param_descriptions__, const std::vector<AbstractGroupDescriptionConstPtr> &__group_descriptions__) const |
||||
|
{ |
||||
|
dynamic_reconfigure::ConfigTools::clear(msg); |
||||
|
for (std::vector<AbstractParamDescriptionConstPtr>::const_iterator i = __param_descriptions__.begin(); i != __param_descriptions__.end(); ++i) |
||||
|
(*i)->toMessage(msg, *this); |
||||
|
|
||||
|
for (std::vector<AbstractGroupDescriptionConstPtr>::const_iterator i = __group_descriptions__.begin(); i != __group_descriptions__.end(); ++i) |
||||
|
{ |
||||
|
if((*i)->id == 0) |
||||
|
{ |
||||
|
(*i)->toMessage(msg, *this); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
void __toMessage__(dynamic_reconfigure::Config &msg) const |
||||
|
{ |
||||
|
const std::vector<AbstractParamDescriptionConstPtr> &__param_descriptions__ = __getParamDescriptions__(); |
||||
|
const std::vector<AbstractGroupDescriptionConstPtr> &__group_descriptions__ = __getGroupDescriptions__(); |
||||
|
__toMessage__(msg, __param_descriptions__, __group_descriptions__); |
||||
|
} |
||||
|
|
||||
|
void __toServer__(const ros::NodeHandle &nh) const |
||||
|
{ |
||||
|
const std::vector<AbstractParamDescriptionConstPtr> &__param_descriptions__ = __getParamDescriptions__(); |
||||
|
for (std::vector<AbstractParamDescriptionConstPtr>::const_iterator i = __param_descriptions__.begin(); i != __param_descriptions__.end(); ++i) |
||||
|
(*i)->toServer(nh, *this); |
||||
|
} |
||||
|
|
||||
|
void __fromServer__(const ros::NodeHandle &nh) |
||||
|
{ |
||||
|
static bool setup=false; |
||||
|
|
||||
|
const std::vector<AbstractParamDescriptionConstPtr> &__param_descriptions__ = __getParamDescriptions__(); |
||||
|
for (std::vector<AbstractParamDescriptionConstPtr>::const_iterator i = __param_descriptions__.begin(); i != __param_descriptions__.end(); ++i) |
||||
|
(*i)->fromServer(nh, *this); |
||||
|
|
||||
|
const std::vector<AbstractGroupDescriptionConstPtr> &__group_descriptions__ = __getGroupDescriptions__(); |
||||
|
for (std::vector<AbstractGroupDescriptionConstPtr>::const_iterator i = __group_descriptions__.begin(); i != __group_descriptions__.end(); i++){ |
||||
|
if (!setup && (*i)->id == 0) { |
||||
|
setup = true; |
||||
|
boost::any n = boost::any(this); |
||||
|
(*i)->setInitialState(n); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
void __clamp__() |
||||
|
{ |
||||
|
const std::vector<AbstractParamDescriptionConstPtr> &__param_descriptions__ = __getParamDescriptions__(); |
||||
|
const TriangleParamConfig &__max__ = __getMax__(); |
||||
|
const TriangleParamConfig &__min__ = __getMin__(); |
||||
|
for (std::vector<AbstractParamDescriptionConstPtr>::const_iterator i = __param_descriptions__.begin(); i != __param_descriptions__.end(); ++i) |
||||
|
(*i)->clamp(*this, __max__, __min__); |
||||
|
} |
||||
|
|
||||
|
uint32_t __level__(const TriangleParamConfig &config) const |
||||
|
{ |
||||
|
const std::vector<AbstractParamDescriptionConstPtr> &__param_descriptions__ = __getParamDescriptions__(); |
||||
|
uint32_t level = 0; |
||||
|
for (std::vector<AbstractParamDescriptionConstPtr>::const_iterator i = __param_descriptions__.begin(); i != __param_descriptions__.end(); ++i) |
||||
|
(*i)->calcLevel(level, config, *this); |
||||
|
return level; |
||||
|
} |
||||
|
|
||||
|
static const dynamic_reconfigure::ConfigDescription &__getDescriptionMessage__(); |
||||
|
static const TriangleParamConfig &__getDefault__(); |
||||
|
static const TriangleParamConfig &__getMax__(); |
||||
|
static const TriangleParamConfig &__getMin__(); |
||||
|
static const std::vector<AbstractParamDescriptionConstPtr> &__getParamDescriptions__(); |
||||
|
static const std::vector<AbstractGroupDescriptionConstPtr> &__getGroupDescriptions__(); |
||||
|
|
||||
|
private: |
||||
|
static const TriangleParamConfigStatics *__get_statics__(); |
||||
|
}; |
||||
|
|
||||
|
template <> // Max and min are ignored for strings.
|
||||
|
inline void TriangleParamConfig::ParamDescription<std::string>::clamp(TriangleParamConfig &config, const TriangleParamConfig &max, const TriangleParamConfig &min) const |
||||
|
{ |
||||
|
(void) config; |
||||
|
(void) min; |
||||
|
(void) max; |
||||
|
return; |
||||
|
} |
||||
|
|
||||
|
class TriangleParamConfigStatics |
||||
|
{ |
||||
|
friend class TriangleParamConfig; |
||||
|
|
||||
|
TriangleParamConfigStatics() |
||||
|
{ |
||||
|
TriangleParamConfig::GroupDescription<TriangleParamConfig::DEFAULT, TriangleParamConfig> Default("Default", "", 0, 0, true, &TriangleParamConfig::groups); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.camera_angle = 50.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.camera_angle = 180.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.camera_angle = 80.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("camera_angle", "double", 0, "The angle corresponding to the image width", "", &TriangleParamConfig::camera_angle))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("camera_angle", "double", 0, "The angle corresponding to the image width", "", &TriangleParamConfig::camera_angle))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.target_width = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.target_width = 1.5; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.target_width = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("target_width", "double", 0, "the real target width (m)", "", &TriangleParamConfig::target_width))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("target_width", "double", 0, "the real target width (m)", "", &TriangleParamConfig::target_width))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.target_depth = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.target_depth = 0.5; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.target_depth = 0.2; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("target_depth", "double", 0, "the real target depth (m)", "", &TriangleParamConfig::target_depth))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("target_depth", "double", 0, "the real target depth (m)", "", &TriangleParamConfig::target_depth))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.distance_to_target = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.distance_to_target = 5.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.distance_to_target = 2.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("distance_to_target", "double", 0, "The required distance to the target (m)", "", &TriangleParamConfig::distance_to_target))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("distance_to_target", "double", 0, "The required distance to the target (m)", "", &TriangleParamConfig::distance_to_target))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.max_speed = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.max_speed = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.max_speed = 0.3; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("max_speed", "double", 0, "the maximal linear speed", "", &TriangleParamConfig::max_speed))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("max_speed", "double", 0, "the maximal linear speed", "", &TriangleParamConfig::max_speed))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_x_Kp = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_x_Kp = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_x_Kp = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_x_Kp", "double", 0, "linear.x controller Kp", "", &TriangleParamConfig::linear_x_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_x_Kp", "double", 0, "linear.x controller Kp", "", &TriangleParamConfig::linear_x_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_x_Ki = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_x_Ki = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_x_Ki = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_x_Ki", "double", 0, "linear.x controller Ki", "", &TriangleParamConfig::linear_x_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_x_Ki", "double", 0, "linear.x controller Ki", "", &TriangleParamConfig::linear_x_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_x_Kd = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_x_Kd = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_x_Kd = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_x_Kd", "double", 0, "linear.x controller Kd", "", &TriangleParamConfig::linear_x_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_x_Kd", "double", 0, "linear.x controller Kd", "", &TriangleParamConfig::linear_x_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.control_linear_x = 0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.control_linear_x = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.control_linear_x = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_linear_x", "bool", 0, "Control distance to target", "", &TriangleParamConfig::control_linear_x))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_linear_x", "bool", 0, "Control distance to target", "", &TriangleParamConfig::control_linear_x))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_y_Kp = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_y_Kp = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_y_Kp = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_y_Kp", "double", 0, "linear.y controller Kp", "", &TriangleParamConfig::linear_y_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_y_Kp", "double", 0, "linear.y controller Kp", "", &TriangleParamConfig::linear_y_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_y_Ki = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_y_Ki = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_y_Ki = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_y_Ki", "double", 0, "linear.y controller Ki", "", &TriangleParamConfig::linear_y_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_y_Ki", "double", 0, "linear.y controller Ki", "", &TriangleParamConfig::linear_y_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_y_Kd = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_y_Kd = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_y_Kd = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_y_Kd", "double", 0, "linear.y controller Kd", "", &TriangleParamConfig::linear_y_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_y_Kd", "double", 0, "linear.y controller Kd", "", &TriangleParamConfig::linear_y_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.control_linear_y = 0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.control_linear_y = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.control_linear_y = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_linear_y", "bool", 0, "Controls the facing to target", "", &TriangleParamConfig::control_linear_y))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_linear_y", "bool", 0, "Controls the facing to target", "", &TriangleParamConfig::control_linear_y))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_z_Kp = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_z_Kp = 10.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_z_Kp = 0.1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_z_Kp", "double", 0, "linear.z controller Kp", "", &TriangleParamConfig::linear_z_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_z_Kp", "double", 0, "linear.z controller Kp", "", &TriangleParamConfig::linear_z_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_z_Ki = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_z_Ki = 10.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_z_Ki = 0.1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_z_Ki", "double", 0, "linear.z controller Ki", "", &TriangleParamConfig::linear_z_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_z_Ki", "double", 0, "linear.z controller Ki", "", &TriangleParamConfig::linear_z_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.linear_z_Kd = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.linear_z_Kd = 10.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.linear_z_Kd = 0.1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_z_Kd", "double", 0, "linear.z controller Kd", "", &TriangleParamConfig::linear_z_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("linear_z_Kd", "double", 0, "linear.z controller Kd", "", &TriangleParamConfig::linear_z_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.control_linear_z = 0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.control_linear_z = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.control_linear_z = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_linear_z", "bool", 0, "Controls the facing to target", "", &TriangleParamConfig::control_linear_z))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_linear_z", "bool", 0, "Controls the facing to target", "", &TriangleParamConfig::control_linear_z))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.angular_z_Kp = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.angular_z_Kp = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.angular_z_Kp = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("angular_z_Kp", "double", 0, "angular.z controller Kp", "", &TriangleParamConfig::angular_z_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("angular_z_Kp", "double", 0, "angular.z controller Kp", "", &TriangleParamConfig::angular_z_Kp))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.angular_z_Ki = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.angular_z_Ki = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.angular_z_Ki = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("angular_z_Ki", "double", 0, "angular.z controller Ki", "", &TriangleParamConfig::angular_z_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("angular_z_Ki", "double", 0, "angular.z controller Ki", "", &TriangleParamConfig::angular_z_Ki))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.angular_z_Kd = 0.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.angular_z_Kd = 1.0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.angular_z_Kd = 0.01; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("angular_z_Kd", "double", 0, "angular.z controller Kd", "", &TriangleParamConfig::angular_z_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<double>("angular_z_Kd", "double", 0, "angular.z controller Kd", "", &TriangleParamConfig::angular_z_Kd))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__min__.control_angular_z = 0; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__max__.control_angular_z = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__default__.control_angular_z = 1; |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.abstract_parameters.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_angular_z", "bool", 0, "Controls the facing to target", "", &TriangleParamConfig::control_angular_z))); |
||||
|
//#line 291 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__param_descriptions__.push_back(TriangleParamConfig::AbstractParamDescriptionConstPtr(new TriangleParamConfig::ParamDescription<bool>("control_angular_z", "bool", 0, "Controls the facing to target", "", &TriangleParamConfig::control_angular_z))); |
||||
|
//#line 246 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
Default.convertParams(); |
||||
|
//#line 246 "/opt/ros/melodic/lib/python2.7/dist-packages/dynamic_reconfigure/parameter_generator_catkin.py"
|
||||
|
__group_descriptions__.push_back(TriangleParamConfig::AbstractGroupDescriptionConstPtr(new TriangleParamConfig::GroupDescription<TriangleParamConfig::DEFAULT, TriangleParamConfig>(Default))); |
||||
|
//#line 366 "/opt/ros/melodic/share/dynamic_reconfigure/cmake/../templates/ConfigType.h.template"
|
||||
|
|
||||
|
for (std::vector<TriangleParamConfig::AbstractGroupDescriptionConstPtr>::const_iterator i = __group_descriptions__.begin(); i != __group_descriptions__.end(); ++i) |
||||
|
{ |
||||
|
__description_message__.groups.push_back(**i); |
||||
|
} |
||||
|
__max__.__toMessage__(__description_message__.max, __param_descriptions__, __group_descriptions__); |
||||
|
__min__.__toMessage__(__description_message__.min, __param_descriptions__, __group_descriptions__); |
||||
|
__default__.__toMessage__(__description_message__.dflt, __param_descriptions__, __group_descriptions__); |
||||
|
} |
||||
|
std::vector<TriangleParamConfig::AbstractParamDescriptionConstPtr> __param_descriptions__; |
||||
|
std::vector<TriangleParamConfig::AbstractGroupDescriptionConstPtr> __group_descriptions__; |
||||
|
TriangleParamConfig __max__; |
||||
|
TriangleParamConfig __min__; |
||||
|
TriangleParamConfig __default__; |
||||
|
dynamic_reconfigure::ConfigDescription __description_message__; |
||||
|
|
||||
|
static const TriangleParamConfigStatics *get_instance() |
||||
|
{ |
||||
|
// Split this off in a separate function because I know that
|
||||
|
// instance will get initialized the first time get_instance is
|
||||
|
// called, and I am guaranteeing that get_instance gets called at
|
||||
|
// most once.
|
||||
|
static TriangleParamConfigStatics instance; |
||||
|
return &instance; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
inline const dynamic_reconfigure::ConfigDescription &TriangleParamConfig::__getDescriptionMessage__() |
||||
|
{ |
||||
|
return __get_statics__()->__description_message__; |
||||
|
} |
||||
|
|
||||
|
inline const TriangleParamConfig &TriangleParamConfig::__getDefault__() |
||||
|
{ |
||||
|
return __get_statics__()->__default__; |
||||
|
} |
||||
|
|
||||
|
inline const TriangleParamConfig &TriangleParamConfig::__getMax__() |
||||
|
{ |
||||
|
return __get_statics__()->__max__; |
||||
|
} |
||||
|
|
||||
|
inline const TriangleParamConfig &TriangleParamConfig::__getMin__() |
||||
|
{ |
||||
|
return __get_statics__()->__min__; |
||||
|
} |
||||
|
|
||||
|
inline const std::vector<TriangleParamConfig::AbstractParamDescriptionConstPtr> &TriangleParamConfig::__getParamDescriptions__() |
||||
|
{ |
||||
|
return __get_statics__()->__param_descriptions__; |
||||
|
} |
||||
|
|
||||
|
inline const std::vector<TriangleParamConfig::AbstractGroupDescriptionConstPtr> &TriangleParamConfig::__getGroupDescriptions__() |
||||
|
{ |
||||
|
return __get_statics__()->__group_descriptions__; |
||||
|
} |
||||
|
|
||||
|
inline const TriangleParamConfigStatics *TriangleParamConfig::__get_statics__() |
||||
|
{ |
||||
|
const static TriangleParamConfigStatics *statics; |
||||
|
|
||||
|
if (statics) // Common case
|
||||
|
return statics; |
||||
|
|
||||
|
boost::mutex::scoped_lock lock(dynamic_reconfigure::__init_mutex__); |
||||
|
|
||||
|
if (statics) // In case we lost a race.
|
||||
|
return statics; |
||||
|
|
||||
|
statics = TriangleParamConfigStatics::get_instance(); |
||||
|
|
||||
|
return statics; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
#undef DYNAMIC_RECONFIGURE_FINAL |
||||
|
|
||||
|
#endif // __TRIANGLEPARAMRECONFIGURATOR_H__
|
||||
@ -0,0 +1,214 @@ |
|||||
|
// Generated by gencpp from file detect_targets/component_center.msg
|
||||
|
// DO NOT EDIT!
|
||||
|
|
||||
|
|
||||
|
#ifndef DETECT_TARGETS_MESSAGE_COMPONENT_CENTER_H |
||||
|
#define DETECT_TARGETS_MESSAGE_COMPONENT_CENTER_H |
||||
|
|
||||
|
|
||||
|
#include <string> |
||||
|
#include <vector> |
||||
|
#include <map> |
||||
|
|
||||
|
#include <ros/types.h> |
||||
|
#include <ros/serialization.h> |
||||
|
#include <ros/builtin_message_traits.h> |
||||
|
#include <ros/message_operations.h> |
||||
|
|
||||
|
|
||||
|
namespace detect_targets |
||||
|
{ |
||||
|
template <class ContainerAllocator> |
||||
|
struct component_center_ |
||||
|
{ |
||||
|
typedef component_center_<ContainerAllocator> Type; |
||||
|
|
||||
|
component_center_() |
||||
|
: label(0) |
||||
|
, nb_vertex(0) |
||||
|
, x(0.0) |
||||
|
, y(0.0) { |
||||
|
} |
||||
|
component_center_(const ContainerAllocator& _alloc) |
||||
|
: label(0) |
||||
|
, nb_vertex(0) |
||||
|
, x(0.0) |
||||
|
, y(0.0) { |
||||
|
(void)_alloc; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
typedef int64_t _label_type; |
||||
|
_label_type label; |
||||
|
|
||||
|
typedef int64_t _nb_vertex_type; |
||||
|
_nb_vertex_type nb_vertex; |
||||
|
|
||||
|
typedef double _x_type; |
||||
|
_x_type x; |
||||
|
|
||||
|
typedef double _y_type; |
||||
|
_y_type y; |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
typedef boost::shared_ptr< ::detect_targets::component_center_<ContainerAllocator> > Ptr; |
||||
|
typedef boost::shared_ptr< ::detect_targets::component_center_<ContainerAllocator> const> ConstPtr; |
||||
|
|
||||
|
}; // struct component_center_
|
||||
|
|
||||
|
typedef ::detect_targets::component_center_<std::allocator<void> > component_center; |
||||
|
|
||||
|
typedef boost::shared_ptr< ::detect_targets::component_center > component_centerPtr; |
||||
|
typedef boost::shared_ptr< ::detect_targets::component_center const> component_centerConstPtr; |
||||
|
|
||||
|
// constants requiring out of line definition
|
||||
|
|
||||
|
|
||||
|
|
||||
|
template<typename ContainerAllocator> |
||||
|
std::ostream& operator<<(std::ostream& s, const ::detect_targets::component_center_<ContainerAllocator> & v) |
||||
|
{ |
||||
|
ros::message_operations::Printer< ::detect_targets::component_center_<ContainerAllocator> >::stream(s, "", v); |
||||
|
return s; |
||||
|
} |
||||
|
|
||||
|
} // namespace detect_targets
|
||||
|
|
||||
|
namespace ros |
||||
|
{ |
||||
|
namespace message_traits |
||||
|
{ |
||||
|
|
||||
|
|
||||
|
|
||||
|
// BOOLTRAITS {'IsFixedSize': True, 'IsMessage': True, 'HasHeader': False}
|
||||
|
// {'std_msgs': ['/opt/ros/melodic/share/std_msgs/cmake/../msg'], 'detect_targets': ['/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg']}
|
||||
|
|
||||
|
// !!!!!!!!!!! ['__class__', '__delattr__', '__dict__', '__doc__', '__eq__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_parsed_fields', 'constants', 'fields', 'full_name', 'has_header', 'header_present', 'names', 'package', 'parsed_fields', 'short_name', 'text', 'types']
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsFixedSize< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsFixedSize< ::detect_targets::component_center_<ContainerAllocator> const> |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsMessage< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsMessage< ::detect_targets::component_center_<ContainerAllocator> const> |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct HasHeader< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
: FalseType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct HasHeader< ::detect_targets::component_center_<ContainerAllocator> const> |
||||
|
: FalseType |
||||
|
{ }; |
||||
|
|
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct MD5Sum< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
{ |
||||
|
static const char* value() |
||||
|
{ |
||||
|
return "da1879b15a6566f498d1395c2d529084"; |
||||
|
} |
||||
|
|
||||
|
static const char* value(const ::detect_targets::component_center_<ContainerAllocator>&) { return value(); } |
||||
|
static const uint64_t static_value1 = 0xda1879b15a6566f4ULL; |
||||
|
static const uint64_t static_value2 = 0x98d1395c2d529084ULL; |
||||
|
}; |
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct DataType< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
{ |
||||
|
static const char* value() |
||||
|
{ |
||||
|
return "detect_targets/component_center"; |
||||
|
} |
||||
|
|
||||
|
static const char* value(const ::detect_targets::component_center_<ContainerAllocator>&) { return value(); } |
||||
|
}; |
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct Definition< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
{ |
||||
|
static const char* value() |
||||
|
{ |
||||
|
return "int64 label\n\
|
||||
|
int64 nb_vertex\n\ |
||||
|
float64 x\n\ |
||||
|
float64 y\n\ |
||||
|
"; |
||||
|
} |
||||
|
|
||||
|
static const char* value(const ::detect_targets::component_center_<ContainerAllocator>&) { return value(); } |
||||
|
}; |
||||
|
|
||||
|
} // namespace message_traits
|
||||
|
} // namespace ros
|
||||
|
|
||||
|
namespace ros |
||||
|
{ |
||||
|
namespace serialization |
||||
|
{ |
||||
|
|
||||
|
template<class ContainerAllocator> struct Serializer< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
{ |
||||
|
template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) |
||||
|
{ |
||||
|
stream.next(m.label); |
||||
|
stream.next(m.nb_vertex); |
||||
|
stream.next(m.x); |
||||
|
stream.next(m.y); |
||||
|
} |
||||
|
|
||||
|
ROS_DECLARE_ALLINONE_SERIALIZER |
||||
|
}; // struct component_center_
|
||||
|
|
||||
|
} // namespace serialization
|
||||
|
} // namespace ros
|
||||
|
|
||||
|
namespace ros |
||||
|
{ |
||||
|
namespace message_operations |
||||
|
{ |
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct Printer< ::detect_targets::component_center_<ContainerAllocator> > |
||||
|
{ |
||||
|
template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::detect_targets::component_center_<ContainerAllocator>& v) |
||||
|
{ |
||||
|
s << indent << "label: "; |
||||
|
Printer<int64_t>::stream(s, indent + " ", v.label); |
||||
|
s << indent << "nb_vertex: "; |
||||
|
Printer<int64_t>::stream(s, indent + " ", v.nb_vertex); |
||||
|
s << indent << "x: "; |
||||
|
Printer<double>::stream(s, indent + " ", v.x); |
||||
|
s << indent << "y: "; |
||||
|
Printer<double>::stream(s, indent + " ", v.y); |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace message_operations
|
||||
|
} // namespace ros
|
||||
|
|
||||
|
#endif // DETECT_TARGETS_MESSAGE_COMPONENT_CENTER_H
|
||||
@ -0,0 +1,214 @@ |
|||||
|
// Generated by gencpp from file detect_targets/control.msg
|
||||
|
// DO NOT EDIT!
|
||||
|
|
||||
|
|
||||
|
#ifndef DETECT_TARGETS_MESSAGE_CONTROL_H |
||||
|
#define DETECT_TARGETS_MESSAGE_CONTROL_H |
||||
|
|
||||
|
|
||||
|
#include <string> |
||||
|
#include <vector> |
||||
|
#include <map> |
||||
|
|
||||
|
#include <ros/types.h> |
||||
|
#include <ros/serialization.h> |
||||
|
#include <ros/builtin_message_traits.h> |
||||
|
#include <ros/message_operations.h> |
||||
|
|
||||
|
|
||||
|
namespace detect_targets |
||||
|
{ |
||||
|
template <class ContainerAllocator> |
||||
|
struct control_ |
||||
|
{ |
||||
|
typedef control_<ContainerAllocator> Type; |
||||
|
|
||||
|
control_() |
||||
|
: target(0.0) |
||||
|
, error(0.0) |
||||
|
, derror(0.0) |
||||
|
, cmd_vel(0.0) { |
||||
|
} |
||||
|
control_(const ContainerAllocator& _alloc) |
||||
|
: target(0.0) |
||||
|
, error(0.0) |
||||
|
, derror(0.0) |
||||
|
, cmd_vel(0.0) { |
||||
|
(void)_alloc; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
typedef double _target_type; |
||||
|
_target_type target; |
||||
|
|
||||
|
typedef double _error_type; |
||||
|
_error_type error; |
||||
|
|
||||
|
typedef double _derror_type; |
||||
|
_derror_type derror; |
||||
|
|
||||
|
typedef double _cmd_vel_type; |
||||
|
_cmd_vel_type cmd_vel; |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
typedef boost::shared_ptr< ::detect_targets::control_<ContainerAllocator> > Ptr; |
||||
|
typedef boost::shared_ptr< ::detect_targets::control_<ContainerAllocator> const> ConstPtr; |
||||
|
|
||||
|
}; // struct control_
|
||||
|
|
||||
|
typedef ::detect_targets::control_<std::allocator<void> > control; |
||||
|
|
||||
|
typedef boost::shared_ptr< ::detect_targets::control > controlPtr; |
||||
|
typedef boost::shared_ptr< ::detect_targets::control const> controlConstPtr; |
||||
|
|
||||
|
// constants requiring out of line definition
|
||||
|
|
||||
|
|
||||
|
|
||||
|
template<typename ContainerAllocator> |
||||
|
std::ostream& operator<<(std::ostream& s, const ::detect_targets::control_<ContainerAllocator> & v) |
||||
|
{ |
||||
|
ros::message_operations::Printer< ::detect_targets::control_<ContainerAllocator> >::stream(s, "", v); |
||||
|
return s; |
||||
|
} |
||||
|
|
||||
|
} // namespace detect_targets
|
||||
|
|
||||
|
namespace ros |
||||
|
{ |
||||
|
namespace message_traits |
||||
|
{ |
||||
|
|
||||
|
|
||||
|
|
||||
|
// BOOLTRAITS {'IsFixedSize': True, 'IsMessage': True, 'HasHeader': False}
|
||||
|
// {'std_msgs': ['/opt/ros/melodic/share/std_msgs/cmake/../msg'], 'detect_targets': ['/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg']}
|
||||
|
|
||||
|
// !!!!!!!!!!! ['__class__', '__delattr__', '__dict__', '__doc__', '__eq__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_parsed_fields', 'constants', 'fields', 'full_name', 'has_header', 'header_present', 'names', 'package', 'parsed_fields', 'short_name', 'text', 'types']
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsFixedSize< ::detect_targets::control_<ContainerAllocator> > |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsFixedSize< ::detect_targets::control_<ContainerAllocator> const> |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsMessage< ::detect_targets::control_<ContainerAllocator> > |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct IsMessage< ::detect_targets::control_<ContainerAllocator> const> |
||||
|
: TrueType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct HasHeader< ::detect_targets::control_<ContainerAllocator> > |
||||
|
: FalseType |
||||
|
{ }; |
||||
|
|
||||
|
template <class ContainerAllocator> |
||||
|
struct HasHeader< ::detect_targets::control_<ContainerAllocator> const> |
||||
|
: FalseType |
||||
|
{ }; |
||||
|
|
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct MD5Sum< ::detect_targets::control_<ContainerAllocator> > |
||||
|
{ |
||||
|
static const char* value() |
||||
|
{ |
||||
|
return "6f80b008c55c6a68dec8d378f0b74e50"; |
||||
|
} |
||||
|
|
||||
|
static const char* value(const ::detect_targets::control_<ContainerAllocator>&) { return value(); } |
||||
|
static const uint64_t static_value1 = 0x6f80b008c55c6a68ULL; |
||||
|
static const uint64_t static_value2 = 0xdec8d378f0b74e50ULL; |
||||
|
}; |
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct DataType< ::detect_targets::control_<ContainerAllocator> > |
||||
|
{ |
||||
|
static const char* value() |
||||
|
{ |
||||
|
return "detect_targets/control"; |
||||
|
} |
||||
|
|
||||
|
static const char* value(const ::detect_targets::control_<ContainerAllocator>&) { return value(); } |
||||
|
}; |
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct Definition< ::detect_targets::control_<ContainerAllocator> > |
||||
|
{ |
||||
|
static const char* value() |
||||
|
{ |
||||
|
return "float64 target\n\
|
||||
|
float64 error\n\ |
||||
|
float64 derror\n\ |
||||
|
float64 cmd_vel\n\ |
||||
|
"; |
||||
|
} |
||||
|
|
||||
|
static const char* value(const ::detect_targets::control_<ContainerAllocator>&) { return value(); } |
||||
|
}; |
||||
|
|
||||
|
} // namespace message_traits
|
||||
|
} // namespace ros
|
||||
|
|
||||
|
namespace ros |
||||
|
{ |
||||
|
namespace serialization |
||||
|
{ |
||||
|
|
||||
|
template<class ContainerAllocator> struct Serializer< ::detect_targets::control_<ContainerAllocator> > |
||||
|
{ |
||||
|
template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) |
||||
|
{ |
||||
|
stream.next(m.target); |
||||
|
stream.next(m.error); |
||||
|
stream.next(m.derror); |
||||
|
stream.next(m.cmd_vel); |
||||
|
} |
||||
|
|
||||
|
ROS_DECLARE_ALLINONE_SERIALIZER |
||||
|
}; // struct control_
|
||||
|
|
||||
|
} // namespace serialization
|
||||
|
} // namespace ros
|
||||
|
|
||||
|
namespace ros |
||||
|
{ |
||||
|
namespace message_operations |
||||
|
{ |
||||
|
|
||||
|
template<class ContainerAllocator> |
||||
|
struct Printer< ::detect_targets::control_<ContainerAllocator> > |
||||
|
{ |
||||
|
template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::detect_targets::control_<ContainerAllocator>& v) |
||||
|
{ |
||||
|
s << indent << "target: "; |
||||
|
Printer<double>::stream(s, indent + " ", v.target); |
||||
|
s << indent << "error: "; |
||||
|
Printer<double>::stream(s, indent + " ", v.error); |
||||
|
s << indent << "derror: "; |
||||
|
Printer<double>::stream(s, indent + " ", v.derror); |
||||
|
s << indent << "cmd_vel: "; |
||||
|
Printer<double>::stream(s, indent + " ", v.cmd_vel); |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
} // namespace message_operations
|
||||
|
} // namespace ros
|
||||
|
|
||||
|
#endif // DETECT_TARGETS_MESSAGE_CONTROL_H
|
||||
@ -0,0 +1,10 @@ |
|||||
|
(cl:in-package detect_targets-msg) |
||||
|
(cl:export '(LABEL-VAL |
||||
|
LABEL |
||||
|
NB_VERTEX-VAL |
||||
|
NB_VERTEX |
||||
|
X-VAL |
||||
|
X |
||||
|
Y-VAL |
||||
|
Y |
||||
|
)) |
||||
@ -0,0 +1,10 @@ |
|||||
|
(cl:in-package detect_targets-msg) |
||||
|
(cl:export '(TARGET-VAL |
||||
|
TARGET |
||||
|
ERROR-VAL |
||||
|
ERROR |
||||
|
DERROR-VAL |
||||
|
DERROR |
||||
|
CMD_VEL-VAL |
||||
|
CMD_VEL |
||||
|
)) |
||||
@ -0,0 +1,176 @@ |
|||||
|
; Auto-generated. Do not edit! |
||||
|
|
||||
|
|
||||
|
(cl:in-package detect_targets-msg) |
||||
|
|
||||
|
|
||||
|
;//! \htmlinclude component_center.msg.html |
||||
|
|
||||
|
(cl:defclass <component_center> (roslisp-msg-protocol:ros-message) |
||||
|
((label |
||||
|
:reader label |
||||
|
:initarg :label |
||||
|
:type cl:integer |
||||
|
:initform 0) |
||||
|
(nb_vertex |
||||
|
:reader nb_vertex |
||||
|
:initarg :nb_vertex |
||||
|
:type cl:integer |
||||
|
:initform 0) |
||||
|
(x |
||||
|
:reader x |
||||
|
:initarg :x |
||||
|
:type cl:float |
||||
|
:initform 0.0) |
||||
|
(y |
||||
|
:reader y |
||||
|
:initarg :y |
||||
|
:type cl:float |
||||
|
:initform 0.0)) |
||||
|
) |
||||
|
|
||||
|
(cl:defclass component_center (<component_center>) |
||||
|
()) |
||||
|
|
||||
|
(cl:defmethod cl:initialize-instance :after ((m <component_center>) cl:&rest args) |
||||
|
(cl:declare (cl:ignorable args)) |
||||
|
(cl:unless (cl:typep m 'component_center) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "using old message class name detect_targets-msg:<component_center> is deprecated: use detect_targets-msg:component_center instead."))) |
||||
|
|
||||
|
(cl:ensure-generic-function 'label-val :lambda-list '(m)) |
||||
|
(cl:defmethod label-val ((m <component_center>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:label-val is deprecated. Use detect_targets-msg:label instead.") |
||||
|
(label m)) |
||||
|
|
||||
|
(cl:ensure-generic-function 'nb_vertex-val :lambda-list '(m)) |
||||
|
(cl:defmethod nb_vertex-val ((m <component_center>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:nb_vertex-val is deprecated. Use detect_targets-msg:nb_vertex instead.") |
||||
|
(nb_vertex m)) |
||||
|
|
||||
|
(cl:ensure-generic-function 'x-val :lambda-list '(m)) |
||||
|
(cl:defmethod x-val ((m <component_center>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:x-val is deprecated. Use detect_targets-msg:x instead.") |
||||
|
(x m)) |
||||
|
|
||||
|
(cl:ensure-generic-function 'y-val :lambda-list '(m)) |
||||
|
(cl:defmethod y-val ((m <component_center>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:y-val is deprecated. Use detect_targets-msg:y instead.") |
||||
|
(y m)) |
||||
|
(cl:defmethod roslisp-msg-protocol:serialize ((msg <component_center>) ostream) |
||||
|
"Serializes a message object of type '<component_center>" |
||||
|
(cl:let* ((signed (cl:slot-value msg 'label)) (unsigned (cl:if (cl:< signed 0) (cl:+ signed 18446744073709551616) signed))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) unsigned) ostream) |
||||
|
) |
||||
|
(cl:let* ((signed (cl:slot-value msg 'nb_vertex)) (unsigned (cl:if (cl:< signed 0) (cl:+ signed 18446744073709551616) signed))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) unsigned) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) unsigned) ostream) |
||||
|
) |
||||
|
(cl:let ((bits (roslisp-utils:encode-double-float-bits (cl:slot-value msg 'x)))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) bits) ostream)) |
||||
|
(cl:let ((bits (roslisp-utils:encode-double-float-bits (cl:slot-value msg 'y)))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) bits) ostream)) |
||||
|
) |
||||
|
(cl:defmethod roslisp-msg-protocol:deserialize ((msg <component_center>) istream) |
||||
|
"Deserializes a message object of type '<component_center>" |
||||
|
(cl:let ((unsigned 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'label) (cl:if (cl:< unsigned 9223372036854775808) unsigned (cl:- unsigned 18446744073709551616)))) |
||||
|
(cl:let ((unsigned 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) unsigned) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'nb_vertex) (cl:if (cl:< unsigned 9223372036854775808) unsigned (cl:- unsigned 18446744073709551616)))) |
||||
|
(cl:let ((bits 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'x) (roslisp-utils:decode-double-float-bits bits))) |
||||
|
(cl:let ((bits 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'y) (roslisp-utils:decode-double-float-bits bits))) |
||||
|
msg |
||||
|
) |
||||
|
(cl:defmethod roslisp-msg-protocol:ros-datatype ((msg (cl:eql '<component_center>))) |
||||
|
"Returns string type for a message object of type '<component_center>" |
||||
|
"detect_targets/component_center") |
||||
|
(cl:defmethod roslisp-msg-protocol:ros-datatype ((msg (cl:eql 'component_center))) |
||||
|
"Returns string type for a message object of type 'component_center" |
||||
|
"detect_targets/component_center") |
||||
|
(cl:defmethod roslisp-msg-protocol:md5sum ((type (cl:eql '<component_center>))) |
||||
|
"Returns md5sum for a message object of type '<component_center>" |
||||
|
"da1879b15a6566f498d1395c2d529084") |
||||
|
(cl:defmethod roslisp-msg-protocol:md5sum ((type (cl:eql 'component_center))) |
||||
|
"Returns md5sum for a message object of type 'component_center" |
||||
|
"da1879b15a6566f498d1395c2d529084") |
||||
|
(cl:defmethod roslisp-msg-protocol:message-definition ((type (cl:eql '<component_center>))) |
||||
|
"Returns full string definition for message of type '<component_center>" |
||||
|
(cl:format cl:nil "int64 label~%int64 nb_vertex~%float64 x~%float64 y~%~%~%")) |
||||
|
(cl:defmethod roslisp-msg-protocol:message-definition ((type (cl:eql 'component_center))) |
||||
|
"Returns full string definition for message of type 'component_center" |
||||
|
(cl:format cl:nil "int64 label~%int64 nb_vertex~%float64 x~%float64 y~%~%~%")) |
||||
|
(cl:defmethod roslisp-msg-protocol:serialization-length ((msg <component_center>)) |
||||
|
(cl:+ 0 |
||||
|
8 |
||||
|
8 |
||||
|
8 |
||||
|
8 |
||||
|
)) |
||||
|
(cl:defmethod roslisp-msg-protocol:ros-message-to-list ((msg <component_center>)) |
||||
|
"Converts a ROS message object to a list" |
||||
|
(cl:list 'component_center |
||||
|
(cl:cons ':label (label msg)) |
||||
|
(cl:cons ':nb_vertex (nb_vertex msg)) |
||||
|
(cl:cons ':x (x msg)) |
||||
|
(cl:cons ':y (y msg)) |
||||
|
)) |
||||
@ -0,0 +1,174 @@ |
|||||
|
; Auto-generated. Do not edit! |
||||
|
|
||||
|
|
||||
|
(cl:in-package detect_targets-msg) |
||||
|
|
||||
|
|
||||
|
;//! \htmlinclude control.msg.html |
||||
|
|
||||
|
(cl:defclass <control> (roslisp-msg-protocol:ros-message) |
||||
|
((target |
||||
|
:reader target |
||||
|
:initarg :target |
||||
|
:type cl:float |
||||
|
:initform 0.0) |
||||
|
(error |
||||
|
:reader error |
||||
|
:initarg :error |
||||
|
:type cl:float |
||||
|
:initform 0.0) |
||||
|
(derror |
||||
|
:reader derror |
||||
|
:initarg :derror |
||||
|
:type cl:float |
||||
|
:initform 0.0) |
||||
|
(cmd_vel |
||||
|
:reader cmd_vel |
||||
|
:initarg :cmd_vel |
||||
|
:type cl:float |
||||
|
:initform 0.0)) |
||||
|
) |
||||
|
|
||||
|
(cl:defclass control (<control>) |
||||
|
()) |
||||
|
|
||||
|
(cl:defmethod cl:initialize-instance :after ((m <control>) cl:&rest args) |
||||
|
(cl:declare (cl:ignorable args)) |
||||
|
(cl:unless (cl:typep m 'control) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "using old message class name detect_targets-msg:<control> is deprecated: use detect_targets-msg:control instead."))) |
||||
|
|
||||
|
(cl:ensure-generic-function 'target-val :lambda-list '(m)) |
||||
|
(cl:defmethod target-val ((m <control>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:target-val is deprecated. Use detect_targets-msg:target instead.") |
||||
|
(target m)) |
||||
|
|
||||
|
(cl:ensure-generic-function 'error-val :lambda-list '(m)) |
||||
|
(cl:defmethod error-val ((m <control>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:error-val is deprecated. Use detect_targets-msg:error instead.") |
||||
|
(error m)) |
||||
|
|
||||
|
(cl:ensure-generic-function 'derror-val :lambda-list '(m)) |
||||
|
(cl:defmethod derror-val ((m <control>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:derror-val is deprecated. Use detect_targets-msg:derror instead.") |
||||
|
(derror m)) |
||||
|
|
||||
|
(cl:ensure-generic-function 'cmd_vel-val :lambda-list '(m)) |
||||
|
(cl:defmethod cmd_vel-val ((m <control>)) |
||||
|
(roslisp-msg-protocol:msg-deprecation-warning "Using old-style slot reader detect_targets-msg:cmd_vel-val is deprecated. Use detect_targets-msg:cmd_vel instead.") |
||||
|
(cmd_vel m)) |
||||
|
(cl:defmethod roslisp-msg-protocol:serialize ((msg <control>) ostream) |
||||
|
"Serializes a message object of type '<control>" |
||||
|
(cl:let ((bits (roslisp-utils:encode-double-float-bits (cl:slot-value msg 'target)))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) bits) ostream)) |
||||
|
(cl:let ((bits (roslisp-utils:encode-double-float-bits (cl:slot-value msg 'error)))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) bits) ostream)) |
||||
|
(cl:let ((bits (roslisp-utils:encode-double-float-bits (cl:slot-value msg 'derror)))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) bits) ostream)) |
||||
|
(cl:let ((bits (roslisp-utils:encode-double-float-bits (cl:slot-value msg 'cmd_vel)))) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 0) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 8) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 16) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 24) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 32) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 40) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 48) bits) ostream) |
||||
|
(cl:write-byte (cl:ldb (cl:byte 8 56) bits) ostream)) |
||||
|
) |
||||
|
(cl:defmethod roslisp-msg-protocol:deserialize ((msg <control>) istream) |
||||
|
"Deserializes a message object of type '<control>" |
||||
|
(cl:let ((bits 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'target) (roslisp-utils:decode-double-float-bits bits))) |
||||
|
(cl:let ((bits 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'error) (roslisp-utils:decode-double-float-bits bits))) |
||||
|
(cl:let ((bits 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'derror) (roslisp-utils:decode-double-float-bits bits))) |
||||
|
(cl:let ((bits 0)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 0) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 8) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 16) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 24) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 32) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 40) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 48) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:ldb (cl:byte 8 56) bits) (cl:read-byte istream)) |
||||
|
(cl:setf (cl:slot-value msg 'cmd_vel) (roslisp-utils:decode-double-float-bits bits))) |
||||
|
msg |
||||
|
) |
||||
|
(cl:defmethod roslisp-msg-protocol:ros-datatype ((msg (cl:eql '<control>))) |
||||
|
"Returns string type for a message object of type '<control>" |
||||
|
"detect_targets/control") |
||||
|
(cl:defmethod roslisp-msg-protocol:ros-datatype ((msg (cl:eql 'control))) |
||||
|
"Returns string type for a message object of type 'control" |
||||
|
"detect_targets/control") |
||||
|
(cl:defmethod roslisp-msg-protocol:md5sum ((type (cl:eql '<control>))) |
||||
|
"Returns md5sum for a message object of type '<control>" |
||||
|
"6f80b008c55c6a68dec8d378f0b74e50") |
||||
|
(cl:defmethod roslisp-msg-protocol:md5sum ((type (cl:eql 'control))) |
||||
|
"Returns md5sum for a message object of type 'control" |
||||
|
"6f80b008c55c6a68dec8d378f0b74e50") |
||||
|
(cl:defmethod roslisp-msg-protocol:message-definition ((type (cl:eql '<control>))) |
||||
|
"Returns full string definition for message of type '<control>" |
||||
|
(cl:format cl:nil "float64 target~%float64 error~%float64 derror~%float64 cmd_vel~%~%")) |
||||
|
(cl:defmethod roslisp-msg-protocol:message-definition ((type (cl:eql 'control))) |
||||
|
"Returns full string definition for message of type 'control" |
||||
|
(cl:format cl:nil "float64 target~%float64 error~%float64 derror~%float64 cmd_vel~%~%")) |
||||
|
(cl:defmethod roslisp-msg-protocol:serialization-length ((msg <control>)) |
||||
|
(cl:+ 0 |
||||
|
8 |
||||
|
8 |
||||
|
8 |
||||
|
8 |
||||
|
)) |
||||
|
(cl:defmethod roslisp-msg-protocol:ros-message-to-list ((msg <control>)) |
||||
|
"Converts a ROS message object to a list" |
||||
|
(cl:list 'control |
||||
|
(cl:cons ':target (target msg)) |
||||
|
(cl:cons ':error (error msg)) |
||||
|
(cl:cons ':derror (derror msg)) |
||||
|
(cl:cons ':cmd_vel (cmd_vel msg)) |
||||
|
)) |
||||
@ -1,2 +1,2 @@ |
|||||
set(detect_targets_MESSAGE_FILES "/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/component_centers.msg") |
set(detect_targets_MESSAGE_FILES "/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/component_centers.msg;/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/component_center.msg;/home/klafyvel/Documents/supelec/2A/projet/workspace/src/detect_targets/msg/control.msg") |
||||
set(detect_targets_SERVICE_FILES "") |
set(detect_targets_SERVICE_FILES "") |
||||
|
|||||
@ -0,0 +1,27 @@ |
|||||
|
\subsubsection usage Usage |
||||
|
\verbatim |
||||
|
<node name="detect_targets" pkg="detect_targets" type="detect_targets"> |
||||
|
<param name="camera_angle" type="double" value="80.0" /> |
||||
|
<param name="target_width" type="double" value="1.0" /> |
||||
|
<param name="target_depth" type="double" value="0.2" /> |
||||
|
<param name="distance_to_target" type="double" value="2.0" /> |
||||
|
<param name="max_speed" type="double" value="0.3" /> |
||||
|
<param name="linear_x_Kp" type="double" value="0.01" /> |
||||
|
<param name="linear_x_Ki" type="double" value="0.01" /> |
||||
|
<param name="linear_x_Kd" type="double" value="0.01" /> |
||||
|
<param name="control_linear_x" type="bool" value="True" /> |
||||
|
<param name="linear_y_Kp" type="double" value="0.01" /> |
||||
|
<param name="linear_y_Ki" type="double" value="0.01" /> |
||||
|
<param name="linear_y_Kd" type="double" value="0.01" /> |
||||
|
<param name="control_linear_y" type="bool" value="True" /> |
||||
|
<param name="linear_z_Kp" type="double" value="0.1" /> |
||||
|
<param name="linear_z_Ki" type="double" value="0.1" /> |
||||
|
<param name="linear_z_Kd" type="double" value="0.1" /> |
||||
|
<param name="control_linear_z" type="bool" value="True" /> |
||||
|
<param name="angular_z_Kp" type="double" value="0.01" /> |
||||
|
<param name="angular_z_Ki" type="double" value="0.01" /> |
||||
|
<param name="angular_z_Kd" type="double" value="0.01" /> |
||||
|
<param name="control_angular_z" type="bool" value="True" /> |
||||
|
</node> |
||||
|
\endverbatim |
||||
|
|
||||
@ -0,0 +1,26 @@ |
|||||
|
\subsubsection parameters ROS parameters |
||||
|
|
||||
|
Reads and maintains the following parameters on the ROS server |
||||
|
|
||||
|
- \b "~camera_angle" : \b [double] The angle corresponding to the image width min: 50.0, default: 80.0, max: 180.0 |
||||
|
- \b "~target_width" : \b [double] the real target width (m) min: 0.01, default: 1.0, max: 1.5 |
||||
|
- \b "~target_depth" : \b [double] the real target depth (m) min: 0.01, default: 0.2, max: 0.5 |
||||
|
- \b "~distance_to_target" : \b [double] The required distance to the target (m) min: 1.0, default: 2.0, max: 5.0 |
||||
|
- \b "~max_speed" : \b [double] the maximal linear speed min: 0.01, default: 0.3, max: 1.0 |
||||
|
- \b "~linear_x_Kp" : \b [double] linear.x controller Kp min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~linear_x_Ki" : \b [double] linear.x controller Ki min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~linear_x_Kd" : \b [double] linear.x controller Kd min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~control_linear_x" : \b [bool] Control distance to target min: False, default: True, max: True |
||||
|
- \b "~linear_y_Kp" : \b [double] linear.y controller Kp min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~linear_y_Ki" : \b [double] linear.y controller Ki min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~linear_y_Kd" : \b [double] linear.y controller Kd min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~control_linear_y" : \b [bool] Controls the facing to target min: False, default: True, max: True |
||||
|
- \b "~linear_z_Kp" : \b [double] linear.z controller Kp min: 0.0, default: 0.1, max: 10.0 |
||||
|
- \b "~linear_z_Ki" : \b [double] linear.z controller Ki min: 0.0, default: 0.1, max: 10.0 |
||||
|
- \b "~linear_z_Kd" : \b [double] linear.z controller Kd min: 0.0, default: 0.1, max: 10.0 |
||||
|
- \b "~control_linear_z" : \b [bool] Controls the facing to target min: False, default: True, max: True |
||||
|
- \b "~angular_z_Kp" : \b [double] angular.z controller Kp min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~angular_z_Ki" : \b [double] angular.z controller Ki min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~angular_z_Kd" : \b [double] angular.z controller Kd min: 0.0, default: 0.01, max: 1.0 |
||||
|
- \b "~control_angular_z" : \b [bool] Controls the facing to target min: False, default: True, max: True |
||||
|
|
||||
@ -0,0 +1,92 @@ |
|||||
|
# Autogenerated param section. Do not hand edit. |
||||
|
param { |
||||
|
group.0 { |
||||
|
name=Dynamically Reconfigurable Parameters |
||||
|
desc=See the [[dynamic_reconfigure]] package for details on dynamically reconfigurable parameters. |
||||
|
0.name= ~camera_angle |
||||
|
0.default= 80.0 |
||||
|
0.type= double |
||||
|
0.desc=The angle corresponding to the image width Range: 50.0 to 180.0 |
||||
|
1.name= ~target_width |
||||
|
1.default= 1.0 |
||||
|
1.type= double |
||||
|
1.desc=the real target width (m) Range: 0.01 to 1.5 |
||||
|
2.name= ~target_depth |
||||
|
2.default= 0.2 |
||||
|
2.type= double |
||||
|
2.desc=the real target depth (m) Range: 0.01 to 0.5 |
||||
|
3.name= ~distance_to_target |
||||
|
3.default= 2.0 |
||||
|
3.type= double |
||||
|
3.desc=The required distance to the target (m) Range: 1.0 to 5.0 |
||||
|
4.name= ~max_speed |
||||
|
4.default= 0.3 |
||||
|
4.type= double |
||||
|
4.desc=the maximal linear speed Range: 0.01 to 1.0 |
||||
|
5.name= ~linear_x_Kp |
||||
|
5.default= 0.01 |
||||
|
5.type= double |
||||
|
5.desc=linear.x controller Kp Range: 0.0 to 1.0 |
||||
|
6.name= ~linear_x_Ki |
||||
|
6.default= 0.01 |
||||
|
6.type= double |
||||
|
6.desc=linear.x controller Ki Range: 0.0 to 1.0 |
||||
|
7.name= ~linear_x_Kd |
||||
|
7.default= 0.01 |
||||
|
7.type= double |
||||
|
7.desc=linear.x controller Kd Range: 0.0 to 1.0 |
||||
|
8.name= ~control_linear_x |
||||
|
8.default= True |
||||
|
8.type= bool |
||||
|
8.desc=Control distance to target |
||||
|
9.name= ~linear_y_Kp |
||||
|
9.default= 0.01 |
||||
|
9.type= double |
||||
|
9.desc=linear.y controller Kp Range: 0.0 to 1.0 |
||||
|
10.name= ~linear_y_Ki |
||||
|
10.default= 0.01 |
||||
|
10.type= double |
||||
|
10.desc=linear.y controller Ki Range: 0.0 to 1.0 |
||||
|
11.name= ~linear_y_Kd |
||||
|
11.default= 0.01 |
||||
|
11.type= double |
||||
|
11.desc=linear.y controller Kd Range: 0.0 to 1.0 |
||||
|
12.name= ~control_linear_y |
||||
|
12.default= True |
||||
|
12.type= bool |
||||
|
12.desc=Controls the facing to target |
||||
|
13.name= ~linear_z_Kp |
||||
|
13.default= 0.1 |
||||
|
13.type= double |
||||
|
13.desc=linear.z controller Kp Range: 0.0 to 10.0 |
||||
|
14.name= ~linear_z_Ki |
||||
|
14.default= 0.1 |
||||
|
14.type= double |
||||
|
14.desc=linear.z controller Ki Range: 0.0 to 10.0 |
||||
|
15.name= ~linear_z_Kd |
||||
|
15.default= 0.1 |
||||
|
15.type= double |
||||
|
15.desc=linear.z controller Kd Range: 0.0 to 10.0 |
||||
|
16.name= ~control_linear_z |
||||
|
16.default= True |
||||
|
16.type= bool |
||||
|
16.desc=Controls the facing to target |
||||
|
17.name= ~angular_z_Kp |
||||
|
17.default= 0.01 |
||||
|
17.type= double |
||||
|
17.desc=angular.z controller Kp Range: 0.0 to 1.0 |
||||
|
18.name= ~angular_z_Ki |
||||
|
18.default= 0.01 |
||||
|
18.type= double |
||||
|
18.desc=angular.z controller Ki Range: 0.0 to 1.0 |
||||
|
19.name= ~angular_z_Kd |
||||
|
19.default= 0.01 |
||||
|
19.type= double |
||||
|
19.desc=angular.z controller Kd Range: 0.0 to 1.0 |
||||
|
20.name= ~control_angular_z |
||||
|
20.default= True |
||||
|
20.type= bool |
||||
|
20.desc=Controls the facing to target |
||||
|
} |
||||
|
} |
||||
|
# End of autogenerated section. You may edit below. |
||||
@ -0,0 +1,145 @@ |
|||||
|
// Auto-generated. Do not edit!
|
||||
|
|
||||
|
// (in-package detect_targets.msg)
|
||||
|
|
||||
|
|
||||
|
"use strict"; |
||||
|
|
||||
|
const _serializer = _ros_msg_utils.Serialize; |
||||
|
const _arraySerializer = _serializer.Array; |
||||
|
const _deserializer = _ros_msg_utils.Deserialize; |
||||
|
const _arrayDeserializer = _deserializer.Array; |
||||
|
const _finder = _ros_msg_utils.Find; |
||||
|
const _getByteLength = _ros_msg_utils.getByteLength; |
||||
|
|
||||
|
//-----------------------------------------------------------
|
||||
|
|
||||
|
class component_center { |
||||
|
constructor(initObj={}) { |
||||
|
if (initObj === null) { |
||||
|
// initObj === null is a special case for deserialization where we don't initialize fields
|
||||
|
this.label = null; |
||||
|
this.nb_vertex = null; |
||||
|
this.x = null; |
||||
|
this.y = null; |
||||
|
} |
||||
|
else { |
||||
|
if (initObj.hasOwnProperty('label')) { |
||||
|
this.label = initObj.label |
||||
|
} |
||||
|
else { |
||||
|
this.label = 0; |
||||
|
} |
||||
|
if (initObj.hasOwnProperty('nb_vertex')) { |
||||
|
this.nb_vertex = initObj.nb_vertex |
||||
|
} |
||||
|
else { |
||||
|
this.nb_vertex = 0; |
||||
|
} |
||||
|
if (initObj.hasOwnProperty('x')) { |
||||
|
this.x = initObj.x |
||||
|
} |
||||
|
else { |
||||
|
this.x = 0.0; |
||||
|
} |
||||
|
if (initObj.hasOwnProperty('y')) { |
||||
|
this.y = initObj.y |
||||
|
} |
||||
|
else { |
||||
|
this.y = 0.0; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
static serialize(obj, buffer, bufferOffset) { |
||||
|
// Serializes a message object of type component_center
|
||||
|
// Serialize message field [label]
|
||||
|
bufferOffset = _serializer.int64(obj.label, buffer, bufferOffset); |
||||
|
// Serialize message field [nb_vertex]
|
||||
|
bufferOffset = _serializer.int64(obj.nb_vertex, buffer, bufferOffset); |
||||
|
// Serialize message field [x]
|
||||
|
bufferOffset = _serializer.float64(obj.x, buffer, bufferOffset); |
||||
|
// Serialize message field [y]
|
||||
|
bufferOffset = _serializer.float64(obj.y, buffer, bufferOffset); |
||||
|
return bufferOffset; |
||||
|
} |
||||
|
|
||||
|
static deserialize(buffer, bufferOffset=[0]) { |
||||
|
//deserializes a message object of type component_center
|
||||
|
let len; |
||||
|
let data = new component_center(null); |
||||
|
// Deserialize message field [label]
|
||||
|
data.label = _deserializer.int64(buffer, bufferOffset); |
||||
|
// Deserialize message field [nb_vertex]
|
||||
|
data.nb_vertex = _deserializer.int64(buffer, bufferOffset); |
||||
|
// Deserialize message field [x]
|
||||
|
data.x = _deserializer.float64(buffer, bufferOffset); |
||||
|
// Deserialize message field [y]
|
||||
|
data.y = _deserializer.float64(buffer, bufferOffset); |
||||
|
return data; |
||||
|
} |
||||
|
|
||||
|
static getMessageSize(object) { |
||||
|
return 32; |
||||
|
} |
||||
|
|
||||
|
static datatype() { |
||||
|
// Returns string type for a message object
|
||||
|
return 'detect_targets/component_center'; |
||||
|
} |
||||
|
|
||||
|
static md5sum() { |
||||
|
//Returns md5sum for a message object
|
||||
|
return 'da1879b15a6566f498d1395c2d529084'; |
||||
|
} |
||||
|
|
||||
|
static messageDefinition() { |
||||
|
// Returns full string definition for message
|
||||
|
return ` |
||||
|
int64 label |
||||
|
int64 nb_vertex |
||||
|
float64 x |
||||
|
float64 y |
||||
|
|
||||
|
`;
|
||||
|
} |
||||
|
|
||||
|
static Resolve(msg) { |
||||
|
// deep-construct a valid message object instance of whatever was passed in
|
||||
|
if (typeof msg !== 'object' || msg === null) { |
||||
|
msg = {}; |
||||
|
} |
||||
|
const resolved = new component_center(null); |
||||
|
if (msg.label !== undefined) { |
||||
|
resolved.label = msg.label; |
||||
|
} |
||||
|
else { |
||||
|
resolved.label = 0 |
||||
|
} |
||||
|
|
||||
|
if (msg.nb_vertex !== undefined) { |
||||
|
resolved.nb_vertex = msg.nb_vertex; |
||||
|
} |
||||
|
else { |
||||
|
resolved.nb_vertex = 0 |
||||
|
} |
||||
|
|
||||
|
if (msg.x !== undefined) { |
||||
|
resolved.x = msg.x; |
||||
|
} |
||||
|
else { |
||||
|
resolved.x = 0.0 |
||||
|
} |
||||
|
|
||||
|
if (msg.y !== undefined) { |
||||
|
resolved.y = msg.y; |
||||
|
} |
||||
|
else { |
||||
|
resolved.y = 0.0 |
||||
|
} |
||||
|
|
||||
|
return resolved; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
module.exports = component_center; |
||||
@ -0,0 +1,144 @@ |
|||||
|
// Auto-generated. Do not edit!
|
||||
|
|
||||
|
// (in-package detect_targets.msg)
|
||||
|
|
||||
|
|
||||
|
"use strict"; |
||||
|
|
||||
|
const _serializer = _ros_msg_utils.Serialize; |
||||
|
const _arraySerializer = _serializer.Array; |
||||
|
const _deserializer = _ros_msg_utils.Deserialize; |
||||
|
const _arrayDeserializer = _deserializer.Array; |
||||
|
const _finder = _ros_msg_utils.Find; |
||||
|
const _getByteLength = _ros_msg_utils.getByteLength; |
||||
|
|
||||
|
//-----------------------------------------------------------
|
||||
|
|
||||
|
class control { |
||||
|
constructor(initObj={}) { |
||||
|
if (initObj === null) { |
||||
|
// initObj === null is a special case for deserialization where we don't initialize fields
|
||||
|
this.target = null; |
||||
|
this.error = null; |
||||
|
this.derror = null; |
||||
|
this.cmd_vel = null; |
||||
|
} |
||||
|
else { |
||||
|
if (initObj.hasOwnProperty('target')) { |
||||
|
this.target = initObj.target |
||||
|
} |
||||
|
else { |
||||
|
this.target = 0.0; |
||||
|
} |
||||
|
if (initObj.hasOwnProperty('error')) { |
||||
|
this.error = initObj.error |
||||
|
} |
||||
|
else { |
||||
|
this.error = 0.0; |
||||
|
} |
||||
|
if (initObj.hasOwnProperty('derror')) { |
||||
|
this.derror = initObj.derror |
||||
|
} |
||||
|
else { |
||||
|
this.derror = 0.0; |
||||
|
} |
||||
|
if (initObj.hasOwnProperty('cmd_vel')) { |
||||
|
this.cmd_vel = initObj.cmd_vel |
||||
|
} |
||||
|
else { |
||||
|
this.cmd_vel = 0.0; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
static serialize(obj, buffer, bufferOffset) { |
||||
|
// Serializes a message object of type control
|
||||
|
// Serialize message field [target]
|
||||
|
bufferOffset = _serializer.float64(obj.target, buffer, bufferOffset); |
||||
|
// Serialize message field [error]
|
||||
|
bufferOffset = _serializer.float64(obj.error, buffer, bufferOffset); |
||||
|
// Serialize message field [derror]
|
||||
|
bufferOffset = _serializer.float64(obj.derror, buffer, bufferOffset); |
||||
|
// Serialize message field [cmd_vel]
|
||||
|
bufferOffset = _serializer.float64(obj.cmd_vel, buffer, bufferOffset); |
||||
|
return bufferOffset; |
||||
|
} |
||||
|
|
||||
|
static deserialize(buffer, bufferOffset=[0]) { |
||||
|
//deserializes a message object of type control
|
||||
|
let len; |
||||
|
let data = new control(null); |
||||
|
// Deserialize message field [target]
|
||||
|
data.target = _deserializer.float64(buffer, bufferOffset); |
||||
|
// Deserialize message field [error]
|
||||
|
data.error = _deserializer.float64(buffer, bufferOffset); |
||||
|
// Deserialize message field [derror]
|
||||
|
data.derror = _deserializer.float64(buffer, bufferOffset); |
||||
|
// Deserialize message field [cmd_vel]
|
||||
|
data.cmd_vel = _deserializer.float64(buffer, bufferOffset); |
||||
|
return data; |
||||
|
} |
||||
|
|
||||
|
static getMessageSize(object) { |
||||
|
return 32; |
||||
|
} |
||||
|
|
||||
|
static datatype() { |
||||
|
// Returns string type for a message object
|
||||
|
return 'detect_targets/control'; |
||||
|
} |
||||
|
|
||||
|
static md5sum() { |
||||
|
//Returns md5sum for a message object
|
||||
|
return '6f80b008c55c6a68dec8d378f0b74e50'; |
||||
|
} |
||||
|
|
||||
|
static messageDefinition() { |
||||
|
// Returns full string definition for message
|
||||
|
return ` |
||||
|
float64 target |
||||
|
float64 error |
||||
|
float64 derror |
||||
|
float64 cmd_vel |
||||
|
`;
|
||||
|
} |
||||
|
|
||||
|
static Resolve(msg) { |
||||
|
// deep-construct a valid message object instance of whatever was passed in
|
||||
|
if (typeof msg !== 'object' || msg === null) { |
||||
|
msg = {}; |
||||
|
} |
||||
|
const resolved = new control(null); |
||||
|
if (msg.target !== undefined) { |
||||
|
resolved.target = msg.target; |
||||
|
} |
||||
|
else { |
||||
|
resolved.target = 0.0 |
||||
|
} |
||||
|
|
||||
|
if (msg.error !== undefined) { |
||||
|
resolved.error = msg.error; |
||||
|
} |
||||
|
else { |
||||
|
resolved.error = 0.0 |
||||
|
} |
||||
|
|
||||
|
if (msg.derror !== undefined) { |
||||
|
resolved.derror = msg.derror; |
||||
|
} |
||||
|
else { |
||||
|
resolved.derror = 0.0 |
||||
|
} |
||||
|
|
||||
|
if (msg.cmd_vel !== undefined) { |
||||
|
resolved.cmd_vel = msg.cmd_vel; |
||||
|
} |
||||
|
else { |
||||
|
resolved.cmd_vel = 0.0 |
||||
|
} |
||||
|
|
||||
|
return resolved; |
||||
|
} |
||||
|
}; |
||||
|
|
||||
|
module.exports = control; |
||||
@ -0,0 +1,139 @@ |
|||||
|
;; Auto-generated. Do not edit! |
||||
|
|
||||
|
|
||||
|
(when (boundp 'detect_targets::component_center) |
||||
|
(if (not (find-package "DETECT_TARGETS")) |
||||
|
(make-package "DETECT_TARGETS")) |
||||
|
(shadow 'component_center (find-package "DETECT_TARGETS"))) |
||||
|
(unless (find-package "DETECT_TARGETS::COMPONENT_CENTER") |
||||
|
(make-package "DETECT_TARGETS::COMPONENT_CENTER")) |
||||
|
|
||||
|
(in-package "ROS") |
||||
|
;;//! \htmlinclude component_center.msg.html |
||||
|
|
||||
|
|
||||
|
(defclass detect_targets::component_center |
||||
|
:super ros::object |
||||
|
:slots (_label _nb_vertex _x _y )) |
||||
|
|
||||
|
(defmethod detect_targets::component_center |
||||
|
(:init |
||||
|
(&key |
||||
|
((:label __label) 0) |
||||
|
((:nb_vertex __nb_vertex) 0) |
||||
|
((:x __x) 0.0) |
||||
|
((:y __y) 0.0) |
||||
|
) |
||||
|
(send-super :init) |
||||
|
(setq _label (round __label)) |
||||
|
(setq _nb_vertex (round __nb_vertex)) |
||||
|
(setq _x (float __x)) |
||||
|
(setq _y (float __y)) |
||||
|
self) |
||||
|
(:label |
||||
|
(&optional __label) |
||||
|
(if __label (setq _label __label)) _label) |
||||
|
(:nb_vertex |
||||
|
(&optional __nb_vertex) |
||||
|
(if __nb_vertex (setq _nb_vertex __nb_vertex)) _nb_vertex) |
||||
|
(:x |
||||
|
(&optional __x) |
||||
|
(if __x (setq _x __x)) _x) |
||||
|
(:y |
||||
|
(&optional __y) |
||||
|
(if __y (setq _y __y)) _y) |
||||
|
(:serialization-length |
||||
|
() |
||||
|
(+ |
||||
|
;; int64 _label |
||||
|
8 |
||||
|
;; int64 _nb_vertex |
||||
|
8 |
||||
|
;; float64 _x |
||||
|
8 |
||||
|
;; float64 _y |
||||
|
8 |
||||
|
)) |
||||
|
(:serialize |
||||
|
(&optional strm) |
||||
|
(let ((s (if strm strm |
||||
|
(make-string-output-stream (send self :serialization-length))))) |
||||
|
;; int64 _label |
||||
|
#+(or :alpha :irix6 :x86_64) |
||||
|
(progn (sys::poke _label (send s :buffer) (send s :count) :long) (incf (stream-count s) 8)) |
||||
|
#-(or :alpha :irix6 :x86_64) |
||||
|
(cond ((and (class _label) (= (length (_label . bv)) 2)) ;; bignum |
||||
|
(write-long (ash (elt (_label . bv) 0) 0) s) |
||||
|
(write-long (ash (elt (_label . bv) 1) -1) s)) |
||||
|
((and (class _label) (= (length (_label . bv)) 1)) ;; big1 |
||||
|
(write-long (elt (_label . bv) 0) s) |
||||
|
(write-long (if (>= _label 0) 0 #xffffffff) s)) |
||||
|
(t ;; integer |
||||
|
(write-long _label s)(write-long (if (>= _label 0) 0 #xffffffff) s))) |
||||
|
;; int64 _nb_vertex |
||||
|
#+(or :alpha :irix6 :x86_64) |
||||
|
(progn (sys::poke _nb_vertex (send s :buffer) (send s :count) :long) (incf (stream-count s) 8)) |
||||
|
#-(or :alpha :irix6 :x86_64) |
||||
|
(cond ((and (class _nb_vertex) (= (length (_nb_vertex . bv)) 2)) ;; bignum |
||||
|
(write-long (ash (elt (_nb_vertex . bv) 0) 0) s) |
||||
|
(write-long (ash (elt (_nb_vertex . bv) 1) -1) s)) |
||||
|
((and (class _nb_vertex) (= (length (_nb_vertex . bv)) 1)) ;; big1 |
||||
|
(write-long (elt (_nb_vertex . bv) 0) s) |
||||
|
(write-long (if (>= _nb_vertex 0) 0 #xffffffff) s)) |
||||
|
(t ;; integer |
||||
|
(write-long _nb_vertex s)(write-long (if (>= _nb_vertex 0) 0 #xffffffff) s))) |
||||
|
;; float64 _x |
||||
|
(sys::poke _x (send s :buffer) (send s :count) :double) (incf (stream-count s) 8) |
||||
|
;; float64 _y |
||||
|
(sys::poke _y (send s :buffer) (send s :count) :double) (incf (stream-count s) 8) |
||||
|
;; |
||||
|
(if (null strm) (get-output-stream-string s)))) |
||||
|
(:deserialize |
||||
|
(buf &optional (ptr- 0)) |
||||
|
;; int64 _label |
||||
|
#+(or :alpha :irix6 :x86_64) |
||||
|
(setf _label (prog1 (sys::peek buf ptr- :long) (incf ptr- 8))) |
||||
|
#-(or :alpha :irix6 :x86_64) |
||||
|
(setf _label (let ((b0 (prog1 (sys::peek buf ptr- :integer) (incf ptr- 4))) |
||||
|
(b1 (prog1 (sys::peek buf ptr- :integer) (incf ptr- 4)))) |
||||
|
(cond ((= b1 -1) b0) |
||||
|
((and (= b1 0) |
||||
|
(<= lisp::most-negative-fixnum b0 lisp::most-positive-fixnum)) |
||||
|
b0) |
||||
|
((= b1 0) (make-instance bignum :size 1 :bv (integer-vector b0))) |
||||
|
(t (make-instance bignum :size 2 :bv (integer-vector b0 (ash b1 1))))))) |
||||
|
;; int64 _nb_vertex |
||||
|
#+(or :alpha :irix6 :x86_64) |
||||
|
(setf _nb_vertex (prog1 (sys::peek buf ptr- :long) (incf ptr- 8))) |
||||
|
#-(or :alpha :irix6 :x86_64) |
||||
|
(setf _nb_vertex (let ((b0 (prog1 (sys::peek buf ptr- :integer) (incf ptr- 4))) |
||||
|
(b1 (prog1 (sys::peek buf ptr- :integer) (incf ptr- 4)))) |
||||
|
(cond ((= b1 -1) b0) |
||||
|
((and (= b1 0) |
||||
|
(<= lisp::most-negative-fixnum b0 lisp::most-positive-fixnum)) |
||||
|
b0) |
||||
|
((= b1 0) (make-instance bignum :size 1 :bv (integer-vector b0))) |
||||
|
(t (make-instance bignum :size 2 :bv (integer-vector b0 (ash b1 1))))))) |
||||
|
;; float64 _x |
||||
|
(setq _x (sys::peek buf ptr- :double)) (incf ptr- 8) |
||||
|
;; float64 _y |
||||
|
(setq _y (sys::peek buf ptr- :double)) (incf ptr- 8) |
||||
|
;; |
||||
|
self) |
||||
|
) |
||||
|
|
||||
|
(setf (get detect_targets::component_center :md5sum-) "da1879b15a6566f498d1395c2d529084") |
||||
|
(setf (get detect_targets::component_center :datatype-) "detect_targets/component_center") |
||||
|
(setf (get detect_targets::component_center :definition-) |
||||
|
"int64 label |
||||
|
int64 nb_vertex |
||||
|
float64 x |
||||
|
float64 y |
||||
|
|
||||
|
") |
||||
|
|
||||
|
|
||||
|
|
||||
|
(provide :detect_targets/component_center "da1879b15a6566f498d1395c2d529084") |
||||
|
|
||||
|
|
||||
@ -0,0 +1,98 @@ |
|||||
|
;; Auto-generated. Do not edit! |
||||
|
|
||||
|
|
||||
|
(when (boundp 'detect_targets::control) |
||||
|
(if (not (find-package "DETECT_TARGETS")) |
||||
|
(make-package "DETECT_TARGETS")) |
||||
|
(shadow 'control (find-package "DETECT_TARGETS"))) |
||||
|
(unless (find-package "DETECT_TARGETS::CONTROL") |
||||
|
(make-package "DETECT_TARGETS::CONTROL")) |
||||
|
|
||||
|
(in-package "ROS") |
||||
|
;;//! \htmlinclude control.msg.html |
||||
|
|
||||
|
|
||||
|
(defclass detect_targets::control |
||||
|
:super ros::object |
||||
|
:slots (_target _error _derror _cmd_vel )) |
||||
|
|
||||
|
(defmethod detect_targets::control |
||||
|
(:init |
||||
|
(&key |
||||
|
((:target __target) 0.0) |
||||
|
((:error __error) 0.0) |
||||
|
((:derror __derror) 0.0) |
||||
|
((:cmd_vel __cmd_vel) 0.0) |
||||
|
) |
||||
|
(send-super :init) |
||||
|
(setq _target (float __target)) |
||||
|
(setq _error (float __error)) |
||||
|
(setq _derror (float __derror)) |
||||
|
(setq _cmd_vel (float __cmd_vel)) |
||||
|
self) |
||||
|
(:target |
||||
|
(&optional __target) |
||||
|
(if __target (setq _target __target)) _target) |
||||
|
(:error |
||||
|
(&optional __error) |
||||
|
(if __error (setq _error __error)) _error) |
||||
|
(:derror |
||||
|
(&optional __derror) |
||||
|
(if __derror (setq _derror __derror)) _derror) |
||||
|
(:cmd_vel |
||||
|
(&optional __cmd_vel) |
||||
|
(if __cmd_vel (setq _cmd_vel __cmd_vel)) _cmd_vel) |
||||
|
(:serialization-length |
||||
|
() |
||||
|
(+ |
||||
|
;; float64 _target |
||||
|
8 |
||||
|
;; float64 _error |
||||
|
8 |
||||
|
;; float64 _derror |
||||
|
8 |
||||
|
;; float64 _cmd_vel |
||||
|
8 |
||||
|
)) |
||||
|
(:serialize |
||||
|
(&optional strm) |
||||
|
(let ((s (if strm strm |
||||
|
(make-string-output-stream (send self :serialization-length))))) |
||||
|
;; float64 _target |
||||
|
(sys::poke _target (send s :buffer) (send s :count) :double) (incf (stream-count s) 8) |
||||
|
;; float64 _error |
||||
|
(sys::poke _error (send s :buffer) (send s :count) :double) (incf (stream-count s) 8) |
||||
|
;; float64 _derror |
||||
|
(sys::poke _derror (send s :buffer) (send s :count) :double) (incf (stream-count s) 8) |
||||
|
;; float64 _cmd_vel |
||||
|
(sys::poke _cmd_vel (send s :buffer) (send s :count) :double) (incf (stream-count s) 8) |
||||
|
;; |
||||
|
(if (null strm) (get-output-stream-string s)))) |
||||
|
(:deserialize |
||||
|
(buf &optional (ptr- 0)) |
||||
|
;; float64 _target |
||||
|
(setq _target (sys::peek buf ptr- :double)) (incf ptr- 8) |
||||
|
;; float64 _error |
||||
|
(setq _error (sys::peek buf ptr- :double)) (incf ptr- 8) |
||||
|
;; float64 _derror |
||||
|
(setq _derror (sys::peek buf ptr- :double)) (incf ptr- 8) |
||||
|
;; float64 _cmd_vel |
||||
|
(setq _cmd_vel (sys::peek buf ptr- :double)) (incf ptr- 8) |
||||
|
;; |
||||
|
self) |
||||
|
) |
||||
|
|
||||
|
(setf (get detect_targets::control :md5sum-) "6f80b008c55c6a68dec8d378f0b74e50") |
||||
|
(setf (get detect_targets::control :datatype-) "detect_targets/control") |
||||
|
(setf (get detect_targets::control :definition-) |
||||
|
"float64 target |
||||
|
float64 error |
||||
|
float64 derror |
||||
|
float64 cmd_vel |
||||
|
") |
||||
|
|
||||
|
|
||||
|
|
||||
|
(provide :detect_targets/control "6f80b008c55c6a68dec8d378f0b74e50") |
||||
|
|
||||
|
|
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/TriangleParamConfig.h |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/component_center.h |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/include/detect_targets/control.h |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package_component_center.lisp |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/_package_control.lisp |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/component_center.lisp |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/common-lisp/ros/detect_targets/msg/control.lisp |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/TriangleParamConfig-usage.dox |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/TriangleParamConfig.dox |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/detect_targets/docs/TriangleParamConfig.wikidoc |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/component_center.js |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/gennodejs/ros/detect_targets/msg/control.js |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/msg/component_center.l |
||||
@ -0,0 +1 @@ |
|||||
|
/home/klafyvel/Documents/supelec/2A/projet/workspace/devel/.private/detect_targets/share/roseus/ros/detect_targets/msg/control.l |
||||
@ -0,0 +1,37 @@ |
|||||
|
#!/usr/bin/env python |
||||
|
PACKAGE = "detect_targets" |
||||
|
|
||||
|
from dynamic_reconfigure.parameter_generator_catkin import * |
||||
|
|
||||
|
gen = ParameterGenerator() |
||||
|
|
||||
|
gen.add("camera_angle", double_t, 0, "The angle corresponding to the image width", 80, 50, 180) |
||||
|
gen.add("target_width", double_t, 0, "the real target width (m)", 1, 0.01, 1.5) |
||||
|
gen.add("target_depth", double_t, 0, "the real target depth (m)", .2, 0.01, 0.5) |
||||
|
gen.add("distance_to_target", double_t, 0, "The required distance to the target (m)", 2, 1, 5) |
||||
|
gen.add("max_speed", double_t, 0, "the maximal linear speed", .3, .01, 1) |
||||
|
|
||||
|
|
||||
|
gen.add("linear_x_Kp", double_t, 0, "linear.x controller Kp", .01, 0, 1) |
||||
|
gen.add("linear_x_Ki", double_t, 0, "linear.x controller Ki", .01, 0, 1) |
||||
|
gen.add("linear_x_Kd", double_t, 0, "linear.x controller Kd", .01, 0, 1) |
||||
|
gen.add("control_linear_x", bool_t, 0, "Control distance to target", True) |
||||
|
|
||||
|
gen.add("linear_y_Kp", double_t, 0, "linear.y controller Kp", .01, 0, 1) |
||||
|
gen.add("linear_y_Ki", double_t, 0, "linear.y controller Ki", .01, 0, 1) |
||||
|
gen.add("linear_y_Kd", double_t, 0, "linear.y controller Kd", .01, 0, 1) |
||||
|
gen.add("control_linear_y", bool_t, 0, "Controls the facing to target", True) |
||||
|
|
||||
|
gen.add("linear_z_Kp", double_t, 0, "linear.z controller Kp", .1, 0, 10) |
||||
|
gen.add("linear_z_Ki", double_t, 0, "linear.z controller Ki", .1, 0, 10) |
||||
|
gen.add("linear_z_Kd", double_t, 0, "linear.z controller Kd", .1, 0, 10) |
||||
|
gen.add("control_linear_z", bool_t, 0, "Controls the facing to target", True) |
||||
|
|
||||
|
gen.add("angular_z_Kp", double_t, 0, "angular.z controller Kp", .01, 0, 1) |
||||
|
gen.add("angular_z_Ki", double_t, 0, "angular.z controller Ki", .01, 0, 1) |
||||
|
gen.add("angular_z_Kd", double_t, 0, "angular.z controller Kd", .01, 0, 1) |
||||
|
gen.add("control_angular_z", bool_t, 0, "Controls the facing to target", True) |
||||
|
|
||||
|
|
||||
|
|
||||
|
exit(gen.generate(PACKAGE, "detect_targets", "TriangleParam")) |
||||
@ -0,0 +1,4 @@ |
|||||
|
float64 target |
||||
|
float64 error |
||||
|
float64 derror |
||||
|
float64 cmd_vel |
||||
@ -0,0 +1,255 @@ |
|||||
|
#! /usr/bin/env python |
||||
|
# -*- coding: utf-8 -*- |
||||
|
|
||||
|
import math |
||||
|
|
||||
|
import roslib |
||||
|
import rospy |
||||
|
from geometry_msgs.msg import Twist |
||||
|
import tf |
||||
|
|
||||
|
from simple_pid import PID |
||||
|
|
||||
|
import dynamic_reconfigure.server |
||||
|
from detect_targets.cfg import TriangleParamConfig |
||||
|
from detect_targets.msg import control |
||||
|
|
||||
|
from detect_targets.msg import component_centers |
||||
|
|
||||
|
|
||||
|
class TriangleControl: |
||||
|
|
||||
|
def on_reconf(self, config, level): |
||||
|
|
||||
|
self.camera_angle = config['camera_angle']*math.pi/360.0 # theta/2 |
||||
|
self.tan_cam = math.tan(self.camera_angle) |
||||
|
|
||||
|
self.target_width = config['target_width'] |
||||
|
self.target_depth = config['target_depth'] |
||||
|
self.target_distance = config['distance_to_target'] |
||||
|
self.max_speed = config['max_speed'] |
||||
|
|
||||
|
#gains are reversed because of the chosen angle direction |
||||
|
self.pid_angular_z.Kp = - config['angular_z_Kp'] |
||||
|
self.pid_angular_z.Ki = - config['angular_z_Ki'] |
||||
|
self.pid_angular_z.Kd = - config['angular_z_Kd'] |
||||
|
self.pid_angular_z.set_auto_mode(config['control_angular_z'], last_output=0.0) |
||||
|
if not config['control_angular_z']: |
||||
|
self.pid_angular_z._last_output = 0.0 |
||||
|
|
||||
|
self.pid_linear_z.Kp = config['linear_z_Kp'] |
||||
|
self.pid_linear_z.Ki = config['linear_z_Ki'] |
||||
|
self.pid_linear_z.Kd = config['linear_z_Kd'] |
||||
|
self.pid_linear_z.set_auto_mode(config['control_linear_z'], last_output=0.0) |
||||
|
if not config['control_linear_z']: |
||||
|
self.pid_linear_z._last_output = 0.0 |
||||
|
self.pid_linear_z.output_limits = ( |
||||
|
-config['max_speed'], |
||||
|
config['max_speed'] |
||||
|
) |
||||
|
self.pid_linear_y.Kp = config['linear_y_Kp'] |
||||
|
self.pid_linear_y.Ki = config['linear_y_Ki'] |
||||
|
self.pid_linear_y.Kd = config['linear_y_Kd'] |
||||
|
self.pid_linear_y.set_auto_mode(config['control_linear_y'], last_output=0.0) |
||||
|
if not config['control_linear_y']: |
||||
|
self.pid_linear_y._last_output = 0.0 |
||||
|
self.pid_linear_y.output_limits = ( |
||||
|
-config['max_speed'], |
||||
|
config['max_speed'] |
||||
|
) |
||||
|
|
||||
|
# X gains are reversed because of the chosen axis |
||||
|
self.pid_linear_x.Kp = - config['linear_x_Kp'] |
||||
|
self.pid_linear_x.Ki = - config['linear_x_Ki'] |
||||
|
self.pid_linear_x.Kd = - config['linear_x_Kd'] |
||||
|
self.pid_linear_x.set_auto_mode(config['control_linear_x'], last_output=0.0) |
||||
|
if not config['control_linear_x']: |
||||
|
self.pid_linear_x._last_output = 0.0 |
||||
|
self.pid_linear_x.output_limits = ( |
||||
|
-config['max_speed'], |
||||
|
config['max_speed'] |
||||
|
) |
||||
|
self.pid_linear_x.setpoint = self.target_distance |
||||
|
|
||||
|
return config |
||||
|
|
||||
|
def clear_controls(self): |
||||
|
self.error_angular_z.clear() |
||||
|
self.error_linear_z.clear() |
||||
|
self.error_linear_y.clear() |
||||
|
self.error_linear_x.clear() |
||||
|
|
||||
|
def saturate_twist(): |
||||
|
if self.twist.linear.x > self.max_speed: |
||||
|
self.twist.linear.x = self.max_speed |
||||
|
elif self.twist.linear.x < - self.max_speed: |
||||
|
self.twist.linear.x = - self.max_speed |
||||
|
if self.twist.linear.y > self.max_speed: |
||||
|
self.twist.linear.y = self.max_speed |
||||
|
elif self.twist.linear.y < - self.max_speed: |
||||
|
self.twist.linear.y = - self.max_speed |
||||
|
if self.twist.linear.z > self.max_speed: |
||||
|
self.twist.linear.z = self.max_speed |
||||
|
elif self.twist.linear.z < - self.max_speed: |
||||
|
self.twist.linear.z = - self.max_speed |
||||
|
|
||||
|
def on_comp(self, msg): |
||||
|
self.twist = Twist() |
||||
|
if len(msg.data) > 2: |
||||
|
msg.data.sort(key=lambda component: -component.nb_vertex) |
||||
|
pts = msg.data[0:3] |
||||
|
pts.sort(key=lambda component: -component.y) |
||||
|
H = pts[0] |
||||
|
L = pts[2] |
||||
|
R = pts[1] |
||||
|
if pts[1].x < pts[2].x: |
||||
|
L = pts[1] |
||||
|
R = pts[2] |
||||
|
self.triangle(L, H, R) |
||||
|
self.twist_pub.publish(self.twist) |
||||
|
|
||||
|
def triangle(self, L, H, R): |
||||
|
now = rospy.Time.now() |
||||
|
t = (now - self.first_time).to_sec() |
||||
|
self.Gx = (L.x + H.x + R.x)*.333333 |
||||
|
Gy = (L.y + H.y + R.y)*.333333 |
||||
|
w = R.x - L.x |
||||
|
h = H.x - .5 * (R.x + L.x) |
||||
|
|
||||
|
self.alpha = math.atan(h*self.target_width/(1e-5+w*self.target_depth)) |
||||
|
ca = math.cos(self.alpha) |
||||
|
sa = math.sin(self.alpha) |
||||
|
# why *.5.... I don't know. |
||||
|
self.d = self.target_width*ca/(w*self.tan_cam) * .5 |
||||
|
self.z = -Gy*self.d*self.tan_cam |
||||
|
|
||||
|
# print('#######') |
||||
|
#print('d = {}, z = {}, alpha = {}'.format(self.d, self.z, self.alpha*180/math.pi)) |
||||
|
#print('w = {}, h = {}, Gy = {}'.format(w, h, Gy)) |
||||
|
#print('L = {}, l = {}'.format(self.target_width, self.target_depth)) |
||||
|
|
||||
|
self.br.sendTransform((self.d * ca, self.d * sa, self.z), |
||||
|
tf.transformations.quaternion_from_euler( |
||||
|
0, 0, self.alpha + math.pi), |
||||
|
now, |
||||
|
'drone', 'target') |
||||
|
|
||||
|
self.twist.angular.z = self.pid_angular_z(-self.Gx * self.camera_angle) |
||||
|
if self.angular_z_pub.get_num_connections() > 0: |
||||
|
self.angular_z_info.target = 0 |
||||
|
self.angular_z_info.error = 0 |
||||
|
self.angular_z_info.derror = 0 |
||||
|
self.angular_z_info.cmd_vel = self.twist.angular.z |
||||
|
self.angular_z_pub.publish(self.angular_z_info) |
||||
|
|
||||
|
self.twist.linear.z = self.pid_linear_z(self.z) |
||||
|
if self.linear_z_pub.get_num_connections() > 0: |
||||
|
self.linear_z_info.target = 0 |
||||
|
self.linear_z_info.error = self.z |
||||
|
self.linear_z_info.derror = 0 |
||||
|
self.linear_z_info.cmd_vel = self.twist.linear.z |
||||
|
self.linear_z_pub.publish(self.linear_z_info) |
||||
|
|
||||
|
self.twist.linear.y = self.pid_linear_y(-self.alpha) |
||||
|
if self.linear_y_pub.get_num_connections() > 0: |
||||
|
self.linear_y_info.target = 0 |
||||
|
self.linear_y_info.error = -self.alpha |
||||
|
self.linear_y_info.derror = 0 |
||||
|
self.linear_y_info.cmd_vel = self.twist.linear.y |
||||
|
self.linear_y_pub.publish(self.linear_y_info) |
||||
|
|
||||
|
self.twist.linear.x = self.pid_linear_x(self.d) |
||||
|
if self.linear_x_pub.get_num_connections() > 0: |
||||
|
self.linear_x_info.target = self.pid_linear_x.setpoint |
||||
|
self.linear_x_info.error = self.target_distance - self.d |
||||
|
self.linear_x_info.derror = 0 |
||||
|
self.linear_x_info.cmd_vel = self.twist.linear.x |
||||
|
self.linear_x_pub.publish(self.linear_x_info) |
||||
|
|
||||
|
def __init__(self): |
||||
|
|
||||
|
self.Gx = 0 |
||||
|
|
||||
|
self.alpha = 0 |
||||
|
self.d = 0 |
||||
|
self.z = 0 |
||||
|
|
||||
|
self.camera_angle = 80*math.pi/180./2.0 |
||||
|
self.tan_cam = math.tan(self.camera_angle) |
||||
|
self.target_width = 1 |
||||
|
self.target_depth = .2 |
||||
|
self.target_distance = 2 |
||||
|
self.max_speed = .3 |
||||
|
|
||||
|
self.last_time_angular_z = 0 |
||||
|
self.last_time_linear_z = 0 |
||||
|
self.last_time_linear_y = 0 |
||||
|
self.last_time_linear_x = 0 |
||||
|
self.first_time = rospy.Time.now() |
||||
|
|
||||
|
self.pid_angular_z = PID( |
||||
|
1, |
||||
|
0, |
||||
|
0, |
||||
|
auto_mode=True, |
||||
|
sample_time=0.14 # 7 Hz |
||||
|
) |
||||
|
self.pid_linear_z = PID( |
||||
|
1, |
||||
|
0, |
||||
|
0, |
||||
|
auto_mode=True, |
||||
|
sample_time=0.14 |
||||
|
) |
||||
|
self.pid_linear_y = PID( |
||||
|
1, |
||||
|
0, |
||||
|
0, |
||||
|
auto_mode=True, |
||||
|
sample_time=0.14 |
||||
|
) |
||||
|
self.pid_linear_x = PID( |
||||
|
1, |
||||
|
0, |
||||
|
0, |
||||
|
auto_mode=True, |
||||
|
sample_time=0.14, |
||||
|
setpoint=self.target_distance, |
||||
|
) |
||||
|
|
||||
|
# Control info |
||||
|
self.angular_z_info = control() |
||||
|
self.linear_x_info = control() |
||||
|
self.linear_y_info = control() |
||||
|
self.linear_z_info = control() |
||||
|
|
||||
|
# ROS stuff |
||||
|
|
||||
|
self.twist = Twist() |
||||
|
self.twist_pub = rospy.Publisher( |
||||
|
'cmd_vel', Twist, queue_size=1) |
||||
|
self.angular_z_pub = rospy.Publisher( |
||||
|
'angular_z_control', control, queue_size=1) |
||||
|
self.linear_z_pub = rospy.Publisher( |
||||
|
'linear_z_control', control, queue_size=1) |
||||
|
self.linear_y_pub = rospy.Publisher( |
||||
|
'linear_y_control', control, queue_size=1) |
||||
|
self.linear_x_pub = rospy.Publisher( |
||||
|
'linear_x_control', control, queue_size=1) |
||||
|
self.comp_sub = rospy.Subscriber( |
||||
|
"component_centers", component_centers, self.on_comp, queue_size=1) |
||||
|
|
||||
|
self.config_srv = dynamic_reconfigure.server.Server( |
||||
|
TriangleParamConfig, self.on_reconf) |
||||
|
|
||||
|
self.br = tf.TransformBroadcaster() |
||||
|
|
||||
|
|
||||
|
if __name__ == '__main__': |
||||
|
print "running" |
||||
|
rospy.init_node('triangle_control', anonymous=True) |
||||
|
|
||||
|
print "node created" |
||||
|
|
||||
|
triangle = TriangleControl() |
||||
|
rospy.spin() |
||||
Loading…
Reference in new issue