From b0221b79bf50c9edce0ed9d13f40373e9114603d Mon Sep 17 00:00:00 2001 From: Etienne Pellan <etienne.pellan@external.crf.it> Date: Thu, 10 Aug 2023 10:46:11 +0200 Subject: [PATCH] Adding relative position to the spawning poses for traffic swarm --- include/MantleAPI/Traffic/i_traffic_swarm_service.h | 10 +++++++++- test/MantleAPI/Test/test_utils.h | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/include/MantleAPI/Traffic/i_traffic_swarm_service.h b/include/MantleAPI/Traffic/i_traffic_swarm_service.h index 0c018c32..c879b33c 100644 --- a/include/MantleAPI/Traffic/i_traffic_swarm_service.h +++ b/include/MantleAPI/Traffic/i_traffic_swarm_service.h @@ -43,7 +43,15 @@ struct TrafficSwarmParameters class ITrafficSwarmService { public: - virtual std::vector<mantle_api::Pose> GetAvailableSpawningPoses() const = 0; + enum class RelativePosition + { + kInFront = 0, + kBehind + }; + + using SpawningPosition = std::pair<mantle_api::Pose, RelativePosition>; + + virtual std::vector<SpawningPosition> GetAvailableSpawningPoses() const = 0; virtual mantle_api::VehicleProperties GetVehicleProperties(mantle_api::VehicleClass vehicle_class) const = 0; virtual void UpdateControllerConfig(std::unique_ptr<mantle_api::ExternalControllerConfig>& config, units::velocity::meters_per_second_t speed) = 0; diff --git a/test/MantleAPI/Test/test_utils.h b/test/MantleAPI/Test/test_utils.h index 6755a007..4f887ef9 100755 --- a/test/MantleAPI/Test/test_utils.h +++ b/test/MantleAPI/Test/test_utils.h @@ -481,7 +481,7 @@ public: class MockTrafficSwarmService : public mantle_api::ITrafficSwarmService { public: - MOCK_METHOD(std::vector<mantle_api::Pose>, + MOCK_METHOD(std::vector<ITrafficSwarmService::SpawningPosition>, GetAvailableSpawningPoses, (), (const, override)); -- GitLab