2019-08-02 07:30:09 -04:00
|
|
|
include "waypoint.fbs";
|
|
|
|
namespace osrm.engine.api.fbresult;
|
|
|
|
|
|
|
|
table Metadata {
|
|
|
|
datasource_names: [string];
|
|
|
|
}
|
|
|
|
|
|
|
|
table Annotation {
|
|
|
|
distance: [uint];
|
|
|
|
duration: [uint];
|
|
|
|
datasources: [uint];
|
|
|
|
nodes: [uint];
|
|
|
|
weight: [uint];
|
|
|
|
speed: [double];
|
|
|
|
metadata: Metadata;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ManeuverType: byte {
|
|
|
|
Turn,
|
|
|
|
NewName,
|
|
|
|
Depart,
|
|
|
|
Arrive,
|
|
|
|
Merge,
|
|
|
|
OnRamp,
|
|
|
|
OffRamp,
|
|
|
|
Fork,
|
|
|
|
EndOfRoad,
|
|
|
|
Continue,
|
|
|
|
Roundabout,
|
|
|
|
Rotary,
|
|
|
|
RoundaboutTurn,
|
|
|
|
Notification,
|
|
|
|
ExitRoundabout,
|
|
|
|
ExitRotary
|
|
|
|
}
|
|
|
|
|
|
|
|
enum Turn: byte {
|
|
|
|
None,
|
|
|
|
UTurn,
|
|
|
|
SharpRight,
|
|
|
|
Right,
|
|
|
|
SlightRight,
|
|
|
|
Straight,
|
|
|
|
SlightLeft,
|
|
|
|
Left,
|
|
|
|
SharpLeft
|
|
|
|
}
|
|
|
|
|
|
|
|
table StepManeuver {
|
|
|
|
location: Position;
|
|
|
|
bearing_before: ushort;
|
|
|
|
bearing_after: ushort;
|
|
|
|
type: ManeuverType;
|
|
|
|
modifier: Turn;
|
|
|
|
exit: ubyte;
|
|
|
|
}
|
|
|
|
|
|
|
|
table Lane {
|
|
|
|
indications: [Turn];
|
|
|
|
valid: bool;
|
|
|
|
}
|
|
|
|
|
|
|
|
table Intersection {
|
|
|
|
location: Position;
|
2019-08-07 04:50:59 -04:00
|
|
|
bearings: [short];
|
2019-08-02 07:30:09 -04:00
|
|
|
classes: [string];
|
|
|
|
entry: [bool];
|
|
|
|
in: uint;
|
|
|
|
out: uint;
|
|
|
|
lanes: [Lane];
|
|
|
|
}
|
|
|
|
|
|
|
|
table Step {
|
|
|
|
distance: double;
|
|
|
|
duration: double;
|
2019-08-08 04:46:25 -04:00
|
|
|
polyline: string;
|
|
|
|
coordinates: [Position];
|
2019-08-07 04:50:59 -04:00
|
|
|
weight: double;
|
2019-08-02 07:30:09 -04:00
|
|
|
name: string;
|
2019-08-07 04:50:59 -04:00
|
|
|
ref: string;
|
2019-08-02 07:30:09 -04:00
|
|
|
pronunciation: string;
|
2019-08-07 04:50:59 -04:00
|
|
|
destinations: string;
|
|
|
|
exits: string;
|
2019-08-02 07:30:09 -04:00
|
|
|
mode: string;
|
|
|
|
maneuver: StepManeuver;
|
|
|
|
intersections: [Intersection];
|
|
|
|
rotary_name: string;
|
|
|
|
rotary_pronunciation: string;
|
2019-08-07 04:50:59 -04:00
|
|
|
driving_side: bool; //Where true stands for the left side.
|
2019-08-02 07:30:09 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
table Leg {
|
|
|
|
distance: double;
|
|
|
|
duration: double;
|
|
|
|
weight: double;
|
|
|
|
summary: string;
|
|
|
|
annotations: Annotation;
|
|
|
|
steps: [Step];
|
|
|
|
}
|
|
|
|
|
|
|
|
table RouteObject {
|
|
|
|
distance: double;
|
|
|
|
duration: double;
|
|
|
|
weight: double;
|
|
|
|
weight_name: string;
|
|
|
|
confidence: double; //Used only by 'Match' service
|
2019-08-08 04:46:25 -04:00
|
|
|
polyline: string;
|
|
|
|
coordinates: [Position];
|
2019-08-02 07:30:09 -04:00
|
|
|
legs: [Leg];
|
|
|
|
}
|