Carma-platform v4.2.0
CARMA Platform is built on robot operating system (ROS) and utilizes open source software (OSS) that enables Cooperative Driving Automation (CDA) features to allow Automated Driving Systems to interact and cooperate with infrastructure and other vehicles through communication.
sci_strategic_plugin.cpp File Reference
#include "sci_strategic_plugin.hpp"
#include "rclcpp_components/register_node_macro.hpp"
Include dependency graph for sci_strategic_plugin.cpp:

Go to the source code of this file.

Namespaces

namespace  sci_strategic_plugin
 
namespace  sci_strategic_plugin::anonymous_namespace{sci_strategic_plugin.cpp}
 

Macros

#define GET_MANEUVER_PROPERTY(mvr, property)
 

Functions

double sci_strategic_plugin::anonymous_namespace{sci_strategic_plugin.cpp}::getManeuverEndSpeed (const carma_planning_msgs::msg::Maneuver &mvr)
 Anonymous function to extract maneuver end speed which can not be optained with GET_MANEUVER_PROPERY calls due to it missing in stop and wait plugin. More...
 

Macro Definition Documentation

◆ GET_MANEUVER_PROPERTY

#define GET_MANEUVER_PROPERTY (   mvr,
  property 
)
Value:
(((mvr).type == carma_planning_msgs::msg::Maneuver::INTERSECTION_TRANSIT_LEFT_TURN ? \
(mvr).intersection_transit_left_turn_maneuver.property : \
((mvr).type == carma_planning_msgs::msg::Maneuver::INTERSECTION_TRANSIT_RIGHT_TURN ? \
(mvr).intersection_transit_right_turn_maneuver.property : \
((mvr).type == carma_planning_msgs::msg::Maneuver::INTERSECTION_TRANSIT_STRAIGHT ? \
(mvr).intersection_transit_straight_maneuver.property : \
((mvr).type == carma_planning_msgs::msg::Maneuver::LANE_CHANGE ? (mvr).lane_change_maneuver.property : \
((mvr).type == carma_planning_msgs::msg::Maneuver::LANE_FOLLOWING ? (mvr).lane_following_maneuver.property : \
((mvr).type == carma_planning_msgs::msg::Maneuver::STOP_AND_WAIT ? (mvr).stop_and_wait_maneuver.property : \
throw new std::invalid_argument("GET_MANEUVER_" \
"PROPERTY " \
"(property) " \
"called on " \
"maneuver with " \
"invalid type " \
"id"))))))))

Definition at line 18 of file sci_strategic_plugin.cpp.