Skip to content

Commit 3dcd335

Browse files
Habedank Clemenspmai
authored andcommitted
Introduce backchannel message TrafficCommandUpdate
Signed-off-by: Habedank Clemens <qxs2704@europe.bmw.corp>
1 parent b289970 commit 3dcd335

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed

osi_trafficcommandupdate.proto

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
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

Comments
 (0)