Skip to content

Commit a074c38

Browse files
Merge pull request #1582 from tier4/beta-to-tier4-main-sync
chore: sync beta branch beta/v0.36 with tier4/main
2 parents b34c1a1 + e6ebc31 commit a074c38

File tree

402 files changed

+7398
-4093
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

402 files changed

+7398
-4093
lines changed

.cppcheck_suppressions

-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
checkersReport
44
missingInclude
55
missingIncludeSystem
6-
unknownMacro
76
unmatchedSuppression
87
unusedFunction
98
useInitializationList

.cspell.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
"planning/behavior_velocity_planner/autoware_behavior_velocity_intersection_module/scripts/**"
55
],
66
"ignoreRegExpList": [],
7-
"words": ["dltype", "tvmgen", "fromarray"]
7+
"words": ["dltype", "tvmgen", "fromarray", "soblin"]
88
}

.github/CODEOWNERS

+4-4
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ common/autoware_overlay_rviz_plugin/autoware_overlay_rviz_plugin/** khalil@leodr
1010
common/autoware_path_distance_calculator/** isamu.takagi@tier4.jp
1111
common/autoware_perception_rviz_plugin/** opensource@apex.ai shunsuke.miura@tier4.jp taiki.tanaka@tier4.jp takeshi.miura@tier4.jp yoshi.ri@tier4.jp
1212
common/autoware_point_types/** david.wong@tier4.jp max.schmeller@tier4.jp
13+
common/autoware_signal_processing/** ali.boyali@tier4.jp fumiya.watanabe@tier4.jp kyoichi.sugahara@tier4.jp takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp
1314
common/autoware_test_utils/** kyoichi.sugahara@tier4.jp mamoru.sobue@tier4.jp takamasa.horibe@tier4.jp zulfaqar.azmi@tier4.jp
1415
common/autoware_testing/** adam.dabrowski@robotec.ai satoshi.ota@tier4.jp shumpei.wakabayashi@tier4.jp tomoya.kimura@tier4.jp
1516
common/autoware_universe_utils/** mamoru.sobue@tier4.jp takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp
@@ -27,7 +28,6 @@ common/object_recognition_utils/** shunsuke.miura@tier4.jp takayuki.murooka@tier
2728
common/osqp_interface/** fumiya.watanabe@tier4.jp maxime.clement@tier4.jp satoshi.ota@tier4.jp takayuki.murooka@tier4.jp
2829
common/polar_grid/** yukihiro.saito@tier4.jp
2930
common/qp_interface/** fumiya.watanabe@tier4.jp maxime.clement@tier4.jp satoshi.ota@tier4.jp takayuki.murooka@tier4.jp
30-
common/signal_processing/** ali.boyali@tier4.jp fumiya.watanabe@tier4.jp kyoichi.sugahara@tier4.jp takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp
3131
common/tensorrt_common/** dan.umeda@tier4.jp manato.hirabayashi@tier4.jp
3232
common/tier4_adapi_rviz_plugin/** hiroki.ota@tier4.jp isamu.takagi@tier4.jp kosuke.takeuchi@tier4.jp
3333
common/tier4_api_utils/** isamu.takagi@tier4.jp
@@ -91,8 +91,8 @@ localization/autoware_pose_initializer/** anh.nguyen.2@tier4.jp isamu.takagi@tie
9191
localization/autoware_pose_instability_detector/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
9292
localization/autoware_stop_filter/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
9393
localization/autoware_twist2accel/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
94-
localization/localization_util/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
95-
localization/ndt_scan_matcher/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
94+
localization/autoware_localization_util/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
95+
localization/autoware_ndt_scan_matcher/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
9696
localization/yabloc/yabloc_common/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
9797
localization/yabloc/yabloc_image_processing/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
9898
localization/yabloc/yabloc_monitor/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
@@ -106,7 +106,7 @@ perception/autoware_bytetrack/** manato.hirabayashi@tier4.jp yoshi.ri@tier4.jp
106106
perception/autoware_cluster_merger/** dai.nguyen@tier4.jp shunsuke.miura@tier4.jp yukihiro.saito@tier4.jp
107107
perception/autoware_compare_map_segmentation/** abrahammonrroy@yahoo.com dai.nguyen@tier4.jp yukihiro.saito@tier4.jp
108108
perception/autoware_crosswalk_traffic_light_estimator/** satoshi.ota@tier4.jp shunsuke.miura@tier4.jp tao.zhong@tier4.jp
109-
perception/autoware_detected_object_feature_remover/** tomoya.kimura@tier4.jp
109+
perception/autoware_detected_object_feature_remover/** tomoya.kimura@tier4.jp yoshi.ri@tier4.jp kotaro.uetake@tier4.jp
110110
perception/autoware_detected_object_validation/** dai.nguyen@tier4.jp shintaro.tomie@tier4.jp shunsuke.miura@tier4.jp yoshi.ri@tier4.jp yukihiro.saito@tier4.jp
111111
perception/autoware_detection_by_tracker/** taekjin.lee@tier4.jp yoshi.ri@tier4.jp yukihiro.saito@tier4.jp
112112
perception/autoware_elevation_map_loader/** kosuke.takeuchi@tier4.jp shintaro.tomie@tier4.jp taichi.higashide@tier4.jp

.github/actions/build-and-test-differential/action.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,10 @@ runs:
5757
restore-keys: |
5858
ccache-main-${{ runner.arch }}-${{ inputs.rosdistro }}-
5959
60-
- name: Show ccache stats before build
61-
run: du -sh ${CCACHE_DIR} && ccache -s
60+
- name: Show ccache stats before build and reset stats
61+
run: |
62+
du -sh ${CCACHE_DIR} && ccache -s
63+
ccache --zero-stats
6264
shell: bash
6365

6466
- name: Export CUDA state as a variable for adding to cache key

.github/workflows/build-and-test.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,10 @@ jobs:
6969
echo -e "# Set maximum cache size\nmax_size = 600MB" >> "${CCACHE_DIR}/ccache.conf"
7070
shell: bash
7171

72-
- name: Show ccache stats before build
73-
run: du -sh ${CCACHE_DIR} && ccache -s
72+
- name: Show ccache stats before build and reset stats
73+
run: |
74+
du -sh ${CCACHE_DIR} && ccache -s
75+
ccache --zero-stats
7476
shell: bash
7577

7678
- name: Export CUDA state as a variable for adding to cache key

.github/workflows/cppcheck-differential.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ jobs:
7171
id: cppcheck
7272
run: |
7373
echo "Running Cppcheck on modified packages: ${{ steps.filter-paths-no-cpp-files.outputs.filtered-full-paths }}"
74-
cppcheck --enable=all --inconclusive --check-level=exhaustive --error-exitcode=1 --suppressions-list=.cppcheck_suppressions --inline-suppr ${{ steps.filter-paths-no-cpp-files.outputs.filtered-full-paths }} 2> cppcheck-report.txt
74+
cppcheck --enable=all --inconclusive --check-level=exhaustive -D'PLUGINLIB_EXPORT_CLASS(class_type, base_class)=' -Dslots= -DQ_SLOTS= --error-exitcode=1 --suppressions-list=.cppcheck_suppressions --inline-suppr ${{ steps.filter-paths-no-cpp-files.outputs.filtered-full-paths }} 2> cppcheck-report.txt
7575
shell: bash
7676

7777
- name: Setup Problem Matchers for cppcheck

.github/workflows/cppcheck-weekly.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
continue-on-error: true
2424
id: cppcheck
2525
run: |
26-
cppcheck --enable=all --inconclusive --check-level=exhaustive --suppress=*:*/test/* --error-exitcode=1 --xml --inline-suppr . 2> cppcheck-report.xml
26+
cppcheck --enable=all --inconclusive --check-level=exhaustive -D'PLUGINLIB_EXPORT_CLASS(class_type, base_class)=' -Dslots= -DQ_SLOTS= --suppress=*:*/test/* --error-exitcode=1 --xml --inline-suppr . 2> cppcheck-report.xml
2727
shell: bash
2828

2929
- name: Count errors by error ID and severity

codecov.yaml

+83
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,86 @@ flag_management:
3030
ignore:
3131
- "**/test/*"
3232
- "**/test/**/*"
33+
- "**/debug.*"
34+
35+
component_management:
36+
individual_components:
37+
- component_id: planning-tier-iv-maintained-packages
38+
name: Planning TIER IV Maintained Packages
39+
paths:
40+
- planning/autoware_costmap_generator/**
41+
- planning/autoware_external_velocity_limit_selector/**
42+
- planning/autoware_freespace_planner/**
43+
- planning/autoware_freespace_planning_algorithms/**
44+
- planning/autoware_mission_planner/**
45+
# - planning/autoware_objects_of_interest_marker_interface/**
46+
- planning/autoware_obstacle_cruise_planner/**
47+
# - planning/autoware_obstacle_stop_planner/**
48+
- planning/autoware_path_optimizer/**
49+
- planning/autoware_path_smoother/**
50+
- planning/autoware_planning_test_manager/**
51+
- planning/autoware_planning_topic_converter/**
52+
- planning/autoware_planning_validator/**
53+
- planning/autoware_remaining_distance_time_calculator/**
54+
- planning/autoware_route_handler/**
55+
- planning/autoware_rtc_interface/**
56+
- planning/autoware_scenario_selector/**
57+
- planning/autoware_static_centerline_generator/**
58+
- planning/autoware_surround_obstacle_checker/**
59+
- planning/autoware_velocity_smoother/**
60+
##### behavior_path_planner #####
61+
# - planning/behavior_path_planner/autoware_behavior_path_avoidance_by_lane_change_module/**
62+
- planning/behavior_path_planner/autoware_behavior_path_goal_planner_module/**
63+
- planning/behavior_path_planner/autoware_behavior_path_planner_common/**
64+
- planning/behavior_path_planner/autoware_behavior_path_start_planner_module/**
65+
- planning/behavior_path_planner/autoware_behavior_path_dynamic_obstacle_avoidance_module/**
66+
- planning/behavior_path_planner/autoware_behavior_path_lane_change_module/**
67+
# - planning/behavior_path_planner/autoware_behavior_path_sampling_planner_module/**
68+
- planning/behavior_path_planner/autoware_behavior_path_static_obstacle_avoidance_module/**
69+
# - planning/behavior_path_planner/autoware_behavior_path_external_request_lane_change_module/**
70+
- planning/behavior_path_planner/autoware_behavior_path_planner/**
71+
- planning/behavior_path_planner/autoware_behavior_path_side_shift_module/**
72+
##### behavior_velocity_planner #####
73+
- planning/behavior_velocity_planner/autoware_behavior_velocity_blind_spot_module/**
74+
- planning/behavior_velocity_planner/autoware_behavior_velocity_crosswalk_module/**
75+
# - planning/behavior_velocity_planner/autoware_behavior_velocity_detection_area_module/**
76+
- planning/behavior_velocity_planner/autoware_behavior_velocity_intersection_module/**
77+
# - planning/behavior_velocity_planner/autoware_behavior_velocity_no_drivable_lane_module/**
78+
- planning/behavior_velocity_planner/autoware_behavior_velocity_no_stopping_area_module/**
79+
# - planning/behavior_velocity_planner/autoware_behavior_velocity_occlusion_spot_module/**
80+
- planning/behavior_velocity_planner/autoware_behavior_velocity_planner/**
81+
# - planning/behavior_velocity_planner/autoware_behavior_velocity_planner_common/**
82+
- planning/behavior_velocity_planner/autoware_behavior_velocity_run_out_module/**
83+
# - planning/behavior_velocity_planner/autoware_behavior_velocity_speed_bump_module/**
84+
- planning/behavior_velocity_planner/autoware_behavior_velocity_stop_line_module/**
85+
# - planning/behavior_velocity_planner/autoware_behavior_velocity_template_module/**
86+
- planning/behavior_velocity_planner/autoware_behavior_velocity_traffic_light_module/**
87+
- planning/behavior_velocity_planner/autoware_behavior_velocity_virtual_traffic_light_module/**
88+
- planning/behavior_velocity_planner/autoware_behavior_velocity_walkway_module/**
89+
##### motion_velocity_planner #####
90+
- planning/motion_velocity_planner/autoware_motion_velocity_dynamic_obstacle_stop_module/**
91+
- planning/motion_velocity_planner/autoware_motion_velocity_obstacle_velocity_limiter_module/**
92+
- planning/motion_velocity_planner/autoware_motion_velocity_out_of_lane_module/**
93+
- planning/motion_velocity_planner/autoware_motion_velocity_planner_common/**
94+
- planning/motion_velocity_planner/autoware_motion_velocity_planner_node/**
95+
96+
- component_id: control-tier-iv-maintained-packages
97+
name: Control TIER IV Maintained Packages
98+
paths:
99+
- control/autoware_autonomous_emergency_braking/**
100+
- control/autoware_control_validator/**
101+
- control/autoware_external_cmd_selector/**
102+
# - control/autoware_joy_controller/**
103+
- control/autoware_lane_departure_checker/**
104+
- control/autoware_mpc_lateral_controller/**
105+
- control/autoware_operation_mode_transition_manager/**
106+
- control/autoware_pid_longitudinal_controller/**
107+
# - control/autoware_pure_pursuit/**
108+
- control/autoware_shift_decider/**
109+
# - control/autoware_smart_mpc_trajectory_follower/**
110+
- control/autoware_trajectory_follower_base/**
111+
- control/autoware_trajectory_follower_node/**
112+
- control/autoware_vehicle_cmd_gate/**
113+
# - control/control_performance_analysis/**
114+
- control/obstacle_collision_checker/**
115+
# - control/predicted_path_checker/**

common/interpolation/CMakeLists.txt common/autoware_interpolation/CMakeLists.txt

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
cmake_minimum_required(VERSION 3.14)
2-
project(interpolation)
2+
project(autoware_interpolation)
33

44
find_package(autoware_cmake REQUIRED)
55
autoware_package()
66

7-
ament_auto_add_library(interpolation SHARED
7+
ament_auto_add_library(autoware_interpolation SHARED
88
src/linear_interpolation.cpp
99
src/spline_interpolation.cpp
1010
src/spline_interpolation_points_2d.cpp
@@ -17,7 +17,7 @@ if(BUILD_TESTING)
1717
ament_add_ros_isolated_gtest(test_interpolation ${test_files})
1818

1919
target_link_libraries(test_interpolation
20-
interpolation
20+
autoware_interpolation
2121
)
2222
endif()
2323

File renamed without changes.

common/interpolation/include/interpolation/interpolation_utils.hpp common/autoware_interpolation/include/autoware/interpolation/interpolation_utils.hpp

+5-5
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef INTERPOLATION__INTERPOLATION_UTILS_HPP_
16-
#define INTERPOLATION__INTERPOLATION_UTILS_HPP_
15+
#ifndef AUTOWARE__INTERPOLATION__INTERPOLATION_UTILS_HPP_
16+
#define AUTOWARE__INTERPOLATION__INTERPOLATION_UTILS_HPP_
1717

1818
#include <algorithm>
1919
#include <array>
2020
#include <stdexcept>
2121
#include <vector>
2222

23-
namespace interpolation_utils
23+
namespace autoware::interpolation
2424
{
2525
inline bool isIncreasing(const std::vector<double> & x)
2626
{
@@ -109,6 +109,6 @@ void validateKeysAndValues(
109109
throw std::invalid_argument("The size of base_keys and base_values are not the same.");
110110
}
111111
}
112-
} // namespace interpolation_utils
112+
} // namespace autoware::interpolation
113113

114-
#endif // INTERPOLATION__INTERPOLATION_UTILS_HPP_
114+
#endif // AUTOWARE__INTERPOLATION__INTERPOLATION_UTILS_HPP_

common/interpolation/include/interpolation/linear_interpolation.hpp common/autoware_interpolation/include/autoware/interpolation/linear_interpolation.hpp

+6-7
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef INTERPOLATION__LINEAR_INTERPOLATION_HPP_
16-
#define INTERPOLATION__LINEAR_INTERPOLATION_HPP_
15+
#ifndef AUTOWARE__INTERPOLATION__LINEAR_INTERPOLATION_HPP_
16+
#define AUTOWARE__INTERPOLATION__LINEAR_INTERPOLATION_HPP_
1717

18-
#include "interpolation/interpolation_utils.hpp"
18+
#include "autoware/interpolation/interpolation_utils.hpp"
1919

2020
#include <vector>
2121

22-
namespace interpolation
22+
namespace autoware::interpolation
2323
{
2424
double lerp(const double src_val, const double dst_val, const double ratio);
2525

@@ -30,7 +30,6 @@ std::vector<double> lerp(
3030
double lerp(
3131
const std::vector<double> & base_keys, const std::vector<double> & base_values,
3232
const double query_key);
33+
} // namespace autoware::interpolation
3334

34-
} // namespace interpolation
35-
36-
#endif // INTERPOLATION__LINEAR_INTERPOLATION_HPP_
35+
#endif // AUTOWARE__INTERPOLATION__LINEAR_INTERPOLATION_HPP_

common/interpolation/include/interpolation/spherical_linear_interpolation.hpp common/autoware_interpolation/include/autoware/interpolation/spherical_linear_interpolation.hpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef INTERPOLATION__SPHERICAL_LINEAR_INTERPOLATION_HPP_
16-
#define INTERPOLATION__SPHERICAL_LINEAR_INTERPOLATION_HPP_
15+
#ifndef AUTOWARE__INTERPOLATION__SPHERICAL_LINEAR_INTERPOLATION_HPP_
16+
#define AUTOWARE__INTERPOLATION__SPHERICAL_LINEAR_INTERPOLATION_HPP_
1717

18-
#include "interpolation/interpolation_utils.hpp"
18+
#include "autoware/interpolation/interpolation_utils.hpp"
1919

2020
#include <geometry_msgs/msg/quaternion.hpp>
2121

@@ -29,7 +29,7 @@
2929

3030
#include <vector>
3131

32-
namespace interpolation
32+
namespace autoware::interpolation
3333
{
3434
geometry_msgs::msg::Quaternion slerp(
3535
const geometry_msgs::msg::Quaternion & src_quat, const geometry_msgs::msg::Quaternion & dst_quat,
@@ -43,6 +43,6 @@ std::vector<geometry_msgs::msg::Quaternion> slerp(
4343
geometry_msgs::msg::Quaternion lerpOrientation(
4444
const geometry_msgs::msg::Quaternion & o_from, const geometry_msgs::msg::Quaternion & o_to,
4545
const double ratio);
46-
} // namespace interpolation
46+
} // namespace autoware::interpolation
4747

48-
#endif // INTERPOLATION__SPHERICAL_LINEAR_INTERPOLATION_HPP_
48+
#endif // AUTOWARE__INTERPOLATION__SPHERICAL_LINEAR_INTERPOLATION_HPP_

common/interpolation/include/interpolation/spline_interpolation.hpp common/autoware_interpolation/include/autoware/interpolation/spline_interpolation.hpp

+15-26
Original file line numberDiff line numberDiff line change
@@ -12,47 +12,29 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef INTERPOLATION__SPLINE_INTERPOLATION_HPP_
16-
#define INTERPOLATION__SPLINE_INTERPOLATION_HPP_
15+
#ifndef AUTOWARE__INTERPOLATION__SPLINE_INTERPOLATION_HPP_
16+
#define AUTOWARE__INTERPOLATION__SPLINE_INTERPOLATION_HPP_
1717

18+
#include "autoware/interpolation/interpolation_utils.hpp"
1819
#include "autoware/universe_utils/geometry/geometry.hpp"
19-
#include "interpolation/interpolation_utils.hpp"
20+
21+
#include <Eigen/Core>
2022

2123
#include <algorithm>
2224
#include <cmath>
2325
#include <iostream>
2426
#include <numeric>
2527
#include <vector>
2628

27-
namespace interpolation
28-
{
29-
// NOTE: X(s) = a_i (s - s_i)^3 + b_i (s - s_i)^2 + c_i (s - s_i) + d_i : (i = 0, 1, ... N-1)
30-
struct MultiSplineCoef
29+
namespace autoware::interpolation
3130
{
32-
MultiSplineCoef() = default;
33-
34-
explicit MultiSplineCoef(const size_t num_spline)
35-
{
36-
a.resize(num_spline);
37-
b.resize(num_spline);
38-
c.resize(num_spline);
39-
d.resize(num_spline);
40-
}
41-
42-
std::vector<double> a;
43-
std::vector<double> b;
44-
std::vector<double> c;
45-
std::vector<double> d;
46-
};
47-
4831
// static spline interpolation functions
4932
std::vector<double> spline(
5033
const std::vector<double> & base_keys, const std::vector<double> & base_values,
5134
const std::vector<double> & query_keys);
5235
std::vector<double> splineByAkima(
5336
const std::vector<double> & base_keys, const std::vector<double> & base_values,
5437
const std::vector<double> & query_keys);
55-
} // namespace interpolation
5638

5739
// non-static 1-dimensional spline interpolation
5840
//
@@ -98,11 +80,18 @@ class SplineInterpolation
9880
size_t getSize() const { return base_keys_.size(); }
9981

10082
private:
83+
Eigen::VectorXd a_;
84+
Eigen::VectorXd b_;
85+
Eigen::VectorXd c_;
86+
Eigen::VectorXd d_;
87+
10188
std::vector<double> base_keys_;
102-
interpolation::MultiSplineCoef multi_spline_coef_;
10389

10490
void calcSplineCoefficients(
10591
const std::vector<double> & base_keys, const std::vector<double> & base_values);
92+
93+
Eigen::Index get_index(const double & key) const;
10694
};
95+
} // namespace autoware::interpolation
10796

108-
#endif // INTERPOLATION__SPLINE_INTERPOLATION_HPP_
97+
#endif // AUTOWARE__INTERPOLATION__SPLINE_INTERPOLATION_HPP_

common/interpolation/include/interpolation/spline_interpolation_points_2d.hpp common/autoware_interpolation/include/autoware/interpolation/spline_interpolation_points_2d.hpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -12,19 +12,18 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef INTERPOLATION__SPLINE_INTERPOLATION_POINTS_2D_HPP_
16-
#define INTERPOLATION__SPLINE_INTERPOLATION_POINTS_2D_HPP_
15+
#ifndef AUTOWARE__INTERPOLATION__SPLINE_INTERPOLATION_POINTS_2D_HPP_
16+
#define AUTOWARE__INTERPOLATION__SPLINE_INTERPOLATION_POINTS_2D_HPP_
1717

18-
#include "interpolation/spline_interpolation.hpp"
18+
#include "autoware/interpolation/spline_interpolation.hpp"
1919

2020
#include <vector>
2121

22-
namespace interpolation
22+
namespace autoware::interpolation
2323
{
2424

2525
template <typename T>
2626
std::vector<double> splineYawFromPoints(const std::vector<T> & points);
27-
} // namespace interpolation
2827

2928
// non-static points spline interpolation
3029
// NOTE: We can calculate yaw from the x and y by interpolation derivatives.
@@ -85,5 +84,6 @@ class SplineInterpolationPoints2d
8584

8685
std::vector<double> base_s_vec_;
8786
};
87+
} // namespace autoware::interpolation
8888

89-
#endif // INTERPOLATION__SPLINE_INTERPOLATION_POINTS_2D_HPP_
89+
#endif // AUTOWARE__INTERPOLATION__SPLINE_INTERPOLATION_POINTS_2D_HPP_

0 commit comments

Comments
 (0)