From 4bbde0df8ca38c7a06c97c71e4889222cd04ae88 Mon Sep 17 00:00:00 2001 From: ChristophTobler Date: Fri, 3 Aug 2018 09:16:03 +0200 Subject: [PATCH] FlightTasks: move FlightTask to own folder/lib fix header includes add cmake subdirectories dynamically --- src/lib/FlightTasks/FlightTasks.hpp | 4 +- src/lib/FlightTasks/tasks/Auto/CMakeLists.txt | 2 +- src/lib/FlightTasks/tasks/CMakeLists.txt | 24 ++++-------- .../tasks/FlightTask/CMakeLists.txt | 39 +++++++++++++++++++ .../tasks/{ => FlightTask}/FlightTask.cpp | 0 .../tasks/{ => FlightTask}/FlightTask.hpp | 0 .../{ => FlightTask}/SubscriptionArray.cpp | 0 .../{ => FlightTask}/SubscriptionArray.hpp | 0 .../FlightTasks/tasks/Manual/CMakeLists.txt | 2 +- .../FlightTaskManualAltitudeSmooth.hpp | 2 +- .../FlightTaskManualPositionSmooth.hpp | 4 +- .../FlightTasks/tasks/Offboard/CMakeLists.txt | 2 +- 12 files changed, 54 insertions(+), 25 deletions(-) create mode 100644 src/lib/FlightTasks/tasks/FlightTask/CMakeLists.txt rename src/lib/FlightTasks/tasks/{ => FlightTask}/FlightTask.cpp (100%) rename src/lib/FlightTasks/tasks/{ => FlightTask}/FlightTask.hpp (100%) rename src/lib/FlightTasks/tasks/{ => FlightTask}/SubscriptionArray.cpp (100%) rename src/lib/FlightTasks/tasks/{ => FlightTask}/SubscriptionArray.hpp (100%) diff --git a/src/lib/FlightTasks/FlightTasks.hpp b/src/lib/FlightTasks/FlightTasks.hpp index 1676bd3176..235a6820e4 100644 --- a/src/lib/FlightTasks/FlightTasks.hpp +++ b/src/lib/FlightTasks/FlightTasks.hpp @@ -41,8 +41,8 @@ #pragma once -#include "tasks/FlightTask.hpp" -#include "tasks/SubscriptionArray.hpp" +#include "FlightTask.hpp" +#include "SubscriptionArray.hpp" #include "FlightTasks_generated.hpp" #include diff --git a/src/lib/FlightTasks/tasks/Auto/CMakeLists.txt b/src/lib/FlightTasks/tasks/Auto/CMakeLists.txt index 7befec7fff..e3a4030f38 100644 --- a/src/lib/FlightTasks/tasks/Auto/CMakeLists.txt +++ b/src/lib/FlightTasks/tasks/Auto/CMakeLists.txt @@ -36,4 +36,4 @@ px4_add_library(FlightTaskAuto ) target_link_libraries(FlightTaskAuto PUBLIC FlightTask) -target_include_directories(FlightTaskAuto PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ../) +target_include_directories(FlightTaskAuto PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/src/lib/FlightTasks/tasks/CMakeLists.txt b/src/lib/FlightTasks/tasks/CMakeLists.txt index ec5540d6b2..ace1c7d5a7 100644 --- a/src/lib/FlightTasks/tasks/CMakeLists.txt +++ b/src/lib/FlightTasks/tasks/CMakeLists.txt @@ -31,24 +31,14 @@ # ############################################################################ -px4_add_library(FlightTask - FlightTask.cpp - SubscriptionArray.cpp -) - -target_include_directories(FlightTask PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) - +# add the core Flight tasks that the additional flight tasks depend on +add_subdirectory(FlightTask) add_subdirectory(Utility) add_subdirectory(Manual) -add_subdirectory(ManualAltitude) -add_subdirectory(ManualAltitudeSmooth) -add_subdirectory(ManualPosition) -add_subdirectory(ManualPositionSmooth) -add_subdirectory(ManualStabilized) -add_subdirectory(Sport) add_subdirectory(Auto) add_subdirectory(AutoMapper) -add_subdirectory(AutoLine) -add_subdirectory(AutoFollowMe) -add_subdirectory(Offboard) -add_subdirectory(Orbit) \ No newline at end of file + +# add all additional flight tasks +foreach(task ${flight_tasks_all}) + add_subdirectory(${task}) +endforeach() \ No newline at end of file diff --git a/src/lib/FlightTasks/tasks/FlightTask/CMakeLists.txt b/src/lib/FlightTasks/tasks/FlightTask/CMakeLists.txt new file mode 100644 index 0000000000..bc83cc84e5 --- /dev/null +++ b/src/lib/FlightTasks/tasks/FlightTask/CMakeLists.txt @@ -0,0 +1,39 @@ +############################################################################ +# +# Copyright (c) 2018 PX4 Development Team. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name PX4 nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +px4_add_library(FlightTask + FlightTask.cpp + SubscriptionArray.cpp +) + +target_include_directories(FlightTask PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/src/lib/FlightTasks/tasks/FlightTask.cpp b/src/lib/FlightTasks/tasks/FlightTask/FlightTask.cpp similarity index 100% rename from src/lib/FlightTasks/tasks/FlightTask.cpp rename to src/lib/FlightTasks/tasks/FlightTask/FlightTask.cpp diff --git a/src/lib/FlightTasks/tasks/FlightTask.hpp b/src/lib/FlightTasks/tasks/FlightTask/FlightTask.hpp similarity index 100% rename from src/lib/FlightTasks/tasks/FlightTask.hpp rename to src/lib/FlightTasks/tasks/FlightTask/FlightTask.hpp diff --git a/src/lib/FlightTasks/tasks/SubscriptionArray.cpp b/src/lib/FlightTasks/tasks/FlightTask/SubscriptionArray.cpp similarity index 100% rename from src/lib/FlightTasks/tasks/SubscriptionArray.cpp rename to src/lib/FlightTasks/tasks/FlightTask/SubscriptionArray.cpp diff --git a/src/lib/FlightTasks/tasks/SubscriptionArray.hpp b/src/lib/FlightTasks/tasks/FlightTask/SubscriptionArray.hpp similarity index 100% rename from src/lib/FlightTasks/tasks/SubscriptionArray.hpp rename to src/lib/FlightTasks/tasks/FlightTask/SubscriptionArray.hpp diff --git a/src/lib/FlightTasks/tasks/Manual/CMakeLists.txt b/src/lib/FlightTasks/tasks/Manual/CMakeLists.txt index 67883d1e66..d652960d94 100644 --- a/src/lib/FlightTasks/tasks/Manual/CMakeLists.txt +++ b/src/lib/FlightTasks/tasks/Manual/CMakeLists.txt @@ -36,4 +36,4 @@ px4_add_library(FlightTaskManual ) target_link_libraries(FlightTaskManual PUBLIC FlightTask) -target_include_directories(FlightTaskManual PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ../) +target_include_directories(FlightTaskManual PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/src/lib/FlightTasks/tasks/ManualAltitudeSmooth/FlightTaskManualAltitudeSmooth.hpp b/src/lib/FlightTasks/tasks/ManualAltitudeSmooth/FlightTaskManualAltitudeSmooth.hpp index a9dac031f7..2d50d65c1c 100644 --- a/src/lib/FlightTasks/tasks/ManualAltitudeSmooth/FlightTaskManualAltitudeSmooth.hpp +++ b/src/lib/FlightTasks/tasks/ManualAltitudeSmooth/FlightTaskManualAltitudeSmooth.hpp @@ -40,7 +40,7 @@ #pragma once #include "FlightTaskManualAltitude.hpp" -#include "Utility/ManualSmoothingZ.hpp" +#include "ManualSmoothingZ.hpp" class FlightTaskManualAltitudeSmooth : public FlightTaskManualAltitude { diff --git a/src/lib/FlightTasks/tasks/ManualPositionSmooth/FlightTaskManualPositionSmooth.hpp b/src/lib/FlightTasks/tasks/ManualPositionSmooth/FlightTaskManualPositionSmooth.hpp index c653a1fdf5..a9c6fdaccb 100644 --- a/src/lib/FlightTasks/tasks/ManualPositionSmooth/FlightTaskManualPositionSmooth.hpp +++ b/src/lib/FlightTasks/tasks/ManualPositionSmooth/FlightTaskManualPositionSmooth.hpp @@ -40,8 +40,8 @@ #pragma once #include "FlightTaskManualPosition.hpp" -#include "Utility/ManualSmoothingXY.hpp" -#include "Utility/ManualSmoothingZ.hpp" +#include "ManualSmoothingXY.hpp" +#include "ManualSmoothingZ.hpp" class FlightTaskManualPositionSmooth : public FlightTaskManualPosition { diff --git a/src/lib/FlightTasks/tasks/Offboard/CMakeLists.txt b/src/lib/FlightTasks/tasks/Offboard/CMakeLists.txt index 124372d976..df9abd8351 100644 --- a/src/lib/FlightTasks/tasks/Offboard/CMakeLists.txt +++ b/src/lib/FlightTasks/tasks/Offboard/CMakeLists.txt @@ -36,4 +36,4 @@ px4_add_library(FlightTaskOffboard ) target_link_libraries(FlightTaskOffboard PUBLIC FlightTask) -target_include_directories(FlightTaskOffboard PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ../) +target_include_directories(FlightTaskOffboard PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})