Skip to content

Implement event priority

Stephen Ryan requested to merge feature/implement_event_priority into main

This supports the ability to add a priority to events, to either skip them, or have them stop all running events in the same maneuver.

  • Added converter for NET_ASAM_OPENSCENARIO::v1_3::Priority
  • Added EventPriority to EventNode
  • Created an EventPrioritizer, which is created on the Maneuver node level, and passed to Events via the blackboard.
    • Created a ManeuverNode, which creates the EventPrioritizer on the blackboard, and synchronizes the EventPrioritizer to determine if events should be overridden.
    • Modified EventNode to check with the EventPrioritizer, to determine whether the event should be started or stopped.

The effect of the priority enumeration is given in the ASAM standard:

Name Applied Stereotypes Description
D overwrite deprecated If a starting event has priority Overwrite, all events in running state, within the same scope (maneuver) as the starting event, should be issued a stop command (stop transition).
override If a starting event has priority Override, all events in running state, within the same scope (maneuver) as the starting event, should be issued a stop command (stop transition).
parallel Execute in parallel to other events.
skip If a starting event has priority Skip, then it will not be ran if there is any other event in the same scope (maneuver) in the running state.
Edited by Stephen Ryan

Merge request reports

Loading