rts-sim-testing-message/protos/stationLayoutGraphics.proto

712 lines
22 KiB
Protocol Buffer
Raw Normal View History

2023-07-03 13:09:48 +08:00
syntax = "proto3";
2024-01-17 17:02:17 +08:00
2023-07-03 13:09:48 +08:00
package graphicData;
2024-01-17 17:02:17 +08:00
import "common_data.proto";
2023-07-06 17:41:10 +08:00
option java_package = "club.joylink.bjrtss.ats.verify.protos";
2023-07-03 13:09:48 +08:00
option java_outer_classname = "LayoutGraphicsProto";
option go_package = "joylink.club/bj-rtsts-server/dto/data_proto";
2023-07-03 13:09:48 +08:00
message RtssGraphicStorage {
Canvas canvas = 1;
2023-07-14 14:05:09 +08:00
// repeated Link links = 2;
// repeated IscsFan iscsFans = 3;
2023-07-03 13:09:48 +08:00
repeated Platform Platforms = 4;
repeated Station stations = 5;
2023-07-14 14:05:09 +08:00
// repeated Rect rects = 6;
2023-11-20 15:16:29 +08:00
repeated Train train = 7;
2023-07-03 13:09:48 +08:00
repeated Signal signals = 8;
repeated Turnout turnouts = 9;
repeated Section section = 10;
2023-11-29 15:50:45 +08:00
repeated Polygon polygons = 11;
2023-07-03 16:16:49 +08:00
repeated TrainWindow trainWindows = 12;
repeated AxleCounting axleCountings = 13;
repeated Separator separators = 14;
2023-07-07 16:04:54 +08:00
repeated SectionLink sectionLinks = 15;
2023-07-07 17:17:17 +08:00
repeated AxleCountingSection axleCountingSections = 16;
2023-07-11 16:40:02 +08:00
repeated LogicSection logicSections = 17;
repeated StopPosition stopPositions = 18;
repeated SpksSwitch spksSwitchs = 19;
repeated EsbButton esbButtons = 20; // 紧急关闭按钮
2023-08-04 16:35:51 +08:00
repeated GatedBox gateBoxs = 21; // 站台开门/关门/发车按钮整合控制箱
2023-08-07 16:20:31 +08:00
repeated Transponder transponders = 22; // 应答器
repeated Slope slopes = 23; // 坡度
2023-12-13 16:08:27 +08:00
// repeated CalculateLink CalculateLink = 24; // 计算link信息
2023-08-07 16:20:31 +08:00
repeated SlopeKiloMarker slopeKiloMarker = 25; //坡度公里标
repeated CurvatureKiloMarker curvatureKiloMarker = 26; //曲度公里标
2023-08-15 11:13:55 +08:00
repeated Curvature curvatures = 27; // 曲度
repeated TrackSection trackSections = 28; //轨道区段
repeated TrackLogicSection trackLogicSections = 29; //轨道逻辑区段
2023-09-21 11:03:35 +08:00
//UniqueIdType UniqueIdPrefix = 30;//设备唯一编码--前缀
UniqueIdOfStationLayout UniqueIdPrefix = 31;//设备唯一编码--前缀
2023-09-26 09:23:00 +08:00
repeated KilometerConvert kilometerConvertList = 32;//公里标转换列表
2023-10-11 17:35:10 +08:00
repeated ScreenDoor screenDoors = 33;
2023-10-12 13:22:26 +08:00
repeated StationRelateDevice stationRelateDeviceList = 34; // 关联设备列表
2023-10-25 10:47:38 +08:00
repeated SectionCodePoint sectionCodePointList = 35; // 物理区段码位表
2023-11-08 16:13:36 +08:00
ScreenDoorConfig screenDoorConfig = 36;//屏蔽门的配置--子屏蔽门的数量和编组列表
2023-11-16 15:51:58 +08:00
repeated Beacon beacons = 37; // 信标
2023-11-10 15:07:30 +08:00
GenerateAxleCountingConfig generateAxleCountingConfig = 38;//一键生成计轴的配置
2023-11-16 15:51:58 +08:00
repeated DepartureTimer departureTimers = 39; // 发车计时器
2023-11-16 18:06:00 +08:00
repeated AutoReturnBox autoReturnBoxs = 40; // 自动折返按钮箱
2023-11-29 15:50:45 +08:00
repeated ConcentrationDividingLine concentrationDividingLines = 41; // 集中区分割线
2023-12-04 14:55:06 +08:00
repeated OtherLine otherLineList = 42; // 其他线设备列表
2024-02-06 16:29:31 +08:00
repeated IbpBox ibpBoxs = 43; // ibp地图打开按钮
repeated PslBox pslBoxs = 44; // psl地图打开按钮
2024-03-08 10:41:46 +08:00
repeated CarWashing carWashings = 45; // 洗车机
repeated GarageDoor garageDoors = 46; // 车库门
2023-07-03 13:09:48 +08:00
}
message Canvas {
// 画布宽
int32 width = 1;
// 画布高
int32 height = 2;
// 背景色
string backgroundColor = 3;
// 视口变换
Transform viewportTransform = 4;
2024-02-07 13:45:58 +08:00
//画布格子背景
Grid gridBackground = 5;
}
//格子背景
message Grid {
bool hasGrid = 1;
string lineColor = 2; // 线色
int32 space = 3; //间隔
2023-07-03 13:09:48 +08:00
}
message Point {
// x坐标
float x = 1;
// y坐标
float y = 2;
}
//变换
message Transform {
// 位移
Point position = 1;
// 缩放
Point scale = 2;
// 旋转弧度
float rotation = 3;
// 歪斜
Point skew = 4;
}
//子元素变换
message ChildTransform {
// 子元素名称
string name = 1;
// 子元素变换
Transform transform = 2;
}
// 公共属性
message CommonInfo {
2023-12-13 14:35:39 +08:00
string oldid = 1;
2023-07-03 13:09:48 +08:00
string graphicType = 2;
Transform transform = 3;
repeated ChildTransform childTransforms = 4;
2023-12-13 14:35:39 +08:00
uint32 id = 5;
2023-07-03 13:09:48 +08:00
}
2023-07-14 14:05:09 +08:00
// message Link {
// CommonInfo common = 1;
// string code = 2;
// bool curve = 3; // 是否曲线
// int32 segmentsCount = 4; // 曲线分段数
// int32 lineWidth = 5; // 线宽
// string lineColor = 6; // 线色
// repeated Point points = 7; // 点坐标列表
// }
2023-07-03 13:09:48 +08:00
2023-07-14 14:05:09 +08:00
// message Rect {
// CommonInfo common = 1;
// string code = 2;
// int32 lineWidth = 3; // 线宽
// string lineColor = 4; // 线色
// float width = 5; //宽度
// float height = 6; //高度
// int32 radius = 7; //圆角半径
// Point point = 8; // 画第一个点的坐标
// }
2023-07-03 13:09:48 +08:00
message Polygon {
enum PolygonType {
2023-11-29 15:50:45 +08:00
ConcentrationDividingLine = 0;
}
2023-11-28 16:13:42 +08:00
CommonInfo common = 1;
string code = 2; // 编号
PolygonType polygonType = 3; // 多边形类型
repeated Point points = 4; // 点列表
2023-11-28 16:13:42 +08:00
}
2023-11-29 15:50:45 +08:00
message ConcentrationDividingLine {
CommonInfo common = 1;
string code = 2; // 编号
repeated Point points = 3; // 点列表
2023-12-13 14:35:39 +08:00
string oldrefLeftStationId = 4;//左边关联的集中站id
string oldrefRightStationId = 5;//右边关联的集中站id
2023-11-29 15:50:45 +08:00
repeated NodeConWithSec nodeConWithSecs = 6;// 集中区分割线与区段的交点
bool isOtherLineConcentrationDividingLine = 7;//集中区分割线绘制在其它线的边界处
2023-12-13 14:35:39 +08:00
uint32 refLeftStationId = 8;//左边关联的集中站id
uint32 refRightStationId = 9;//右边关联的集中站id
2023-11-29 15:50:45 +08:00
}
message NodeConWithSec {
RelatedRef leftSection = 1;
RelatedRef rightSection = 2;
2023-11-29 15:50:45 +08:00
}
2023-07-03 13:09:48 +08:00
message Platform {
2023-12-04 09:41:18 +08:00
enum TypeOfPlatform {
Unknown = 0;
up = 1;
down = 2;
}
2023-07-03 13:09:48 +08:00
CommonInfo common = 1;
string code = 2;
2023-10-11 17:35:10 +08:00
//bool hasdoor = 3; // 是否有屏蔽门
//string direction = 4; // 屏蔽门上下
2023-11-17 10:40:08 +08:00
// int32 index = 5; //索引
//int32 refStationIndex = 6; //关联车站索引
2023-09-22 10:08:21 +08:00
// repeated string centralizedStations = 7; // 集中站列表
2023-10-19 08:57:54 +08:00
//repeated RelatedRef platformRef = 8; //站台关联的车站和物理区段
2023-12-13 14:35:39 +08:00
string oldrefStationId = 9; //关联的车站的id
string oldrefSectionId = 10; //关联的物理区段id
string refEsbRelayCode = 11;//关联的紧急停车继电器的编号
2023-12-04 09:41:18 +08:00
TypeOfPlatform type = 12; //站台的上下行
2023-12-13 14:35:39 +08:00
uint32 refStationId = 13; //关联的车站的id
uint32 refSectionId = 14; //关联的物理区段id
2023-10-11 17:35:10 +08:00
}
message ScreenDoor {
CommonInfo common = 1;
string code = 2;
2023-11-08 16:13:36 +08:00
//int32 sonDoorAmount = 3; //子屏蔽门的数量
2023-12-13 14:35:39 +08:00
string oldrefPlatformId = 4; //关联的站台
2023-11-08 16:13:36 +08:00
//repeated ScreenDoorGroup screenDoorGroupList = 5;//编组列表
2023-12-13 14:35:39 +08:00
uint32 refPlatformId = 6; //关联的站台
2023-11-08 16:13:36 +08:00
}
message ScreenDoorConfig {
int32 sonDoorAmount = 1; //子屏蔽门的数量
repeated ScreenDoorGroup screenDoorGroupList = 2;//编组列表
}
message ScreenDoorGroup {
int32 trainGroupAmount = 1; //列车编组数量
int32 startSmallDoor = 2; //起始的屏蔽门编号
int32 endSmallDoor = 3; //结束的屏蔽门编号
2023-07-03 13:09:48 +08:00
}
message Station {
CommonInfo common = 1;
2023-10-20 10:00:51 +08:00
string code = 2;//车站站名
2023-08-04 16:35:51 +08:00
// bool hasControl = 3; // 是否有控制
2023-07-03 13:09:48 +08:00
bool concentrationStations = 4; //是否集中站
2023-07-18 18:09:06 +08:00
// string kilometerCode = 5; //公里标
2023-07-03 13:09:48 +08:00
KilometerSystem kilometerSystem = 6; //公里标
2023-11-17 10:40:08 +08:00
// int32 index = 7;
2024-02-19 18:14:16 +08:00
//string refIbpMapCode = 8; // 关联IBP地图Code
2023-10-20 10:00:51 +08:00
string stationName = 9; //车站名
2024-01-16 13:07:49 +08:00
string stationNameAcronym = 10; // 车站名拼音简写
2023-11-16 16:22:35 +08:00
bool depots = 11; //是否车辆段
2023-12-13 14:35:39 +08:00
repeated string oldmanageStations = 12; // 如果是集中站——管理的车站-id
repeated uint32 manageStations = 13; // 如果是集中站——管理的车站-id
2023-07-03 13:09:48 +08:00
}
message TrainWindow {
CommonInfo common = 1;
string code = 2;
2023-12-12 17:47:46 +08:00
int32 sectionId = 3;
2023-07-03 13:09:48 +08:00
}
message AxleCounting {
2023-09-05 11:29:16 +08:00
enum TypeDetectionPoint {
2023-09-12 14:56:39 +08:00
AxleCounting = 0;
SectionBoundary = 1;
}
2023-07-03 13:09:48 +08:00
CommonInfo common = 1;
2023-08-04 16:36:55 +08:00
string code = 2; // 名称
KilometerSystem kilometerSystem = 3; //公里标
2023-12-13 09:57:19 +08:00
repeated RelatedRef axleCountingRef = 4; // 计轴关联的非岔区物理区段和道岔设备id和端口
2023-11-17 10:40:08 +08:00
// int32 index = 5; //计轴的索引编号
2023-09-20 14:36:15 +08:00
//bool invent = 6; //是否虚拟计轴--一般是最末端
2023-09-05 11:29:16 +08:00
TypeDetectionPoint type = 7; //检测点的类型:计轴、区段边界
2023-12-13 14:35:39 +08:00
repeated string oldcentralizedStations = 8; // 集中站Id列表
repeated uint32 centralizedStations = 9; // 集中站Id列表
2023-07-03 13:09:48 +08:00
}
2023-11-10 15:07:30 +08:00
message GenerateAxleCountingConfig {
2023-12-13 14:35:39 +08:00
repeated string oldbbConnect = 1; //需要在道岔bb连接处生成计轴的道岔id(填一个就行)
repeated string oldnoGenerateGroup = 2;//指定的道岔组不生成计轴
repeated uint32 bbConnect = 3; //需要在道岔bb连接处生成计轴的道岔id(填一个就行)
repeated uint32 noGenerateGroup = 4;//指定的道岔组不生成计轴
2023-11-10 15:07:30 +08:00
}
2023-07-14 14:05:09 +08:00
// message Train {
// CommonInfo common = 1;
// string code = 2;
// }
2023-07-03 13:09:48 +08:00
2023-07-14 14:05:09 +08:00
// message IscsFan {
// CommonInfo common = 1;
// string code = 2;
// }
2023-07-03 13:09:48 +08:00
2023-08-04 16:35:51 +08:00
message Turnout { //(后端不关注)
2023-09-13 15:32:57 +08:00
enum SwitchMachineType {
Unknown = 0;
ZDJ9_Single = 1;
ZDJ9_Double = 2;
}
2023-07-03 13:09:48 +08:00
CommonInfo common = 1;
string code = 2;
repeated Point pointA = 6; // A端坐标列表
repeated Point pointB = 7; // B端坐标列表
repeated Point pointC = 8; // C端坐标列表
RelatedRef paRef = 9; // 道岔A端关联的设备
RelatedRef pbRef = 10; // 道岔B端关联的设备
RelatedRef pcRef = 11; // 道岔C端关联的设备
// KilometerSystem kilometerSystem = 12; // 道岔公里标
repeated KilometerSystem kilometerSystem = 13; // 道岔公里标
2023-11-17 10:40:08 +08:00
// int32 index = 14; //索引
2023-12-13 14:35:39 +08:00
string oldpaTrackSectionId = 15; // A端轨道区段id
string oldpbTrackSectionId = 16; // B端轨道区段id
string oldpcTrackSectionId = 17; // C端轨道区段id
2023-09-13 15:32:57 +08:00
SwitchMachineType switchMachineType = 18; // 转辙机类型
2023-12-13 14:35:39 +08:00
repeated string oldcentralizedStations = 19; // 集中站Id列表
repeated uint32 centralizedStations = 20; // 集中站Id列表
uint32 paTrackSectionId = 21; // A端轨道区段id
uint32 pbTrackSectionId = 22; // B端轨道区段id
uint32 pcTrackSectionId = 23; // C端轨道区段id
2023-08-04 16:35:51 +08:00
}
2023-07-03 13:09:48 +08:00
message KilometerSystem {
2023-12-05 13:15:49 +08:00
/** 左右行 **/
enum Direction {
LEFT = 0;
RIGHT = 1;
}
2023-08-04 16:35:51 +08:00
int64 kilometer = 1; //公里标mm
2023-07-14 15:29:47 +08:00
string coordinateSystem = 2; //坐标系
2023-08-04 16:35:51 +08:00
Direction direction = 3; //左右行
2023-07-03 13:09:48 +08:00
}
message Signal {
CommonInfo common = 1;
string code = 2;
bool mirror = 3;
// int64 kilometer = 4;
// string coordinateSystem = 5;
KilometerSystem kilometerSystem = 6;
2023-11-17 10:40:08 +08:00
// int32 index = 7; //索引
2023-08-04 13:45:04 +08:00
RelatedRef refDev = 8; //关联设备(区段/道岔)
2023-12-13 14:35:39 +08:00
repeated string oldcentralizedStations = 9; // 集中站Id列表
2023-10-19 17:39:26 +08:00
// 信号机模型类型枚举
// 从左向右,最左边为靠近灯座的灯
2023-11-16 11:02:18 +08:00
// 如果没有说明,默认不封灯,无引导
2023-11-16 11:15:55 +08:00
// F-封 D-单 Y-有、带 Y-引导
2023-11-16 11:02:18 +08:00
// H-红 L-绿 U-黄 A-蓝 B-白
2023-10-19 17:39:26 +08:00
enum Model{
2023-11-16 11:02:18 +08:00
HL = 0; //2XH-1 红绿
HLU_FU = 1; //2XH-1 红绿黄,封黄灯,无引导
HLU_DU_YY = 2; //3XH-1 红绿黄,不封灯,有单黄,带引导
HLU_YY = 3; //3XH-2或JDXH 红绿黄,不封灯,无单黄,带引导
HLU_FL_DU_YY = 4;//3XH-3 红绿黄,封绿灯,有单黄,带引导
HLU_DU = 5; //3XH-4 红绿黄,不封灯,有单黄,无引导
AB = 6; //DXCH 蓝白
HBU_DU = 7; //JCKXH 红白黄,不封灯,有单黄,无引导
2023-10-19 17:11:28 +08:00
}
2023-10-19 17:39:26 +08:00
// 信号机模型类型
Model mt = 10;
//string belongStation = 11; // 所属车站(缩写)
2023-12-06 09:51:31 +08:00
Direction direction = 12; // 上下行
2023-12-13 14:35:39 +08:00
repeated uint32 centralizedStations = 13; // 集中站Id列表
2023-07-03 13:09:48 +08:00
}
2023-12-05 13:15:49 +08:00
/** 上下行(区段/信号机) */
enum Direction {
UP = 0;
DOWN = 1;
}
2023-07-12 10:49:03 +08:00
/** 物理区段(包含岔区和非岔区) */
2023-07-03 13:09:48 +08:00
message Section {
enum SectionType {
Physical = 0;
TurnoutPhysical = 2;
}
enum RunningDirection {
2023-12-04 17:27:57 +08:00
AtoB = 0;
BtoA = 1;
2023-12-05 13:15:49 +08:00
BOTH = 2;
}
2023-12-05 13:15:49 +08:00
2023-07-03 13:09:48 +08:00
CommonInfo common = 1;
2023-08-04 16:35:51 +08:00
string code = 2; // 编号
repeated Point points = 3; // 点列表
RelatedRef paRef = 4; // 区段A端关联的设备(非岔区)(后端不关注)
RelatedRef pbRef = 5; // 区段B端关联的设备(非岔区)(后端不关注)
2023-07-12 10:49:03 +08:00
SectionType sectionType = 6; // 区段类型
2023-12-13 14:35:39 +08:00
repeated string oldaxleCountings = 7; // 区段对应的计轴
2023-11-17 10:40:08 +08:00
// int32 index = 8; // 索引
2023-12-13 14:35:39 +08:00
string oldtrackSectionId = 9; // 下属轨道区段id
2023-09-07 16:54:32 +08:00
bool isCurve = 10; // 是否曲线
2023-09-12 14:56:39 +08:00
int32 segmentsCount = 12; // 曲线分段数
2023-12-13 14:35:39 +08:00
repeated string oldcentralizedStations = 13; // 集中站Id列表
RunningDirection normalRunningDirection = 14; //常规运行方向
bool isTurnBackZone = 15; // 是否为折返区域
2023-12-05 13:15:49 +08:00
Direction direction = 16; // 上下行
2023-12-13 14:35:39 +08:00
repeated uint32 axleCountings = 17; // 区段对应的计轴
uint32 trackSectionId = 18; // 下属轨道区段id
repeated uint32 centralizedStations = 19; // 集中站Id列表
2023-07-03 13:09:48 +08:00
}
//关联设备
message RelatedRef {
enum DeviceType {
Section = 0;
Turnout = 1;
TrainWindow = 2;
AxleCounting = 3;
2023-07-12 13:04:55 +08:00
SectionLink = 4;
2023-09-22 15:19:46 +08:00
signal = 5;
2023-10-12 10:14:38 +08:00
station = 6;
ScreenDoor = 7;
SignalFaultAlarm = 8;
Breakers = 9;//断路器
PowerScreen = 10;//电源屏
GarageDoor = 11;
CarWashing = 12;
2023-07-03 13:09:48 +08:00
}
enum DevicePort {
A = 0;
B = 1;
C = 2;
}
DeviceType deviceType = 1; //关联的设备类型
2023-12-13 14:35:39 +08:00
string oldid = 2; //关联的设备ID
2023-07-03 13:09:48 +08:00
DevicePort devicePort = 3; //关联的设备端口
2023-12-13 14:35:39 +08:00
uint32 id = 4;
2023-07-03 13:09:48 +08:00
}
2023-07-14 13:58:05 +08:00
//计轴区段与道岔的位置关系
2023-07-11 15:34:19 +08:00
message TurnoutPosRef {
2023-12-13 14:49:41 +08:00
string oldid = 1; //道岔的ID
2023-07-14 13:43:46 +08:00
int32 position = 2; //道岔的正反为0是定位1是反位
2023-12-13 14:49:41 +08:00
uint32 id = 3;
2023-07-11 15:34:19 +08:00
}
2023-07-03 13:09:48 +08:00
message Separator { // 分隔符
CommonInfo common = 1;
string code = 2;
string separatorType = 3;
}
2023-07-07 16:04:54 +08:00
2023-07-26 17:44:48 +08:00
message Transponder { // 应答器
2023-11-23 12:09:12 +08:00
enum TransponderTypeEnum {
FB = 0; // 固定应答器
WB = 1; // 轮径校正应答器
DB = 2; // 休眠唤醒应答器
VB = 3; // 主信号应答器
IB = 4; // 预告应答器
}
2023-07-26 17:44:48 +08:00
CommonInfo common = 1;
string code = 2;
2023-11-23 12:09:12 +08:00
// int32 transponderType = 3; // 作废
2023-11-17 10:40:08 +08:00
// int32 index = 4; // 索引编号
2023-08-04 16:35:51 +08:00
KilometerSystem kilometerSystem = 5; //公里标
2023-08-07 15:04:45 +08:00
RelatedRef TransponderRef = 6; //关联关系
2023-12-13 14:35:39 +08:00
repeated string oldcentralizedStations = 7; // 集中站Id列表
2024-01-16 15:46:16 +08:00
// bytes fixedTelegram = 8;//无源应答器固定报文
2023-11-23 12:09:12 +08:00
TransponderTypeEnum type = 9;//应答器类型
2023-12-13 14:35:39 +08:00
repeated uint32 centralizedStations = 10; // 集中站Id列表
2024-01-16 15:46:16 +08:00
string fixedTelegram = 11; //应答器固定报文
string fixedUserTelegram = 12; //应答器固定用户报文
2023-07-26 17:44:48 +08:00
}
2023-08-04 16:35:51 +08:00
message SimpleRef {
2023-07-12 13:04:55 +08:00
enum DeviceType {
Turnout = 0;
AxleCounting = 1;
}
DeviceType deviceType = 1;
2023-12-13 14:35:39 +08:00
string oldid = 2;
uint32 id = 3;
2023-07-12 13:04:55 +08:00
}
2023-07-07 16:04:54 +08:00
message SectionLink {
CommonInfo common = 1;
string code = 2;
repeated Point points = 3;
2023-07-14 14:07:06 +08:00
bool up = 4; // 是否上行
2023-08-15 11:13:55 +08:00
SimpleRef aSimRef =
5; // SectionLink A端连接设备构建关系 AxleCounting/Turnout //端点
SimpleRef bSimRef =
6; // SectionLink B端连接设备构建关系 AxleCounting/Turnout //端点
RelatedRef aRef =
7; // SectionLink A端连接设备端口关系 SectionLink/Turnout
2023-08-04 16:35:51 +08:00
RelatedRef bRef = 8; // SectionLink B端连接设备端口关系
// SectionLink/Turnout
2023-11-17 10:40:08 +08:00
// int32 index = 9; // 索引编号
2023-07-07 16:04:54 +08:00
}
2023-07-07 17:17:17 +08:00
message AxleCountingSection { // 计轴区段
CommonInfo common = 1;
2023-07-14 15:07:39 +08:00
string code = 2; // 名称
2023-07-07 17:17:17 +08:00
repeated Point points = 3;
2023-07-14 13:58:05 +08:00
RelatedRef paRef = 4; // 计轴区段A端关联的计轴
RelatedRef pbRef = 5; // 计轴区段B端关联的计轴
repeated TurnoutPosRef turnoutPos = 6; //关联道岔的正反位--0是定位1是反位
2023-11-17 10:40:08 +08:00
// int32 index = 7; //计轴区段的索引编号
2023-07-07 17:17:17 +08:00
}
2023-07-11 16:40:02 +08:00
message LogicSection { // 逻辑区段
CommonInfo common = 1;
2023-07-14 15:07:39 +08:00
string code = 2; // 名称
2023-07-11 16:40:02 +08:00
repeated Point points = 3;
2023-12-13 14:35:39 +08:00
string oldaxleSectionId = 4; // 关联的计轴区段Id
2023-11-17 10:40:08 +08:00
// int32 index = 5; // 索引编号
2023-12-13 14:35:39 +08:00
string oldturnoutId = 6; // 关联的岔芯对应的道岔id此时该逻辑区段为该道岔C端关联的轨道link
uint32 axleSectionId = 7; // 关联的计轴区段Id
uint32 turnoutId = 8; // 关联的岔芯对应的道岔id此时该逻辑区段为该道岔C端关联的轨道link
2023-07-07 17:17:17 +08:00
}
2023-08-15 11:13:55 +08:00
message TrackSection { //轨道区段
enum TrackSectionType {
NORMAL = 0; //非岔区
FORK = 1; //岔区
}
CommonInfo common = 1;
repeated Point points = 2;
string code = 3; //名称
2023-11-17 10:40:08 +08:00
// int32 index = 4; //索引
2023-08-15 11:13:55 +08:00
TrackSectionType type = 5; //类型
string destinationCode = 6; //目的地码
2023-12-13 14:35:39 +08:00
repeated string oldtrackLogicSection = 7; //下属的逻辑区段id(非岔区)
2023-08-15 11:13:55 +08:00
// //关联的物理设备id(物理区段/道岔)由另一端(物理区段/道岔处理)
2023-09-12 15:42:39 +08:00
bool isCurve = 8; // 是否曲线
int32 segmentsCount = 9; // 曲线分段数
2023-12-13 14:35:39 +08:00
repeated uint32 trackLogicSection = 10; //下属的逻辑区段id(非岔区)
2023-08-15 11:13:55 +08:00
}
message TrackLogicSection { //轨道逻辑区段
CommonInfo common = 1;
repeated Point points = 2;
string code = 3; //名称
int32 length = 4; //长度(mm)
}
message StopPosition {
enum CoachNum {
Four = 0;
Six = 1;
2023-08-18 15:44:25 +08:00
Eight = 2;
}
CommonInfo common = 1;
string code = 2;
2023-08-04 16:35:51 +08:00
bool flip = 3; // 是否翻转(前端显示)
CoachNum coachNum = 4; //编组数量
2023-11-17 10:40:08 +08:00
// int32 index = 5; //索引
KilometerSystem kilometerSystem = 6;
2023-08-04 13:45:04 +08:00
RelatedRef refDev = 7; // 关联设备(区段)
}
message SpksSwitch {
CommonInfo common = 1;
string code = 2;
2023-08-04 16:35:51 +08:00
bool flip = 3; // 是否翻转(前端显示)
2023-11-17 10:40:08 +08:00
// int32 index = 4; //索引
2023-10-11 10:36:46 +08:00
// int32 refStand = 5; //关联站台索引
2023-12-13 14:35:39 +08:00
repeated string oldrefSections = 6; // 关联物理区段id
string oldrefStand = 7; // 关联站台
repeated uint32 refSections = 8; // 关联物理区段id
uint32 refStand = 9; // 关联站台
}
message EsbButton {
CommonInfo common = 1;
string code = 2;
2023-08-04 16:35:51 +08:00
bool flip = 3; // 是否翻转(前端显示)
2023-11-17 10:40:08 +08:00
// int32 index = 4; //索引
2023-10-11 10:36:46 +08:00
// int32 refStand = 5; // 关联站台索引
2023-12-13 14:35:39 +08:00
string oldrefStand = 6; // 关联站台
uint32 refStand = 7; // 关联站台
//string refEsbButtonMapCode = 8; // 关联紧急关闭按钮地图Code--关联PSL地图
}
2023-08-04 16:35:51 +08:00
message GatedBox {
CommonInfo common = 1;
string code = 2;
2023-08-04 16:35:51 +08:00
bool flip = 3; // 是否翻转(前端显示)
2023-11-17 10:40:08 +08:00
// int32 index = 4; //索引
2023-12-13 14:35:39 +08:00
string oldrefScreenDoor = 5; // 关联屏蔽门
2023-10-13 13:32:41 +08:00
string refGatedBoxMapCode = 6; // 关联门控箱地图Code
2023-12-13 14:35:39 +08:00
uint32 refScreenDoor = 7; // 关联屏蔽门
}
2023-08-04 16:35:51 +08:00
2024-02-06 16:29:31 +08:00
message IbpBox {
CommonInfo common = 1;
string code = 2;
string refIbpMapCode = 3; // 关联Ibp地图Code
uint32 refStationId = 4; // 关联车站id
}
message PslBox {
CommonInfo common = 1;
string code = 2;
string refPslMapCode = 3; // 关联Psl地图Code
uint32 refPlatformId = 4; // 关联站台id
}
2023-08-04 16:35:51 +08:00
/** 坡度公里标 */
message SlopeKiloMarker {
CommonInfo common = 1;
string code = 2;
repeated KilometerSystem kilometerSystem = 4; //公里标数据
2023-08-04 16:35:51 +08:00
}
2023-08-07 15:27:43 +08:00
/** 曲度公里标 */
message CurvatureKiloMarker {
2023-08-04 16:35:51 +08:00
CommonInfo common = 1;
string code = 2;
repeated KilometerSystem kilometerSystem = 4; //公里标数据
2023-08-04 16:36:55 +08:00
}
2024-03-08 10:41:46 +08:00
/** 车库门 */
message GarageDoor {
CommonInfo common = 1;
string code = 2;
}
/** 洗车机 */
message CarWashing {
CommonInfo common = 1;
string code = 2;
}
2023-11-10 09:23:27 +08:00
/** 信标 */
message Beacon {
enum BeaconType {
Static = 0;
Dynamic = 1;
}
CommonInfo common = 1;
string code = 2;
BeaconType type = 3;
bool flip = 4;
}
2023-08-03 16:30:35 +08:00
message Slope {
CommonInfo common = 1;
2023-08-04 17:45:08 +08:00
repeated Point points = 2;
sint32 slopeNumber = 3; //坡度的值--正负代表上下坡
2023-12-13 14:35:39 +08:00
repeated string oldrefDeviceId = 4; // 坡度关联的(坡度公里标)
repeated uint32 refDeviceId = 5; // 坡度关联的(坡度公里标)
2023-08-03 16:30:35 +08:00
}
2023-08-04 13:45:45 +08:00
2023-08-07 17:54:44 +08:00
message Curvature {
CommonInfo common = 1;
repeated Point points = 2;
2023-08-15 11:13:55 +08:00
sint32 curvatureNumber = 3; //曲线的半径--正代表外侧;负代表内侧
2023-12-13 14:35:39 +08:00
repeated string oldrefDeviceId = 4; // 曲线关联的(曲度公里标)
repeated uint32 refDeviceId = 5; // 曲线关联的(曲度公里标)
2023-08-07 17:54:44 +08:00
}
2023-08-04 13:45:45 +08:00
// 计算link结构
2023-12-13 16:08:27 +08:00
// message CalculateLink {
// CommonInfo common = 1;
// repeated Point points = 2;
// int32 length = 3; //长度mm
// RelatedRef aRelatedRef = 4; // A端最小端关联的端点 (道岔端点)
// RelatedRef bRelatedRef = 5; // B端最大端关联的端点 (道岔端点)
// repeated DevicePosition devicePositions = 6; //设备在link上的位置
// int32 index = 7; // link唯一标识
// message DevicePosition {
// int32 offset = 1;
// string deviceId = 2;
// string deviceType = 3;
// }
// }
2023-11-16 15:51:58 +08:00
/** 发车计时器 */
message DepartureTimer {
CommonInfo common = 1;
string code = 2;
2023-12-13 14:35:39 +08:00
string oldrefStand = 3; // 关联站台
string runDirection = 4; //运行方向
2023-12-13 14:35:39 +08:00
uint32 refStand = 5; // 关联站台
2023-11-16 15:51:58 +08:00
}
2023-09-21 09:09:07 +08:00
2023-11-16 18:06:00 +08:00
message AutoReturnBox {
CommonInfo common = 1;
string code = 2;
bool flip = 3; // 是否翻转(前端显示)
int32 index = 4; //索引
2023-12-13 14:35:39 +08:00
string oldrefStand = 5; // 关联站台
uint32 refStand = 6; // 关联站台
2023-11-16 18:06:00 +08:00
}
2023-09-21 11:03:35 +08:00
message UniqueIdOfStationLayout {
2023-09-21 09:09:07 +08:00
string city = 1;//城市
string lineId = 2;//线路号
2023-10-19 17:23:44 +08:00
string mainCoordinateSystem = 3;//地图的公里标主坐标系
2023-09-21 09:09:07 +08:00
}
//公里标转换
message KilometerConvert {
KilometerSystem kmA = 1;
KilometerSystem kmB = 2;
bool sameTrend = 3; //相同趋势(同增同减)?
}
2023-10-12 13:22:26 +08:00
/* 车站关联的设备列表 */
message StationRelateDevice {
string code = 1;//设备编号
2023-10-13 13:36:39 +08:00
repeated DeviceCombinationtype combinationtypes = 2; //组合类型
2023-10-12 13:22:26 +08:00
RelatedRef.DeviceType deviceType = 3;//设备类型
}
2023-10-13 13:36:39 +08:00
message DeviceCombinationtype {
2023-10-12 13:22:26 +08:00
string code = 1;
2023-12-13 14:35:39 +08:00
repeated string oldrefDevices = 2;//车站关联的设备
2023-12-13 16:46:04 +08:00
repeated uint32 refDevices = 3;//车站关联的设备
2023-10-12 13:22:26 +08:00
}
2023-10-25 10:47:38 +08:00
message SectionCodePoint {
2023-12-13 17:05:03 +08:00
string oldCentralizedStation = 1; // 集中站id
2023-12-13 14:35:39 +08:00
repeated string oldsectionIds = 2; //物理区段id列表
repeated uint32 sectionIds = 3; //物理区段id列表
2023-12-13 17:05:03 +08:00
uint32 centralizedStation = 4; // 集中站id
2023-10-25 10:47:38 +08:00
}
2023-11-16 15:59:17 +08:00
// 列车信息
message Train {
enum TrainModel { // 车型
A = 0;
B = 1;
C = 2;
D = 3;
}
TrainModel trainModel = 1; // 车型
int32 carriageLength = 2; // 列车车厢长度
int32 totalLength = 3; // 总长度
2024-01-18 16:04:56 +08:00
// int32 minDiameter = 4; // 车轮的最小直径
// int32 maxDiameter = 5; // 车轮的最大直径
2023-11-16 15:59:17 +08:00
string trainSets = 6; // 编组
2024-01-17 17:02:17 +08:00
common.TrainDynamicConfig dynamicConfig = 7; //动力学参数
2023-11-16 16:22:35 +08:00
}
2023-12-04 14:55:06 +08:00
// 其他线
message OtherLine {
string name = 1;
2023-12-13 14:35:39 +08:00
repeated string oldids = 2; // 设备id列表
repeated uint32 ids = 3; // 设备id列表
2023-12-04 14:55:06 +08:00
}