diff --git a/interfaces/OSM/OSM.proto b/interfaces/OSM/OSM.proto new file mode 100644 index 0000000000000000000000000000000000000000..77eebeba9cfb53fc7fde2b49ccaae00967bdddc6 --- /dev/null +++ b/interfaces/OSM/OSM.proto @@ -0,0 +1,60 @@ +syntax = "proto3"; + +package ipos.models; + +message OSMOutputWrapper { + repeated OSMObject objects = 1; +} + +message OSMExtInputWrapper { + repeated OSMMonitoringTarget monitoringTargets = 1; +} + +message OSMMonitoringTarget { + string monitorintTaskId = 1; + string protocol = 2; +} + +message OSMObject { + string id = 1; + string sensorId = 2; + string type = 3; + string sensorType = 4; + OSMPosition position = 5; + OSMOrientation orientation = 6; + string lastPosUpdate = 7; // https://en.wikipedia.org/wiki/ISO_8601 + repeated OSMZoneDescriptor zoneDescriptors = 8; // contains information about all zones that the current position of this object belongs to + OSMExtractedAttributes extractedAttributes = 9; +} + +message OSMPosition{ + string refSystemId = 1; // e.g., "WGS84" if absolute position, "ROOT" for testcases or if specific absolute position is actually irrelevant + OSMPoint point = 2; + float accuracy = 3; // object is with 95% probability within x metres of this point (gaussian distribution) + +} + +message OSMPoint{ + float x = 1; // pos in x direction in m + float y = 2; // pos in y direction in m + float z = 3; // pos in z direction in m (up) +} + +message OSMOrientation{ + float x = 1; // quaternion notation + float y = 2; // if the quaternion is (0,0,0,0) + float z = 3; // there is no orientation + float w = 4; // available +} + +message OSMExtractedAttributes{ + float batteryChargeLevel = 1; + repeated int32 loadedItems = 2; + repeated int32 errors = 3; + float theta = 4; +} + +message OSMZoneDescriptor{ + string zoneId = 1; + string notificationType = 2; // may be ExitNotification or EntryNotification +} \ No newline at end of file diff --git a/interfaces/OSM/README.md b/interfaces/OSM/README.md new file mode 100644 index 0000000000000000000000000000000000000000..7ceea58a9a857b9f2411865f431206f2c2e78e6b --- /dev/null +++ b/interfaces/OSM/README.md @@ -0,0 +1,3 @@ +# OSM Protobuf Definition + +This protobuf data model is a description of the messages sent to the OpenStreetMap-application ("frontend"). \ No newline at end of file diff --git a/interfaces/SimpleScene/SimpleScene.proto b/interfaces/SimpleScene/SimpleScene.proto index 6fdbc6e5a1f2bfc95a13ffdbb1b89a3e2bbe60af..e2ed5a6e27731faa6892416256b93de57b3ebfd5 100644 --- a/interfaces/SimpleScene/SimpleScene.proto +++ b/interfaces/SimpleScene/SimpleScene.proto @@ -14,7 +14,7 @@ message IposConfigWrapper { // wrapper-message for configuration-topic message IposMonitoringWrapper { repeated IposPositionEvent iposPositionEvents = 1; - repeated IposMsgRcvEvent iposMsgRcvEvent = 2; + repeated IposMsgRcvEvent iposMsgRcvEvents = 2; } message IposObjectConfig {