diff --git a/CMakeLists.txt b/CMakeLists.txt index 5ffc262ce646ca150eb98ea534f188a0ba1471ce..fd7799af086ffd518448571625253f3ad07e11f2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -77,7 +77,7 @@ FIND_PACKAGE(wolfimu REQUIRED) FIND_PACKAGE(Eigen3 3.3 REQUIRED CONFIG) # ============ CONFIG.H ============ -set(_WOLF_ROOT_DIR ${CMAKE_SOURCE_DIR}) +set(_WOLF_CODE_DIR ${CMAKE_SOURCE_DIR}) # variable used to compile the config.h.in file string(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UPPER) @@ -110,6 +110,9 @@ include/${PROJECT_NAME}/capture/capture_inertial_kinematics.h include/${PROJECT_NAME}/capture/capture_leg_odom.h include/${PROJECT_NAME}/capture/capture_point_feet_nomove.h ) +SET(HDRS_COMMON +include/${PROJECT_NAME}/common/bodydynamics.h + ) SET(HDRS_FACTOR include/${PROJECT_NAME}/factor/factor_force_torque.h include/${PROJECT_NAME}/factor/factor_force_torque_preint.h diff --git a/demos/solo_imu_kine.cpp b/demos/solo_imu_kine.cpp index d1fa022124106514cabc74431b54f27a77fa9096..944c9e4a13d399f41655ed8e468a30b483d98a28 100644 --- a/demos/solo_imu_kine.cpp +++ b/demos/solo_imu_kine.cpp @@ -271,7 +271,7 @@ int main (int argc, char **argv) { ///////////////////////// // WOLF enters the scene // SETUP PROBLEM/SENSORS/PROCESSORS - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; ProblemPtr problem = Problem::create("POV", 3); diff --git a/demos/solo_imu_kine_mocap.cpp b/demos/solo_imu_kine_mocap.cpp index 5322aaf6ed8f6aa7a105971d2cfce43e96e69ecf..0470b439effa21897190c1b3aa003bb186bc0530 100644 --- a/demos/solo_imu_kine_mocap.cpp +++ b/demos/solo_imu_kine_mocap.cpp @@ -247,7 +247,7 @@ int main (int argc, char **argv) { ///////////////////////// // WOLF enters the scene // SETUP PROBLEM/SENSORS/PROCESSORS - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; ProblemPtr problem = Problem::create("POV", 3); diff --git a/demos/solo_imu_mocap.cpp b/demos/solo_imu_mocap.cpp index 1f89d69b72784d2a088fedb11d5f13189386612b..5de5db9ab69b344026c9ac6042a661ac72248906 100644 --- a/demos/solo_imu_mocap.cpp +++ b/demos/solo_imu_mocap.cpp @@ -215,7 +215,7 @@ int main (int argc, char **argv) { ///////////////////////// // WOLF enters the scene // SETUP PROBLEM/SENSORS/PROCESSORS - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; ProblemPtr problem = Problem::create("POV", 3); diff --git a/demos/solo_kine_mocap.cpp b/demos/solo_kine_mocap.cpp index 2454cacfba27a050afee977e59b6a89c8c4c83c4..612cf127c5841873a0e9b5e5bcbcf86a7e4ca4de 100644 --- a/demos/solo_kine_mocap.cpp +++ b/demos/solo_kine_mocap.cpp @@ -217,7 +217,7 @@ int main (int argc, char **argv) { ///////////////////////// // WOLF enters the scene // SETUP PROBLEM/SENSORS/PROCESSORS - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; ProblemPtr problem = Problem::create("PO", 3); // ProblemPtr problem = Problem::create("POV", 3); diff --git a/demos/solo_real_povcdl_estimation.cpp b/demos/solo_real_povcdl_estimation.cpp index 902e9957cd50bc85d7ad68bc21dea95bb769220b..5243ee6baf874c786dcf675ac081079b73127e40 100644 --- a/demos/solo_real_povcdl_estimation.cpp +++ b/demos/solo_real_povcdl_estimation.cpp @@ -214,7 +214,7 @@ int main (int argc, char **argv) { ///////////////////////// // WOLF enters the scene // SETUP PROBLEM/SENSORS/PROCESSORS - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; ProblemPtr problem = Problem::create("POVCDL", 3); diff --git a/include/bodydynamics/common/bodydynamics.h b/include/bodydynamics/common/bodydynamics.h new file mode 100644 index 0000000000000000000000000000000000000000..e0722b928c4bd4229ad5da8f1e65e065726602b8 --- /dev/null +++ b/include/bodydynamics/common/bodydynamics.h @@ -0,0 +1,34 @@ +//--------LICENSE_START-------- +// +// Copyright (C) 2020,2021,2022,2023 Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) +// All rights reserved. +// +// This file is part of WOLF +// WOLF is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with this program. If not, see <http://www.gnu.org/licenses/>. +// +//--------LICENSE_END-------- +#pragma once + +// Enable project-specific definitions and macros +#include "bodydynamics/internal/config.h" +#include <core/common/wolf.h> + +namespace wolf +{ + +// Folder schema Registry +WOLF_REGISTER_FOLDER(_WOLF_BODYDYNAMICS_SCHEMA_DIR); + +} diff --git a/internal/config.h.in b/internal/config.h.in index 35f3468331656ba09a63ad7f26e5c0fb78c8d5bc..727b1bc74fa04ab302137551cab9eab93a51fa8d 100644 --- a/internal/config.h.in +++ b/internal/config.h.in @@ -24,13 +24,12 @@ // which will be added to the include path for compilation, // and installed with the public wolf headers. -#ifndef WOLF_INTERNAL_${PROJECT_NAME_UPPER}_CONFIG_H_ -#define WOLF_INTERNAL_${PROJECT_NAME_UPPER}_CONFIG_H_ +#pragma once #cmakedefine _WOLF_DEBUG #cmakedefine _WOLF_TRACE -#define _WOLF_${PROJECT_NAME_UPPER}_ROOT_DIR "${_WOLF_ROOT_DIR}" +#define _WOLF_${PROJECT_NAME_UPPER}_CODE_DIR "${_WOLF_CODE_DIR}" -#endif /* WOLF_INTERNAL_CONFIG_H_ */ +#define _WOLF_${PROJECT_NAME_UPPER}_SCHEMA_DIR "${CMAKE_INSTALL_PREFIX}/${INCLUDE_INSTALL_DIR}/${PROJECT_NAME}/schema" \ No newline at end of file diff --git a/test/gtest_factor_force_torque.cpp b/test/gtest_factor_force_torque.cpp index d45996349ccde5851600d63b30418ea3e2824998..43a82e1b1c05a5adeffc8acc5574db3e87def9ae 100644 --- a/test/gtest_factor_force_torque.cpp +++ b/test/gtest_factor_force_torque.cpp @@ -208,7 +208,7 @@ class FactorInertialKinematics_2KF : public testing::Test void SetUp() override { - std::string bodydynamics_root = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root = _WOLF_BODYDYNAMICS_CODE_DIR; mass_ = 10.0; // Small 10 kg robot //===================================================== SETTING PROBLEM diff --git a/test/gtest_factor_inertial_kinematics.cpp b/test/gtest_factor_inertial_kinematics.cpp index 7d4ad65404c39f7ade37a1b0c267d5dc525b0a81..98fbd3c3a4c17be1499f1109d21eb63bf2c367bc 100644 --- a/test/gtest_factor_inertial_kinematics.cpp +++ b/test/gtest_factor_inertial_kinematics.cpp @@ -288,7 +288,7 @@ class FactorInertialKinematics_1KF_1v_bfix : public FactorInertialKinematics_1KF // // using make_shared; // // using static_pointer_cast; // -// std::string bodydynamics_root = _WOLF_BODYDYNAMICS_ROOT_DIR; +// std::string bodydynamics_root = _WOLF_BODYDYNAMICS_CODE_DIR; // // //===================================================== SETTING PROBLEM // // WOLF PROBLEM diff --git a/test/gtest_processor_force_torque_preint.cpp b/test/gtest_processor_force_torque_preint.cpp index 98ff7330864af2025bae6f5e9b6aa72c9bfeaf3c..7b4dfea5224b1530846a545bf63b0ac45c6a02c6 100644 --- a/test/gtest_processor_force_torque_preint.cpp +++ b/test/gtest_processor_force_torque_preint.cpp @@ -97,7 +97,7 @@ public: void SetUp() override { - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; problem_ = Problem::create("POVCDL", 3); diff --git a/test/gtest_processor_inertial_kinematics.cpp b/test/gtest_processor_inertial_kinematics.cpp index 3e044b78e0152ff16dcee2c6ccd8553d272de953..1e3d31fb3c34fa73062e48954a3c4ddecd2f9864 100644 --- a/test/gtest_processor_inertial_kinematics.cpp +++ b/test/gtest_processor_inertial_kinematics.cpp @@ -79,7 +79,7 @@ class FactorInertialKinematics_2KF : public testing::Test void SetUp() override { - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; problem_ = Problem::create("POVCDL", 3); diff --git a/test/gtest_processor_point_feet_nomove.cpp b/test/gtest_processor_point_feet_nomove.cpp index 2e36fe34edf4e4e6a0b02ff7872b7ed7519a699f..2a9c36f2b0138cc16523eedccb8a748f8de1fd31 100644 --- a/test/gtest_processor_point_feet_nomove.cpp +++ b/test/gtest_processor_point_feet_nomove.cpp @@ -80,7 +80,7 @@ class PointFeetCaptures : public testing::Test void SetUp() override { - std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_ROOT_DIR; + std::string bodydynamics_root_dir = _WOLF_BODYDYNAMICS_CODE_DIR; problem_ = Problem::create("PO", 3);