Skip to content

Commit b17b4d0

Browse files
authored
Merge pull request #20 from OpenSimulationInterface/fix-format
Minor cleanup
2 parents e83daf5 + aec76de commit b17b4d0

16 files changed

+71
-116
lines changed

osi_common.proto

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// OSI - Open Simulation Interface
75
package osi;
86

97
/**
108
* The interface version number.
119
*/
1210
message InterfaceVersion
1311
{
14-
// The field containing the version number. Should be left on default, not to be modified by sender.
15-
// Increments will happen as part of changes to the whole interface.
12+
// The field containing the version number. Should be left on default, not to be modified by sender. Increments will
13+
// happen as part of changes to the whole interface.
1614
optional uint32 major = 1 [default = 2];
17-
optional uint32 minor = 2 [default = 0];
18-
optional uint32 patch = 3 [default = 0];
15+
optional uint32 minor = 2 [default = 0];
16+
optional uint32 patch = 3 [default = 0];
1917
}
2018

2119
/**
@@ -36,8 +34,8 @@ message Vector3d
3634

3735
/**
3836
* A timestamp.
39-
* Names and types of fields chosen in accordance with google/protobuf/timestamp.proto to allow a possible switch
40-
* in the future. Definition of zero point in time differs and does not use Unix epoch.
37+
* Names and types of fields chosen in accordance with google/protobuf/timestamp.proto to allow a possible switch in the
38+
* future. Definition of zero point in time differs and does not use Unix epoch.
4139
*/
4240
message Timestamp
4341
{
@@ -89,11 +87,10 @@ message Orientation3d
8987

9088
/**
9189
* A common identifier.
92-
* Has to be unique among all simulated items at any given time.
93-
* For ground truth, the identifier of an item (object, lane, sign, etc.) must remain stable over its lifetime.
94-
* Identifier values might be only be reused if the available address space is exhausted and the specific values have
95-
* not been in use for several timesteps.
96-
* Sensor specific tracking ids have no restrictions and should behave according to the sensor specifications.
90+
* Has to be unique among all simulated items at any given time. For ground truth, the identifier of an item (object,
91+
* lane, sign, etc.) must remain stable over its lifetime. Identifier values might be only be reused if the available
92+
* address space is exhausted and the specific values have not been in use for several timesteps. Sensor specific
93+
* tracking ids have no restrictions and should behave according to the sensor specifications.
9794
*/
9895
message Identifier
9996
{
@@ -115,9 +112,8 @@ message MountingPosition
115112

116113
/**
117114
* A polar representation for a point / vector in 3D space used for low level representations of radar detections.
118-
* Units are [m] for radial distance and [rad] for azimuth and elevation angles.
119-
* If azimuth and elevation are zero, the referenced point is directly in front / vector is pointing
120-
* directly in the central viewing direction of the sensor.
115+
* Units are [m] for radial distance and [rad] for azimuth and elevation angles. If azimuth and elevation are zero, the
116+
* referenced point is directly in front / vector is pointing directly in the central viewing direction of the sensor.
121117
*/
122118
message Polar3d
123119
{

osi_datarecording.proto

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,9 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_sensordata.proto";
86

9-
// OSI - Open Simulation Interface
107
package osi;
118

129
/**

osi_detectedlandmark.proto

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_common.proto";
86
import "osi_landmark.proto";
97

10-
// OSI - Open Simulation Interface
118
package osi;
129

1310
/**

osi_detectedlane.proto

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_common.proto";
86
import "osi_lane.proto";
97

10-
// OSI - Open Simulation Interface
118
package osi;
129

1310
/**

osi_detectedobject.proto

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_common.proto";
8-
import "osi_object.proto";
96
import "osi_modelinternal.proto";
7+
import "osi_object.proto";
108
import "osi_sensorspecific.proto";
119

12-
// OSI - Open Simulation Interface
1310
package osi;
1411

1512
/**

osi_detectedoccupant.proto

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_common.proto";
86
import "osi_occupant.proto";
97

10-
// OSI - Open Simulation Interface
118
package osi;
129

1310
/**

osi_environment.proto

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// OSI - Open Simulation Interface
75
package osi;
86

97
/**

osi_groundtruth.proto

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,32 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_common.proto";
8-
import "osi_object.proto";
6+
import "osi_environment.proto";
97
import "osi_landmark.proto";
108
import "osi_lane.proto";
9+
import "osi_object.proto";
1110
import "osi_occupant.proto";
12-
import "osi_environment.proto";
1311

14-
// OSI - Open Simulation Interface
1512
package osi;
1613

1714
/**
1815
* The ground truth information from the simulation environment.
16+
*
1917
* This ground truth information is supposed to describe the whole simulated environment around any simulated vehicle.
2018
* For each simulated ego vehicle (might only be one, but could also be multiple) define an area around the vehicle
21-
* which is greater than the combined field of views (FOV) of all sensors obstructed in the vehicle.
22-
* The ground truth data is supposed to describe the convex hull of all such areas w.r.t. a global simulation
23-
* coordinate system.
19+
* which is greater than the combined field of views (FOV) of all sensors obstructed in the vehicle. The ground truth
20+
* data is supposed to describe the convex hull of all such areas w.r.t. a global simulation coordinate system.
2421
*
2522
* The simulation coordinate system might change during the simulation if and only if, all coordinates w.r.t. this
2623
* coordinate system are also changed.
2724
*
2825
* The data has to be sent at a rate defined by the receiving partner. When sending, values with default values might be
2926
* left default in order to improve performance.
3027
*
31-
* To provide a complete interface, all fields of all messages have to be set, unless specifically stated in the
32-
* field's definition that the field may remain unset.
28+
* To provide a complete interface, all fields of all messages have to be set, unless specifically stated in the field's
29+
* definition that the field may remain unset.
3330
*
3431
* In enums (e.g. types) the unknown (first / default) value is not allowed to be used in the ground truth interface.
3532
*/

osi_landmark.proto

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,9 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_common.proto";
86

9-
// OSI - Open Simulation Interface
107
package osi;
118

129
/**
@@ -24,8 +21,7 @@ message TrafficSign
2421
optional Type type = 3;
2522

2623
// Additional value associated with the traffic sign, e.g. value of the speed limit.
27-
// Field need not be set if traffic sign type does not require it.
28-
// Speed (limits) should be given in km/h.
24+
// Field need not be set if traffic sign type does not require it. Speed (limits) should be given in km/h.
2925
optional double value = 4;
3026

3127
// Variability
@@ -320,9 +316,7 @@ message TrafficLight
320316

321317
/**
322318
* Definition of light state for traffic lights.
323-
*
324-
* This containes the logical information about the
325-
* traffic light and NOT a description of individual light bulbs.
319+
* This containes the logical information about the traffic light and NOT a description of individual light bulbs.
326320
*/
327321
message LightState
328322
{

osi_lane.proto

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
// define the proto language version
21
syntax = "proto2";
3-
// optimize for speed
2+
43
option optimize_for = SPEED;
54

6-
// imports
75
import "osi_common.proto";
86

9-
// OSI - Open Simulation Interface
107
package osi;
118

129
/**
1310
* A lane in the road network.
11+
*
1412
* A lane is part of a road and mainly characterized by its center line. It also knows about any adjacent lanes,
15-
* antecessor and successor lanes. The following image will be referred to by later comments. We'll use the lane
16-
* with id 3 as reference if not mentioned otherwise.
13+
* antecessor and successor lanes. The following image will be referred to by later comments. We'll use the lane with id
14+
* 3 as reference if not mentioned otherwise.
15+
*
1716
* \image html highway_exit.png
17+
*
1818
* For lane a to be the antecessor of lane b, the last point of a's center line has to be identical to the first point
1919
* of b's center line (although both points might lie outside the simulated region, the relationship remains). Any lane
2020
* starts or ends at such a split/merge point. No lane can ever keep its id after such a split point, i.e. lane 4 has to
@@ -31,25 +31,28 @@ message Lane
3131
optional Type type = 2;
3232

3333
// The lane's center line.
34+
//
3435
// This is the line, that a typical vehicle is supposed to follow. Thus, if the road narrows (e.g. construction
35-
// site) this line is supposed to describe the trajectory that the vehicle should follow.
36-
// The intended direction of travel on the lane is given by the direction defined by the sequence of points forming
37-
// the center line.
36+
// site) this line is supposed to describe the trajectory that the vehicle should follow. The intended direction of
37+
// travel on the lane is given by the direction defined by the sequence of points forming the center line.
3838
//
3939
// \attention The points might be set at arbitrary distances, but must not be further appart than 5m. When the
4040
// points are pairwise linearly connected, the lateral distance to the real ideal line (as used by the simulation
4141
// environment internally) must not exceed 5cm. As shown in the following image.
42+
//
4243
// \image html line_approximation_error.png
4344
//
4445
// Example: The yellow dotted line right of the blue 3.
4546
repeated Vector3d center_line = 3;
4647

4748
// The boundary of the lane.
49+
//
4850
// The lane boundaries describe the lane markings or other boundaries delimiting the lane as well as free lines that
4951
// might be used e.g. in construction sites. The lane markings do not have to be parallel to the center_line, but
5052
// they are the basis for calculating the width of the lane at any given distance.
51-
// Example: The double solid line above the 3, and the dashed line below the 3. (see reference picture)
52-
// There might also be additional free lanes.
53+
//
54+
// Example: The double solid line above the 3, and the dashed line below the 3. (see reference picture) There might
55+
// also be additional free lanes.
5356
repeated LaneBoundary lane_boundary = 4;
5457

5558
// The lane's left adjacent lanes (w.r.t. intended driving direction).
@@ -123,6 +126,7 @@ message Lane
123126
message LaneBoundary
124127
{
125128
// The list of individual points defining the location of the lane boundary.
129+
//
126130
// Since a BoundaryPoint is part of a sequence only the position attribute has to be set for each instance. All
127131
// other values will be reused from the previous BoundaryPoint in the sequence or set to default values if there is
128132
// none or it was never set. For dashed lines, one BoundaryPoint has to be at the start and another at the end of

0 commit comments

Comments
 (0)