robocar-protobuf/events/events.proto

84 lines
1.4 KiB
Protocol Buffer
Raw Normal View History

2019-12-31 14:43:01 +00:00
syntax = "proto3";
package robocar.events;
2019-12-31 15:27:09 +00:00
option go_package = "events";
2019-12-31 14:43:01 +00:00
2020-01-03 15:48:25 +00:00
import "google/protobuf/timestamp.proto";
2019-12-31 14:43:01 +00:00
message FrameRef {
string name = 1;
string id = 2;
2020-01-03 15:48:25 +00:00
google.protobuf.Timestamp created_at= 3;
2019-12-31 14:43:01 +00:00
}
message FrameMessage {
FrameRef id = 1;
bytes frame = 2;
}
message SteeringMessage {
float steering = 1;
float confidence = 2;
FrameRef frame_ref = 3;
}
message ThrottleMessage {
float throttle = 1;
float confidence = 2;
FrameRef frame_ref = 3;
}
2019-12-31 23:34:30 +00:00
message DriveModeMessage {
DriveMode drive_mode = 1;
}
enum DriveMode {
INVALID = 0;
USER = 1;
PILOT = 2;
}
message ObjectsMessage {
2019-12-31 14:43:01 +00:00
repeated Object objects = 1;
FrameRef frame_ref = 2;
}
2020-01-02 11:19:16 +00:00
// BoundingBox that contains an object
2019-12-31 23:34:30 +00:00
message Object {
2019-12-31 14:43:01 +00:00
TypeObject type = 1;
2020-01-02 11:19:16 +00:00
int32 left = 2;
int32 top = 3;
2019-12-31 14:43:01 +00:00
int32 right = 4;
int32 bottom = 5;
float confidence = 6;
}
2019-12-31 23:34:30 +00:00
enum TypeObject {
2019-12-31 14:43:01 +00:00
ANY = 0;
CAR = 1;
BUMP = 2;
PLOT = 3;
}
2020-01-01 00:03:56 +00:00
message SwitchRecordMessage {
bool enabled = 1;
}
2020-01-03 22:57:52 +00:00
// Road description
message RoadMessage {
repeated Point contour = 1; // list of points that describes road contour
Ellipse ellipse = 2; // rotated ellipse that fit road contour
}
message Point {
int32 x = 1;
int32 y = 2;
}
message Ellipse {
Point center = 1;
int32 width = 2;
int32 height = 3;
float angle = 4;
float confidence = 5;
}