diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1df6cec14ad1c41d5462d59993df6b8500cd5e9e..1c47560c9205c5c07da65070bfa746087029e827 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -39,47 +39,50 @@ stages: # create 'ci_deps' folder (if not exists) - mkdir -pv ci_deps -.license_header_template: &license_header_definition - - cd $CI_PROJECT_DIR - - # configure git - - export CI_NEW_BRANCH=ci_processing$RANDOM - - echo creating new temporary branch... $CI_NEW_BRANCH - - git config --global user.email "${CI_EMAIL}" - - git config --global user.name "${CI_USERNAME}" - - git checkout -b $CI_NEW_BRANCH # temporary branch - - # download license script - - if [ -f /ci_deps/license_manager.sh ]; then - - echo "File license_manager.sh already exists." - - else - - echo "Downloading file license_manager.sh..." - - wget -P /ci_deps https://gitlab.iri.upc.edu/mobile_robotics/wolf_projects/wolf_lib/wolf/-/raw/devel/wolf_scripts/license_manager.sh - - fi - - # license headers - - export CURRENT_YEAR=$( date +'%Y' ) - - echo "current year:" ${CURRENT_YEAR} - - if [ -f license_header_${CURRENT_YEAR}.txt ]; then - # add license headers to new files - - echo "File license_header_${CURRENT_YEAR}.txt already exists. License headers are assumed to be updated. Adding headers to new files..." - - source /ci_deps/license_manager.sh --add --path=. --license-header=license_header_${CURRENT_YEAR}.txt --exclude=ci_deps - - else - # update license headers of all files - - export PREV_YEAR=$(( CURRENT_YEAR-1 )) - - echo "Creating new file license_header_${CURRENT_YEAR}.txt..." - - git mv license_header_${PREV_YEAR}.txt license_header_${CURRENT_YEAR}.txt - - sed -i "s/${PREV_YEAR}/${PREV_YEAR},${CURRENT_YEAR}/g" license_header_${CURRENT_YEAR}.txt - - source /ci_deps/license_manager.sh --update --path=. --license-header=license_header_${CURRENT_YEAR}.txt --exclude=ci_deps - - fi - - # push changes (if any) - - if git commit -a -m "[skip ci] license headers added or modified" ; then - - git remote set-url --push origin "ssh://git@gitlab.iri.upc.edu:2202/${CI_PROJECT_PATH}.git" - - git push origin $CI_NEW_BRANCH:${CI_COMMIT_REF_NAME} - - else - - echo "No changes, nothing to commit!" - - fi +# .license_header_template: &license_header_definition +# - cd $CI_PROJECT_DIR + +# # configure git +# - export CI_NEW_BRANCH=ci_processing$RANDOM +# - echo creating new temporary branch... $CI_NEW_BRANCH +# - git config --global user.email "${CI_EMAIL}" +# - git config --global user.name "${CI_USERNAME}" +# - git checkout -b $CI_NEW_BRANCH # temporary branch + +# # download license script +# - if [ -f /ci_deps/license_manager.sh ]; then +# - echo "File license_manager.sh already exists." +# - else +# - echo "Downloading file license_manager.sh..." +# - wget -P /ci_deps https://gitlab.iri.upc.edu/mobile_robotics/wolf_projects/wolf_lib/wolf/-/raw/$WOLF_CORE_BRANCH/wolf_scripts/license_manager.sh +# - fi + +# # license headers +# - export CURRENT_YEAR=$( date +'%Y' ) +# - echo "current year:" ${CURRENT_YEAR} +# - if [ -f license_header_${CURRENT_YEAR}.txt ]; then +# # add license headers to new files +# - echo "File license_header_${CURRENT_YEAR}.txt already exists. License headers are assumed to be updated. Adding headers to new files..." +# - source /ci_deps/license_manager.sh --add --path=. --config-path=. --exclude=ci_deps +# - else +# # remove license headers of all files +# - source /ci_deps/license_manager.sh --remove --path=. --config-path=. --exclude=ci_deps +# # update license header +# - export PREV_YEAR=$(( CURRENT_YEAR-1 )) +# - echo "Creating new file license_header_${CURRENT_YEAR}.txt..." +# - git mv license_header_${PREV_YEAR}.txt license_header_${CURRENT_YEAR}.txt +# - sed -i "s/${PREV_YEAR}/${PREV_YEAR},${CURRENT_YEAR}/g" license_header_${CURRENT_YEAR}.txt +# # add new license headers to all files +# - source /ci_deps/license_manager.sh --add --path=. --config-path=. --exclude=ci_deps +# - fi + +# # push changes (if any) +# - if git commit -a -m "[skip ci] license headers added or modified" ; then +# - git remote set-url --push origin "ssh://git@gitlab.iri.upc.edu:2202/${CI_PROJECT_PATH}.git" +# - git push origin $CI_NEW_BRANCH:${CI_COMMIT_REF_NAME} +# - else +# - echo "No changes, nothing to commit!" +# - fi .install_yamlschemacpp_template: &install_yamlschemacpp_definition - cd ${CI_PROJECT_DIR}/ci_deps @@ -134,7 +137,8 @@ license_headers: before_script: - *preliminaries_definition script: - - *license_header_definition + # - *license_header_definition + - !reference [.license_header_script] ############ UBUNTU 18.04 TESTS ############ build_and_test:bionic: diff --git a/demos/demo_factor_imu.cpp b/demos/demo_factor_imu.cpp index f60c57bf58bc9afc03c48ccf878d07a77db486fd..cde7848fc2ad375e5f6fcabae94365679a765a43 100644 --- a/demos/demo_factor_imu.cpp +++ b/demos/demo_factor_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + //Wolf #include <core/ceres_wrapper/solver_ceres.h> diff --git a/demos/demo_imuDock.cpp b/demos/demo_imuDock.cpp index 17939f7895e87c28c43e0495eb6785fb2fe28291..42f16c70889e7bae1ed253f3129da2734c436c5e 100644 --- a/demos/demo_imuDock.cpp +++ b/demos/demo_imuDock.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /** * \file test_imuDock.cpp * diff --git a/demos/demo_imuDock_autoKFs.cpp b/demos/demo_imuDock_autoKFs.cpp index 3c38803e1ab593969173c3c29015d1c0b173b993..fbfc3d06f37d4de7432f0d3998700adb891eb2fb 100644 --- a/demos/demo_imuDock_autoKFs.cpp +++ b/demos/demo_imuDock_autoKFs.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /** * \file test_imuDock_autoKFs.cpp * diff --git a/demos/demo_imuPlateform_Offline.cpp b/demos/demo_imuPlateform_Offline.cpp index 8f953ad35b9713978d9bfb0bdb5723dd9e79bbec..9c324c8793349a816ae2c6727e0f63106598d955 100644 --- a/demos/demo_imuPlateform_Offline.cpp +++ b/demos/demo_imuPlateform_Offline.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + //Wolf #include <core/ceres_wrapper/solver_ceres.h> diff --git a/demos/demo_imu_constrained0.cpp b/demos/demo_imu_constrained0.cpp index eecd4f850ad55e3e723a458997b406515319bb38..d7f82f6bdac0be5a69a6523fa5c613df617dd1ea 100644 --- a/demos/demo_imu_constrained0.cpp +++ b/demos/demo_imu_constrained0.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + //Wolf #include <core/ceres_wrapper/solver_ceres.h> diff --git a/demos/demo_processor_imu.cpp b/demos/demo_processor_imu.cpp index 9feeb4572e473d44dd4ad5859351db0528b267d6..0f2acd7d0cb2c2a65d6e4d2fd6749612a94ce865 100644 --- a/demos/demo_processor_imu.cpp +++ b/demos/demo_processor_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /** * \file test_processor_imu.cpp * diff --git a/demos/demo_processor_imu_jacobians.cpp b/demos/demo_processor_imu_jacobians.cpp index c64e1e5e02b6d9ef7c03e00c1633028725cdd9b5..a83a8b41fa7626147a21b7236f1403537f57d549 100644 --- a/demos/demo_processor_imu_jacobians.cpp +++ b/demos/demo_processor_imu_jacobians.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /** * \file test_processor_imu_jacobians.cpp * diff --git a/include/imu/capture/capture_compass.h b/include/imu/capture/capture_compass.h index 2596e0d855b79285379dca7d6c7973a7d2ffe907..fa0904605c43bdc2761aa7adea9317c13a7cce56 100644 --- a/include/imu/capture/capture_compass.h +++ b/include/imu/capture/capture_compass.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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 //Wolf includes diff --git a/include/imu/capture/capture_imu.h b/include/imu/capture/capture_imu.h index b21e7a12fc5ee52edd571184ab1a46e593cdae55..325f0e84c5ef4540391ae492e8097310b00ec169 100644 --- a/include/imu/capture/capture_imu.h +++ b/include/imu/capture/capture_imu.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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 //Wolf includes diff --git a/include/imu/common/imu.h b/include/imu/common/imu.h index 25ea836ea74255fded84d1caef2335bbecfc4e15..5f4463b4d094d1542e98448e1edd3566a2b27e7e 100644 --- a/include/imu/common/imu.h +++ b/include/imu/common/imu.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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 diff --git a/include/imu/factor/factor_compass_3d.h b/include/imu/factor/factor_compass_3d.h index cede21c5260e3d2d3bfc2ae101a7556ebe68463c..95f2b71e5a8e26595853d9e8325882b6bb322513 100644 --- a/include/imu/factor/factor_compass_3d.h +++ b/include/imu/factor/factor_compass_3d.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,10 +17,10 @@ // // 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 +#include "imu/common/imu.h" #include <core/factor/factor_autodiff.h> namespace wolf diff --git a/include/imu/factor/factor_fix_bias.h b/include/imu/factor/factor_fix_bias.h index ea278678d987dde1892ea1003d1e0bfb193bc6f6..a35bc95faee34d910ef40bc1c5b3cbcb524f851b 100644 --- a/include/imu/factor/factor_fix_bias.h +++ b/include/imu/factor/factor_fix_bias.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,13 +17,11 @@ // // 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-------- -#ifndef FACTOR_FIX_BIAS_H_ -#define FACTOR_FIX_BIAS_H_ +#pragma once // Wolf includes +#include "imu/common/imu.h" #include "imu/capture/capture_imu.h" #include "imu/feature/feature_imu.h" #include <core/factor/factor_autodiff.h> @@ -109,6 +107,4 @@ inline bool FactorFixBias::operator()(const T* const _ab, const T* const _wb, T* return true; } -} // namespace wolf - -#endif +} // namespace wolf \ No newline at end of file diff --git a/include/imu/factor/factor_imu.h b/include/imu/factor/factor_imu.h index 36ab4e97ddcfde043c879b3485e936031bdda426..20881ad1e0268644bc58711ce3c9fe5cf823007e 100644 --- a/include/imu/factor/factor_imu.h +++ b/include/imu/factor/factor_imu.h @@ -1,10 +1,9 @@ -//--------LICENSE_START-------- -// -// Copyright (C) 2020,2021,2022,2023 Institut de Robòtica i Informà tica +// WOLF - 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 +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,11 +16,11 @@ // // 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 // Wolf includes +#include "imu/common/imu.h" #include "imu/feature/feature_imu.h" #include "imu/sensor/sensor_imu.h" #include <core/factor/factor_autodiff.h> diff --git a/include/imu/factor/factor_imu2d.h b/include/imu/factor/factor_imu2d.h index 76a8149aaaab3b08b9e2edf340519a5ee19dbb92..d61ffb9efc4d226dd42d82569cdbc2e9744b2ed2 100644 --- a/include/imu/factor/factor_imu2d.h +++ b/include/imu/factor/factor_imu2d.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,12 +17,11 @@ // // 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-------- -#ifndef FACTOR_IMU2D_THETA_H_ -#define FACTOR_IMU2D_THETA_H_ + +#pragma once // Wolf includes +#include "imu/common/imu.h" #include "imu/feature/feature_imu2d.h" #include "imu/math/imu2d_tools.h" #include <core/factor/factor_autodiff.h> @@ -174,6 +173,4 @@ inline bool FactorImu2d::operator()(const T* const _p1, return true; } -} // namespace wolf - -#endif +} // namespace wolf \ No newline at end of file diff --git a/include/imu/factor/factor_imu2d_with_gravity.h b/include/imu/factor/factor_imu2d_with_gravity.h index 899f9f307025da1f8c003b10e3d1a857e8c7c546..e206b72aa7b4ce8019ff7d5ccd962a80d01a9216 100644 --- a/include/imu/factor/factor_imu2d_with_gravity.h +++ b/include/imu/factor/factor_imu2d_with_gravity.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,12 +17,11 @@ // // 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-------- -#ifndef FACTOR_IMU2D_WITH_GRAVITY_H_ -#define FACTOR_IMU2D_WITH_GRAVITY_H_ + +#pragma once // Wolf includes +#include "imu/common/imu.h" #include "imu/feature/feature_imu2d.h" #include "imu/math/imu2d_tools.h" #include <core/factor/factor_autodiff.h> @@ -186,6 +185,4 @@ inline bool FactorImu2dWithGravity::operator()(const T* const _p1, return true; } -} // namespace wolf - -#endif +} // namespace wolf \ No newline at end of file diff --git a/include/imu/feature/feature_imu.h b/include/imu/feature/feature_imu.h index eb3881b62e2d4225f9453b7318cd5ce1f65a9ebf..6a01399971f1ea2a52aca52114ade6ffe85d1032 100644 --- a/include/imu/feature/feature_imu.h +++ b/include/imu/feature/feature_imu.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,64 +17,62 @@ // // 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-------- -#ifndef FEATURE_IMU_H_ -#define FEATURE_IMU_H_ -//Wolf includes +#pragma once + +// Wolf includes +#include "imu/common/imu.h" #include "imu/capture/capture_imu.h" #include <core/feature/feature_base.h> #include <core/common/wolf.h> -//std includes +// std includes -namespace wolf { +namespace wolf +{ -//WOLF_PTR_TYPEDEFS(CaptureImu); +// WOLF_PTR_TYPEDEFS(CaptureImu); WOLF_PTR_TYPEDEFS(FeatureImu); class FeatureImu : public FeatureBase { - public: - - /** \brief Constructor from and measures - * - * \param _measurement the measurement - * \param _meas_covariance the noise of the measurement - * \param _dD_db_jacobians Jacobians of preintegrated delta wrt Imu biases - * \param acc_bias accelerometer bias of origin frame - * \param gyro_bias gyroscope bias of origin frame - * \param _cap_imu_ptr pointer to parent CaptureMotion - */ - FeatureImu(const Eigen::VectorXd& _delta_preintegrated, - const Eigen::MatrixXd& _delta_preintegrated_covariance, - const Eigen::Vector6d& _bias, - const Eigen::Matrix<double,9,6>& _dD_db_jacobians, - CaptureMotionPtr _cap_imu_ptr = nullptr); - - /** \brief Constructor from capture pointer - * - * \param _cap_imu_ptr pointer to parent CaptureMotion - */ - FeatureImu(CaptureMotionPtr _cap_imu_ptr); - - ~FeatureImu() override; - - const Eigen::Vector3d& getAccBiasPreint() const; - const Eigen::Vector3d& getGyroBiasPreint() const; - const Eigen::Matrix<double, 9, 6>& getJacobianBias() const; - - private: - - // Used biases - Eigen::Vector3d acc_bias_preint_; ///< Acceleration bias used for delta preintegration - Eigen::Vector3d gyro_bias_preint_; ///< Gyrometer bias used for delta preintegration - - Eigen::Matrix<double, 9, 6> jacobian_bias_; - - public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW; + public: + /** \brief Constructor from and measures + * + * \param _measurement the measurement + * \param _meas_covariance the noise of the measurement + * \param _dD_db_jacobians Jacobians of preintegrated delta wrt Imu biases + * \param acc_bias accelerometer bias of origin frame + * \param gyro_bias gyroscope bias of origin frame + * \param _cap_imu_ptr pointer to parent CaptureMotion + */ + FeatureImu(const Eigen::VectorXd& _delta_preintegrated, + const Eigen::MatrixXd& _delta_preintegrated_covariance, + const Eigen::Vector6d& _bias, + const Eigen::Matrix<double, 9, 6>& _dD_db_jacobians, + CaptureMotionPtr _cap_imu_ptr = nullptr); + + /** \brief Constructor from capture pointer + * + * \param _cap_imu_ptr pointer to parent CaptureMotion + */ + FeatureImu(CaptureMotionPtr _cap_imu_ptr); + + ~FeatureImu() override; + + const Eigen::Vector3d& getAccBiasPreint() const; + const Eigen::Vector3d& getGyroBiasPreint() const; + const Eigen::Matrix<double, 9, 6>& getJacobianBias() const; + + private: + // Used biases + Eigen::Vector3d acc_bias_preint_; ///< Acceleration bias used for delta preintegration + Eigen::Vector3d gyro_bias_preint_; ///< Gyrometer bias used for delta preintegration + + Eigen::Matrix<double, 9, 6> jacobian_bias_; + + public: + EIGEN_MAKE_ALIGNED_OPERATOR_NEW; }; inline const Eigen::Vector3d& FeatureImu::getAccBiasPreint() const @@ -92,6 +90,4 @@ inline const Eigen::Matrix<double, 9, 6>& FeatureImu::getJacobianBias() const return jacobian_bias_; } -} // namespace wolf - -#endif +} // namespace wolf \ No newline at end of file diff --git a/include/imu/feature/feature_imu2d.h b/include/imu/feature/feature_imu2d.h index b5ca183e41d5a4fd2d83f6290805acb00b083ea4..f0fe2264be5fc31b26156cdd54355184fa03a62f 100644 --- a/include/imu/feature/feature_imu2d.h +++ b/include/imu/feature/feature_imu2d.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,61 +17,59 @@ // // 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-------- -#ifndef FEATURE_IMU2D_H_ -#define FEATURE_IMU2D_H_ -//Wolf includes +#pragma once + +// Wolf includes +#include "imu/common/imu.h" #include "imu/capture/capture_imu.h" #include <core/feature/feature_base.h> #include <core/common/wolf.h> -//std includes +// std includes -namespace wolf { +namespace wolf +{ WOLF_PTR_TYPEDEFS(FeatureImu2d); class FeatureImu2d : public FeatureBase { - public: - - /** \brief Constructor from and measures - * - * \param _measurement the measurement - * \param _meas_covariance the noise of the measurement - * \param _dD_db_jacobians Jacobians of preintegrated delta wrt Imu2d biases - * \param acc_bias accelerometer bias of origin frame - * \param gyro_bias gyroscope bias of origin frame - * \param _cap_imu_ptr pointer to parent CaptureMotion - */ - FeatureImu2d(const Eigen::VectorXd& _delta_preintegrated, - const Eigen::MatrixXd& _delta_preintegrated_covariance, - const Eigen::Vector3d& _bias, - const Eigen::Matrix<double,5,3>& _dD_db_jacobians, - CaptureMotionPtr _cap_imu_ptr = nullptr); - - /** \brief Constructor from capture pointer - * - * \param _cap_imu_ptr pointer to parent CaptureMotion - */ - FeatureImu2d(CaptureMotionPtr _cap_imu_ptr); - - ~FeatureImu2d() override; - - const Eigen::Vector3d& getBiasPreint() const; - const Eigen::Matrix<double, 5, 3>& getJacobianBias() const; - - private: - - // Used biases - Eigen::Vector3d bias_preint_; - - Eigen::Matrix<double, 5, 3> jacobian_bias_; - - public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW; + public: + /** \brief Constructor from and measures + * + * \param _measurement the measurement + * \param _meas_covariance the noise of the measurement + * \param _dD_db_jacobians Jacobians of preintegrated delta wrt Imu2d biases + * \param acc_bias accelerometer bias of origin frame + * \param gyro_bias gyroscope bias of origin frame + * \param _cap_imu_ptr pointer to parent CaptureMotion + */ + FeatureImu2d(const Eigen::VectorXd& _delta_preintegrated, + const Eigen::MatrixXd& _delta_preintegrated_covariance, + const Eigen::Vector3d& _bias, + const Eigen::Matrix<double, 5, 3>& _dD_db_jacobians, + CaptureMotionPtr _cap_imu_ptr = nullptr); + + /** \brief Constructor from capture pointer + * + * \param _cap_imu_ptr pointer to parent CaptureMotion + */ + FeatureImu2d(CaptureMotionPtr _cap_imu_ptr); + + ~FeatureImu2d() override; + + const Eigen::Vector3d& getBiasPreint() const; + const Eigen::Matrix<double, 5, 3>& getJacobianBias() const; + + private: + // Used biases + Eigen::Vector3d bias_preint_; + + Eigen::Matrix<double, 5, 3> jacobian_bias_; + + public: + EIGEN_MAKE_ALIGNED_OPERATOR_NEW; }; inline const Eigen::Vector3d& FeatureImu2d::getBiasPreint() const @@ -84,6 +82,4 @@ inline const Eigen::Matrix<double, 5, 3>& FeatureImu2d::getJacobianBias() const return jacobian_bias_; } -} // namespace wolf - -#endif +} // namespace wolf \ No newline at end of file diff --git a/include/imu/math/imu2d_tools.h b/include/imu/math/imu2d_tools.h index bbb860ef0e8a52b105ad8175e5bebd8b08d572fa..d4733c902ecdff831783a5a8fa457291551b19d6 100644 --- a/include/imu/math/imu2d_tools.h +++ b/include/imu/math/imu2d_tools.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,11 +17,10 @@ // // 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 +#include "imu/common/imu.h" #include <core/common/wolf.h> #include <core/math/rotations.h> #include <core/math/SE2.h> diff --git a/include/imu/math/imu_tools.h b/include/imu/math/imu_tools.h index 4829d72e743ec8af25ccaeb1ad31b5f30be19337..767862b78ac7693a8b955fa43d6e97128372ff33 100644 --- a/include/imu/math/imu_tools.h +++ b/include/imu/math/imu_tools.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,11 +17,10 @@ // // 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 +#include "imu/common/imu.h" #include <core/common/wolf.h> #include <core/math/rotations.h> #include <core/composite/vector_composite.h> diff --git a/include/imu/processor/processor_compass.h b/include/imu/processor/processor_compass.h index f8d1d40caf021f741be7370630a56591627b3966..9913a6bab8ad747182adee1b8ee693b56318ccab 100644 --- a/include/imu/processor/processor_compass.h +++ b/include/imu/processor/processor_compass.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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 #include "imu/common/imu.h" diff --git a/include/imu/processor/processor_imu.h b/include/imu/processor/processor_imu.h index ce086dd4115229e65d53c040d9c591ad0631d892..aeba38a34d3de68be8a055a2c6bbcf77eb03dbab 100644 --- a/include/imu/processor/processor_imu.h +++ b/include/imu/processor/processor_imu.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,12 +17,11 @@ // // 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-------- -#ifndef PROCESSOR_IMU_H -#define PROCESSOR_IMU_H + +#pragma once // Wolf Imu +#include "imu/common/imu.h" #include "imu/sensor/sensor_imu.h" #include "imu/capture/capture_imu.h" #include "imu/feature/feature_imu.h" @@ -30,13 +29,14 @@ #include <core/processor/processor_motion.h> -namespace wolf { +namespace wolf +{ WOLF_STRUCT_PTR_TYPEDEFS(ParamsProcessorImu); struct ParamsProcessorImu : public ParamsProcessorMotion { bool bootstrap_enable; - enum BootstrapMethod + enum BootstrapMethod { BOOTSTRAP_STATIC, BOOTSTRAP_G, @@ -45,8 +45,7 @@ struct ParamsProcessorImu : public ParamsProcessorMotion double bootstrap_averaging_length; ParamsProcessorImu() = default; - ParamsProcessorImu(const YAML::Node& _n): - ParamsProcessorMotion(_n) + ParamsProcessorImu(const YAML::Node& _n) : ParamsProcessorMotion(_n) { bootstrap_enable = _n["bootstrap"]["enable"].as<bool>(); if (bootstrap_enable) @@ -55,12 +54,12 @@ struct ParamsProcessorImu : public ParamsProcessorMotion std::transform(str.begin(), str.end(), str.begin(), ::toupper); if (str == "STATIC" /**/) { - bootstrap_method = BOOTSTRAP_STATIC; + bootstrap_method = BOOTSTRAP_STATIC; bootstrap_averaging_length = _n["bootstrap"]["averaging_length"].as<double>(); } if (str == "G" /* */) { - bootstrap_method = BOOTSTRAP_G; + bootstrap_method = BOOTSTRAP_G; bootstrap_averaging_length = _n["bootstrap"]["averaging_length"].as<double>(); } if (str == "V0_G" /* */) @@ -77,95 +76,95 @@ struct ParamsProcessorImu : public ParamsProcessorMotion WOLF_PTR_TYPEDEFS(ProcessorImu); -//class -class ProcessorImu : public ProcessorMotion{ - public: - ProcessorImu(ParamsProcessorImuPtr _params_motion_Imu); - ~ProcessorImu() override; - WOLF_PROCESSOR_CREATE(ProcessorImu, ParamsProcessorImu); - void configure(SensorBasePtr _sensor) override; - - void preProcess() override; - - protected: - void computeCurrentDelta(const Eigen::VectorXd& _data, - const Eigen::MatrixXd& _data_cov, - const Eigen::VectorXd& _calib, - const double _dt, - Eigen::VectorXd& _delta, - Eigen::MatrixXd& _delta_cov, - Eigen::MatrixXd& _jacobian_calib) const override; - void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, - const Eigen::VectorXd& _delta, - const double _dt, - Eigen::VectorXd& _delta_preint_plus_delta) const override; - void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, - const Eigen::VectorXd& _delta, - const double _dt, - Eigen::VectorXd& _delta_preint_plus_delta, - Eigen::MatrixXd& _jacobian_delta_preint, - Eigen::MatrixXd& _jacobian_delta) const override; - void statePlusDelta(const VectorComposite& _x, - const Eigen::VectorXd& _delta, - const double _Dt, - VectorComposite& _x_plus_delta) const override; - Eigen::VectorXd deltaZero() const override; - Eigen::VectorXd correctDelta(const Eigen::VectorXd& delta_preint, - const Eigen::VectorXd& delta_step) const override; - VectorXd getCalibration(const CaptureBaseConstPtr _capture = nullptr) const override; - void setCalibration(const CaptureBasePtr _capture, const VectorXd& _calibration) override; - bool voteForKeyFrame() const override; - CaptureMotionPtr emplaceCapture(const FrameBasePtr& _frame_own, - const SensorBasePtr& _sensor, - const TimeStamp& _ts, - const VectorXd& _data, - const MatrixXd& _data_cov, - const VectorXd& _calib, - const VectorXd& _calib_preint, - const CaptureBasePtr& _capture_origin) override; - virtual void emplaceFeaturesAndFactors(CaptureBasePtr _capture_origin, CaptureMotionPtr _capture_own) override; - - public: - /** \brief Enable bootstrapping process - */ - void bootstrapEnable(bool _bootstrap_enable = true); - - protected: - /** \brief Bootstrap the IMU initial conditions - */ - virtual void bootstrap() override; - /** \brief Get the Capture where the IMU data started the bootstrap - */ - CaptureBasePtr bootstrapOrigin() const; - /** \brief Compose all preintegrated Deltas accumulated during the whole bootstrap process. - */ - VectorXd bootstrapDelta() const; - /** \brief Incrementally compute all state values according to the current initial conditions and all - * preintegrated deltas. - * - * This is executed at the end of the bootstrap process - */ - bool recomputeStates() const; - - protected: - ParamsProcessorImuPtr params_motion_Imu_; - std::list<FactorBasePtr> bootstrap_factor_list_; ///< List of all IMU factors created while IMU is bootstrapping - SensorImu3dPtr sensor_imu_; - Matrix6d imu_drift_cov_; +// class +class ProcessorImu : public ProcessorMotion +{ + public: + ProcessorImu(ParamsProcessorImuPtr _params_motion_Imu); + ~ProcessorImu() override; + WOLF_PROCESSOR_CREATE(ProcessorImu, ParamsProcessorImu); + void configure(SensorBasePtr _sensor) override; + + void preProcess() override; + + protected: + void computeCurrentDelta(const Eigen::VectorXd& _data, + const Eigen::MatrixXd& _data_cov, + const Eigen::VectorXd& _calib, + const double _dt, + Eigen::VectorXd& _delta, + Eigen::MatrixXd& _delta_cov, + Eigen::MatrixXd& _jacobian_calib) const override; + void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, + const Eigen::VectorXd& _delta, + const double _dt, + Eigen::VectorXd& _delta_preint_plus_delta) const override; + void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, + const Eigen::VectorXd& _delta, + const double _dt, + Eigen::VectorXd& _delta_preint_plus_delta, + Eigen::MatrixXd& _jacobian_delta_preint, + Eigen::MatrixXd& _jacobian_delta) const override; + void statePlusDelta(const VectorComposite& _x, + const Eigen::VectorXd& _delta, + const double _Dt, + VectorComposite& _x_plus_delta) const override; + Eigen::VectorXd deltaZero() const override; + Eigen::VectorXd correctDelta(const Eigen::VectorXd& delta_preint, + const Eigen::VectorXd& delta_step) const override; + VectorXd getCalibration(const CaptureBaseConstPtr _capture = nullptr) const override; + void setCalibration(const CaptureBasePtr _capture, const VectorXd& _calibration) override; + bool voteForKeyFrame() const override; + CaptureMotionPtr emplaceCapture(const FrameBasePtr& _frame_own, + const SensorBasePtr& _sensor, + const TimeStamp& _ts, + const VectorXd& _data, + const MatrixXd& _data_cov, + const VectorXd& _calib, + const VectorXd& _calib_preint, + const CaptureBasePtr& _capture_origin) override; + virtual void emplaceFeaturesAndFactors(CaptureBasePtr _capture_origin, CaptureMotionPtr _capture_own) override; + + public: + /** \brief Enable bootstrapping process + */ + void bootstrapEnable(bool _bootstrap_enable = true); + + protected: + /** \brief Bootstrap the IMU initial conditions + */ + virtual void bootstrap() override; + /** \brief Get the Capture where the IMU data started the bootstrap + */ + CaptureBasePtr bootstrapOrigin() const; + /** \brief Compose all preintegrated Deltas accumulated during the whole bootstrap process. + */ + VectorXd bootstrapDelta() const; + /** \brief Incrementally compute all state values according to the current initial conditions and all + * preintegrated deltas. + * + * This is executed at the end of the bootstrap process + */ + bool recomputeStates() const; + + protected: + ParamsProcessorImuPtr params_motion_Imu_; + std::list<FactorBasePtr> bootstrap_factor_list_; ///< List of all IMU factors created while IMU is bootstrapping + SensorImu3dPtr sensor_imu_; + Matrix6d imu_drift_cov_; }; -} +} // namespace wolf ///////////////////////////////////////////////////////// // IMPLEMENTATION. Put your implementation includes here ///////////////////////////////////////////////////////// -namespace wolf{ +namespace wolf +{ inline Eigen::VectorXd ProcessorImu::deltaZero() const { - return (Eigen::VectorXd(10) << 0,0,0, 0,0,0,1, 0,0,0 ).finished(); // p, q, v + return (Eigen::VectorXd(10) << 0, 0, 0, 0, 0, 0, 1, 0, 0, 0).finished(); // p, q, v } -} // namespace wolf - -#endif // PROCESSOR_Imu_H +} // namespace wolf \ No newline at end of file diff --git a/include/imu/processor/processor_imu2d.h b/include/imu/processor/processor_imu2d.h index 1247556b98673d4bf1e67d731ab9f8f739e2a4d5..472f4800c19ea7c969e3b4798159cd3eec9b35d5 100644 --- a/include/imu/processor/processor_imu2d.h +++ b/include/imu/processor/processor_imu2d.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,25 +17,24 @@ // // 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-------- -#ifndef PROCESSOR_IMU2D_H -#define PROCESSOR_IMU2D_H + +#pragma once // Wolf +#include "imu/common/imu.h" #include "imu/sensor/sensor_imu.h" #include "imu/capture/capture_imu.h" #include "imu/feature/feature_imu.h" #include <core/processor/processor_motion.h> -namespace wolf { +namespace wolf +{ WOLF_STRUCT_PTR_TYPEDEFS(ParamsProcessorImu2d); struct ParamsProcessorImu2d : public ParamsProcessorMotion { ParamsProcessorImu2d() = default; - ParamsProcessorImu2d(const YAML::Node& _n) : - ParamsProcessorMotion(_n) + ParamsProcessorImu2d(const YAML::Node& _n) : ParamsProcessorMotion(_n) { // } @@ -47,74 +46,73 @@ struct ParamsProcessorImu2d : public ParamsProcessorMotion WOLF_PTR_TYPEDEFS(ProcessorImu2d); -//class -class ProcessorImu2d : public ProcessorMotion{ - public: - ProcessorImu2d(ParamsProcessorImu2dPtr _params_motion_Imu); - ~ProcessorImu2d() override; - void configure(SensorBasePtr _sensor) override; +// class +class ProcessorImu2d : public ProcessorMotion +{ + public: + ProcessorImu2d(ParamsProcessorImu2dPtr _params_motion_Imu); + ~ProcessorImu2d() override; + void configure(SensorBasePtr _sensor) override; - WOLF_PROCESSOR_CREATE(ProcessorImu2d, ParamsProcessorImu2d); - void preProcess() override; + WOLF_PROCESSOR_CREATE(ProcessorImu2d, ParamsProcessorImu2d); + void preProcess() override; - protected: - void computeCurrentDelta(const Eigen::VectorXd& _data, + protected: + void computeCurrentDelta(const Eigen::VectorXd& _data, const Eigen::MatrixXd& _data_cov, const Eigen::VectorXd& _calib, - const double _dt, - Eigen::VectorXd& _delta, - Eigen::MatrixXd& _delta_cov, - Eigen::MatrixXd& _jacobian_calib) const override; - void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, + const double _dt, + Eigen::VectorXd& _delta, + Eigen::MatrixXd& _delta_cov, + Eigen::MatrixXd& _jacobian_calib) const override; + void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, const Eigen::VectorXd& _delta, - const double _dt, - Eigen::VectorXd& _delta_preint_plus_delta) const override; - void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, + const double _dt, + Eigen::VectorXd& _delta_preint_plus_delta) const override; + void deltaPlusDelta(const Eigen::VectorXd& _delta_preint, const Eigen::VectorXd& _delta, - const double _dt, - Eigen::VectorXd& _delta_preint_plus_delta, - Eigen::MatrixXd& _jacobian_delta_preint, - Eigen::MatrixXd& _jacobian_delta) const override; - void statePlusDelta(const VectorComposite& _x, + const double _dt, + Eigen::VectorXd& _delta_preint_plus_delta, + Eigen::MatrixXd& _jacobian_delta_preint, + Eigen::MatrixXd& _jacobian_delta) const override; + void statePlusDelta(const VectorComposite& _x, const Eigen::VectorXd& _delta, - const double _Dt, - VectorComposite& _x_plus_delta) const override; - Eigen::VectorXd deltaZero() const override; - Eigen::VectorXd correctDelta(const Eigen::VectorXd& delta_preint, - const Eigen::VectorXd& delta_step) const override; - VectorXd getCalibration (const CaptureBaseConstPtr _capture) const override; - void setCalibration(const CaptureBasePtr _capture, const VectorXd& _calibration) override; - bool voteForKeyFrame() const override; - CaptureMotionPtr emplaceCapture(const FrameBasePtr& _frame_own, - const SensorBasePtr& _sensor, - const TimeStamp& _ts, - const VectorXd& _data, - const MatrixXd& _data_cov, - const VectorXd& _calib, - const VectorXd& _calib_preint, - const CaptureBasePtr& _capture_origin) override; - virtual void emplaceFeaturesAndFactors(CaptureBasePtr _capture_origin, CaptureMotionPtr _capture_own) override; + const double _Dt, + VectorComposite& _x_plus_delta) const override; + Eigen::VectorXd deltaZero() const override; + Eigen::VectorXd correctDelta(const Eigen::VectorXd& delta_preint, + const Eigen::VectorXd& delta_step) const override; + VectorXd getCalibration(const CaptureBaseConstPtr _capture) const override; + void setCalibration(const CaptureBasePtr _capture, const VectorXd& _calibration) override; + bool voteForKeyFrame() const override; + CaptureMotionPtr emplaceCapture(const FrameBasePtr& _frame_own, + const SensorBasePtr& _sensor, + const TimeStamp& _ts, + const VectorXd& _data, + const MatrixXd& _data_cov, + const VectorXd& _calib, + const VectorXd& _calib_preint, + const CaptureBasePtr& _capture_origin) override; + virtual void emplaceFeaturesAndFactors(CaptureBasePtr _capture_origin, CaptureMotionPtr _capture_own) override; - - protected: - ParamsProcessorImu2dPtr params_motion_Imu_; - SensorImu2dPtr sensor_imu2d_; - Matrix3d imu_drift_cov_; + protected: + ParamsProcessorImu2dPtr params_motion_Imu_; + SensorImu2dPtr sensor_imu2d_; + Matrix3d imu_drift_cov_; }; -} +} // namespace wolf ///////////////////////////////////////////////////////// // IMPLEMENTATION. Put your implementation includes here ///////////////////////////////////////////////////////// -namespace wolf{ +namespace wolf +{ inline Eigen::VectorXd ProcessorImu2d::deltaZero() const { - return (Eigen::VectorXd(5) << 0,0, 0, 0,0 ).finished(); // p, q, v + return (Eigen::VectorXd(5) << 0, 0, 0, 0, 0).finished(); // p, q, v } -} // namespace wolf - -#endif // PROCESSOR_Imu_H +} // namespace wolf \ No newline at end of file diff --git a/include/imu/sensor/sensor_compass.h b/include/imu/sensor/sensor_compass.h index 9736cae31ce38b37258ffccffd6b907424ca3ac7..4ca89da55d5e1eaab0a619111c67b86c6c02c730 100644 --- a/include/imu/sensor/sensor_compass.h +++ b/include/imu/sensor/sensor_compass.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,12 +17,11 @@ // // 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-------- -#ifndef SENSOR_SENSOR_COMPASS_H_ -#define SENSOR_SENSOR_COMPASS_H_ + +#pragma once // wolf includes +#include "imu/common/imu.h" #include <core/sensor/sensor_base.h> #include <iostream> @@ -70,6 +69,4 @@ inline ParamsSensorCompassConstPtr SensorCompass::getParams() const return params_compass_; } -} /* namespace wolf */ - -#endif /* SENSOR_SENSOR_DIFF_DRIVE_H_ */ +} /* namespace wolf */ \ No newline at end of file diff --git a/include/imu/sensor/sensor_imu.h b/include/imu/sensor/sensor_imu.h index 901e9027421fa6a11e88b3875ee235176f7cef8f..0c8ce27edfa98bf398fe8d8d94db6687b718c0e2 100644 --- a/include/imu/sensor/sensor_imu.h +++ b/include/imu/sensor/sensor_imu.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,11 +17,11 @@ // // 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 //wolf includes +#include "imu/common/imu.h" #include <core/sensor/sensor_base.h> namespace wolf { diff --git a/license_header_2023.txt b/license_header_2023.txt index 2ddae24c37e894a9a46e58afd6db8ebf8ff14b92..529e05aa1469fbcfd40d938a07ea2d488cb4ca40 100644 --- a/license_header_2023.txt +++ b/license_header_2023.txt @@ -1,8 +1,10 @@ -// Copyright (C) 2020,2021,2022,2023 Institut de Robòtica i Informà tica Industrial, CSIC-UPC. -// Authors: Joan Solà Ortega (jsola@iri.upc.edu) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 diff --git a/src/capture/capture_imu.cpp b/src/capture/capture_imu.cpp index 748de9d4edffe258098d248271a58aa59f8ab84e..eabab021f926c2830bd90627983aee4ea7196d36 100644 --- a/src/capture/capture_imu.cpp +++ b/src/capture/capture_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "imu/capture/capture_imu.h" #include "imu/sensor/sensor_imu.h" diff --git a/src/feature/feature_imu.cpp b/src/feature/feature_imu.cpp index 6034da9f6453e23b1e9676f5eee5a6ae29343327..71fa2db99ecd6096dfcc96efbf29d312c0d569cc 100644 --- a/src/feature/feature_imu.cpp +++ b/src/feature/feature_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "imu/feature/feature_imu.h" namespace wolf { diff --git a/src/feature/feature_imu2d.cpp b/src/feature/feature_imu2d.cpp index 73073046874cff677adc272ff5237e5d5e0adee5..ef19eef6842e16e7795cb3916ea41c534f66547e 100644 --- a/src/feature/feature_imu2d.cpp +++ b/src/feature/feature_imu2d.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "imu/feature/feature_imu2d.h" namespace wolf { diff --git a/src/processor/processor_compass.cpp b/src/processor/processor_compass.cpp index 6cd8acacdbce6d41006d77d15f7c19ca85c072f7..e6d96c6686652d0918da0551517c7aa4da0bb9d1 100644 --- a/src/processor/processor_compass.cpp +++ b/src/processor/processor_compass.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "imu/processor/processor_compass.h" #include "imu/capture/capture_compass.h" #include "imu/factor/factor_compass_3d.h" diff --git a/src/processor/processor_imu.cpp b/src/processor/processor_imu.cpp index 67008e987eb2b25f75fc7aebecc6a0aa36cf54a5..80ad04c00aa6199d8f101287ee1e68dd83363519 100644 --- a/src/processor/processor_imu.cpp +++ b/src/processor/processor_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + // imu #include "imu/processor/processor_imu.h" #include "imu/factor/factor_imu.h" diff --git a/src/processor/processor_imu2d.cpp b/src/processor/processor_imu2d.cpp index b39bf85cc39cbf7d5cb36dc8e49dd322298cfa00..2559928966d605d7d73879ea9f91996ab9913bf0 100644 --- a/src/processor/processor_imu2d.cpp +++ b/src/processor/processor_imu2d.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- // imu #include "imu/processor/processor_imu2d.h" diff --git a/src/sensor/sensor_compass.cpp b/src/sensor/sensor_compass.cpp index a860acea92010bf9598af061dde438e61f0ce292..c8d77b6a1d84f5f7cfb719e8e0c18ab662cde52b 100644 --- a/src/sensor/sensor_compass.cpp +++ b/src/sensor/sensor_compass.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "imu/sensor/sensor_compass.h" #include "core/state_block/state_block_derived.h" #include "core/state_block/state_quaternion.h" diff --git a/test/gtest_example.cpp b/test/gtest_example.cpp index c4e1c576511647b978db39fffcc02f57c1d3a4e4..89a98d05a130887131130c74dcef112b272eff18 100644 --- a/test/gtest_example.cpp +++ b/test/gtest_example.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include <core/utils/utils_gtest.h> TEST(TestTest, DummyTestExample) diff --git a/test/gtest_factor_compass_3d.cpp b/test/gtest_factor_compass_3d.cpp index 9ee933008c80af9395185a691800b203b133ed2d..8d419a60bb90908d2b87cd3b8e320b6096aea465 100644 --- a/test/gtest_factor_compass_3d.cpp +++ b/test/gtest_factor_compass_3d.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "core/utils/utils_gtest.h" #include "imu/internal/config.h" diff --git a/test/gtest_factor_imu.cpp b/test/gtest_factor_imu.cpp index 04740f89e326a4bc707e2dfc5b3ad656228b8a57..86331b8136a2ef7c625b1ac9c7ead478e23a5437 100644 --- a/test/gtest_factor_imu.cpp +++ b/test/gtest_factor_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- #include <core/ceres_wrapper/solver_ceres.h> #include <core/utils/utils_gtest.h> diff --git a/test/gtest_factor_imu2d.cpp b/test/gtest_factor_imu2d.cpp index 48289bda0027b4d8d9d2936f26c5078c83cca227..a6ebea4ea6046c211bd67274da19482c5f24a023 100644 --- a/test/gtest_factor_imu2d.cpp +++ b/test/gtest_factor_imu2d.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include <core/ceres_wrapper/solver_ceres.h> #include <core/utils/utils_gtest.h> diff --git a/test/gtest_factor_imu2d_with_gravity.cpp b/test/gtest_factor_imu2d_with_gravity.cpp index 4763816a2e067ac418dc790d714640d08cc44e16..0046dfc435fec60936ffb37035f62117ca3948ea 100644 --- a/test/gtest_factor_imu2d_with_gravity.cpp +++ b/test/gtest_factor_imu2d_with_gravity.cpp @@ -1,10 +1,9 @@ -//--------LICENSE_START-------- -// -// Copyright (C) 2020,2021,2022,2023 Institut de Robòtica i Informà tica +// WOLF - 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 +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +16,7 @@ // // 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-------- + #include <core/ceres_wrapper/solver_ceres.h> #include <core/utils/utils_gtest.h> diff --git a/test/gtest_feature_imu.cpp b/test/gtest_feature_imu.cpp index 06869f20060b5e77c4d5c1b9e7659617bba41446..c69f596b0ff637f8fb0a659831e39bf7b7bc4feb 100644 --- a/test/gtest_feature_imu.cpp +++ b/test/gtest_feature_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + //Wolf #include "imu/capture/capture_imu.h" #include "imu/processor/processor_imu.h" diff --git a/test/gtest_imu.cpp b/test/gtest_imu.cpp index 64824c27585bd721b0ca5d6eddc3e53a3b07c01f..07e6f8e1d57d1a222ac3056439b23e351d46f539 100644 --- a/test/gtest_imu.cpp +++ b/test/gtest_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /* * gtest_Imu.cpp * diff --git a/test/gtest_imu2d_static_init.cpp b/test/gtest_imu2d_static_init.cpp index 6971696d06bee95c196b2be7b20d95f655aacf16..19a2f77040d6efea26fd3958a2756bd933a7e837 100644 --- a/test/gtest_imu2d_static_init.cpp +++ b/test/gtest_imu2d_static_init.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- #include <fstream> #include <core/utils/utils_gtest.h> diff --git a/test/gtest_imu2d_tools.cpp b/test/gtest_imu2d_tools.cpp index 0c43136c059e0371bfaceda6703c5765f16dd919..d05cc6093eda505c7e9bd911b62d5896c92c1b43 100644 --- a/test/gtest_imu2d_tools.cpp +++ b/test/gtest_imu2d_tools.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /* * gtest_imu2d_tools.cpp * diff --git a/test/gtest_imu_mocap_fusion.cpp b/test/gtest_imu_mocap_fusion.cpp index b5cc40a72589f754b775e2d041bc7aafc03cbf7e..e2316366e4896726ae2b2f386f3c5c848db02a3b 100644 --- a/test/gtest_imu_mocap_fusion.cpp +++ b/test/gtest_imu_mocap_fusion.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- #include <fstream> diff --git a/test/gtest_imu_static_init.cpp b/test/gtest_imu_static_init.cpp index 27fb343176edfb532a82be3199e5a3ae6b2f5f27..9de7e9868582f8f6c8cfcbe509dbdcc82ee407a4 100644 --- a/test/gtest_imu_static_init.cpp +++ b/test/gtest_imu_static_init.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /* * gtest_imu_static_init.cpp * diff --git a/test/gtest_imu_tools.cpp b/test/gtest_imu_tools.cpp index f09e224b21dae8f14a2ef4414294d75d206691b0..0d4dc734c5116949226189998e3b504f63035ff2 100644 --- a/test/gtest_imu_tools.cpp +++ b/test/gtest_imu_tools.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /* * gtest_imu_tools.cpp * diff --git a/test/gtest_processor_imu.cpp b/test/gtest_processor_imu.cpp index d612c3f80649583dea1784faa84f6aec7768ca7c..12d32c2b225e6a2411291ddce32ba1ac0e487f7c 100644 --- a/test/gtest_processor_imu.cpp +++ b/test/gtest_processor_imu.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- #include "imu/internal/config.h" #include "imu/capture/capture_imu.h" diff --git a/test/gtest_processor_imu2d.cpp b/test/gtest_processor_imu2d.cpp index c9fac472bb6b2b20227b59949e6a2fa34a685386..5da98fafeff1cfe67f78d8c049c4f63603a415a5 100644 --- a/test/gtest_processor_imu2d.cpp +++ b/test/gtest_processor_imu2d.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- #include "imu/internal/config.h" #include "imu/capture/capture_imu.h" diff --git a/test/gtest_processor_imu2d_with_gravity.cpp b/test/gtest_processor_imu2d_with_gravity.cpp index 58e61f671840a79c98c84c17e962c1b9f5e610db..5067c87ffe6d2a2062d2f65fb983eefcf5182d3c 100644 --- a/test/gtest_processor_imu2d_with_gravity.cpp +++ b/test/gtest_processor_imu2d_with_gravity.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- #include "imu/internal/config.h" #include "imu/capture/capture_imu.h" diff --git a/test/gtest_processor_imu_jacobians.cpp b/test/gtest_processor_imu_jacobians.cpp index a20cfeebd28a190b98a69dfd59ec28cbffdfa1de..810e1e9a3418a0db4514d3df667f4f926ef103aa 100644 --- a/test/gtest_processor_imu_jacobians.cpp +++ b/test/gtest_processor_imu_jacobians.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,6 @@ // // 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-------- /** * \file gtest_imu_preintegration_jacobians.cpp * diff --git a/test/gtest_processor_motion_intrinsics_update.cpp b/test/gtest_processor_motion_intrinsics_update.cpp index 0aec43d7f30c25735a2302acbbdb526a3c163e6a..c51059f7d373cc09f1bd9ccc7092f85a2cc3a753 100644 --- a/test/gtest_processor_motion_intrinsics_update.cpp +++ b/test/gtest_processor_motion_intrinsics_update.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include <fstream> #include "imu/internal/config.h" diff --git a/test/gtest_sensor_compass.cpp b/test/gtest_sensor_compass.cpp index 8b3be46b4bdf52e40c8dbc64df9945bd14893f97..ffbf48619e0c5372aaa01aff91a46fdfda635ab1 100644 --- a/test/gtest_sensor_compass.cpp +++ b/test/gtest_sensor_compass.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "core/utils/utils_gtest.h" #include "imu/internal/config.h" diff --git a/test/processor_imu2d_UnitTester.cpp b/test/processor_imu2d_UnitTester.cpp index e837e6ef1ffaa1ecbf01168997bb283dd8c0d63f..bf908e077d83b7f6e919860e15354ed1324c9e9d 100644 --- a/test/processor_imu2d_UnitTester.cpp +++ b/test/processor_imu2d_UnitTester.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "processor_imu2d_UnitTester.h" namespace wolf { diff --git a/test/processor_imu2d_UnitTester.h b/test/processor_imu2d_UnitTester.h index 25ab07432053f4d2f516c0b373d8c6d289a076d7..a54c1dc5d691fd52e3782492a744dafcf8354cce 100644 --- a/test/processor_imu2d_UnitTester.h +++ b/test/processor_imu2d_UnitTester.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,11 +17,8 @@ // // 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-------- -#ifndef PROCESSOR_IMU2D_UNITTESTER_H -#define PROCESSOR_IMU2D_UNITTESTER_H +#pragma once // Wolf #include "imu/processor/processor_imu2d.h" @@ -395,6 +392,4 @@ inline Imu_jac_deltas ProcessorImu2d_UnitTester::finite_diff_noise(const double& } -} // namespace wolf - -#endif // PROCESSOR_Imu_UNITTESTER_H +} // namespace wolf \ No newline at end of file diff --git a/test/processor_imu_UnitTester.cpp b/test/processor_imu_UnitTester.cpp index 8b16351bbea05a359a7b9206dd0cc81295cee9ea..d9c40a3c9f179839b6503f727a731a6eddfa43d1 100644 --- a/test/processor_imu_UnitTester.cpp +++ b/test/processor_imu_UnitTester.cpp @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,8 +17,7 @@ // // 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-------- + #include "processor_imu_UnitTester.h" namespace wolf { diff --git a/test/processor_imu_UnitTester.h b/test/processor_imu_UnitTester.h index 251de7f6140d2e968bcb945c61cae576d25846dd..7aa7c95fcaa6d4e7eb5215ec2d753b5b6f026697 100644 --- a/test/processor_imu_UnitTester.h +++ b/test/processor_imu_UnitTester.h @@ -1,10 +1,10 @@ -//--------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) +// WOLF - Copyright (C) 2020,2021,2022,2023 +// Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +// Authors: Joan Solà Ortega (jsola@iri.upc.edu) and +// Joan Vallvé Navarro (jvallve@iri.upc.edu) // All rights reserved. // -// This file is part of WOLF +// This file is part of WOLF: http://www.iri.upc.edu/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 @@ -17,11 +17,8 @@ // // 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-------- -#ifndef PROCESSOR_IMU_UNITTESTER_H -#define PROCESSOR_IMU_UNITTESTER_H +#pragma once // Wolf #include "imu/processor/processor_imu.h" @@ -395,6 +392,4 @@ inline Imu_jac_deltas ProcessorImu_UnitTester::finite_diff_noise(const double& _ } -} // namespace wolf - -#endif // PROCESSOR_Imu_UNITTESTER_H +} // namespace wolf \ No newline at end of file diff --git a/wolf_scripts/create_plugin.sh b/wolf_scripts/create_plugin.sh deleted file mode 100755 index b1ca42f945f7f559a70e43377412faa8e6d4ec9c..0000000000000000000000000000000000000000 --- a/wolf_scripts/create_plugin.sh +++ /dev/null @@ -1,126 +0,0 @@ -#!/bin/bash -# $1 path to the root of the plugin -# $2 name of the plugin -# $3 files to be moved - -#Generate the necessary dirs -# if [ ! -d $1 ]; -# then -# mkdir $1 -# fi - -# if [ ! -d $1/include/$2 ]; -# then -# # mkdir $1/include -# mkdir $1/include/$2 -# fi -# if [ ! -d $1/src ]; -# then -# mkdir $1/src -# fi -root_dir=$(echo $1 | rev | cut -d '/' -f 2- | rev) -if [ ! -d $root_dir/$2 ]; -then - cp -a ../Skeleton $root_dir - mv $root_dir/Skeleton $root_dir/$2 - mv $root_dir/$2/include/skeleton $root_dir/$2/include/$2 -fi - -for folder in capture factor feature landmark processor sensor yaml ; do - if [ ! -d $1/include/$2/$folder ]; - then - mkdir $1/include/$2/$folder - fi - if [ ! -d $1/src/$folder ]; - then - mkdir $1/src/$folder - fi -done -for file in $(cat $3); do - head=$(echo $file | cut -d '/' -f 1) - if [ "$head" = "include" ]; - then - folder=$(echo $file | cut -d '/' -f 3) - suffix=$(echo $file | cut -d '/' -f 4-) - line=$(ag "HDRS_"${folder^^} $1/CMakeLists.txt | cut -d ':' -f 1 | head -1) - line=$(($line + 1)) - echo $line " && " $file " && " $folder " && " $suffix - if [ "$suffix" = "" ]; - then - line=$(ag "HDRS_BASE" $1/CMakeLists.txt | cut -d ':' -f 1 | head -1) - line=$(($line + 1)) - suffix=$folder - sed -i ""$line"i $head/$2/$suffix" $1/CMakeLists.txt - cp $file $1/$head/$2/$suffix - else - sed -i ""$line"i $head/$2/$folder/$suffix" $1/CMakeLists.txt - cp $file $1/$head/$2/$folder/$suffix - fi - elif [ "$head" = "src" ]; - then - folder=$(echo $file | cut -d '/' -f 2) - suffix=$(echo $file | cut -d '/' -f 3-) - # ag "SRCS_"$folder $1/CMakeLists.txt - line=$(ag "SRCS_"${folder^^} $1/CMakeLists.txt | cut -d ':' -f 1 | head -1) - line=$(($line + 1)) - echo $line " && " $file " && " $folder " && " $suffix - if [ "$suffix" = "" ]; - then - line=$(ag "SRCS_BASE" $1/CMakeLists.txt | cut -d ':' -f 1 | head -1) - line=$(($line + 1)) - suffix=$folder - sed -i ""$line"i $file" $1/CMakeLists.txt - cp $file $1/$head/$suffix - else - sed -i ""$line"i $file" $1/CMakeLists.txt - cp $file $1/$head/$folder/$suffix - fi - else - cp $file $1/$file - fi -done -for f in $(cat $3); do - hhead=$(echo $f | cut -d '/' -f 1) - if [ "$hhead" = "include" ]; - then - ffolder=$(echo $f | cut -d '/' -f 3) - ssuffix=$(echo $f | cut -d '/' -f 4-) - inc=$ffolder/$ssuffix - else - continue - fi - for ff in $(cat $3); do - head=$(echo $ff | cut -d '/' -f 1) - if [ "$head" = "include" ]; - then - folder=$(echo $ff | cut -d '/' -f 3) - suffix=$(echo $ff | cut -d '/' -f 4-) - if [ "$suffix" = "" ]; - then - new_path=$1/$head/$2/$folder - sed -i -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@g" $new_path - else - new_path=$1/$head/$2/$folder/$suffix - sed -i -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@g" $new_path - fi - # sed -n -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@pg" $new_path - # sed -i -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@g" $new_path - elif [ "$head" = "src" ]; - then - folder=$(echo $ff | cut -d '/' -f 2) - suffix=$(echo $ff | cut -d '/' -f 3-) - # sed -n -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@pg" $new_path - if [ "$suffix" = "" ]; - then - new_path=$1/$head/$folder - sed -i -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@g" $new_path - else - new_path=$1/$head/$folder/$suffix - sed -i -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@g" $new_path - fi - else - # sed -n -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@pg" $new_path - sed -i -E "s@(#include[[:space:]]+\")base(\/$inc\")@\1$2\2@g" $1/$ff - fi - done -done \ No newline at end of file