ad_rss_map_integration
|
class providing supporting functions to create a world model and its scenes. More...
#include <ad/rss/map/RssSceneCreation.hpp>
Public Types | |
enum | RestrictSpeedLimitMode { RestrictSpeedLimitMode::None, RestrictSpeedLimitMode::ExactSpeedLimit, RestrictSpeedLimitMode::IncreasedSpeedLimit5, RestrictSpeedLimitMode::IncreasedSpeedLimit10 } |
enumeration defining the modes of speed limit consideration within RSS accelerated movement. More... | |
enum | AppendRoadBoundariesMode { AppendRoadBoundariesMode::RouteOnly, AppendRoadBoundariesMode::ExpandRouteToOppositeLanes, AppendRoadBoundariesMode::ExpandRouteToAllNeighbors } |
enumeration defining the operation modes of appendRoadBoundaries() function. More... | |
Public Member Functions | |
RssSceneCreation (::ad::rss::world::TimeIndex const &timeIndex, ::ad::rss::world::RssDynamics const &defaultEgoRssDynamics) | |
create a scene creation object More... | |
bool | appendScenes (RssObjectData const &egoObjectData, ::ad::map::route::FullRoute const &egoRoute, RssObjectData const &otherObjectData, RestrictSpeedLimitMode const &restrictSpeedLimitMode, ::ad::map::landmark::LandmarkIdSet const &greenTrafficLights, ::ad::rss::map::RssMode const &mode) |
create possible scenes between ego vehicle and the object More... | |
bool | appendRoadBoundaries (RssObjectData const &egoObjectData, ::ad::map::route::FullRoute const &route, AppendRoadBoundariesMode const operationMode) |
create scenes between ego vehicle and road boundaries More... | |
::ad::rss::world::WorldModel | getWorldModel () |
get the final world model object More... | |
Friends | |
class | RssSceneCreator |
class providing supporting functions to create a world model and its scenes.
The appendScenes() and appendRoadBoundaries() are multi-thread safe
enumeration defining the operation modes of appendRoadBoundaries() function.
enumeration defining the modes of speed limit consideration within RSS accelerated movement.
Depending on this mode the objectRssDynamics are calculated dynamically or not.
ad::rss::map::RssSceneCreation::RssSceneCreation | ( | ::ad::rss::world::TimeIndex const & | timeIndex, |
::ad::rss::world::RssDynamics const & | defaultEgoRssDynamics | ||
) |
create a scene creation object
A world model object is created and initialized with given timeIndex and default ego dynamics
[in] | timeIndex | the time index to be applied |
[in] | defaultEgoRssDynamics | the default ego vehicles' RssDynamics to be applied |
bool ad::rss::map::RssSceneCreation::appendRoadBoundaries | ( | RssObjectData const & | egoObjectData, |
::ad::map::route::FullRoute const & | route, | ||
AppendRoadBoundariesMode const | operationMode | ||
) |
create scenes between ego vehicle and road boundaries
Based on the map information static object scenes at the borders of the driveable lanes are created. For detailed operation modes see the operation modes at AppendRoadBoundariesMode.
[in] | egoObjectData | the ego vehicle's data |
[in] | egoRoute | the route the ego vehicle intends to take. |
[in] | operationMode | the mode how the road boundaries shall be handled |
true
if the operation succeeded. bool ad::rss::map::RssSceneCreation::appendScenes | ( | RssObjectData const & | egoObjectData, |
::ad::map::route::FullRoute const & | egoRoute, | ||
RssObjectData const & | otherObjectData, | ||
RestrictSpeedLimitMode const & | restrictSpeedLimitMode, | ||
::ad::map::landmark::LandmarkIdSet const & | greenTrafficLights, | ||
::ad::rss::map::RssMode const & | mode | ||
) |
create possible scenes between ego vehicle and the object
Based on the map information a connecting route between ego vehicle and the object is created.
[in] | egoObjectData | the ego vehicle's data |
[in] | egoRoute | the route the ego vehicle intends to take. If the given route is empty, all potential route predictions of the ego vehicle are taken into account if required. |
[in] | otherObjectData | the other object's data |
[in] | restrictSpeedLimitMode | the mode to select the behavior of objectRssDynamics.maxSpeedOnAcceleration and egoRssDynamics.maxSpeedOnAcceleration parameter |
[in] | greenTrafficLights | the list of known green traffic lights. Required to derive the correct priority rule for the ego vehicle when approaching a traffic light intersection. |
[in] | mode | the mode of this scene |
true
if the operation succeeded. ::ad::rss::world::WorldModel ad::rss::map::RssSceneCreation::getWorldModel | ( | ) |
get the final world model object
After the call of this function the world model is treated as finalized. No further operation will succeed. Successive calls to this will return an empty default initialized world model.