diff --git a/proto/src/model.proto b/proto/src/model.proto index a8caee5..9fbfb5f 100644 --- a/proto/src/model.proto +++ b/proto/src/model.proto @@ -5,74 +5,70 @@ package model; option go_package = "./model/proto"; message Repository { - repeated Turnout turnouts = 1; - repeated Signal Signals = 2; - repeated Section sections = 3; - repeated AxleCounter axleCounters = 4; - repeated Responder responders = 5; - repeated Slope slopes = 6; - repeated Curve curves = 7; + string id = 1; + string version = 2; + repeated PhysicalSection physicalSections = 3; + repeated CheckPoint checkPoints = 4; + repeated Turnout turnouts = 5; + repeated Signal signals = 6; + repeated Responder responders = 7; + repeated Slope slopes = 8; + repeated Curve curves = 9; } -message Turnout { - Id id = 1; +//物理区段 +message PhysicalSection { + string id = 1; +} + +//区段检测点 +message CheckPoint{ + string id = 1; Kilometer kilometer = 2; - Id axleCounterA = 3; //A端关联的计轴 - Id axleCounterB = 4; - Id axleCounterC = 5; + repeated DevicePort relDevicePorts = 3; //计轴连接的设备端点 } +//应答器 +message Responder { + string id = 1; + Kilometer kilometer = 2; +} + +//道岔 +message Turnout { + string id = 1; + Kilometer kilometer = 2; +} + +//信号机 message Signal { - Id id = 1; + string id = 1; Kilometer kilometer = 2; DevicePort relDevice = 3; //关联的设备,区段或道岔 } -message Section { - Id id = 1; - Id axleCounterA = 2; //A端关联的计轴 - Id axleCounterB = 3; //B端关联的计轴 - Id turnout = 4; //岔区区段关联的道岔 -} - -message AxleCounter{ - Id id = 1; - Kilometer kilometer = 2; - bool virtual = 3; //是否虚拟 -} - -message Responder { - Id id = 1; - Kilometer kilometer = 2; -} - //坡 message Slope { - Id id = 1; - repeated Point points = 2; + string id = 1; + repeated Kilometer kms = 2; int32 degree = 3; //坡度角的sin * 1000 } //曲线 message Curve { - Id id = 1; - repeated Point points = 2; - int32 radius = 3; //半径 mm + string id = 1; + repeated Kilometer kms = 2; + int32 radius = 3; //半径 mm } +//设备及端口 message DevicePort { - Id deviceId = 1; + string deviceId = 1; Port port = 2; } -message Id { - string lineId = 1; - string stationId = 2; - string index = 3; -} - enum Port { - UNKNOWN = 0; + None = 0; //没有端口/未指定端口 A = 1; B = 2; C = 3; @@ -80,18 +76,28 @@ enum Port { //公里标 message Kilometer { - int64 kilometer = 1; //公里标mm + int64 value = 1; //公里标mm string coordinateSystem = 2; //坐标系 Direction direction = 3; //左右行 } +//公里标转换 +message KilometerConvert { + Kilometer kilometerA = 1; + Kilometer kilometerB = 2; + bool sameTrend = 3; //相同趋势(同增同减)? +} + //左右行 enum Direction { LEFT = 0; RIGHT = 1; } -//图中一点 -message Point { - repeated Kilometer kilometers = 1; +//检测点类型 +enum CheckPointType{ + CheckPointType_Unknown = 0; + AxleCounter = 1; //计轴 + InsulatedJoint = 2; //绝缘节 + VirtualAxle = 3; //虚拟计轴 } \ No newline at end of file