1+ syntax = "proto2" ;
2+
3+ option optimize_for = SPEED ;
4+
5+ import "osi_version.proto" ;
6+ import "osi_common.proto" ;
7+
8+ package osi3 ;
9+
10+ //
11+ // \brief This message enables the traffic participant model to send updates
12+ // to the scenario engine about the execution of its received \c TrafficCommand input. While traffic
13+ // actions are usually executed successfully by the traffic participant
14+ // there may be actions which the traffic participant is not able to execute
15+ // either for capability or situation-specific reasons. This message gives
16+ // the traffic participant the basic possiblity to send feedback if an action
17+ // cannot happen as requested by the \c TrafficCommand. Currently, it is out of
18+ // scope to standardize the exact reason for non-executability or failed execution
19+ // because the reason can have multiple explantions. The point in time
20+ // for this message to be sent is only restricted to be after the \c TrafficCommand
21+ // with the corresponding traffic action(s) has been sent. The
22+ // responsibility for deciding about successful or unsuccessful scenario execution
23+ // lies fully on the side of the scenario engine.
24+ //
25+ // \note This interface is currently just a placeholder and could be
26+ // changed in experimental ways to support semantics of upcoming OpenSCENARIO
27+ // versions.
28+ //
29+ message TrafficCommandUpdate
30+ {
31+ // The interface version used by the sender (traffic participant model).
32+ //
33+ optional InterfaceVersion version = 1 ;
34+
35+ // The data timestamp of the simulation environment. Zero time is arbitrary
36+ // but must be identical for all messages. Zero time does not need to
37+ // coincide with the UNIX epoch. It is recommended to use zero timestamp as
38+ // the starting time point of the simulation.
39+ //
40+ optional Timestamp timestamp = 2 ;
41+
42+ // The ID of this traffic participant which must coincide with a prior sent ID, cf.
43+ // \c TrafficCommand::traffic_participant_id.
44+ //
45+ optional Identifier traffic_participant_id = 3 ;
46+
47+ // Dismissed traffic action id(s) from the perspective of a traffic participant, if any.
48+ //
49+ // \note Dismissed traffic action id(s) identify actions which cannot be executed or
50+ // completed by the traffic participant. If more than one action id is supplied it means that
51+ // multiple actions are regarded as dismissed. This field must have the same value(s) as
52+ // \c TrafficAction::ActionHeader::action_id of the prior sent \c TrafficCommand and must correspond
53+ // to the same traffic participant.
54+ //
55+ // \Attention If an action is not dismissed, abortet by the scenario engine with a
56+ // \c TrafficAction::AbortActionsAction or ended by the scenario engine with a
57+ // \c TrafficAction::EndActionsAction it is assumed that the traffic participant is
58+ // in the process of executing this action.
59+ //
60+ repeated Identifier dismissed_action_id = 4 ;
61+
62+ // Information about the reason of failure.
63+ //
64+ // \note This is just a custom, informal string without a standardized meaning.
65+ //
66+ optional string failure_reason = 5 ;
67+ }
0 commit comments