diff --git a/CMakeLists.txt b/CMakeLists.txt index 57f81fc66974d1ed77ae03ba94bb4cff4c5d4a42..b81d81565055d5d8e7a47fa65c28d5782b9b0522 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -153,6 +153,7 @@ set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) add_subdirectory(components/common/cpp) add_subdirectory(components/net) add_subdirectory(components/rgbd-sources) +add_subdirectory(components/control/cpp) if (BUILD_RENDERER) add_subdirectory(components/renderers) diff --git a/applications/vision/CMakeLists.txt b/applications/vision/CMakeLists.txt index 00cf2abafb0bbe91327823ffb81bf73b39e5d7cc..5ce6c5240cd9fc81de29eb688984dccb01c7a5be 100644 --- a/applications/vision/CMakeLists.txt +++ b/applications/vision/CMakeLists.txt @@ -22,6 +22,6 @@ set_property(TARGET ftl-vision PROPERTY CUDA_SEPARABLE_COMPILATION OFF) endif() #target_include_directories(cv-node PUBLIC ${PROJECT_SOURCE_DIR}/include) -target_link_libraries(ftl-vision ftlrgbd ftlcommon ftlrender Threads::Threads ${OpenCV_LIBS} ${LIBSGM_LIBRARIES} ${CUDA_LIBRARIES} glog::glog ftlnet) +target_link_libraries(ftl-vision ftlrgbd ftlcommon ftlctrl ftlrender ${OpenCV_LIBS} ${LIBSGM_LIBRARIES} ${CUDA_LIBRARIES} ftlnet) diff --git a/applications/vision/src/main.cpp b/applications/vision/src/main.cpp index 149dceba5578b5b07733e4526d33e4ff234b44bf..bb77b0810c810cded5c1a74eec432b1ee47fa8f2 100644 --- a/applications/vision/src/main.cpp +++ b/applications/vision/src/main.cpp @@ -24,7 +24,7 @@ #include <ftl/display.hpp> #include <ftl/rgbd_streamer.hpp> #include <ftl/net/universe.hpp> -#include <ftl/net/slave.hpp> +#include <ftl/slave.hpp> #include <nlohmann/json.hpp> #include "opencv2/imgproc.hpp" @@ -81,7 +81,7 @@ void disparityToDepth(const cv::Mat &disparity, cv::Mat &depth, const cv::Mat &q static void run(ftl::Configurable *root) { Universe *net = ftl::create<Universe>(root, "net"); - ftl::net::Slave slave(net, root); + ftl::ctrl::Slave slave(net, root); auto paths = root->get<vector<string>>("paths"); string file = ""; diff --git a/components/control/cpp/CMakeLists.txt b/components/control/cpp/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..9a27600480d26175e27f29f0318f8155c5267d5e --- /dev/null +++ b/components/control/cpp/CMakeLists.txt @@ -0,0 +1,17 @@ +add_library(ftlctrl + src/slave.cpp +) + +target_include_directories(ftlctrl PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> + $<INSTALL_INTERFACE:include> + PRIVATE src) +target_link_libraries(ftlctrl ftlcommon ftlnet) + +install(TARGETS ftlctrl EXPORT ftlctrl-config + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +install(DIRECTORY include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + +#ADD_SUBDIRECTORY(test) diff --git a/components/control/cpp/include/ftl/slave.hpp b/components/control/cpp/include/ftl/slave.hpp new file mode 100644 index 0000000000000000000000000000000000000000..e61290d630c1f10bd38335b228d9657b17ab6de7 --- /dev/null +++ b/components/control/cpp/include/ftl/slave.hpp @@ -0,0 +1,19 @@ +#ifndef _FTL_CTRL_SLAVE_HPP_ +#define _FTL_CTRL_SLAVE_HPP_ + +#include <ftl/net/universe.hpp> +#include <ftl/configurable.hpp> + +namespace ftl { +namespace ctrl { + +class Slave { + public: + Slave(ftl::net::Universe *, ftl::Configurable *); + ~Slave(); +}; + +} +} + +#endif // _FTL_CTRL_SLAVE_HPP_ diff --git a/components/net/cpp/src/slave.cpp b/components/control/cpp/src/slave.cpp similarity index 91% rename from components/net/cpp/src/slave.cpp rename to components/control/cpp/src/slave.cpp index 77394adc73b97b6abdd114ca41d9909d2ecd1c38..6138be4676a34f6121562080b7a1d3fbd59a6037 100644 --- a/components/net/cpp/src/slave.cpp +++ b/components/control/cpp/src/slave.cpp @@ -1,9 +1,9 @@ -#include <ftl/net/slave.hpp> +#include <ftl/slave.hpp> #include <loguru.hpp> using ftl::Configurable; using ftl::net::Universe; -using ftl::net::Slave; +using ftl::ctrl::Slave; static void netLog(void* user_data, const loguru::Message& message) { Universe *net = (Universe*)user_data; diff --git a/components/net/cpp/CMakeLists.txt b/components/net/cpp/CMakeLists.txt index ef4a7aaba9b8657e6be07fc2c693ae8aa5cc594e..c7e8bb34119a6b2f70b5a34b6e4b7e4911fe465f 100644 --- a/components/net/cpp/CMakeLists.txt +++ b/components/net/cpp/CMakeLists.txt @@ -9,7 +9,6 @@ add_library(ftlnet src/dispatcher.cpp src/universe.cpp src/ws_internal.cpp - src/slave.cpp ) target_include_directories(ftlnet PUBLIC diff --git a/components/net/cpp/include/ftl/net/slave.hpp b/components/net/cpp/include/ftl/net/slave.hpp deleted file mode 100644 index d973f6aefca9c1d2ec55d3e29a8c79ef397b5833..0000000000000000000000000000000000000000 --- a/components/net/cpp/include/ftl/net/slave.hpp +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef _FTL_NET_SLAVE_HPP_ -#define _FTL_NET_SLAVE_HPP_ - -#include <ftl/net/universe.hpp> -#include <ftl/configurable.hpp> - -namespace ftl { -namespace net { - -class Slave { - public: - Slave(Universe *, ftl::Configurable *); - ~Slave(); -}; - -} -} - -#endif // _FTL_NET_SLAVE_HPP_