separated merge and ui drawing pipelines, greatly improved efficiciency
continuous-integration/drone/push Build encountered an error Details

opengl
Yorick GEOFFRE 3 years ago
parent 4854ee7705
commit db728a5adf

@ -30,90 +30,21 @@ set(CMAKE_MAKEFILE_DEPENDS
"/usr/local/lib/cmake/opencv4/OpenCVConfig.cmake"
"/usr/local/lib/cmake/opencv4/OpenCVModules-release.cmake"
"/usr/local/lib/cmake/opencv4/OpenCVModules.cmake"
"/usr/share/cmake-3.22/Modules/CMakeCCompiler.cmake.in"
"/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c"
"/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake"
"/usr/share/cmake-3.22/Modules/CMakeCXXCompiler.cmake.in"
"/usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp"
"/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake"
"/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"
"/usr/share/cmake-3.22/Modules/CMakeCompilerIdDetection.cmake"
"/usr/share/cmake-3.22/Modules/CMakeDetermineCCompiler.cmake"
"/usr/share/cmake-3.22/Modules/CMakeDetermineCXXCompiler.cmake"
"/usr/share/cmake-3.22/Modules/CMakeDetermineCompileFeatures.cmake"
"/usr/share/cmake-3.22/Modules/CMakeDetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerABI.cmake"
"/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerId.cmake"
"/usr/share/cmake-3.22/Modules/CMakeDetermineSystem.cmake"
"/usr/share/cmake-3.22/Modules/CMakeFindBinUtils.cmake"
"/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake"
"/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake"
"/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"
"/usr/share/cmake-3.22/Modules/CMakeParseImplicitIncludeInfo.cmake"
"/usr/share/cmake-3.22/Modules/CMakeParseImplicitLinkInfo.cmake"
"/usr/share/cmake-3.22/Modules/CMakeParseLibraryArchitecture.cmake"
"/usr/share/cmake-3.22/Modules/CMakeSystem.cmake.in"
"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake"
"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake"
"/usr/share/cmake-3.22/Modules/CMakeTestCCompiler.cmake"
"/usr/share/cmake-3.22/Modules/CMakeTestCXXCompiler.cmake"
"/usr/share/cmake-3.22/Modules/CMakeTestCompilerCommon.cmake"
"/usr/share/cmake-3.22/Modules/CMakeUnixFindMake.cmake"
"/usr/share/cmake-3.22/Modules/CheckCSourceCompiles.cmake"
"/usr/share/cmake-3.22/Modules/CheckIncludeFile.c.in"
"/usr/share/cmake-3.22/Modules/CheckIncludeFile.cmake"
"/usr/share/cmake-3.22/Modules/CheckLibraryExists.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/ADSP-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Borland-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Cray-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/GHS-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/GNU-FindBinUtils.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/HP-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/HP-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/IAR-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Intel-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/MSVC-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/PGI-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/PathScale-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/SCO-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/TI-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/Watcom-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/XL-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/XL-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake"
"/usr/share/cmake-3.22/Modules/FindGLUT.cmake"
"/usr/share/cmake-3.22/Modules/FindOpenGL.cmake"
"/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake"
@ -121,8 +52,6 @@ set(CMAKE_MAKEFILE_DEPENDS
"/usr/share/cmake-3.22/Modules/FindPkgConfig.cmake"
"/usr/share/cmake-3.22/Modules/FindThreads.cmake"
"/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake"
"/usr/share/cmake-3.22/Modules/Internal/FeatureTesting.cmake"
"/usr/share/cmake-3.22/Modules/Platform/Linux-Determine-CXX.cmake"
"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake"
"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake"
"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"
@ -139,11 +68,6 @@ set(CMAKE_MAKEFILE_OUTPUTS
# Byproducts of CMake generate step:
set(CMAKE_MAKEFILE_PRODUCTS
"CMakeFiles/3.22.1/CMakeSystem.cmake"
"CMakeFiles/3.22.1/CMakeCCompiler.cmake"
"CMakeFiles/3.22.1/CMakeCXXCompiler.cmake"
"CMakeFiles/3.22.1/CMakeCCompiler.cmake"
"CMakeFiles/3.22.1/CMakeCXXCompiler.cmake"
"CMakeFiles/CMakeDirectoryInformation.cmake"
"perfcheckers/CMakeFiles/CMakeDirectoryInformation.cmake"
"threadweaver/CMakeFiles/CMakeDirectoryInformation.cmake"

@ -212,12 +212,12 @@ CMakeFiles/prog.dir/all: ui/CMakeFiles/ui.dir/all
CMakeFiles/prog.dir/all: hw/CMakeFiles/hw.dir/all
$(MAKE) $(MAKESILENT) -f CMakeFiles/prog.dir/build.make CMakeFiles/prog.dir/depend
$(MAKE) $(MAKESILENT) -f CMakeFiles/prog.dir/build.make CMakeFiles/prog.dir/build
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=11,12 "Built target prog"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=11,12,13 "Built target prog"
.PHONY : CMakeFiles/prog.dir/all
# Build rule for subdir invocation for target.
CMakeFiles/prog.dir/rule: cmake_check_build_system
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 22
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 25
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/prog.dir/all
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 0
.PHONY : CMakeFiles/prog.dir/rule
@ -261,15 +261,15 @@ perfcheckers/CMakeFiles/perfcheckers.dir/clean:
# Target rules for target threadweaver/CMakeFiles/threadweaver.dir
# All Build rule for target.
threadweaver/CMakeFiles/threadweaver.dir/all:
threadweaver/CMakeFiles/threadweaver.dir/all: perfcheckers/CMakeFiles/perfcheckers.dir/all
$(MAKE) $(MAKESILENT) -f threadweaver/CMakeFiles/threadweaver.dir/build.make threadweaver/CMakeFiles/threadweaver.dir/depend
$(MAKE) $(MAKESILENT) -f threadweaver/CMakeFiles/threadweaver.dir/build.make threadweaver/CMakeFiles/threadweaver.dir/build
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=15,16 "Built target threadweaver"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=16,17 "Built target threadweaver"
.PHONY : threadweaver/CMakeFiles/threadweaver.dir/all
# Build rule for subdir invocation for target.
threadweaver/CMakeFiles/threadweaver.dir/rule: cmake_check_build_system
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 2
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 5
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 threadweaver/CMakeFiles/threadweaver.dir/all
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 0
.PHONY : threadweaver/CMakeFiles/threadweaver.dir/rule
@ -343,7 +343,7 @@ cameras/CMakeFiles/cameras.dir/clean:
psvr/CMakeFiles/psvr.dir/all: ihidapi/CMakeFiles/ihidapi.dir/all
$(MAKE) $(MAKESILENT) -f psvr/CMakeFiles/psvr.dir/build.make psvr/CMakeFiles/psvr.dir/depend
$(MAKE) $(MAKESILENT) -f psvr/CMakeFiles/psvr.dir/build.make psvr/CMakeFiles/psvr.dir/build
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=13,14 "Built target psvr"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=14,15 "Built target psvr"
.PHONY : psvr/CMakeFiles/psvr.dir/all
# Build rule for subdir invocation for target.
@ -373,12 +373,12 @@ ui/CMakeFiles/ui.dir/all: cameras/CMakeFiles/cameras.dir/all
ui/CMakeFiles/ui.dir/all: psvr/CMakeFiles/psvr.dir/all
$(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/depend
$(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/build
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=17,18,19,20,21,22 "Built target ui"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=18,19,20,21,22,23,24,25 "Built target ui"
.PHONY : ui/CMakeFiles/ui.dir/all
# Build rule for subdir invocation for target.
ui/CMakeFiles/ui.dir/rule: cmake_check_build_system
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 18
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 20
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ui/CMakeFiles/ui.dir/all
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 0
.PHONY : ui/CMakeFiles/ui.dir/rule
@ -409,7 +409,7 @@ hw/CMakeFiles/hw.dir/all: ui/CMakeFiles/ui.dir/all
# Build rule for subdir invocation for target.
hw/CMakeFiles/hw.dir/rule: cmake_check_build_system
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 20
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 22
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 hw/CMakeFiles/hw.dir/all
$(CMAKE_COMMAND) -E cmake_progress_start /home/kanken/code/AHRS_core/src/CMakeFiles 0
.PHONY : hw/CMakeFiles/hw.dir/rule

@ -9,6 +9,7 @@ set(CMAKE_DEPENDS_LANGUAGES
# The set of dependency files which are needed:
set(CMAKE_DEPENDS_DEPENDENCY_FILES
"/home/kanken/code/AHRS_core/src/main.cpp" "CMakeFiles/prog.dir/main.cpp.o" "gcc" "CMakeFiles/prog.dir/main.cpp.o.d"
"/home/kanken/code/AHRS_core/src/topLevelManager.cpp" "CMakeFiles/prog.dir/topLevelManager.cpp.o" "gcc" "CMakeFiles/prog.dir/topLevelManager.cpp.o.d"
)
# Targets to which this target links.

@ -83,14 +83,30 @@ CMakeFiles/prog.dir/main.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/prog.dir/main.cpp.s"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/main.cpp -o CMakeFiles/prog.dir/main.cpp.s
CMakeFiles/prog.dir/topLevelManager.cpp.o: CMakeFiles/prog.dir/flags.make
CMakeFiles/prog.dir/topLevelManager.cpp.o: topLevelManager.cpp
CMakeFiles/prog.dir/topLevelManager.cpp.o: CMakeFiles/prog.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/prog.dir/topLevelManager.cpp.o"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/prog.dir/topLevelManager.cpp.o -MF CMakeFiles/prog.dir/topLevelManager.cpp.o.d -o CMakeFiles/prog.dir/topLevelManager.cpp.o -c /home/kanken/code/AHRS_core/src/topLevelManager.cpp
CMakeFiles/prog.dir/topLevelManager.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/prog.dir/topLevelManager.cpp.i"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/topLevelManager.cpp > CMakeFiles/prog.dir/topLevelManager.cpp.i
CMakeFiles/prog.dir/topLevelManager.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/prog.dir/topLevelManager.cpp.s"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/topLevelManager.cpp -o CMakeFiles/prog.dir/topLevelManager.cpp.s
# Object files for target prog
prog_OBJECTS = \
"CMakeFiles/prog.dir/main.cpp.o"
"CMakeFiles/prog.dir/main.cpp.o" \
"CMakeFiles/prog.dir/topLevelManager.cpp.o"
# External object files for target prog
prog_EXTERNAL_OBJECTS =
prog: CMakeFiles/prog.dir/main.cpp.o
prog: CMakeFiles/prog.dir/topLevelManager.cpp.o
prog: CMakeFiles/prog.dir/build.make
prog: hw/libhw.a
prog: ui/libui.a
@ -157,7 +173,7 @@ prog: /usr/local/lib/libopencv_core.so.4.6.0
prog: threadweaver/libthreadweaver.a
prog: perfcheckers/libperfcheckers.a
prog: CMakeFiles/prog.dir/link.txt
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable prog"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking CXX executable prog"
$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/prog.dir/link.txt --verbose=$(VERBOSE)
# Rule to build all files generated by this target.

@ -1,6 +1,8 @@
file(REMOVE_RECURSE
"CMakeFiles/prog.dir/main.cpp.o"
"CMakeFiles/prog.dir/main.cpp.o.d"
"CMakeFiles/prog.dir/topLevelManager.cpp.o"
"CMakeFiles/prog.dir/topLevelManager.cpp.o.d"
"prog"
"prog.pdb"
)

@ -199,6 +199,30 @@ CMakeFiles/prog.dir/main.cpp.o
/usr/include/c++/11/limits
/usr/include/c++/11/ctime
/usr/include/c++/11/bits/parse_numbers.h
/usr/include/c++/11/future
/usr/include/c++/11/mutex
/usr/include/c++/11/tuple
/usr/include/c++/11/utility
/usr/include/c++/11/bits/stl_relops.h
/usr/include/c++/11/array
/usr/include/c++/11/bits/uses_allocator.h
/usr/include/c++/11/bits/invoke.h
/usr/include/c++/11/bits/std_mutex.h
/usr/include/c++/11/bits/unique_lock.h
/usr/include/c++/11/condition_variable
/usr/include/c++/11/bits/shared_ptr.h
/usr/include/c++/11/bits/shared_ptr_base.h
/usr/include/c++/11/bits/allocated_ptr.h
/usr/include/c++/11/bits/refwrap.h
/usr/include/c++/11/bits/unique_ptr.h
/usr/include/c++/11/ext/aligned_buffer.h
/usr/include/c++/11/ext/concurrence.h
/usr/include/c++/11/atomic
/usr/include/c++/11/bits/atomic_base.h
/usr/include/c++/11/bits/atomic_lockfree_defines.h
/usr/include/c++/11/bits/atomic_futex.h
/usr/include/c++/11/bits/std_function.h
/usr/include/c++/11/bits/std_thread.h
/home/kanken/code/AHRS_core/src/hw/serial.hpp
/usr/include/fcntl.h
/usr/include/x86_64-linux-gnu/bits/fcntl.h
@ -220,15 +244,6 @@ CMakeFiles/prog.dir/main.cpp.o
/usr/include/x86_64-linux-gnu/bits/termios-misc.h
/usr/include/x86_64-linux-gnu/sys/ttydefaults.h
/usr/include/c++/11/thread
/usr/include/c++/11/bits/std_thread.h
/usr/include/c++/11/tuple
/usr/include/c++/11/utility
/usr/include/c++/11/bits/stl_relops.h
/usr/include/c++/11/array
/usr/include/c++/11/bits/uses_allocator.h
/usr/include/c++/11/bits/invoke.h
/usr/include/c++/11/bits/refwrap.h
/usr/include/c++/11/bits/unique_ptr.h
/usr/include/c++/11/bits/this_thread_sleep.h
/usr/include/c++/11/vector
/usr/include/c++/11/bits/stl_uninitialized.h
@ -238,13 +253,11 @@ CMakeFiles/prog.dir/main.cpp.o
/home/kanken/code/AHRS_core/src/ui/_ui.hpp
/usr/include/c++/11/map
/usr/include/c++/11/bits/stl_tree.h
/usr/include/c++/11/ext/aligned_buffer.h
/usr/include/c++/11/bits/node_handle.h
/usr/include/c++/11/bits/stl_map.h
/usr/include/c++/11/bits/stl_multimap.h
/usr/include/c++/11/bits/erase_if.h
/usr/include/c++/11/functional
/usr/include/c++/11/bits/std_function.h
/usr/include/c++/11/unordered_map
/usr/include/c++/11/bits/hashtable.h
/usr/include/c++/11/bits/hashtable_policy.h
@ -266,13 +279,7 @@ CMakeFiles/prog.dir/main.cpp.o
/usr/include/c++/11/bits/stl_raw_storage_iter.h
/usr/include/c++/11/bits/align.h
/usr/include/c++/11/bit
/usr/include/c++/11/bits/shared_ptr.h
/usr/include/c++/11/bits/shared_ptr_base.h
/usr/include/c++/11/bits/allocated_ptr.h
/usr/include/c++/11/ext/concurrence.h
/usr/include/c++/11/bits/shared_ptr_atomic.h
/usr/include/c++/11/bits/atomic_base.h
/usr/include/c++/11/bits/atomic_lockfree_defines.h
/usr/include/c++/11/backward/auto_ptr.h
/usr/include/c++/11/pstl/glue_memory_defs.h
/usr/include/c++/11/pstl/execution_defs.h
@ -327,7 +334,6 @@ CMakeFiles/prog.dir/main.cpp.o
/usr/include/oneapi/tbb/detail/_config.h
/usr/include/oneapi/tbb/detail/_export.h
/usr/include/oneapi/tbb/detail/_utils.h
/usr/include/c++/11/atomic
/usr/include/oneapi/tbb/detail/_assert.h
/usr/include/oneapi/tbb/detail/_machine.h
/usr/include/c++/11/climits
@ -435,9 +441,6 @@ CMakeFiles/prog.dir/main.cpp.o
/usr/include/oneapi/tbb/detail/_small_object_pool.h
/usr/include/oneapi/tbb/profiling.h
/usr/include/oneapi/tbb/detail/_string_resource.h
/usr/include/c++/11/mutex
/usr/include/c++/11/bits/std_mutex.h
/usr/include/c++/11/bits/unique_lock.h
/usr/include/oneapi/tbb/detail/_small_object_pool.h
/usr/include/oneapi/tbb/profiling.h
/usr/include/oneapi/tbb/partitioner.h
@ -642,7 +645,649 @@ CMakeFiles/prog.dir/main.cpp.o
/usr/local/include/opencv4/opencv2/core/opengl.hpp
/usr/local/include/opencv4/opencv2/core/ocl.hpp
/usr/include/c++/11/typeindex
CMakeFiles/prog.dir/topLevelManager.cpp.o
/home/kanken/code/AHRS_core/src/topLevelManager.cpp
/usr/include/stdc-predef.h
/home/kanken/code/AHRS_core/src/main.hpp
/usr/include/stdio.h
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h
/usr/include/features.h
/usr/include/features-time64.h
/usr/include/x86_64-linux-gnu/bits/wordsize.h
/usr/include/x86_64-linux-gnu/bits/timesize.h
/usr/include/x86_64-linux-gnu/sys/cdefs.h
/usr/include/x86_64-linux-gnu/bits/long-double.h
/usr/include/x86_64-linux-gnu/gnu/stubs.h
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h
/usr/include/x86_64-linux-gnu/bits/types.h
/usr/include/x86_64-linux-gnu/bits/typesizes.h
/usr/include/x86_64-linux-gnu/bits/time64.h
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h
/usr/include/x86_64-linux-gnu/bits/types/FILE.h
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h
/usr/include/x86_64-linux-gnu/bits/floatn.h
/usr/include/x86_64-linux-gnu/bits/floatn-common.h
/usr/include/wchar.h
/usr/include/x86_64-linux-gnu/bits/wchar.h
/usr/include/x86_64-linux-gnu/bits/types/wint_t.h
/usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h
/usr/include/string.h
/usr/include/strings.h
/usr/include/c++/11/stdlib.h
/usr/include/c++/11/cstdlib
/usr/include/x86_64-linux-gnu/c++/11/bits/c++config.h
/usr/include/x86_64-linux-gnu/c++/11/bits/os_defines.h
/usr/include/x86_64-linux-gnu/c++/11/bits/cpu_defines.h
/usr/include/c++/11/pstl/pstl_config.h
/usr/include/stdlib.h
/usr/include/x86_64-linux-gnu/bits/waitflags.h
/usr/include/x86_64-linux-gnu/bits/waitstatus.h
/usr/include/x86_64-linux-gnu/sys/types.h
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h
/usr/include/x86_64-linux-gnu/bits/types/time_t.h
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h
/usr/include/endian.h
/usr/include/x86_64-linux-gnu/bits/endian.h
/usr/include/x86_64-linux-gnu/bits/endianness.h
/usr/include/x86_64-linux-gnu/bits/byteswap.h
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h
/usr/include/x86_64-linux-gnu/sys/select.h
/usr/include/x86_64-linux-gnu/bits/select.h
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h
/usr/include/alloca.h
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h
/usr/include/c++/11/bits/std_abs.h
/usr/include/unistd.h
/usr/include/x86_64-linux-gnu/bits/posix_opt.h
/usr/include/x86_64-linux-gnu/bits/environments.h
/usr/include/x86_64-linux-gnu/bits/confname.h
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h
/usr/include/x86_64-linux-gnu/bits/getopt_core.h
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h
/usr/include/linux/close_range.h
/usr/include/c++/11/iostream
/usr/include/c++/11/ostream
/usr/include/c++/11/ios
/usr/include/c++/11/iosfwd
/usr/include/c++/11/bits/stringfwd.h
/usr/include/c++/11/bits/memoryfwd.h
/usr/include/c++/11/bits/postypes.h
/usr/include/c++/11/cwchar
/usr/include/c++/11/exception
/usr/include/c++/11/bits/exception.h
/usr/include/c++/11/bits/exception_ptr.h
/usr/include/c++/11/bits/exception_defines.h
/usr/include/c++/11/bits/cxxabi_init_exception.h
/usr/include/c++/11/typeinfo
/usr/include/c++/11/bits/hash_bytes.h
/usr/include/c++/11/new
/usr/include/c++/11/bits/move.h
/usr/include/c++/11/type_traits
/usr/include/c++/11/bits/nested_exception.h
/usr/include/c++/11/bits/char_traits.h
/usr/include/c++/11/bits/stl_algobase.h
/usr/include/c++/11/bits/functexcept.h
/usr/include/c++/11/bits/cpp_type_traits.h
/usr/include/c++/11/ext/type_traits.h
/usr/include/c++/11/ext/numeric_traits.h
/usr/include/c++/11/bits/stl_pair.h
/usr/include/c++/11/bits/stl_iterator_base_types.h
/usr/include/c++/11/bits/stl_iterator_base_funcs.h
/usr/include/c++/11/bits/concept_check.h
/usr/include/c++/11/debug/assertions.h
/usr/include/c++/11/bits/stl_iterator.h
/usr/include/c++/11/bits/ptr_traits.h
/usr/include/c++/11/debug/debug.h
/usr/include/c++/11/bits/predefined_ops.h
/usr/include/c++/11/cstdint
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h
/usr/include/stdint.h
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h
/usr/include/c++/11/bits/localefwd.h
/usr/include/x86_64-linux-gnu/c++/11/bits/c++locale.h
/usr/include/c++/11/clocale
/usr/include/locale.h
/usr/include/x86_64-linux-gnu/bits/locale.h
/usr/include/c++/11/cctype
/usr/include/ctype.h
/usr/include/c++/11/bits/ios_base.h
/usr/include/c++/11/ext/atomicity.h
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr.h
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr-default.h
/usr/include/pthread.h
/usr/include/sched.h
/usr/include/x86_64-linux-gnu/bits/sched.h
/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h
/usr/include/x86_64-linux-gnu/bits/cpu-set.h
/usr/include/time.h
/usr/include/x86_64-linux-gnu/bits/time.h
/usr/include/x86_64-linux-gnu/bits/timex.h
/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h
/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h
/usr/include/x86_64-linux-gnu/bits/setjmp.h
/usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h
/usr/include/x86_64-linux-gnu/c++/11/bits/atomic_word.h
/usr/include/x86_64-linux-gnu/sys/single_threaded.h
/usr/include/c++/11/bits/locale_classes.h
/usr/include/c++/11/string
/usr/include/c++/11/bits/allocator.h
/usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h
/usr/include/c++/11/ext/new_allocator.h
/usr/include/c++/11/bits/ostream_insert.h
/usr/include/c++/11/bits/cxxabi_forced.h
/usr/include/c++/11/bits/stl_function.h
/usr/include/c++/11/backward/binders.h
/usr/include/c++/11/bits/range_access.h
/usr/include/c++/11/initializer_list
/usr/include/c++/11/bits/basic_string.h
/usr/include/c++/11/ext/alloc_traits.h
/usr/include/c++/11/bits/alloc_traits.h
/usr/include/c++/11/bits/stl_construct.h
/usr/include/c++/11/string_view
/usr/include/c++/11/bits/functional_hash.h
/usr/include/c++/11/bits/string_view.tcc
/usr/include/c++/11/ext/string_conversions.h
/usr/include/c++/11/cstdio
/usr/include/c++/11/cerrno
/usr/include/errno.h
/usr/include/x86_64-linux-gnu/bits/errno.h
/usr/include/linux/errno.h
/usr/include/x86_64-linux-gnu/asm/errno.h
/usr/include/asm-generic/errno.h
/usr/include/asm-generic/errno-base.h
/usr/include/x86_64-linux-gnu/bits/types/error_t.h
/usr/include/c++/11/bits/charconv.h
/usr/include/c++/11/bits/basic_string.tcc
/usr/include/c++/11/bits/locale_classes.tcc
/usr/include/c++/11/system_error
/usr/include/x86_64-linux-gnu/c++/11/bits/error_constants.h
/usr/include/c++/11/stdexcept
/usr/include/c++/11/streambuf
/usr/include/c++/11/bits/streambuf.tcc
/usr/include/c++/11/bits/basic_ios.h
/usr/include/c++/11/bits/locale_facets.h
/usr/include/c++/11/cwctype
/usr/include/wctype.h
/usr/include/x86_64-linux-gnu/bits/wctype-wchar.h
/usr/include/x86_64-linux-gnu/c++/11/bits/ctype_base.h
/usr/include/c++/11/bits/streambuf_iterator.h
/usr/include/x86_64-linux-gnu/c++/11/bits/ctype_inline.h
/usr/include/c++/11/bits/locale_facets.tcc
/usr/include/c++/11/bits/basic_ios.tcc
/usr/include/c++/11/bits/ostream.tcc
/usr/include/c++/11/istream
/usr/include/c++/11/bits/istream.tcc
/usr/include/c++/11/chrono
/usr/include/c++/11/ratio
/usr/include/c++/11/limits
/usr/include/c++/11/ctime
/usr/include/c++/11/bits/parse_numbers.h
/usr/include/c++/11/future
/usr/include/c++/11/mutex
/usr/include/c++/11/tuple
/usr/include/c++/11/utility
/usr/include/c++/11/bits/stl_relops.h
/usr/include/c++/11/array
/usr/include/c++/11/bits/uses_allocator.h
/usr/include/c++/11/bits/invoke.h
/usr/include/c++/11/bits/std_mutex.h
/usr/include/c++/11/bits/unique_lock.h
/usr/include/c++/11/condition_variable
/usr/include/c++/11/bits/atomic_futex.h
/usr/include/c++/11/bits/shared_ptr.h
/usr/include/c++/11/bits/shared_ptr_base.h
/usr/include/c++/11/bits/allocated_ptr.h
/usr/include/c++/11/bits/refwrap.h
/usr/include/c++/11/bits/unique_ptr.h
/usr/include/c++/11/ext/aligned_buffer.h
/usr/include/c++/11/ext/concurrence.h
/usr/include/c++/11/atomic
/usr/include/c++/11/bits/atomic_base.h
/usr/include/c++/11/bits/atomic_lockfree_defines.h
/usr/include/c++/11/bits/atomic_futex.h
/usr/include/c++/11/bits/std_function.h
/usr/include/c++/11/bits/std_thread.h
/home/kanken/code/AHRS_core/src/hw/serial.hpp
/usr/include/fcntl.h
/usr/include/x86_64-linux-gnu/bits/fcntl.h
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h
/usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h
/usr/include/linux/falloc.h
/usr/include/x86_64-linux-gnu/bits/stat.h
/usr/include/x86_64-linux-gnu/bits/struct_stat.h
/usr/include/termios.h
/usr/include/x86_64-linux-gnu/bits/termios.h
/usr/include/x86_64-linux-gnu/bits/termios-struct.h
/usr/include/x86_64-linux-gnu/bits/termios-c_cc.h
/usr/include/x86_64-linux-gnu/bits/termios-c_iflag.h
/usr/include/x86_64-linux-gnu/bits/termios-c_oflag.h
/usr/include/x86_64-linux-gnu/bits/termios-baud.h
/usr/include/x86_64-linux-gnu/bits/termios-c_cflag.h
/usr/include/x86_64-linux-gnu/bits/termios-c_lflag.h
/usr/include/x86_64-linux-gnu/bits/termios-tcflow.h
/usr/include/x86_64-linux-gnu/bits/termios-misc.h
/usr/include/x86_64-linux-gnu/sys/ttydefaults.h
/usr/include/c++/11/thread
/usr/include/c++/11/bits/this_thread_sleep.h
/usr/include/c++/11/vector
/usr/include/c++/11/bits/stl_uninitialized.h
/usr/include/c++/11/bits/stl_vector.h
/usr/include/c++/11/bits/stl_bvector.h
/usr/include/c++/11/bits/vector.tcc
/home/kanken/code/AHRS_core/src/ui/_ui.hpp
/usr/include/c++/11/map
/usr/include/c++/11/bits/stl_tree.h
/usr/include/c++/11/bits/node_handle.h
/usr/include/c++/11/bits/stl_map.h
/usr/include/c++/11/bits/stl_multimap.h
/usr/include/c++/11/bits/erase_if.h
/usr/include/c++/11/functional
/usr/include/c++/11/unordered_map
/usr/include/c++/11/bits/hashtable.h
/usr/include/c++/11/bits/hashtable_policy.h
/usr/include/c++/11/bits/enable_special_members.h
/usr/include/c++/11/bits/unordered_map.h
/usr/include/c++/11/bits/stl_algo.h
/usr/include/c++/11/bits/algorithmfwd.h
/usr/include/c++/11/bits/stl_heap.h
/usr/include/c++/11/bits/stl_tempbuf.h
/usr/include/c++/11/bits/uniform_int_dist.h
/usr/include/GL/glut.h
/usr/include/GL/freeglut_std.h
/usr/include/GL/gl.h
/usr/include/GL/glext.h
/usr/include/KHR/khrplatform.h
/usr/include/GL/glu.h
/home/kanken/code/AHRS_core/src/cameras/_cam.hpp
/usr/include/c++/11/memory
/usr/include/c++/11/bits/stl_raw_storage_iter.h
/usr/include/c++/11/bits/align.h
/usr/include/c++/11/bit
/usr/include/c++/11/bits/shared_ptr_atomic.h
/usr/include/c++/11/backward/auto_ptr.h
/usr/include/c++/11/pstl/glue_memory_defs.h
/usr/include/c++/11/pstl/execution_defs.h
/usr/include/c++/11/sstream
/usr/include/c++/11/bits/sstream.tcc
/usr/include/c++/11/regex
/usr/include/c++/11/algorithm
/usr/include/c++/11/pstl/glue_algorithm_defs.h
/usr/include/c++/11/bitset
/usr/include/c++/11/iterator
/usr/include/c++/11/bits/stream_iterator.h
/usr/include/c++/11/locale
/usr/include/c++/11/bits/locale_facets_nonio.h
/usr/include/x86_64-linux-gnu/c++/11/bits/time_members.h
/usr/include/x86_64-linux-gnu/c++/11/bits/messages_members.h
/usr/include/libintl.h
/usr/include/c++/11/bits/codecvt.h
/usr/include/c++/11/bits/locale_facets_nonio.tcc
/usr/include/c++/11/bits/locale_conv.h
/usr/include/c++/11/stack
/usr/include/c++/11/deque
/usr/include/c++/11/bits/stl_deque.h
/usr/include/c++/11/bits/deque.tcc
/usr/include/c++/11/bits/stl_stack.h
/usr/include/c++/11/cstring
/usr/include/c++/11/bits/regex_constants.h
/usr/include/c++/11/bits/regex_error.h
/usr/include/c++/11/bits/regex_automaton.h
/usr/include/c++/11/bits/regex_automaton.tcc
/usr/include/c++/11/bits/regex_scanner.h
/usr/include/c++/11/bits/regex_scanner.tcc
/usr/include/c++/11/bits/regex_compiler.h
/usr/include/c++/11/bits/regex_compiler.tcc
/usr/include/c++/11/bits/regex.h
/usr/include/c++/11/bits/regex.tcc
/usr/include/c++/11/bits/regex_executor.h
/usr/include/c++/11/bits/regex_executor.tcc
/usr/include/c++/11/execution
/usr/include/c++/11/pstl/glue_execution_defs.h
/usr/include/c++/11/pstl/algorithm_impl.h
/usr/include/c++/11/pstl/execution_impl.h
/usr/include/c++/11/pstl/memory_impl.h
/usr/include/c++/11/pstl/unseq_backend_simd.h
/usr/include/c++/11/pstl/utils.h
/usr/include/c++/11/pstl/parallel_backend_utils.h
/usr/include/c++/11/pstl/parallel_backend.h
/usr/include/c++/11/pstl/parallel_backend_tbb.h
/usr/include/tbb/blocked_range.h
/usr/include/oneapi/tbb/blocked_range.h
/usr/include/c++/11/cstddef
/usr/include/oneapi/tbb/detail/_range_common.h
/usr/include/oneapi/tbb/detail/_config.h
/usr/include/oneapi/tbb/detail/_export.h
/usr/include/oneapi/tbb/detail/_utils.h
/usr/include/oneapi/tbb/detail/_assert.h
/usr/include/oneapi/tbb/detail/_machine.h
/usr/include/c++/11/climits
/usr/lib/gcc/x86_64-linux-gnu/11/include/limits.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/syslimits.h
/usr/include/limits.h
/usr/include/x86_64-linux-gnu/bits/posix1_lim.h
/usr/include/x86_64-linux-gnu/bits/local_lim.h
/usr/include/linux/limits.h
/usr/include/x86_64-linux-gnu/bits/posix2_lim.h
/usr/include/x86_64-linux-gnu/bits/xopen_lim.h
/usr/include/x86_64-linux-gnu/bits/uio_lim.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/x86gprintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/ia32intrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/adxintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/bmiintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/bmi2intrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/cetintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/cldemoteintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/clflushoptintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/clwbintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/clzerointrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/enqcmdintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/fxsrintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/lzcntintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/lwpintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/movdirintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/mwaitintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/mwaitxintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/pconfigintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/popcntintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/pkuintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/rdseedintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/rtmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/serializeintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/sgxintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/tbmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/tsxldtrkintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/uintrintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/waitpkgintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/wbnoinvdintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/xsaveintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/xsavecintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/xsaveoptintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/xsavesintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/xtestintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/hresetintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/mmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/xmmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/mm_malloc.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/emmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/pmmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/tmmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/smmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/wmmintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avxintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avxvnniintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512fintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512erintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512pfintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512cdintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512bwintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512dqintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vlbwintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vldqintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512ifmaintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512ifmavlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vbmiintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vbmivlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx5124fmapsintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx5124vnniwintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vpopcntdqintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vbmi2intrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vbmi2vlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vnniintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vnnivlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vpopcntdqvlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512bitalgintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vp2intersectintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vp2intersectvlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/shaintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/fmaintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/f16cintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/gfniintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/vaesintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/vpclmulqdqintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512bf16vlintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/avx512bf16intrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/amxtileintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/amxint8intrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/amxbf16intrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/prfchwintrin.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/keylockerintrin.h
/usr/include/oneapi/tbb/detail/_namespace_injection.h
/usr/include/oneapi/tbb/version.h
/usr/include/oneapi/tbb/detail/_config.h
/usr/include/tbb/parallel_for.h
/usr/include/oneapi/tbb/parallel_for.h
/usr/include/oneapi/tbb/detail/_exception.h
/usr/include/oneapi/tbb/detail/_task.h
/usr/include/oneapi/tbb/detail/_template_helpers.h
/usr/include/oneapi/tbb/detail/_small_object_pool.h
/usr/include/oneapi/tbb/profiling.h
/usr/include/oneapi/tbb/detail/_string_resource.h
/usr/include/oneapi/tbb/detail/_small_object_pool.h
/usr/include/oneapi/tbb/profiling.h
/usr/include/oneapi/tbb/partitioner.h
/usr/include/oneapi/tbb/detail/_aligned_space.h
/usr/include/oneapi/tbb/detail/_utils.h
/usr/include/oneapi/tbb/detail/_template_helpers.h
/usr/include/oneapi/tbb/cache_aligned_allocator.h
/usr/include/c++/11/memory_resource
/usr/include/c++/11/shared_mutex
/usr/include/c++/11/bits/uses_allocator_args.h
/usr/include/oneapi/tbb/task_group.h
/usr/include/oneapi/tbb/detail/_assert.h
/usr/include/oneapi/tbb/detail/_intrusive_list_node.h
/usr/include/oneapi/tbb/task_arena.h
/usr/include/oneapi/tbb/info.h
/usr/include/oneapi/tbb/blocked_range.h
/usr/include/tbb/parallel_reduce.h
/usr/include/oneapi/tbb/parallel_reduce.h
/usr/include/tbb/parallel_scan.h
/usr/include/oneapi/tbb/parallel_scan.h
/usr/include/tbb/parallel_invoke.h
/usr/include/oneapi/tbb/parallel_invoke.h
/usr/include/tbb/task_arena.h
/usr/include/oneapi/tbb/task_arena.h
/usr/include/tbb/tbb_allocator.h
/usr/include/oneapi/tbb/tbb_allocator.h
/usr/include/oneapi/tbb/detail/_utils.h
/usr/include/tbb/task.h
/usr/include/oneapi/tbb/task.h
/usr/include/c++/11/pstl/parallel_impl.h
/usr/include/c++/11/pstl/numeric_impl.h
/usr/include/c++/11/numeric
/usr/include/c++/11/bits/stl_numeric.h
/usr/include/c++/11/pstl/glue_numeric_defs.h
/usr/include/c++/11/pstl/pstl_config.h
/usr/include/c++/11/pstl/algorithm_fwd.h
/usr/include/c++/11/pstl/glue_algorithm_impl.h
/usr/include/c++/11/pstl/numeric_fwd.h
/usr/include/c++/11/pstl/glue_numeric_impl.h
/usr/include/c++/11/pstl/glue_memory_impl.h
/usr/local/include/opencv4/opencv2/opencv.hpp
/usr/local/include/opencv4/opencv2/opencv_modules.hpp
/usr/local/include/opencv4/opencv2/core.hpp
/usr/local/include/opencv4/opencv2/core/cvdef.h
/usr/local/include/opencv4/opencv2/core/version.hpp
/usr/local/include/opencv4/opencv2/core/hal/interface.h
/usr/local/include/opencv4/opencv2/core/cv_cpu_dispatch.h
/usr/local/include/opencv4/opencv2/core/base.hpp
/usr/local/include/opencv4/opencv2/core/cvstd.hpp
/usr/include/c++/11/cmath
/usr/include/math.h
/usr/include/x86_64-linux-gnu/bits/math-vector.h
/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h
/usr/include/x86_64-linux-gnu/bits/flt-eval-method.h
/usr/include/x86_64-linux-gnu/bits/fp-logb.h
/usr/include/x86_64-linux-gnu/bits/fp-fast.h
/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h
/usr/include/x86_64-linux-gnu/bits/mathcalls.h
/usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h
/usr/include/x86_64-linux-gnu/bits/iscanonical.h
/usr/include/c++/11/bits/specfun.h
/usr/include/c++/11/tr1/gamma.tcc
/usr/include/c++/11/tr1/special_function_util.h
/usr/include/c++/11/tr1/bessel_function.tcc
/usr/include/c++/11/tr1/beta_function.tcc
/usr/include/c++/11/tr1/ell_integral.tcc
/usr/include/c++/11/tr1/exp_integral.tcc
/usr/include/c++/11/tr1/hypergeometric.tcc
/usr/include/c++/11/tr1/legendre_function.tcc
/usr/include/c++/11/tr1/modified_bessel_func.tcc
/usr/include/c++/11/tr1/poly_hermite.tcc
/usr/include/c++/11/tr1/poly_laguerre.tcc
/usr/include/c++/11/tr1/riemann_zeta.tcc
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp
/usr/local/include/opencv4/opencv2/core/neon_utils.hpp
/usr/local/include/opencv4/opencv2/core/vsx_utils.hpp
/usr/include/assert.h
/usr/local/include/opencv4/opencv2/core/check.hpp
/usr/local/include/opencv4/opencv2/core/traits.hpp
/usr/local/include/opencv4/opencv2/core/matx.hpp
/usr/local/include/opencv4/opencv2/core/saturate.hpp
/usr/local/include/opencv4/opencv2/core/fast_math.hpp
/usr/local/include/opencv4/opencv2/core/types.hpp
/usr/include/c++/11/cfloat
/usr/lib/gcc/x86_64-linux-gnu/11/include/float.h
/usr/local/include/opencv4/opencv2/core/mat.hpp
/usr/local/include/opencv4/opencv2/core/bufferpool.hpp
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp
/usr/local/include/opencv4/opencv2/core/persistence.hpp
/usr/local/include/opencv4/opencv2/core/operations.hpp
/usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp
/usr/include/c++/11/complex
/usr/local/include/opencv4/opencv2/core/utility.hpp
/usr/local/include/opencv4/opencv2/core/optim.hpp
/usr/local/include/opencv4/opencv2/core/ovx.hpp
/usr/local/include/opencv4/opencv2/core/cvdef.h
/usr/local/include/opencv4/opencv2/calib3d.hpp
/usr/local/include/opencv4/opencv2/features2d.hpp
/usr/local/include/opencv4/opencv2/flann/miniflann.hpp
/usr/local/include/opencv4/opencv2/flann/defines.h
/usr/local/include/opencv4/opencv2/flann/config.h
/usr/local/include/opencv4/opencv2/core/affine.hpp
/usr/local/include/opencv4/opencv2/dnn.hpp
/usr/local/include/opencv4/opencv2/dnn/dnn.hpp
/usr/local/include/opencv4/opencv2/core/async.hpp
/usr/local/include/opencv4/opencv2/dnn/version.hpp
/usr/local/include/opencv4/opencv2/dnn/dict.hpp
/usr/local/include/opencv4/opencv2/dnn/layer.hpp
/usr/local/include/opencv4/opencv2/dnn/dnn.inl.hpp
/usr/local/include/opencv4/opencv2/dnn/utils/inference_engine.hpp
/usr/local/include/opencv4/opencv2/dnn/dnn.hpp
/usr/local/include/opencv4/opencv2/flann.hpp
/usr/local/include/opencv4/opencv2/flann/flann_base.hpp
/usr/local/include/opencv4/opencv2/flann/general.h
/usr/local/include/opencv4/opencv2/flann/matrix.h
/usr/local/include/opencv4/opencv2/flann/params.h
/usr/local/include/opencv4/opencv2/flann/any.h
/usr/local/include/opencv4/opencv2/flann/defines.h
/usr/local/include/opencv4/opencv2/flann/saving.h
/usr/local/include/opencv4/opencv2/flann/nn_index.h
/usr/local/include/opencv4/opencv2/flann/result_set.h
/usr/include/c++/11/set
/usr/include/c++/11/bits/stl_set.h
/usr/include/c++/11/bits/stl_multiset.h
/usr/local/include/opencv4/opencv2/flann/all_indices.h
/usr/local/include/opencv4/opencv2/flann/kdtree_index.h
/usr/local/include/opencv4/opencv2/flann/dynamic_bitset.h
/usr/local/include/opencv4/opencv2/flann/dist.h
/usr/local/include/opencv4/opencv2/flann/heap.h
/usr/local/include/opencv4/opencv2/flann/allocator.h
/usr/local/include/opencv4/opencv2/flann/random.h
/usr/local/include/opencv4/opencv2/flann/kdtree_single_index.h
/usr/local/include/opencv4/opencv2/flann/kmeans_index.h
/usr/local/include/opencv4/opencv2/flann/logger.h
/usr/local/include/opencv4/opencv2/flann/composite_index.h
/usr/local/include/opencv4/opencv2/flann/linear_index.h
/usr/local/include/opencv4/opencv2/flann/hierarchical_clustering_index.h
/usr/local/include/opencv4/opencv2/flann/lsh_index.h
/usr/local/include/opencv4/opencv2/flann/lsh_table.h
/usr/include/c++/11/iomanip
/usr/include/c++/11/bits/quoted_string.h
/usr/include/c++/11/math.h
/usr/local/include/opencv4/opencv2/flann/autotuned_index.h
/usr/local/include/opencv4/opencv2/flann/ground_truth.h
/usr/local/include/opencv4/opencv2/flann/index_testing.h
/usr/local/include/opencv4/opencv2/flann/timer.h
/usr/local/include/opencv4/opencv2/flann/sampling.h
/usr/local/include/opencv4/opencv2/highgui.hpp
/usr/local/include/opencv4/opencv2/imgcodecs.hpp
/usr/local/include/opencv4/opencv2/videoio.hpp
/usr/local/include/opencv4/opencv2/imgproc.hpp
/usr/local/include/opencv4/opencv2/imgproc/segmentation.hpp
/usr/local/include/opencv4/opencv2/ml.hpp
/usr/local/include/opencv4/opencv2/ml/ml.inl.hpp
/usr/local/include/opencv4/opencv2/objdetect.hpp
/usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp
/usr/local/include/opencv4/opencv2/objdetect/face.hpp
/usr/local/include/opencv4/opencv2/photo.hpp
/usr/local/include/opencv4/opencv2/stitching.hpp
/usr/local/include/opencv4/opencv2/stitching/warpers.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/warpers.hpp
/usr/local/include/opencv4/opencv2/core/cuda.hpp
/usr/local/include/opencv4/opencv2/core/cuda_types.hpp
/usr/local/include/opencv4/opencv2/core/cuda.inl.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/warpers_inl.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/warpers.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/matchers.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/motion_estimators.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/matchers.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/util.hpp
/usr/include/c++/11/list
/usr/include/c++/11/bits/stl_list.h
/usr/include/c++/11/bits/list.tcc
/usr/local/include/opencv4/opencv2/stitching/detail/util_inl.hpp
/usr/include/c++/11/queue
/usr/include/c++/11/bits/stl_queue.h
/usr/local/include/opencv4/opencv2/stitching/detail/camera.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/exposure_compensate.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/seam_finders.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/blenders.hpp
/usr/local/include/opencv4/opencv2/stitching/detail/camera.hpp
/usr/local/include/opencv4/opencv2/video.hpp
/usr/local/include/opencv4/opencv2/video/tracking.hpp
/usr/local/include/opencv4/opencv2/video/background_segm.hpp
/usr/local/include/opencv4/opencv2/videoio/videoio_c.h
/usr/local/include/opencv4/opencv2/core/core_c.h
/usr/local/include/opencv4/opencv2/core/types_c.h
/usr/local/include/opencv4/opencv2/videoio/legacy/constants_c.h
/home/kanken/code/AHRS_core/src/threadweaver/threadweaver.hpp
/usr/include/c++/11/filesystem
/usr/include/c++/11/bits/fs_fwd.h
/usr/include/c++/11/bits/fs_path.h
/usr/include/c++/11/codecvt
/usr/include/c++/11/bits/fs_dir.h
/usr/include/c++/11/bits/fs_ops.h
/home/kanken/code/AHRS_core/src/threadweaver/debugging.hpp
/home/kanken/code/AHRS_core/src/perfcheckers/framerate.hpp
/home/kanken/code/AHRS_core/src/psvr/_psvr.hpp
/home/kanken/code/AHRS_core/src/ihidapi/_hidapi.hpp
/usr/local/include/hidapi/hidapi.h
/usr/local/include/opencv4/opencv2/imgcodecs/imgcodecs.hpp
/usr/local/include/opencv4/opencv2/core/opengl.hpp
/usr/local/include/opencv4/opencv2/core/ocl.hpp
/usr/include/c++/11/typeindex

File diff suppressed because it is too large Load Diff

@ -1 +1 @@
/usr/bin/c++ CMakeFiles/prog.dir/main.cpp.o -o prog -L/home/kanken/code/AHRS_core/src -Wl,-rpath,/home/kanken/code/AHRS_core/src:/usr/local/lib hw/libhw.a -ltbb ui/libui.a /usr/lib/x86_64-linux-gnu/libOpenGL.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libGLU.so psvr/libpsvr.a ihidapi/libihidapi.a /usr/local/lib/libhidapi-hidraw.so.0.13.0 cameras/libcameras.a /usr/local/lib/libopencv_gapi.so.4.6.0 /usr/local/lib/libopencv_stitching.so.4.6.0 /usr/local/lib/libopencv_aruco.so.4.6.0 /usr/local/lib/libopencv_barcode.so.4.6.0 /usr/local/lib/libopencv_bgsegm.so.4.6.0 /usr/local/lib/libopencv_bioinspired.so.4.6.0 /usr/local/lib/libopencv_ccalib.so.4.6.0 /usr/local/lib/libopencv_dnn_objdetect.so.4.6.0 /usr/local/lib/libopencv_dnn_superres.so.4.6.0 /usr/local/lib/libopencv_dpm.so.4.6.0 /usr/local/lib/libopencv_face.so.4.6.0 /usr/local/lib/libopencv_freetype.so.4.6.0 /usr/local/lib/libopencv_fuzzy.so.4.6.0 /usr/local/lib/libopencv_hfs.so.4.6.0 /usr/local/lib/libopencv_img_hash.so.4.6.0 /usr/local/lib/libopencv_intensity_transform.so.4.6.0 /usr/local/lib/libopencv_line_descriptor.so.4.6.0 /usr/local/lib/libopencv_mcc.so.4.6.0 /usr/local/lib/libopencv_quality.so.4.6.0 /usr/local/lib/libopencv_rapid.so.4.6.0 /usr/local/lib/libopencv_reg.so.4.6.0 /usr/local/lib/libopencv_rgbd.so.4.6.0 /usr/local/lib/libopencv_saliency.so.4.6.0 /usr/local/lib/libopencv_stereo.so.4.6.0 /usr/local/lib/libopencv_structured_light.so.4.6.0 /usr/local/lib/libopencv_phase_unwrapping.so.4.6.0 /usr/local/lib/libopencv_superres.so.4.6.0 /usr/local/lib/libopencv_optflow.so.4.6.0 /usr/local/lib/libopencv_surface_matching.so.4.6.0 /usr/local/lib/libopencv_tracking.so.4.6.0 /usr/local/lib/libopencv_highgui.so.4.6.0 /usr/local/lib/libopencv_datasets.so.4.6.0 /usr/local/lib/libopencv_plot.so.4.6.0 /usr/local/lib/libopencv_text.so.4.6.0 /usr/local/lib/libopencv_videostab.so.4.6.0 /usr/local/lib/libopencv_videoio.so.4.6.0 /usr/local/lib/libopencv_wechat_qrcode.so.4.6.0 /usr/local/lib/libopencv_xfeatures2d.so.4.6.0 /usr/local/lib/libopencv_ml.so.4.6.0 /usr/local/lib/libopencv_shape.so.4.6.0 /usr/local/lib/libopencv_ximgproc.so.4.6.0 /usr/local/lib/libopencv_video.so.4.6.0 /usr/local/lib/libopencv_xobjdetect.so.4.6.0 /usr/local/lib/libopencv_imgcodecs.so.4.6.0 /usr/local/lib/libopencv_objdetect.so.4.6.0 /usr/local/lib/libopencv_calib3d.so.4.6.0 /usr/local/lib/libopencv_dnn.so.4.6.0 /usr/local/lib/libopencv_features2d.so.4.6.0 /usr/local/lib/libopencv_flann.so.4.6.0 /usr/local/lib/libopencv_xphoto.so.4.6.0 /usr/local/lib/libopencv_photo.so.4.6.0 /usr/local/lib/libopencv_imgproc.so.4.6.0 /usr/local/lib/libopencv_core.so.4.6.0 threadweaver/libthreadweaver.a perfcheckers/libperfcheckers.a
/usr/bin/c++ CMakeFiles/prog.dir/main.cpp.o CMakeFiles/prog.dir/topLevelManager.cpp.o -o prog -L/home/kanken/code/AHRS_core/src -Wl,-rpath,/home/kanken/code/AHRS_core/src:/usr/local/lib hw/libhw.a -ltbb ui/libui.a /usr/lib/x86_64-linux-gnu/libOpenGL.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libGLU.so psvr/libpsvr.a ihidapi/libihidapi.a /usr/local/lib/libhidapi-hidraw.so.0.13.0 cameras/libcameras.a /usr/local/lib/libopencv_gapi.so.4.6.0 /usr/local/lib/libopencv_stitching.so.4.6.0 /usr/local/lib/libopencv_aruco.so.4.6.0 /usr/local/lib/libopencv_barcode.so.4.6.0 /usr/local/lib/libopencv_bgsegm.so.4.6.0 /usr/local/lib/libopencv_bioinspired.so.4.6.0 /usr/local/lib/libopencv_ccalib.so.4.6.0 /usr/local/lib/libopencv_dnn_objdetect.so.4.6.0 /usr/local/lib/libopencv_dnn_superres.so.4.6.0 /usr/local/lib/libopencv_dpm.so.4.6.0 /usr/local/lib/libopencv_face.so.4.6.0 /usr/local/lib/libopencv_freetype.so.4.6.0 /usr/local/lib/libopencv_fuzzy.so.4.6.0 /usr/local/lib/libopencv_hfs.so.4.6.0 /usr/local/lib/libopencv_img_hash.so.4.6.0 /usr/local/lib/libopencv_intensity_transform.so.4.6.0 /usr/local/lib/libopencv_line_descriptor.so.4.6.0 /usr/local/lib/libopencv_mcc.so.4.6.0 /usr/local/lib/libopencv_quality.so.4.6.0 /usr/local/lib/libopencv_rapid.so.4.6.0 /usr/local/lib/libopencv_reg.so.4.6.0 /usr/local/lib/libopencv_rgbd.so.4.6.0 /usr/local/lib/libopencv_saliency.so.4.6.0 /usr/local/lib/libopencv_stereo.so.4.6.0 /usr/local/lib/libopencv_structured_light.so.4.6.0 /usr/local/lib/libopencv_phase_unwrapping.so.4.6.0 /usr/local/lib/libopencv_superres.so.4.6.0 /usr/local/lib/libopencv_optflow.so.4.6.0 /usr/local/lib/libopencv_surface_matching.so.4.6.0 /usr/local/lib/libopencv_tracking.so.4.6.0 /usr/local/lib/libopencv_highgui.so.4.6.0 /usr/local/lib/libopencv_datasets.so.4.6.0 /usr/local/lib/libopencv_plot.so.4.6.0 /usr/local/lib/libopencv_text.so.4.6.0 /usr/local/lib/libopencv_videostab.so.4.6.0 /usr/local/lib/libopencv_videoio.so.4.6.0 /usr/local/lib/libopencv_wechat_qrcode.so.4.6.0 /usr/local/lib/libopencv_xfeatures2d.so.4.6.0 /usr/local/lib/libopencv_ml.so.4.6.0 /usr/local/lib/libopencv_shape.so.4.6.0 /usr/local/lib/libopencv_ximgproc.so.4.6.0 /usr/local/lib/libopencv_video.so.4.6.0 /usr/local/lib/libopencv_xobjdetect.so.4.6.0 /usr/local/lib/libopencv_imgcodecs.so.4.6.0 /usr/local/lib/libopencv_objdetect.so.4.6.0 /usr/local/lib/libopencv_calib3d.so.4.6.0 /usr/local/lib/libopencv_dnn.so.4.6.0 /usr/local/lib/libopencv_features2d.so.4.6.0 /usr/local/lib/libopencv_flann.so.4.6.0 /usr/local/lib/libopencv_xphoto.so.4.6.0 /usr/local/lib/libopencv_photo.so.4.6.0 /usr/local/lib/libopencv_imgproc.so.4.6.0 /usr/local/lib/libopencv_core.so.4.6.0 threadweaver/libthreadweaver.a perfcheckers/libperfcheckers.a

@ -1,3 +1,4 @@
CMAKE_PROGRESS_1 = 11
CMAKE_PROGRESS_2 = 12
CMAKE_PROGRESS_3 = 13

@ -32,7 +32,7 @@ add_subdirectory(psvr)
add_subdirectory(ui)
add_subdirectory(hw)
set(main_source_files main.cpp main.hpp)
set(main_source_files main.cpp main.hpp topLevelManager.cpp)
add_executable(prog ${main_source_files})

@ -244,6 +244,30 @@ main.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/prog.dir/build.make CMakeFiles/prog.dir/main.cpp.s
.PHONY : main.cpp.s
topLevelManager.o: topLevelManager.cpp.o
.PHONY : topLevelManager.o
# target to build an object file
topLevelManager.cpp.o:
$(MAKE) $(MAKESILENT) -f CMakeFiles/prog.dir/build.make CMakeFiles/prog.dir/topLevelManager.cpp.o
.PHONY : topLevelManager.cpp.o
topLevelManager.i: topLevelManager.cpp.i
.PHONY : topLevelManager.i
# target to preprocess a source file
topLevelManager.cpp.i:
$(MAKE) $(MAKESILENT) -f CMakeFiles/prog.dir/build.make CMakeFiles/prog.dir/topLevelManager.cpp.i
.PHONY : topLevelManager.cpp.i
topLevelManager.s: topLevelManager.cpp.s
.PHONY : topLevelManager.s
# target to generate assembly for a file
topLevelManager.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/prog.dir/build.make CMakeFiles/prog.dir/topLevelManager.cpp.s
.PHONY : topLevelManager.cpp.s
# Help Target
help:
@echo "The following are some of the valid targets for this Makefile:"
@ -263,6 +287,9 @@ help:
@echo "... main.o"
@echo "... main.i"
@echo "... main.s"
@echo "... topLevelManager.o"
@echo "... topLevelManager.i"
@echo "... topLevelManager.s"
.PHONY : help

@ -15,5 +15,4 @@ find_package( OpenCV REQUIRED )
target_link_libraries(cameras ${OpenCV_LIBS})
target_link_libraries(cameras threadweaver)
target_link_libraries(cameras perfcheckers)
MESSAGE(STATUS "Done building cameras")

@ -15,7 +15,6 @@
#include <opencv2/opencv.hpp>
#include <opencv2/videoio/videoio_c.h>
#include "../threadweaver/threadweaver.hpp"
#include "../perfcheckers/framerate.hpp"
#define DEBUG_ELAPSED_START std::chrono::steady_clock::time_point bgd = std::chrono::steady_clock::now();
#define DEBUG_ELAPSED_END std::chrono::steady_clock::time_point bge = std::chrono::steady_clock::now();

@ -48,7 +48,7 @@ void SerialPortManager::init(){
cout << "starting hardware watcher thread" << endl;
std::thread* t = new std::thread(SerialPortManager::runPort);
cout << "done" << endl;
Threadweaver::stick_this_thread_to_core(t,HWCORE);
Threadweaver::stick_this_thread_to_core(t,CAMCORE);
Threadweaver::hardwareWatcherThread = t;
shouldRun = true;
}

@ -1,50 +1,8 @@
#include "main.hpp"
#include <future>
#include <sched.h>
using namespace psvr;
int main(int argc, char* argv[])
{
try{
char tmp[256];
getcwd(tmp, 256);
std::cout << "Current working directory: " << tmp << std::endl;
unsigned num_cpus = std::thread::hardware_concurrency();
cout << num_cpus <<" cores detected" << endl;
std::cout << cv::getBuildInformation() << std::endl;
//psvr::Psvr::open();
ui::UiManager::init();
std::future<int> fobj = std::async (cameraManager::init); //asynchronous camera manager start
ui::UiController::init();
ui::UiController::runIntro = true;
std::future<void> menudraw = std::async (ui::UiDrawer::drawMenu);
sleep(5);
menudraw.get();
fobj.get();
cameraManager::runCapture();
SerialPortManager::init();
ui::UiController::exitCalled = false;
ui::UiController::runIntro = false;
ui::UiDrawer::runDrawUi();
std::thread* t = new std::thread(ui::UiDrawer::runDrawUi);
Threadweaver::stick_this_thread_to_core(t,GFXCORE);
Threadweaver::gfxPipelineThread = t;
DEBUG_LOG("Entering sleep while")
while(!ui::UiController::exitCalled){
sleep(5);
}
}
catch(...){
cerr << "caught maint thread exception" << endl;
}
DEBUG_LOG("Exitted sleep while")
Threadweaver::gfxPipelineThread->join();
return 0;
topLevelManager tlp = topLevelManager();
tlp.init();
return 0;
}

@ -5,5 +5,15 @@
#include <unistd.h>
#include <iostream>
#include <chrono>
#include <future>
#include <sched.h>
#include "./hw/serial.hpp"
#include "./hw/serial.hpp"
class topLevelManager{
public:
void init();
private:
void detectHWAndConfig();
void setupThreads();
};

@ -1,5 +1,6 @@
#include "framerate.hpp"
framerateChecker fcheckManager::fcUI;
framerateChecker fcheckManager::fcDrawMenu;
framerateChecker fcheckManager::fcShow;
framerateChecker fcheckManager::fcCam;
framerateChecker fcheckManager::fcCam;
framerateChecker fcheckManager::fcMergeUI;

@ -17,7 +17,8 @@ class framerateChecker{
class fcheckManager{
public:
static framerateChecker fcUI;
static framerateChecker fcDrawMenu;
static framerateChecker fcMergeUI;
static framerateChecker fcShow;
static framerateChecker fcCam;
};

Binary file not shown.

@ -1,3 +1,3 @@
CMAKE_PROGRESS_1 = 13
CMAKE_PROGRESS_2 = 14
CMAKE_PROGRESS_1 = 14
CMAKE_PROGRESS_2 = 15

@ -13,6 +13,7 @@ set(CMAKE_DEPENDS_DEPENDENCY_FILES
# Targets to which this target links.
set(CMAKE_TARGET_LINKED_INFO_FILES
"/home/kanken/code/AHRS_core/src/perfcheckers/CMakeFiles/perfcheckers.dir/DependInfo.cmake"
)
# Fortran module output directory.

@ -236,4 +236,8 @@ threadweaver/CMakeFiles/threadweaver.dir/threadweaver.cpp.o
/usr/include/c++/11/bits/fs_ops.h
/home/kanken/code/AHRS_core/src/threadweaver/debugging.hpp
/usr/include/c++/11/iostream
/home/kanken/code/AHRS_core/src/perfcheckers/framerate.hpp
/usr/include/c++/11/atomic
/usr/include/c++/11/bits/atomic_base.h
/usr/include/c++/11/bits/atomic_lockfree_defines.h

@ -234,9 +234,15 @@ threadweaver/CMakeFiles/threadweaver.dir/threadweaver.cpp.o: threadweaver/thread
/usr/include/c++/11/bits/fs_dir.h \
/usr/include/c++/11/bits/fs_ops.h \
threadweaver/debugging.hpp \
/usr/include/c++/11/iostream
/usr/include/c++/11/iostream \
perfcheckers/framerate.hpp \
/usr/include/c++/11/atomic \
/usr/include/c++/11/bits/atomic_base.h \
/usr/include/c++/11/bits/atomic_lockfree_defines.h
perfcheckers/framerate.hpp:
/usr/include/c++/11/bits/fs_ops.h:
/usr/include/c++/11/bits/istream.tcc:
@ -263,6 +269,8 @@ threadweaver/CMakeFiles/threadweaver.dir/threadweaver.cpp.o: threadweaver/thread
/usr/include/c++/11/bits/streambuf_iterator.h:
/usr/include/c++/11/bits/atomic_lockfree_defines.h:
/usr/include/c++/11/bits/streambuf.tcc:
/usr/include/c++/11/bits/ios_base.h:
@ -391,6 +399,8 @@ threadweaver/threadweaver.hpp:
/usr/include/features.h:
/usr/include/c++/11/bits/atomic_base.h:
/usr/include/c++/11/ext/numeric_traits.h:
/usr/include/x86_64-linux-gnu/bits/long-double.h:
@ -555,6 +565,8 @@ threadweaver/threadweaver.cpp:
/usr/include/c++/11/exception:
/usr/include/c++/11/atomic:
/usr/include/c++/11/bits/exception_defines.h:
/usr/include/c++/11/bits/string_view.tcc:

@ -1,3 +1,3 @@
CMAKE_PROGRESS_1 = 15
CMAKE_PROGRESS_2 = 16
CMAKE_PROGRESS_1 = 16
CMAKE_PROGRESS_2 = 17

@ -5,4 +5,5 @@ set(thredweaver_source_files
)
MESSAGE(STATUS "building threadweaver")
add_library(threadweaver ${thredweaver_source_files})
target_link_libraries(threadweaver perfcheckers)
MESSAGE(STATUS "done building threadweaver")

@ -1,13 +1,20 @@
#include <iostream>
#include <string>
#include "../perfcheckers/framerate.hpp"
//#define DBGMODE
#define DBGCOMM
#define OGLWIN
//#define OGLWIN
#define GFXCORE 0
#define DISPLAYCORE 1
#define CAMCORE 2
#define HWCORE 3
#define MERGECORE 3
#define QU(x) #x
#define QUH(x) QU(x)
#define VERSION_d 0.3
#define VERSION QUH(VERSION_d)
#ifdef DBGMODE
#define DEBUG_LOG(x) std::cout << "-DEBUG: " << x << std::endl;

@ -4,6 +4,7 @@ std::vector<std::thread*> Threadweaver::captureThreads;
std::thread* Threadweaver::hardwareWatcherThread;
std::thread* Threadweaver::osUiDrawerThread;
std::thread* Threadweaver::gfxPipelineThread;
std::thread* Threadweaver::mergerThread;
void Threadweaver::stick_this_thread_to_core(std::thread* t,int core_id){
unsigned num_cpus = std::thread::hardware_concurrency();

@ -11,6 +11,7 @@ class Threadweaver{
static std::vector<std::thread*> captureThreads;
static std::thread* hardwareWatcherThread;
static std::thread* gfxPipelineThread;
static std::thread* mergerThread;
static std::thread* osUiDrawerThread;
static void stick_this_thread_to_core(std::thread* t,int core_id);

@ -0,0 +1,60 @@
#include "main.hpp"
using namespace psvr;
void topLevelManager::init()
{
try
{
detectHWAndConfig();
setupThreads();
DEBUG_LOG("Entering sleep while")
while (!ui::UiController::exitCalled)
{
sleep(1);
}
}
catch (...)
{
cerr << "caught main thread exception" << endl;
}
DEBUG_LOG("Exitted sleep while")
Threadweaver::gfxPipelineThread->join();
}
void topLevelManager::detectHWAndConfig(){
char tmp[256];
getcwd(tmp, 256);
std::cout << "Current working directory: " << tmp << std::endl;
unsigned num_cpus = std::thread::hardware_concurrency();
cout << num_cpus << " cores detected" << endl;
std::cout << cv::getBuildInformation() << std::endl;
}
void topLevelManager::setupThreads(){
// psvr::Psvr::open();
ui::UiManager::init();
SerialPortManager::init();
std::future<int> fobj = std::async(cameraManager::init); // asynchronous camera manager start
ui::UiController::init();
ui::UiController::runIntro = true;
std::future<void> menudraw = std::async(ui::UiDrawer::drawMenu);
sleep(3); //waiting for camera pipeline to setup
menudraw.wait();
fobj.get();
cameraManager::runCapture();
ui::UiController::exitCalled = false;
ui::UiController::runIntro = false;
std::thread *t = new std::thread(ui::UiDrawer::runDrawMenu);
Threadweaver::stick_this_thread_to_core(t, GFXCORE);
Threadweaver::gfxPipelineThread = t;
sleep(1); //waiting for first menu drawing execution (or else we get an infinite mutex lock)
std::thread *t2 = new std::thread(ui::UiMerger::runMerge);
Threadweaver::stick_this_thread_to_core(t2,MERGECORE);
Threadweaver::mergerThread = t2;
}

@ -8,11 +8,13 @@ set(CMAKE_DEPENDS_LANGUAGES
# The set of dependency files which are needed:
set(CMAKE_DEPENDS_DEPENDENCY_FILES
"/home/kanken/code/AHRS_core/src/ui/ui.cpp" "ui/CMakeFiles/ui.dir/ui.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/ui.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/uiController.cpp" "ui/CMakeFiles/ui.dir/uiController.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/uiController.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/uiDrawer.cpp" "ui/CMakeFiles/ui.dir/uiDrawer.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/uiDrawer.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/controllers/uiController.cpp" "ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/controllers/uiManager.cpp" "ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/drawer/uiDrawer.cpp" "ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/merger/uiMerger.cpp" "ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/support/UiSupport.cpp" "ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/uiElements/ui.cpp" "ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/uiElements/uiElements.cpp" "ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o.d"
"/home/kanken/code/AHRS_core/src/ui/uiManager.cpp" "ui/CMakeFiles/ui.dir/uiManager.cpp.o" "gcc" "ui/CMakeFiles/ui.dir/uiManager.cpp.o.d"
)
# Targets to which this target links.

@ -69,10 +69,24 @@ include ui/CMakeFiles/ui.dir/progress.make
# Include the compile flags for this target's objects.
include ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o: ui/support/UiSupport.cpp
ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o -MF CMakeFiles/ui.dir/support/UiSupport.cpp.o.d -o CMakeFiles/ui.dir/support/UiSupport.cpp.o -c /home/kanken/code/AHRS_core/src/ui/support/UiSupport.cpp
ui/CMakeFiles/ui.dir/support/UiSupport.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/support/UiSupport.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/support/UiSupport.cpp > CMakeFiles/ui.dir/support/UiSupport.cpp.i
ui/CMakeFiles/ui.dir/support/UiSupport.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/support/UiSupport.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/support/UiSupport.cpp -o CMakeFiles/ui.dir/support/UiSupport.cpp.s
ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o: ui/uiElements/uiElements.cpp
ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o -MF CMakeFiles/ui.dir/uiElements/uiElements.cpp.o.d -o CMakeFiles/ui.dir/uiElements/uiElements.cpp.o -c /home/kanken/code/AHRS_core/src/ui/uiElements/uiElements.cpp
ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.i: cmake_force
@ -83,81 +97,99 @@ ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/uiElements/uiElements.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/uiElements/uiElements.cpp -o CMakeFiles/ui.dir/uiElements/uiElements.cpp.s
ui/CMakeFiles/ui.dir/ui.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/ui.cpp.o: ui/ui.cpp
ui/CMakeFiles/ui.dir/ui.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object ui/CMakeFiles/ui.dir/ui.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/ui.cpp.o -MF CMakeFiles/ui.dir/ui.cpp.o.d -o CMakeFiles/ui.dir/ui.cpp.o -c /home/kanken/code/AHRS_core/src/ui/ui.cpp
ui/CMakeFiles/ui.dir/ui.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/ui.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/ui.cpp > CMakeFiles/ui.dir/ui.cpp.i
ui/CMakeFiles/ui.dir/ui.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/ui.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/ui.cpp -o CMakeFiles/ui.dir/ui.cpp.s
ui/CMakeFiles/ui.dir/uiController.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/uiController.cpp.o: ui/uiController.cpp
ui/CMakeFiles/ui.dir/uiController.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object ui/CMakeFiles/ui.dir/uiController.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/uiController.cpp.o -MF CMakeFiles/ui.dir/uiController.cpp.o.d -o CMakeFiles/ui.dir/uiController.cpp.o -c /home/kanken/code/AHRS_core/src/ui/uiController.cpp
ui/CMakeFiles/ui.dir/uiController.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/uiController.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/uiController.cpp > CMakeFiles/ui.dir/uiController.cpp.i
ui/CMakeFiles/ui.dir/uiController.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/uiController.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/uiController.cpp -o CMakeFiles/ui.dir/uiController.cpp.s
ui/CMakeFiles/ui.dir/uiDrawer.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/uiDrawer.cpp.o: ui/uiDrawer.cpp
ui/CMakeFiles/ui.dir/uiDrawer.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object ui/CMakeFiles/ui.dir/uiDrawer.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/uiDrawer.cpp.o -MF CMakeFiles/ui.dir/uiDrawer.cpp.o.d -o CMakeFiles/ui.dir/uiDrawer.cpp.o -c /home/kanken/code/AHRS_core/src/ui/uiDrawer.cpp
ui/CMakeFiles/ui.dir/uiDrawer.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/uiDrawer.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/uiDrawer.cpp > CMakeFiles/ui.dir/uiDrawer.cpp.i
ui/CMakeFiles/ui.dir/uiDrawer.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/uiDrawer.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/uiDrawer.cpp -o CMakeFiles/ui.dir/uiDrawer.cpp.s
ui/CMakeFiles/ui.dir/uiManager.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/uiManager.cpp.o: ui/uiManager.cpp
ui/CMakeFiles/ui.dir/uiManager.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object ui/CMakeFiles/ui.dir/uiManager.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/uiManager.cpp.o -MF CMakeFiles/ui.dir/uiManager.cpp.o.d -o CMakeFiles/ui.dir/uiManager.cpp.o -c /home/kanken/code/AHRS_core/src/ui/uiManager.cpp
ui/CMakeFiles/ui.dir/uiManager.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/uiManager.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/uiManager.cpp > CMakeFiles/ui.dir/uiManager.cpp.i
ui/CMakeFiles/ui.dir/uiManager.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/uiManager.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/uiManager.cpp -o CMakeFiles/ui.dir/uiManager.cpp.s
ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o: ui/uiElements/ui.cpp
ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o -MF CMakeFiles/ui.dir/uiElements/ui.cpp.o.d -o CMakeFiles/ui.dir/uiElements/ui.cpp.o -c /home/kanken/code/AHRS_core/src/ui/uiElements/ui.cpp
ui/CMakeFiles/ui.dir/uiElements/ui.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/uiElements/ui.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/uiElements/ui.cpp > CMakeFiles/ui.dir/uiElements/ui.cpp.i
ui/CMakeFiles/ui.dir/uiElements/ui.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/uiElements/ui.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/uiElements/ui.cpp -o CMakeFiles/ui.dir/uiElements/ui.cpp.s
ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o: ui/drawer/uiDrawer.cpp
ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o -MF CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o.d -o CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o -c /home/kanken/code/AHRS_core/src/ui/drawer/uiDrawer.cpp
ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/drawer/uiDrawer.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/drawer/uiDrawer.cpp > CMakeFiles/ui.dir/drawer/uiDrawer.cpp.i
ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/drawer/uiDrawer.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/drawer/uiDrawer.cpp -o CMakeFiles/ui.dir/drawer/uiDrawer.cpp.s
ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o: ui/merger/uiMerger.cpp
ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o -MF CMakeFiles/ui.dir/merger/uiMerger.cpp.o.d -o CMakeFiles/ui.dir/merger/uiMerger.cpp.o -c /home/kanken/code/AHRS_core/src/ui/merger/uiMerger.cpp
ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/merger/uiMerger.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/merger/uiMerger.cpp > CMakeFiles/ui.dir/merger/uiMerger.cpp.i
ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/merger/uiMerger.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/merger/uiMerger.cpp -o CMakeFiles/ui.dir/merger/uiMerger.cpp.s
ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o: ui/controllers/uiController.cpp
ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o -MF CMakeFiles/ui.dir/controllers/uiController.cpp.o.d -o CMakeFiles/ui.dir/controllers/uiController.cpp.o -c /home/kanken/code/AHRS_core/src/ui/controllers/uiController.cpp
ui/CMakeFiles/ui.dir/controllers/uiController.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/controllers/uiController.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/controllers/uiController.cpp > CMakeFiles/ui.dir/controllers/uiController.cpp.i
ui/CMakeFiles/ui.dir/controllers/uiController.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/controllers/uiController.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/controllers/uiController.cpp -o CMakeFiles/ui.dir/controllers/uiController.cpp.s
ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o: ui/CMakeFiles/ui.dir/flags.make
ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o: ui/controllers/uiManager.cpp
ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o: ui/CMakeFiles/ui.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o -MF CMakeFiles/ui.dir/controllers/uiManager.cpp.o.d -o CMakeFiles/ui.dir/controllers/uiManager.cpp.o -c /home/kanken/code/AHRS_core/src/ui/controllers/uiManager.cpp
ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/ui.dir/controllers/uiManager.cpp.i"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/kanken/code/AHRS_core/src/ui/controllers/uiManager.cpp > CMakeFiles/ui.dir/controllers/uiManager.cpp.i
ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/ui.dir/controllers/uiManager.cpp.s"
cd /home/kanken/code/AHRS_core/src/ui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/kanken/code/AHRS_core/src/ui/controllers/uiManager.cpp -o CMakeFiles/ui.dir/controllers/uiManager.cpp.s
# Object files for target ui
ui_OBJECTS = \
"CMakeFiles/ui.dir/support/UiSupport.cpp.o" \
"CMakeFiles/ui.dir/uiElements/uiElements.cpp.o" \
"CMakeFiles/ui.dir/ui.cpp.o" \
"CMakeFiles/ui.dir/uiController.cpp.o" \
"CMakeFiles/ui.dir/uiDrawer.cpp.o" \
"CMakeFiles/ui.dir/uiManager.cpp.o"
"CMakeFiles/ui.dir/uiElements/ui.cpp.o" \
"CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o" \
"CMakeFiles/ui.dir/merger/uiMerger.cpp.o" \
"CMakeFiles/ui.dir/controllers/uiController.cpp.o" \
"CMakeFiles/ui.dir/controllers/uiManager.cpp.o"
# External object files for target ui
ui_EXTERNAL_OBJECTS =
ui/libui.a: ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/ui.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/uiController.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/uiDrawer.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/uiManager.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o
ui/libui.a: ui/CMakeFiles/ui.dir/build.make
ui/libui.a: ui/CMakeFiles/ui.dir/link.txt
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Linking CXX static library libui.a"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/kanken/code/AHRS_core/src/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Linking CXX static library libui.a"
cd /home/kanken/code/AHRS_core/src/ui && $(CMAKE_COMMAND) -P CMakeFiles/ui.dir/cmake_clean_target.cmake
cd /home/kanken/code/AHRS_core/src/ui && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/ui.dir/link.txt --verbose=$(VERBOSE)

@ -1,14 +1,18 @@
file(REMOVE_RECURSE
"CMakeFiles/ui.dir/ui.cpp.o"
"CMakeFiles/ui.dir/ui.cpp.o.d"
"CMakeFiles/ui.dir/uiController.cpp.o"
"CMakeFiles/ui.dir/uiController.cpp.o.d"
"CMakeFiles/ui.dir/uiDrawer.cpp.o"
"CMakeFiles/ui.dir/uiDrawer.cpp.o.d"
"CMakeFiles/ui.dir/controllers/uiController.cpp.o"
"CMakeFiles/ui.dir/controllers/uiController.cpp.o.d"
"CMakeFiles/ui.dir/controllers/uiManager.cpp.o"
"CMakeFiles/ui.dir/controllers/uiManager.cpp.o.d"
"CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o"
"CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o.d"
"CMakeFiles/ui.dir/merger/uiMerger.cpp.o"
"CMakeFiles/ui.dir/merger/uiMerger.cpp.o.d"
"CMakeFiles/ui.dir/support/UiSupport.cpp.o"
"CMakeFiles/ui.dir/support/UiSupport.cpp.o.d"
"CMakeFiles/ui.dir/uiElements/ui.cpp.o"
"CMakeFiles/ui.dir/uiElements/ui.cpp.o.d"
"CMakeFiles/ui.dir/uiElements/uiElements.cpp.o"
"CMakeFiles/ui.dir/uiElements/uiElements.cpp.o.d"
"CMakeFiles/ui.dir/uiManager.cpp.o"
"CMakeFiles/ui.dir/uiManager.cpp.o.d"
"libui.a"
"libui.pdb"
)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -1,2 +1,2 @@
/usr/bin/ar qc libui.a CMakeFiles/ui.dir/uiElements/uiElements.cpp.o CMakeFiles/ui.dir/ui.cpp.o CMakeFiles/ui.dir/uiController.cpp.o CMakeFiles/ui.dir/uiDrawer.cpp.o CMakeFiles/ui.dir/uiManager.cpp.o
/usr/bin/ar qc libui.a CMakeFiles/ui.dir/support/UiSupport.cpp.o CMakeFiles/ui.dir/uiElements/uiElements.cpp.o CMakeFiles/ui.dir/uiElements/ui.cpp.o CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o CMakeFiles/ui.dir/merger/uiMerger.cpp.o CMakeFiles/ui.dir/controllers/uiController.cpp.o CMakeFiles/ui.dir/controllers/uiManager.cpp.o
/usr/bin/ranlib libui.a

@ -1,7 +1,9 @@
CMAKE_PROGRESS_1 = 17
CMAKE_PROGRESS_2 = 18
CMAKE_PROGRESS_3 = 19
CMAKE_PROGRESS_4 = 20
CMAKE_PROGRESS_5 = 21
CMAKE_PROGRESS_6 = 22
CMAKE_PROGRESS_1 = 18
CMAKE_PROGRESS_2 = 19
CMAKE_PROGRESS_3 = 20
CMAKE_PROGRESS_4 = 21
CMAKE_PROGRESS_5 = 22
CMAKE_PROGRESS_6 = 23
CMAKE_PROGRESS_7 = 24
CMAKE_PROGRESS_8 = 25

@ -1,10 +1,12 @@
set(ui_source_files
./support/UiSupport.cpp
./uiElements/uiElements.cpp
./uiElements/uiElements.hpp
ui.cpp
uiController.cpp
uiDrawer.cpp
uiManager.cpp
./uiElements/ui.cpp
./drawer/uiDrawer.cpp
./merger/uiMerger.cpp
./controllers/uiController.cpp
./controllers/uiManager.cpp
_ui.hpp
)
MESSAGE(STATUS "building ui")

@ -130,77 +130,149 @@ ui/fast:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/build
.PHONY : ui/fast
ui.o: ui.cpp.o
.PHONY : ui.o
controllers/uiController.o: controllers/uiController.cpp.o
.PHONY : controllers/uiController.o
# target to build an object file
ui.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/ui.cpp.o
.PHONY : ui.cpp.o
controllers/uiController.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/controllers/uiController.cpp.o
.PHONY : controllers/uiController.cpp.o
ui.i: ui.cpp.i
.PHONY : ui.i
controllers/uiController.i: controllers/uiController.cpp.i
.PHONY : controllers/uiController.i
# target to preprocess a source file
ui.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/ui.cpp.i
.PHONY : ui.cpp.i
controllers/uiController.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/controllers/uiController.cpp.i
.PHONY : controllers/uiController.cpp.i
ui.s: ui.cpp.s
.PHONY : ui.s
controllers/uiController.s: controllers/uiController.cpp.s
.PHONY : controllers/uiController.s
# target to generate assembly for a file
ui.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/ui.cpp.s
.PHONY : ui.cpp.s
controllers/uiController.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/controllers/uiController.cpp.s
.PHONY : controllers/uiController.cpp.s
uiController.o: uiController.cpp.o
.PHONY : uiController.o
controllers/uiManager.o: controllers/uiManager.cpp.o
.PHONY : controllers/uiManager.o
# target to build an object file
uiController.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiController.cpp.o
.PHONY : uiController.cpp.o
controllers/uiManager.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.o
.PHONY : controllers/uiManager.cpp.o
uiController.i: uiController.cpp.i
.PHONY : uiController.i
controllers/uiManager.i: controllers/uiManager.cpp.i
.PHONY : controllers/uiManager.i
# target to preprocess a source file
uiController.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiController.cpp.i
.PHONY : uiController.cpp.i
controllers/uiManager.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.i
.PHONY : controllers/uiManager.cpp.i
uiController.s: uiController.cpp.s
.PHONY : uiController.s
controllers/uiManager.s: controllers/uiManager.cpp.s
.PHONY : controllers/uiManager.s
# target to generate assembly for a file
uiController.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiController.cpp.s
.PHONY : uiController.cpp.s
controllers/uiManager.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/controllers/uiManager.cpp.s
.PHONY : controllers/uiManager.cpp.s
uiDrawer.o: uiDrawer.cpp.o
.PHONY : uiDrawer.o
drawer/uiDrawer.o: drawer/uiDrawer.cpp.o
.PHONY : drawer/uiDrawer.o
# target to build an object file
uiDrawer.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiDrawer.cpp.o
.PHONY : uiDrawer.cpp.o
drawer/uiDrawer.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.o
.PHONY : drawer/uiDrawer.cpp.o
uiDrawer.i: uiDrawer.cpp.i
.PHONY : uiDrawer.i
drawer/uiDrawer.i: drawer/uiDrawer.cpp.i
.PHONY : drawer/uiDrawer.i
# target to preprocess a source file
uiDrawer.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiDrawer.cpp.i
.PHONY : uiDrawer.cpp.i
drawer/uiDrawer.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.i
.PHONY : drawer/uiDrawer.cpp.i
uiDrawer.s: uiDrawer.cpp.s
.PHONY : uiDrawer.s
drawer/uiDrawer.s: drawer/uiDrawer.cpp.s
.PHONY : drawer/uiDrawer.s
# target to generate assembly for a file
uiDrawer.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiDrawer.cpp.s
.PHONY : uiDrawer.cpp.s
drawer/uiDrawer.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/drawer/uiDrawer.cpp.s
.PHONY : drawer/uiDrawer.cpp.s
merger/uiMerger.o: merger/uiMerger.cpp.o
.PHONY : merger/uiMerger.o
# target to build an object file
merger/uiMerger.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.o
.PHONY : merger/uiMerger.cpp.o
merger/uiMerger.i: merger/uiMerger.cpp.i
.PHONY : merger/uiMerger.i
# target to preprocess a source file
merger/uiMerger.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.i
.PHONY : merger/uiMerger.cpp.i
merger/uiMerger.s: merger/uiMerger.cpp.s
.PHONY : merger/uiMerger.s
# target to generate assembly for a file
merger/uiMerger.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/merger/uiMerger.cpp.s
.PHONY : merger/uiMerger.cpp.s
support/UiSupport.o: support/UiSupport.cpp.o
.PHONY : support/UiSupport.o
# target to build an object file
support/UiSupport.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/support/UiSupport.cpp.o
.PHONY : support/UiSupport.cpp.o
support/UiSupport.i: support/UiSupport.cpp.i
.PHONY : support/UiSupport.i
# target to preprocess a source file
support/UiSupport.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/support/UiSupport.cpp.i
.PHONY : support/UiSupport.cpp.i
support/UiSupport.s: support/UiSupport.cpp.s
.PHONY : support/UiSupport.s
# target to generate assembly for a file
support/UiSupport.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/support/UiSupport.cpp.s
.PHONY : support/UiSupport.cpp.s
uiElements/ui.o: uiElements/ui.cpp.o
.PHONY : uiElements/ui.o
# target to build an object file
uiElements/ui.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiElements/ui.cpp.o
.PHONY : uiElements/ui.cpp.o
uiElements/ui.i: uiElements/ui.cpp.i
.PHONY : uiElements/ui.i
# target to preprocess a source file
uiElements/ui.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiElements/ui.cpp.i
.PHONY : uiElements/ui.cpp.i
uiElements/ui.s: uiElements/ui.cpp.s
.PHONY : uiElements/ui.s
# target to generate assembly for a file
uiElements/ui.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiElements/ui.cpp.s
.PHONY : uiElements/ui.cpp.s
uiElements/uiElements.o: uiElements/uiElements.cpp.o
.PHONY : uiElements/uiElements.o
@ -226,30 +298,6 @@ uiElements/uiElements.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiElements/uiElements.cpp.s
.PHONY : uiElements/uiElements.cpp.s
uiManager.o: uiManager.cpp.o
.PHONY : uiManager.o
# target to build an object file
uiManager.cpp.o:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiManager.cpp.o
.PHONY : uiManager.cpp.o
uiManager.i: uiManager.cpp.i
.PHONY : uiManager.i
# target to preprocess a source file
uiManager.cpp.i:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiManager.cpp.i
.PHONY : uiManager.cpp.i
uiManager.s: uiManager.cpp.s
.PHONY : uiManager.s
# target to generate assembly for a file
uiManager.cpp.s:
cd /home/kanken/code/AHRS_core/src && $(MAKE) $(MAKESILENT) -f ui/CMakeFiles/ui.dir/build.make ui/CMakeFiles/ui.dir/uiManager.cpp.s
.PHONY : uiManager.cpp.s
# Help Target
help:
@echo "The following are some of the valid targets for this Makefile:"
@ -259,21 +307,27 @@ help:
@echo "... edit_cache"
@echo "... rebuild_cache"
@echo "... ui"
@echo "... ui.o"
@echo "... ui.i"
@echo "... ui.s"
@echo "... uiController.o"
@echo "... uiController.i"
@echo "... uiController.s"
@echo "... uiDrawer.o"
@echo "... uiDrawer.i"
@echo "... uiDrawer.s"
@echo "... controllers/uiController.o"
@echo "... controllers/uiController.i"
@echo "... controllers/uiController.s"
@echo "... controllers/uiManager.o"
@echo "... controllers/uiManager.i"
@echo "... controllers/uiManager.s"
@echo "... drawer/uiDrawer.o"
@echo "... drawer/uiDrawer.i"
@echo "... drawer/uiDrawer.s"
@echo "... merger/uiMerger.o"
@echo "... merger/uiMerger.i"
@echo "... merger/uiMerger.s"
@echo "... support/UiSupport.o"
@echo "... support/UiSupport.i"
@echo "... support/UiSupport.s"
@echo "... uiElements/ui.o"
@echo "... uiElements/ui.i"
@echo "... uiElements/ui.s"
@echo "... uiElements/uiElements.o"
@echo "... uiElements/uiElements.i"
@echo "... uiElements/uiElements.s"
@echo "... uiManager.o"
@echo "... uiManager.i"
@echo "... uiManager.s"
.PHONY : help

@ -27,7 +27,7 @@ using namespace cv::ogl;
using namespace psvr;
namespace ui {
//Defines a single ui window (by default two will be displayed)
/// @brief this class represents a single window, there should only ever be one if the app is in opengl mode.
class Ui{
public:
UMat drawSurface; //Current frame
@ -36,24 +36,36 @@ namespace ui {
std::string myWindow;
void draw();
};
class UiDrawer{ //drawer is static because we only ever need one
class UiSupport{
public:
static void drawUi();
static void drawStartupSequence();
static void drawMenu();
static void runDrawUi();
static UMat OverlayMat; //drawn at each frame (screen)
static UMat OsMat; //drawn on certain events (menu)
static cv::ogl::Texture2D OvTexture;
static std::mutex OsMatLock;
private:
static framerateChecker* fpsCounter;
static UMat makeMatStereo(UMat toStereo);
static UMat prepareUiMat();
static UMat resizeIn(UMat input);
static UMat OverlayBlackMask(UMat input, UMat toOverlay, int x = 0, int y = 0);
static UMat OverlayHISHMask(UMat input, UMat toOverlay);
};
class UiManager{ //manager is static because we only ever need one
/// @brief this class is used to draw the UI from the UiController's current state
class UiDrawer{
public:
static void drawStartupSequence();
static void drawMenu();
static void runDrawMenu();
static UMat output;
static std::mutex outputLock;
static framerateChecker* fpsCounter;
private:
static void drawUi();
};
/// @brief this class is used to merge the camera's frame and the UI mat
class UiMerger{
public:
static void runMerge();
static UMat output;
static std::mutex outputLock;
private:
static void mergeUI();
};
/// @brief this class manages the UI(s) [windows] used by the application, right now only one should ever be used, especially in opengl mode
class UiManager{
public:
static vector<mutex*> accessLocks;
static vector<Ui*> managedUIs;
@ -62,7 +74,8 @@ namespace ui {
static void cleanup();
static void beginDrawRoutineForUi(Ui* u);
};
class UiController{
/// @brief this class is used to process view logic and interaction [model]
class UiController{
public:
static void init();
static void selectedUp();

@ -1,4 +1,4 @@
#include "_ui.hpp"
#include "../_ui.hpp"
bool ui::UiController::showMenu;
bool ui::UiController::exitCalled;
@ -31,7 +31,7 @@ void ui::UiController::init(){
void ui::UiController::update(){
time_t now = time(0);
menutime = ctime(&now);
menuTitle = std::string("P-OS V0.1 ") + menutime;
menuTitle = std::string("P-OS ") + VERSION + " " + menutime;
}
void ui::UiController::selectedUp(){

@ -1,4 +1,4 @@
#include "_ui.hpp"
#include "../_ui.hpp"
namespace ui{
vector<Ui*> UiManager::managedUIs;
@ -13,6 +13,8 @@ namespace ui{
moveWindow(u->myWindow,DEFAULT_UI_OFFSET_X+960,DEFAULT_UI_OFFSET_Y);
resizeWindow(u->myWindow,DEFAULT_UI_SIZE_X,DEFAULT_UI_SIZE_Y);
ui::UiDrawer::drawStartupSequence();
#else
ui::UiDrawer::drawStartupSequence();
#endif
while(!ui::UiManager::uiShouldRun){}
while(ui::UiManager::uiShouldRun){
@ -53,18 +55,12 @@ namespace ui{
Ui* newUI = new Ui();
cout << "creating UI n°" << to_string(i) << endl;
newUI->myWindow = "project- UI"+std::to_string(i);
#ifdef OGLWIN
DEBUG_LOG("created opengl window")
//cv::setOpenGlContext(newUI->myWindow);
//setOpenGlDrawCallback(newUI->myWindow, on_opengl);
#else
#ifndef OGLWIN
DEBUG_LOG("created cpu-based window")
namedWindow(newUI->myWindow);
#endif
moveWindow(newUI->myWindow,DEFAULT_UI_OFFSET_X+i*960,DEFAULT_UI_OFFSET_Y);
resizeWindow(newUI->myWindow,DEFAULT_UI_SIZE_X,DEFAULT_UI_SIZE_Y);
//setWindowProperty(newUI->myWindow, cv::WND_PROP_FULLSCREEN, cv::WINDOW_FULLSCREEN);
cout << "window: " << newUI->myWindow << " created at " << DEFAULT_UI_OFFSET_X+i*960 << " , " << DEFAULT_UI_OFFSET_Y << endl;

@ -0,0 +1,84 @@
#include "../_ui.hpp"
UMat ui::UiDrawer::output;
std::mutex ui::UiDrawer::outputLock;
framerateChecker* ui::UiDrawer::fpsCounter = new framerateChecker();
namespace ui{
void UiDrawer::drawStartupSequence(){
cout << "opening external ressources" << endl;
VideoCapture cap("./media/hud_startup.gif");
cout << "opened video"<< endl;
if(!cap.isOpened()){
cout << "failed to open hud start media" << endl;
return;
}
UMat frame;
UMat finished;
#ifdef OGLWIN
cv::ogl::Texture2D frameOGL = Texture2D();
#endif
while(cap.read(frame))
{
finished = UiSupport::makeMatStereo(frame);
#ifdef OGLWIN
frameOGL.copyFrom(finished);
cv::imshow(ui::UiManager::managedUIs.at(0)->myWindow, frameOGL);
#else
cv::imshow(ui::UiManager::managedUIs.at(0)->myWindow, finished);
#endif
if(waitKey(30) >= 0) break;
}
cap.release();
}
void UiDrawer::drawMenu(){
try{
fcheckManager::fcDrawMenu.tickBegin();
int& wd = UiController::menuSize.width;
int& he = UiController::menuSize.height;
unsigned int stackerIndex = 0;
UMat MenuMat(cv::Size(wd, he), CV_8UC3,Scalar(0,0,0));
cv::rectangle(MenuMat, cv::Rect2i(0,0,wd, he), Scalar(255,0,0), 5, 8, 0);
ui::UiController::update();
cv::putText(MenuMat, UiController::menuTitle, Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
for(std::map<std::string,std::function<void()>>::iterator iter = UiController::menuItems.begin(); iter != UiController::menuItems.end(); ++iter)
{
std::string str = iter->first;
cv::putText(MenuMat, str, Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
}
int mFps,uiFps,Drawfps,camFPS = 0;
mFps = fcheckManager::fcMergeUI.fps;
uiFps = fcheckManager::fcDrawMenu.fps;
Drawfps = fcheckManager::fcShow.fps;
camFPS = fcheckManager::fcCam.fps;
cv::putText(MenuMat, cv::format("Eps Ui drawer: %d", uiFps), Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
cv::putText(MenuMat, cv::format("Eps Ui merger: %d", mFps), Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
cv::putText(MenuMat, cv::format("Eps imshow: %d", Drawfps), Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
cv::putText(MenuMat, cv::format("Eps Camera 0: %d", camFPS), Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
cv::rectangle(MenuMat, cv::Rect2i(0,((20*ui::UiController::selectedIndex)+20)+5,wd, 20), Scalar(200,0,0), 3, 8, 0);
outputLock.lock();
output = MenuMat;
outputLock.unlock();
} catch(...){
cerr << "\033[1;31m caught DrawUi::drawMenu thread exception \033[0m" << endl;
exit(1);
}
fcheckManager::fcDrawMenu.tickUpdate();
}
void UiDrawer::runDrawMenu(){
try{
cout << "starting ui drawer thread" << endl;
ui::UiController::exitCalled = false;
while(true){
DEBUG_LOG("drawing");
ui::UiDrawer::drawMenu();
}
} catch(...){
cerr << "\033[1;31m caught DrawUi thread exception \033[0m" << endl;
exit(1);
}
}
}

@ -0,0 +1,60 @@
#include "../_ui.hpp"
UMat ui::UiMerger::output;
std::mutex ui::UiMerger::outputLock;
namespace ui
{
void UiMerger::runMerge()
{
try
{
cout << "starting ui merger thread" << endl;
ui::UiController::exitCalled = false;
while (true)
{
DEBUG_LOG("drawing");
ui::UiMerger::mergeUI();
}
}
catch (...)
{
cerr << "\033[1;31m caught mergeUI thread exception \033[0m" << endl;
exit(1);
}
}
void UiMerger::mergeUI()
{
DEBUG_LOG("\nBegan new pipeline cycle-------------------------------")
fcheckManager::fcMergeUI.tickBegin();
UMat UiMat = UiSupport::prepareUiMat(); // prepare black background 960*1080
DEBUG_LOG("prepared UI mat")
cameraManager::accessLocks[0]->lock(); // lock the capture access
UMat cameraFrame = cameraManager::captures[0]; // retreive latest camera frame
cameraManager::accessLocks[0]->unlock(); // unlock capture access
DEBUG_LOG("retreived camera frame")
if (cameraFrame.rows <= 0 || cameraFrame.cols <= 0)
return; // check for empty frame
cameraFrame = UiSupport::resizeIn(cameraFrame); // resize the frame to the standard format
DEBUG_LOG("resized camera frame")
// Copy the frame in the center of the background
cameraFrame.copyTo(UiMat(cv::Rect((UiMat.cols / 2) - (cameraFrame.cols / 2), (UiMat.rows / 2) - (cameraFrame.rows / 2), cameraFrame.cols, cameraFrame.rows)));
DEBUG_LOG("copied camera frame")
if (UiController::showMenu)
{
UiDrawer::outputLock.lock();
// UiMat = OverlayBlackMask(UiMat, OsMat, ui::UiController::menuPos.x,ui::UiController::menuPos.y); //add the OS ui overlay
UiMat = UiSupport::OverlayBlackMask(UiMat, UiDrawer::output);
UiDrawer::outputLock.unlock();
}
DEBUG_LOG("drawn menu")
UMat finished = UiSupport::makeMatStereo(UiMat);
DEBUG_LOG("concated mats")
UiManager::accessLocks.at(0)->lock();
UiManager::managedUIs[0]->drawSurface = finished; // write the final image to the psvr UI buffer
UiManager::accessLocks.at(0)->unlock();
fcheckManager::fcMergeUI.tickUpdate();
}
}

@ -0,0 +1,45 @@
#include "../_ui.hpp"
namespace ui{
UMat UiSupport::makeMatStereo(UMat toStereo){
UMat toreturn;
vector<UMat> mats{toStereo,toStereo};
cv::hconcat(mats,toreturn);
return toreturn;
}
UMat UiSupport::prepareUiMat(){
return UMat(cv::Size(960, 1080), CV_8UC3,Scalar(0,0,0));
}
UMat UiSupport::resizeIn(UMat input){
UMat output;
resize(input, output, Size(960, 1080), InterpolationFlags::INTER_NEAREST);
return output;
}
///if a non transparent picture is supplied (3 channels), it will be made transparent by using black as a mask
UMat UiSupport::OverlayBlackMask(UMat input, UMat toOverlay, int x, int y){
//return input;
if(input.cols < toOverlay.cols || input.rows < toOverlay.rows){
cerr << "Wrong size for inout file!!! overlay was bigger" << endl;
return input;
}
UMat toOverlayGRAY, mask;
vector<UMat> Bands;
if(toOverlay.channels() == 3){ //non transparent image, use black as mask
cvtColor(toOverlay,toOverlayGRAY, COLOR_BGR2GRAY); //picture to greyscale
threshold(toOverlayGRAY, mask, 0, 255, THRESH_BINARY); //greyscale to alpha (black or not)
} else if (toOverlay.channels() == 4){ //transparent, use alpha layer as mask
split(toOverlay,Bands); // seperate channels
vector<UMat> channels{ Bands[0],Bands[1],Bands[2] };
merge(channels,toOverlay); // glue together again
mask = Bands[3]; // png's alpha channel used as mask
}
toOverlay.copyTo(input(cv::Rect(x,y,toOverlay.cols, toOverlay.rows)),mask);
return input;
}
}

@ -1,182 +0,0 @@
#include "_ui.hpp"
UMat ui::UiDrawer::OverlayMat;
UMat ui::UiDrawer::OsMat; //drawn on certain events
cv::ogl::Texture2D OvTexture;
std::mutex ui::UiDrawer::OsMatLock;
framerateChecker* ui::UiDrawer::fpsCounter = new framerateChecker();
//UiMat = prepareUiMat();
//surface.copyTo(UiMat(cv::Rect((UiMat.cols/2)-(surface.cols/2),(UiMat.rows/2)-(surface.rows/2),surface.cols, surface.rows)));
//UiMat = OverlayBlackMask(UiMat, overlay);
namespace ui{
//draws the UI for the left screen of the psvr
void UiDrawer::drawUi(){
DEBUG_LOG("\nBegan new pipeline cycle-------------------------------")
fcheckManager::fcUI.tickBegin();
UMat UiMat = prepareUiMat(); //prepare black background 960*1080
DEBUG_LOG("prepared UI mat")
cameraManager::accessLocks[0]->lock(); //lock the capture access
UMat cameraFrame = cameraManager::captures[0]; //retreive latest camera frame
cameraManager::accessLocks[0]->unlock(); //unlock capture access
DEBUG_LOG("retreived camera frame")
if(cameraFrame.rows <= 0 || cameraFrame.cols <= 0) return; //check for empty frame
cameraFrame = resizeIn(cameraFrame); //resize the frame to the standard format
DEBUG_LOG("resized camera frame")
//Copy the frame in the center of the background
cameraFrame.copyTo(UiMat(cv::Rect((UiMat.cols/2)-(cameraFrame.cols/2),(UiMat.rows/2)-(cameraFrame.rows/2),cameraFrame.cols, cameraFrame.rows)));
DEBUG_LOG("copied camera frame")
UiMat = OverlayBlackMask(UiMat, OverlayMat); //add the fixed overlay
DEBUG_LOG("overlayed camera frame")
if(UiController::showMenu){
UiDrawer::drawMenu();
OsMatLock.lock();
//UiMat = OverlayBlackMask(UiMat, OsMat, ui::UiController::menuPos.x,ui::UiController::menuPos.y); //add the OS ui overlay
UiMat = OverlayBlackMask(UiMat, OsMat);
OsMatLock.unlock();
}
DEBUG_LOG("drawn menu")
UMat finished(cv::Size(1920, 1080), CV_8UC3,Scalar(0,0,0));
vector<UMat> mats{UiMat,UiMat};
cv::hconcat(mats,finished);
DEBUG_LOG("concated mats")
UiManager::accessLocks.at(0)->lock();
UiManager::managedUIs[0]->drawSurface = finished; //write the final image to the psvr UI buffer
UiManager::accessLocks.at(0)->unlock();
fcheckManager::fcUI.tickUpdate();
}
void UiDrawer::drawStartupSequence(){
cout << "opening external ressources" << endl;
VideoCapture cap("./media/hud_startup.gif");
cout << "opened video"<< endl;
UMat overlay = imread("./media/hud_fixed.png",-1).getUMat(ACCESS_READ);
cout << "read overlay" << endl;
ui::UiDrawer::OverlayMat = overlay;
if(!cap.isOpened()){
cout << "failed to open hud start media" << endl;
return;
}
UMat frame;
UMat finished;
#ifdef OGLWIN
cv::ogl::Texture2D frameOGL = Texture2D();
#endif
while(cap.read(frame))
{
frame = OverlayBlackMask(frame, overlay);
vector<UMat> mats{frame,frame};
cv::hconcat(mats,finished);
#ifdef OGLWIN
frameOGL.copyFrom(finished);
cv::imshow(ui::UiManager::managedUIs.at(0)->myWindow, frameOGL);
#else
cv::imshow(ui::UiManager::managedUIs.at(0)->myWindow, frame);
#endif
if(waitKey(30) >= 0) break;
}
cap.release();
}
void UiDrawer::drawMenu(){
try{
int& wd = UiController::menuSize.width;
int& he = UiController::menuSize.height;
unsigned int stackerIndex = 0;
UMat MenuMat(cv::Size(wd, he), CV_8UC3,Scalar(0,0,0));
cv::rectangle(MenuMat, cv::Rect2i(0,0,wd, he), Scalar(255,0,0), 5, 8, 0);
ui::UiController::update();
cv::putText(MenuMat, UiController::menuTitle, Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
for(std::map<std::string,std::function<void()>>::iterator iter = UiController::menuItems.begin(); iter != UiController::menuItems.end(); ++iter)
{
std::string str = iter->first;
cv::putText(MenuMat, str, Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
}
int uiFps,Drawfps,camFPS = 0;
uiFps = fcheckManager::fcUI.fps;
Drawfps = fcheckManager::fcShow.fps;
camFPS = fcheckManager::fcCam.fps;
cv::putText(MenuMat, cv::format("Eps Ui drawer: %d", uiFps), Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
cv::putText(MenuMat, cv::format("Eps imshow: %d", Drawfps), Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
cv::putText(MenuMat, cv::format("Eps Camera 0: %d", camFPS), Point2i(5,stackerIndex+=20), HersheyFonts::FONT_HERSHEY_PLAIN, 1, Scalar(255,255,255), 1, 8, false);
cv::rectangle(MenuMat, cv::Rect2i(0,((20*ui::UiController::selectedIndex)+20)+5,wd, 20), Scalar(200,0,0), 3, 8, 0);
OsMatLock.lock();
OsMat = MenuMat;
OsMatLock.unlock();
} catch(...){
cerr << "\033[1;31m caught DrawUi::drawMenu thread exception \033[0m" << endl;
exit(1);
}
}
void UiDrawer::runDrawUi(){
try{
cout << "starting ui drawer thread" << endl;
ui::UiController::exitCalled = false;
while(true){
DEBUG_LOG("drawing");
ui::UiDrawer::drawUi();
}
} catch(...){
cerr << "\033[1;31m caught DrawUi thread exception \033[0m" << endl;
exit(1);
}
}
UMat UiDrawer::prepareUiMat(){
UMat blk960x1080(cv::Size(960, 1080), CV_8UC3,Scalar(0,0,0));
return blk960x1080;
}
UMat UiDrawer::resizeIn(UMat input){
UMat output;
resize(input, output, Size(960, 1080), InterpolationFlags::INTER_NEAREST);
return output;
}
///if a non transparent picture is supplied (3 channels), it will be made transparent by using black as a mask
UMat UiDrawer::OverlayBlackMask(UMat input, UMat toOverlay, int x, int y){
//return input;
if(input.cols < toOverlay.cols || input.rows < toOverlay.rows){
cerr << "Wrong size for inout file!!! overlay was bigger" << endl;
return input;
}
UMat toOverlayGRAY, mask;
vector<UMat> Bands;
if(toOverlay.channels() == 3){ //non transparent image, use black as mask
cvtColor(toOverlay,toOverlayGRAY, COLOR_BGR2GRAY); //picture to greyscale
threshold(toOverlayGRAY, mask, 0, 255, THRESH_BINARY); //greyscale to alpha (black or not)
} else if (toOverlay.channels() == 4){ //transparent, use alpha layer as mask
split(toOverlay,Bands); // seperate channels
vector<UMat> channels{ Bands[0],Bands[1],Bands[2] };
merge(channels,toOverlay); // glue together again
mask = Bands[3]; // png's alpha channel used as mask
}
toOverlay.copyTo(input(cv::Rect(x,y,toOverlay.cols, toOverlay.rows)),mask);
return input;
}
UMat UiDrawer::OverlayHISHMask(UMat input, UMat toOverlay){
if(input.cols < toOverlay.cols || input.rows < toOverlay.rows) return input;
UMat toOverlayGRAY, mask;
vector<UMat> Bands;
if(toOverlay.channels() == 3){ //non transparent image, use black as mask
cvtColor(toOverlay,toOverlayGRAY, COLOR_BGR2GRAY); //picture to greyscale
threshold(toOverlayGRAY, mask, 0, 255, THRESH_BINARY); //greyscale to alpha (black or not)
} else if (toOverlay.channels() == 4){ //transparent, use alpha layer as mask
split(toOverlay,Bands); // seperate channels
vector<UMat> channels{ Bands[0],Bands[1],Bands[2] };
merge(channels,toOverlay); // glue together again
mask = Bands[3]; // png's alpha channel used as mask
}
toOverlay.copyTo(input(cv::Rect(0,0,toOverlay.cols, toOverlay.rows)),mask);
return input;
}
}

@ -1,16 +0,0 @@
set(uiElements_source_files
uiElements.cpp
uiElements.hpp
)
MESSAGE(STATUS "building uiElements")
add_library(uiElements ${uiElements_source_files})
SET("OpenCV_DIR" "/usr/local/lib/")
find_package( OpenCV REQUIRED )
MESSAGE(STATUS "Include dirs ${OpenCV_INCLUDE_DIRS}")
MESSAGE(STATUS "LINK LIBRARIES ${OpenCV_LIBS}")
target_link_libraries(uiElements OpenCV)
MESSAGE(STATUS "Done building uiElements")

@ -1,4 +1,4 @@
#include "_ui.hpp"
#include "../_ui.hpp"
void ui::Ui::draw(){
try{
@ -9,13 +9,7 @@ void ui::Ui::draw(){
UiManager::accessLocks.at(this->id)->unlock();
return;
}
#ifdef OGLWIN
DEBUG_LOG("Assigning opengl buffer")
UMat drawBuffer = drawSurface; //required copy?
DEBUG_LOG("Done assigning opengl buffer")
#else
UMat drawBuffer = drawSurface;
#endif
UMat drawBuffer = drawSurface;
UiManager::accessLocks.at(this->id)->unlock();
DEBUG_LOG("Buffer retreived")
#ifdef OGLWIN

@ -5,38 +5,8 @@
using namespace cv;
//base UI element class (abstract)
struct UiElement{
unsigned int xPosPixels;
unsigned int yPosPixels;
void drawSelf(UMat &input);
};
//sized ui element (abstract)
struct SizedUiElement : UiElement{
unsigned int widthPixels;
unsigned int heightPixels;
void drawSelf(UMat &input);
};
struct UiRect : SizedUiElement{
unsigned int borderColor;
unsigned int fillingColor;
void drawSelf(UMat &input);
};
struct UiText : UiElement{
std::string text;
unsigned int fontSize;
cv::Scalar textColor;
cv::HersheyFonts font = HersheyFonts::FONT_HERSHEY_SIMPLEX;
unsigned int thickness;
unsigned int lineType = 0;
bool leftOrigin = false;
void drawSelf(cv::UMat &input){
putText(input, UiText::text, Point(xPosPixels,yPosPixels), cv::FONT_HERSHEY_DUPLEX, fontSize, textColor, thickness, lineType, leftOrigin);
}
};
//menu item container
struct UiMenuItem{
std::vector<UiElement> elements;
class Widget{
public:
int x,y,width,height = 0;
UMat output;
};
Loading…
Cancel
Save