列车控制支持门模式更新
local-test分支打包构建docker并发布运行 / Docker-Build (push) Successful in 3m15s
Details
local-test分支打包构建docker并发布运行 / Docker-Build (push) Successful in 3m15s
Details
This commit is contained in:
parent
f8517f0ead
commit
fa600673a6
File diff suppressed because it is too large
Load Diff
|
@ -74,6 +74,7 @@ type TccKey_TccKeyType int32
|
|||
const (
|
||||
TccKey_driverControllerActivationClint TccKey_TccKeyType = 0 //司控器激活端
|
||||
TccKey_frontAndRearDirectionalControl TccKey_TccKeyType = 1 //前后方向控制
|
||||
TccKey_trainDoorMode TccKey_TccKeyType = 2 //列车门模式
|
||||
)
|
||||
|
||||
// Enum value maps for TccKey_TccKeyType.
|
||||
|
@ -81,10 +82,12 @@ var (
|
|||
TccKey_TccKeyType_name = map[int32]string{
|
||||
0: "driverControllerActivationClint",
|
||||
1: "frontAndRearDirectionalControl",
|
||||
2: "trainDoorMode",
|
||||
}
|
||||
TccKey_TccKeyType_value = map[string]int32{
|
||||
"driverControllerActivationClint": 0,
|
||||
"frontAndRearDirectionalControl": 1,
|
||||
"trainDoorMode": 2,
|
||||
}
|
||||
)
|
||||
|
||||
|
@ -591,7 +594,7 @@ var file_tccGraphics_proto_rawDesc = []byte{
|
|||
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72,
|
||||
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1a, 0x0a,
|
||||
0x08, 0x66, 0x6f, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52,
|
||||
0x08, 0x66, 0x6f, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xdb, 0x01, 0x0a, 0x06, 0x54, 0x63,
|
||||
0x08, 0x66, 0x6f, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x06, 0x54, 0x63,
|
||||
0x63, 0x4b, 0x65, 0x79, 0x12, 0x2f, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x44, 0x61,
|
||||
0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x63,
|
||||
|
@ -600,37 +603,38 @@ var file_tccGraphics_proto_rawDesc = []byte{
|
|||
0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x74, 0x63, 0x63, 0x47, 0x72, 0x61,
|
||||
0x70, 0x68, 0x69, 0x63, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x63, 0x63, 0x4b, 0x65, 0x79, 0x2e,
|
||||
0x54, 0x63, 0x63, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65,
|
||||
0x22, 0x55, 0x0a, 0x0a, 0x54, 0x63, 0x63, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23,
|
||||
0x22, 0x68, 0x0a, 0x0a, 0x54, 0x63, 0x63, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23,
|
||||
0x0a, 0x1f, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c,
|
||||
0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x6e,
|
||||
0x74, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x41, 0x6e, 0x64, 0x52,
|
||||
0x65, 0x61, 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6f,
|
||||
0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x10, 0x01, 0x22, 0x50, 0x0a, 0x09, 0x54, 0x63, 0x63, 0x48, 0x61,
|
||||
0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x44, 0x61,
|
||||
0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x63,
|
||||
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x08, 0x54, 0x63,
|
||||
0x63, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
|
||||
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63,
|
||||
0x44, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52,
|
||||
0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
|
||||
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x3f, 0x0a, 0x0a, 0x6c,
|
||||
0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
||||
0x1f, 0x2e, 0x74, 0x63, 0x63, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x44, 0x61, 0x74, 0x61,
|
||||
0x2e, 0x54, 0x63, 0x63, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72,
|
||||
0x52, 0x0a, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b,
|
||||
0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28,
|
||||
0x08, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x22,
|
||||
0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05,
|
||||
0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, 0x61,
|
||||
0x74, 0x65, 0x2a, 0x2f, 0x0a, 0x0f, 0x54, 0x63, 0x63, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
|
||||
0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x09, 0x0a, 0x05, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x10, 0x00,
|
||||
0x12, 0x07, 0x0a, 0x03, 0x72, 0x65, 0x64, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x62, 0x6c, 0x75,
|
||||
0x65, 0x10, 0x02, 0x42, 0x2d, 0x5a, 0x2b, 0x6a, 0x6f, 0x79, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63,
|
||||
0x6c, 0x75, 0x62, 0x2f, 0x62, 0x6a, 0x2d, 0x72, 0x74, 0x73, 0x74, 0x73, 0x2d, 0x73, 0x65, 0x72,
|
||||
0x76, 0x65, 0x72, 0x2f, 0x64, 0x74, 0x6f, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x74, 0x72, 0x61, 0x69, 0x6e,
|
||||
0x44, 0x6f, 0x6f, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x10, 0x02, 0x22, 0x50, 0x0a, 0x09, 0x54, 0x63,
|
||||
0x63, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
|
||||
0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69,
|
||||
0x63, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f,
|
||||
0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65,
|
||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0xd6, 0x01, 0x0a,
|
||||
0x08, 0x54, 0x63, 0x63, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x63, 0x6f, 0x6d,
|
||||
0x6d, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x61, 0x70,
|
||||
0x68, 0x69, 0x63, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x49, 0x6e,
|
||||
0x66, 0x6f, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
|
||||
0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x3f,
|
||||
0x0a, 0x0a, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01,
|
||||
0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x74, 0x63, 0x63, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x44,
|
||||
0x61, 0x74, 0x61, 0x2e, 0x54, 0x63, 0x63, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f,
|
||||
0x6c, 0x6f, 0x72, 0x52, 0x0a, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12,
|
||||
0x20, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04,
|
||||
0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x76, 0x65,
|
||||
0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74,
|
||||
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
|
||||
0x53, 0x74, 0x61, 0x74, 0x65, 0x2a, 0x2f, 0x0a, 0x0f, 0x54, 0x63, 0x63, 0x45, 0x6c, 0x65, 0x6d,
|
||||
0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x09, 0x0a, 0x05, 0x67, 0x72, 0x65, 0x65,
|
||||
0x6e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x72, 0x65, 0x64, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04,
|
||||
0x62, 0x6c, 0x75, 0x65, 0x10, 0x02, 0x42, 0x2d, 0x5a, 0x2b, 0x6a, 0x6f, 0x79, 0x6c, 0x69, 0x6e,
|
||||
0x6b, 0x2e, 0x63, 0x6c, 0x75, 0x62, 0x2f, 0x62, 0x6a, 0x2d, 0x72, 0x74, 0x73, 0x74, 0x73, 0x2d,
|
||||
0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x64, 0x74, 0x6f, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x5f,
|
||||
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
|
|
@ -538,10 +538,11 @@ func (Psd_Fault) EnumDescriptor() ([]byte, []int) {
|
|||
type TrainControl_TrainControlType int32
|
||||
|
||||
const (
|
||||
TrainControl_EMERGENT_BUTTON TrainControl_TrainControlType = 0 // 摁钮
|
||||
TrainControl_DRIVER_KEY_SWITCH TrainControl_TrainControlType = 1 //驾驶端钥匙
|
||||
TrainControl_DIRECTION_KEY_SWITCH TrainControl_TrainControlType = 2 //方向钥匙
|
||||
TrainControl_HANDLER TrainControl_TrainControlType = 3 //手柄
|
||||
TrainControl_EMERGENT_BUTTON TrainControl_TrainControlType = 0 // 摁钮
|
||||
TrainControl_DRIVER_KEY_SWITCH TrainControl_TrainControlType = 1 //驾驶端钥匙
|
||||
TrainControl_DIRECTION_KEY_SWITCH TrainControl_TrainControlType = 2 //方向钥匙
|
||||
TrainControl_HANDLER TrainControl_TrainControlType = 3 //手柄
|
||||
TrainControl_TRAIN_DOOR_MODE_CHANGE TrainControl_TrainControlType = 4 //列车门模式
|
||||
)
|
||||
|
||||
// Enum value maps for TrainControl_TrainControlType.
|
||||
|
@ -551,12 +552,14 @@ var (
|
|||
1: "DRIVER_KEY_SWITCH",
|
||||
2: "DIRECTION_KEY_SWITCH",
|
||||
3: "HANDLER",
|
||||
4: "TRAIN_DOOR_MODE_CHANGE",
|
||||
}
|
||||
TrainControl_TrainControlType_value = map[string]int32{
|
||||
"EMERGENT_BUTTON": 0,
|
||||
"DRIVER_KEY_SWITCH": 1,
|
||||
"DIRECTION_KEY_SWITCH": 2,
|
||||
"HANDLER": 3,
|
||||
"EMERGENT_BUTTON": 0,
|
||||
"DRIVER_KEY_SWITCH": 1,
|
||||
"DIRECTION_KEY_SWITCH": 2,
|
||||
"HANDLER": 3,
|
||||
"TRAIN_DOOR_MODE_CHANGE": 4,
|
||||
}
|
||||
)
|
||||
|
||||
|
@ -587,52 +590,52 @@ func (TrainControl_TrainControlType) EnumDescriptor() ([]byte, []int) {
|
|||
return file_request_proto_rawDescGZIP(), []int{14, 0}
|
||||
}
|
||||
|
||||
type TrainControl_Direction int32
|
||||
type TrainControl_KeyLocation int32
|
||||
|
||||
const (
|
||||
TrainControl_BACKWARD TrainControl_Direction = 0 //后退
|
||||
TrainControl_FORWARD TrainControl_Direction = 1 //前进
|
||||
TrainControl_NEUTRALWARD TrainControl_Direction = 2 //中位
|
||||
TrainControl_KL_END TrainControl_KeyLocation = 0 //方向:后退 门模式:mm模式
|
||||
TrainControl_KL_FONT TrainControl_KeyLocation = 1 //方向:前进 门模式:AA模式
|
||||
TrainControl_KL_CENTER TrainControl_KeyLocation = 2 //方向:中位 门模式:AM模式
|
||||
)
|
||||
|
||||
// Enum value maps for TrainControl_Direction.
|
||||
// Enum value maps for TrainControl_KeyLocation.
|
||||
var (
|
||||
TrainControl_Direction_name = map[int32]string{
|
||||
0: "BACKWARD",
|
||||
1: "FORWARD",
|
||||
2: "NEUTRALWARD",
|
||||
TrainControl_KeyLocation_name = map[int32]string{
|
||||
0: "KL_END",
|
||||
1: "KL_FONT",
|
||||
2: "KL_CENTER",
|
||||
}
|
||||
TrainControl_Direction_value = map[string]int32{
|
||||
"BACKWARD": 0,
|
||||
"FORWARD": 1,
|
||||
"NEUTRALWARD": 2,
|
||||
TrainControl_KeyLocation_value = map[string]int32{
|
||||
"KL_END": 0,
|
||||
"KL_FONT": 1,
|
||||
"KL_CENTER": 2,
|
||||
}
|
||||
)
|
||||
|
||||
func (x TrainControl_Direction) Enum() *TrainControl_Direction {
|
||||
p := new(TrainControl_Direction)
|
||||
func (x TrainControl_KeyLocation) Enum() *TrainControl_KeyLocation {
|
||||
p := new(TrainControl_KeyLocation)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
|
||||
func (x TrainControl_Direction) String() string {
|
||||
func (x TrainControl_KeyLocation) String() string {
|
||||
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
||||
}
|
||||
|
||||
func (TrainControl_Direction) Descriptor() protoreflect.EnumDescriptor {
|
||||
func (TrainControl_KeyLocation) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_request_proto_enumTypes[11].Descriptor()
|
||||
}
|
||||
|
||||
func (TrainControl_Direction) Type() protoreflect.EnumType {
|
||||
func (TrainControl_KeyLocation) Type() protoreflect.EnumType {
|
||||
return &file_request_proto_enumTypes[11]
|
||||
}
|
||||
|
||||
func (x TrainControl_Direction) Number() protoreflect.EnumNumber {
|
||||
func (x TrainControl_KeyLocation) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use TrainControl_Direction.Descriptor instead.
|
||||
func (TrainControl_Direction) EnumDescriptor() ([]byte, []int) {
|
||||
// Deprecated: Use TrainControl_KeyLocation.Descriptor instead.
|
||||
func (TrainControl_KeyLocation) EnumDescriptor() ([]byte, []int) {
|
||||
return file_request_proto_rawDescGZIP(), []int{14, 1}
|
||||
}
|
||||
|
||||
|
@ -1682,14 +1685,14 @@ type TrainControl struct {
|
|||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
SimulationId string `protobuf:"bytes,1,opt,name=simulationId,proto3" json:"simulationId,omitempty"` // 仿真id
|
||||
TrainId string `protobuf:"bytes,2,opt,name=trainId,proto3" json:"trainId,omitempty"`
|
||||
DeviceId uint32 `protobuf:"varint,3,opt,name=deviceId,proto3" json:"deviceId,omitempty"` //设备id
|
||||
ControlType TrainControl_TrainControlType `protobuf:"varint,4,opt,name=controlType,proto3,enum=request.TrainControl_TrainControlType" json:"controlType,omitempty"`
|
||||
ControlButton *TrainControl_ControlButton `protobuf:"bytes,5,opt,name=controlButton,proto3" json:"controlButton,omitempty"` // 控制按钮
|
||||
DriverKey *TrainControl_DriverKeySwitch `protobuf:"bytes,6,opt,name=driverKey,proto3" json:"driverKey,omitempty"`
|
||||
DirKey *TrainControl_DirectionKeySwitch `protobuf:"bytes,7,opt,name=dirKey,proto3" json:"dirKey,omitempty"` //方向
|
||||
Handler *TrainControl_PushHandler `protobuf:"bytes,8,opt,name=handler,proto3" json:"handler,omitempty"` //手柄
|
||||
SimulationId string `protobuf:"bytes,1,opt,name=simulationId,proto3" json:"simulationId,omitempty"` // 仿真id
|
||||
TrainId string `protobuf:"bytes,2,opt,name=trainId,proto3" json:"trainId,omitempty"`
|
||||
DeviceId uint32 `protobuf:"varint,3,opt,name=deviceId,proto3" json:"deviceId,omitempty"` //设备id
|
||||
ControlType TrainControl_TrainControlType `protobuf:"varint,4,opt,name=controlType,proto3,enum=request.TrainControl_TrainControlType" json:"controlType,omitempty"`
|
||||
ControlButton *TrainControl_ControlButton `protobuf:"bytes,5,opt,name=controlButton,proto3" json:"controlButton,omitempty"` // 控制按钮
|
||||
DriverKey *TrainControl_DriverKeySwitch `protobuf:"bytes,6,opt,name=driverKey,proto3" json:"driverKey,omitempty"`
|
||||
SwitchKey *TrainControl_SwitchKeyChange `protobuf:"bytes,7,opt,name=switchKey,proto3" json:"switchKey,omitempty"` //方向/门模式
|
||||
Handler *TrainControl_PushHandler `protobuf:"bytes,8,opt,name=handler,proto3" json:"handler,omitempty"` //手柄
|
||||
}
|
||||
|
||||
func (x *TrainControl) Reset() {
|
||||
|
@ -1766,9 +1769,9 @@ func (x *TrainControl) GetDriverKey() *TrainControl_DriverKeySwitch {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (x *TrainControl) GetDirKey() *TrainControl_DirectionKeySwitch {
|
||||
func (x *TrainControl) GetSwitchKey() *TrainControl_SwitchKeyChange {
|
||||
if x != nil {
|
||||
return x.DirKey
|
||||
return x.SwitchKey
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
@ -2259,16 +2262,16 @@ func (x *TrainControl_DriverKeySwitch) GetVal() bool {
|
|||
return false
|
||||
}
|
||||
|
||||
type TrainControl_DirectionKeySwitch struct {
|
||||
type TrainControl_SwitchKeyChange struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Val uint32 `protobuf:"varint,1,opt,name=val,proto3" json:"val,omitempty"` //0=后,1=前,2=中位
|
||||
Val uint32 `protobuf:"varint,1,opt,name=val,proto3" json:"val,omitempty"` //0=后(门模式:MM),1=前(门模式:AA),2=中位(门模式:AM)
|
||||
}
|
||||
|
||||
func (x *TrainControl_DirectionKeySwitch) Reset() {
|
||||
*x = TrainControl_DirectionKeySwitch{}
|
||||
func (x *TrainControl_SwitchKeyChange) Reset() {
|
||||
*x = TrainControl_SwitchKeyChange{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_request_proto_msgTypes[24]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
|
@ -2276,13 +2279,13 @@ func (x *TrainControl_DirectionKeySwitch) Reset() {
|
|||
}
|
||||
}
|
||||
|
||||
func (x *TrainControl_DirectionKeySwitch) String() string {
|
||||
func (x *TrainControl_SwitchKeyChange) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*TrainControl_DirectionKeySwitch) ProtoMessage() {}
|
||||
func (*TrainControl_SwitchKeyChange) ProtoMessage() {}
|
||||
|
||||
func (x *TrainControl_DirectionKeySwitch) ProtoReflect() protoreflect.Message {
|
||||
func (x *TrainControl_SwitchKeyChange) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_request_proto_msgTypes[24]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
|
@ -2294,12 +2297,12 @@ func (x *TrainControl_DirectionKeySwitch) ProtoReflect() protoreflect.Message {
|
|||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use TrainControl_DirectionKeySwitch.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControl_DirectionKeySwitch) Descriptor() ([]byte, []int) {
|
||||
// Deprecated: Use TrainControl_SwitchKeyChange.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControl_SwitchKeyChange) Descriptor() ([]byte, []int) {
|
||||
return file_request_proto_rawDescGZIP(), []int{14, 3}
|
||||
}
|
||||
|
||||
func (x *TrainControl_DirectionKeySwitch) GetVal() uint32 {
|
||||
func (x *TrainControl_SwitchKeyChange) GetVal() uint32 {
|
||||
if x != nil {
|
||||
return x.Val
|
||||
}
|
||||
|
@ -2482,7 +2485,7 @@ var file_request_proto_rawDesc = []byte{
|
|||
0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74,
|
||||
0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x2e, 0x50, 0x73, 0x64, 0x2e, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x05, 0x66, 0x61, 0x75, 0x6c,
|
||||
0x74, 0x22, 0xa2, 0x06, 0x0a, 0x0c, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72,
|
||||
0x74, 0x22, 0xbd, 0x06, 0x0a, 0x0c, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72,
|
||||
0x6f, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x49,
|
||||
|
@ -2502,89 +2505,90 @@ var file_request_proto_rawDesc = []byte{
|
|||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54,
|
||||
0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x44, 0x72, 0x69, 0x76,
|
||||
0x65, 0x72, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x52, 0x09, 0x64, 0x72, 0x69,
|
||||
0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x40, 0x0a, 0x06, 0x64, 0x69, 0x72, 0x4b, 0x65, 0x79,
|
||||
0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x44, 0x69,
|
||||
0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68,
|
||||
0x52, 0x06, 0x64, 0x69, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x07, 0x68, 0x61, 0x6e, 0x64,
|
||||
0x6c, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x72, 0x65, 0x71, 0x75,
|
||||
0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x43, 0x0a, 0x09, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68,
|
||||
0x4b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x72, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
|
||||
0x2e, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x52, 0x07, 0x68, 0x61,
|
||||
0x6e, 0x64, 0x6c, 0x65, 0x72, 0x1a, 0x27, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
|
||||
0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65,
|
||||
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x1a, 0x28,
|
||||
0x0a, 0x0e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e,
|
||||
0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x1a, 0x23, 0x0a, 0x0f, 0x44, 0x72, 0x69, 0x76,
|
||||
0x65, 0x72, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x76,
|
||||
0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x26, 0x0a,
|
||||
0x12, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69,
|
||||
0x74, 0x63, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
|
||||
0x2e, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
|
||||
0x52, 0x09, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x07, 0x68,
|
||||
0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x72,
|
||||
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74,
|
||||
0x72, 0x6f, 0x6c, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x52,
|
||||
0x07, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x1a, 0x27, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x74,
|
||||
0x72, 0x6f, 0x6c, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74,
|
||||
0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76,
|
||||
0x65, 0x1a, 0x28, 0x0a, 0x0e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x74,
|
||||
0x74, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20,
|
||||
0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x1a, 0x23, 0x0a, 0x0f, 0x44,
|
||||
0x72, 0x69, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x10,
|
||||
0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x76, 0x61, 0x6c,
|
||||
0x1a, 0x23, 0x0a, 0x0f, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x43, 0x68, 0x61,
|
||||
0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
|
||||
0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x1f, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e,
|
||||
0x64, 0x6c, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x05, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x65, 0x0a, 0x10, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43,
|
||||
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x4d,
|
||||
0x45, 0x52, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e, 0x10, 0x00, 0x12,
|
||||
0x15, 0x0a, 0x11, 0x44, 0x52, 0x49, 0x56, 0x45, 0x52, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x53, 0x57,
|
||||
0x49, 0x54, 0x43, 0x48, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54,
|
||||
0x49, 0x4f, 0x4e, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x10, 0x02,
|
||||
0x12, 0x0b, 0x0a, 0x07, 0x48, 0x41, 0x4e, 0x44, 0x4c, 0x45, 0x52, 0x10, 0x03, 0x22, 0x37, 0x0a,
|
||||
0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0c, 0x0a, 0x08, 0x42, 0x41,
|
||||
0x43, 0x4b, 0x57, 0x41, 0x52, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x4f, 0x52, 0x57,
|
||||
0x41, 0x52, 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c,
|
||||
0x57, 0x41, 0x52, 0x44, 0x10, 0x02, 0x22, 0xc6, 0x01, 0x0a, 0x0f, 0x43, 0x6b, 0x6d, 0x4f, 0x70,
|
||||
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x69,
|
||||
0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x0c, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x14,
|
||||
0x0a, 0x05, 0x6d, 0x61, 0x70, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d,
|
||||
0x61, 0x70, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64,
|
||||
0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64,
|
||||
0x12, 0x34, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20,
|
||||
0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6b,
|
||||
0x6d, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65,
|
||||
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18,
|
||||
0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e,
|
||||
0x43, 0x6b, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22,
|
||||
0x82, 0x01, 0x0a, 0x03, 0x43, 0x6b, 0x6d, 0x22, 0x29, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65,
|
||||
0x64, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
|
||||
0x10, 0x01, 0x22, 0x27, 0x0a, 0x05, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x46,
|
||||
0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x5f, 0x4b, 0x4d, 0x10,
|
||||
0x01, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x5f, 0x47, 0x4d, 0x10, 0x02, 0x22, 0x27, 0x0a, 0x05, 0x46,
|
||||
0x61, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x41, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10,
|
||||
0x00, 0x12, 0x11, 0x0a, 0x0d, 0x46, 0x41, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4c, 0x6f,
|
||||
0x73, 0x73, 0x10, 0x01, 0x22, 0x5e, 0x0a, 0x08, 0x43, 0x6b, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d,
|
||||
0x12, 0x28, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
||||
0x12, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6b, 0x6d, 0x2e, 0x46, 0x6f,
|
||||
0x72, 0x63, 0x65, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x66, 0x61,
|
||||
0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x72, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x2e, 0x43, 0x6b, 0x6d, 0x2e, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x05, 0x66,
|
||||
0x61, 0x75, 0x6c, 0x74, 0x22, 0xc6, 0x01, 0x0a, 0x0f, 0x58, 0x63, 0x6a, 0x4f, 0x70, 0x65, 0x72,
|
||||
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x69, 0x6d, 0x75,
|
||||
0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
|
||||
0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05,
|
||||
0x6d, 0x61, 0x70, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x61, 0x70,
|
||||
0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x03,
|
||||
0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x34,
|
||||
0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
|
||||
0x0e, 0x32, 0x16, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x58, 0x63, 0x6a, 0x2e,
|
||||
0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20,
|
||||
0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x58, 0x63,
|
||||
0x6a, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, 0x54, 0x0a,
|
||||
0x03, 0x58, 0x63, 0x6a, 0x22, 0x29, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
||||
0x6e, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x00,
|
||||
0x12, 0x0d, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x10, 0x01, 0x22,
|
||||
0x22, 0x0a, 0x05, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x41, 0x5f, 0x4e,
|
||||
0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x41, 0x5f, 0x46, 0x61, 0x75, 0x6c,
|
||||
0x74, 0x10, 0x01, 0x22, 0x34, 0x0a, 0x08, 0x58, 0x63, 0x6a, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12,
|
||||
0x28, 0x0a, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12,
|
||||
0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x58, 0x63, 0x6a, 0x2e, 0x46, 0x61, 0x75,
|
||||
0x6c, 0x74, 0x52, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42, 0x30, 0x5a, 0x2e, 0x6a, 0x6f, 0x79,
|
||||
0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x75, 0x62, 0x2f, 0x62, 0x6a, 0x2d, 0x72, 0x74, 0x73,
|
||||
0x74, 0x73, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x64, 0x74, 0x6f, 0x2f, 0x72, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x33,
|
||||
0x05, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x81, 0x01, 0x0a, 0x10, 0x54, 0x72, 0x61, 0x69, 0x6e,
|
||||
0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x45,
|
||||
0x4d, 0x45, 0x52, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e, 0x10, 0x00,
|
||||
0x12, 0x15, 0x0a, 0x11, 0x44, 0x52, 0x49, 0x56, 0x45, 0x52, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x53,
|
||||
0x57, 0x49, 0x54, 0x43, 0x48, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x49, 0x52, 0x45, 0x43,
|
||||
0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x10,
|
||||
0x02, 0x12, 0x0b, 0x0a, 0x07, 0x48, 0x41, 0x4e, 0x44, 0x4c, 0x45, 0x52, 0x10, 0x03, 0x12, 0x1a,
|
||||
0x0a, 0x16, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x5f, 0x44, 0x4f, 0x4f, 0x52, 0x5f, 0x4d, 0x4f, 0x44,
|
||||
0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x04, 0x22, 0x35, 0x0a, 0x0b, 0x4b, 0x65,
|
||||
0x79, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0a, 0x0a, 0x06, 0x4b, 0x4c, 0x5f,
|
||||
0x45, 0x4e, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4b, 0x4c, 0x5f, 0x46, 0x4f, 0x4e, 0x54,
|
||||
0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4b, 0x4c, 0x5f, 0x43, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x10,
|
||||
0x02, 0x22, 0xc6, 0x01, 0x0a, 0x0f, 0x43, 0x6b, 0x6d, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
|
||||
0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74,
|
||||
0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x6d,
|
||||
0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x61, 0x70,
|
||||
0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x61, 0x70, 0x49, 0x64, 0x12,
|
||||
0x1a, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
|
||||
0x0d, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x09, 0x6f,
|
||||
0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16,
|
||||
0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6b, 0x6d, 0x2e, 0x4f, 0x70, 0x65,
|
||||
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
||||
0x6e, 0x12, 0x27, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
|
||||
0x32, 0x11, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6b, 0x6d, 0x50, 0x61,
|
||||
0x72, 0x61, 0x6d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, 0x82, 0x01, 0x0a, 0x03, 0x43,
|
||||
0x6b, 0x6d, 0x22, 0x29, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
|
||||
0x0d, 0x0a, 0x09, 0x55, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0d,
|
||||
0x0a, 0x09, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x10, 0x01, 0x22, 0x27, 0x0a,
|
||||
0x05, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x5f, 0x4e, 0x4f, 0x4e, 0x45,
|
||||
0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x5f, 0x4b, 0x4d, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04,
|
||||
0x46, 0x5f, 0x47, 0x4d, 0x10, 0x02, 0x22, 0x27, 0x0a, 0x05, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x12,
|
||||
0x0b, 0x0a, 0x07, 0x46, 0x41, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d,
|
||||
0x46, 0x41, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4c, 0x6f, 0x73, 0x73, 0x10, 0x01, 0x22,
|
||||
0x5e, 0x0a, 0x08, 0x43, 0x6b, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x05, 0x66,
|
||||
0x6f, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x72, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6b, 0x6d, 0x2e, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x52, 0x05,
|
||||
0x66, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x02,
|
||||
0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43,
|
||||
0x6b, 0x6d, 0x2e, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x05, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22,
|
||||
0xc6, 0x01, 0x0a, 0x0f, 0x58, 0x63, 0x6a, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||
0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f,
|
||||
0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x6d, 0x75, 0x6c,
|
||||
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x61, 0x70, 0x49, 0x64,
|
||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x61, 0x70, 0x49, 0x64, 0x12, 0x1a, 0x0a,
|
||||
0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52,
|
||||
0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x09, 0x6f, 0x70, 0x65,
|
||||
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x72,
|
||||
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x58, 0x63, 0x6a, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
|
||||
0x27, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11,
|
||||
0x2e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x58, 0x63, 0x6a, 0x50, 0x61, 0x72, 0x61,
|
||||
0x6d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, 0x54, 0x0a, 0x03, 0x58, 0x63, 0x6a, 0x22,
|
||||
0x29, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0d, 0x0a, 0x09,
|
||||
0x55, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53,
|
||||
0x65, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x10, 0x01, 0x22, 0x22, 0x0a, 0x05, 0x46, 0x61,
|
||||
0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x41, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00,
|
||||
0x12, 0x0c, 0x0a, 0x08, 0x46, 0x41, 0x5f, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x10, 0x01, 0x22, 0x34,
|
||||
0x0a, 0x08, 0x58, 0x63, 0x6a, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x05, 0x66, 0x61,
|
||||
0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x72, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x2e, 0x58, 0x63, 0x6a, 0x2e, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x05, 0x66,
|
||||
0x61, 0x75, 0x6c, 0x74, 0x42, 0x30, 0x5a, 0x2e, 0x6a, 0x6f, 0x79, 0x6c, 0x69, 0x6e, 0x6b, 0x2e,
|
||||
0x63, 0x6c, 0x75, 0x62, 0x2f, 0x62, 0x6a, 0x2d, 0x72, 0x74, 0x73, 0x74, 0x73, 0x2d, 0x73, 0x65,
|
||||
0x72, 0x76, 0x65, 0x72, 0x2f, 0x64, 0x74, 0x6f, 0x2f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
@ -2602,49 +2606,49 @@ func file_request_proto_rawDescGZIP() []byte {
|
|||
var file_request_proto_enumTypes = make([]protoimpl.EnumInfo, 17)
|
||||
var file_request_proto_msgTypes = make([]protoimpl.MessageInfo, 26)
|
||||
var file_request_proto_goTypes = []interface{}{
|
||||
(Relay_Operation)(0), // 0: request.Relay.Operation
|
||||
(Points_Operation)(0), // 1: request.Points.Operation
|
||||
(Points_Force)(0), // 2: request.Points.Force
|
||||
(Signal_Operation)(0), // 3: request.Signal.Operation
|
||||
(Signal_DS)(0), // 4: request.Signal.DS
|
||||
(Signal_Force)(0), // 5: request.Signal.Force
|
||||
(Section_Operation)(0), // 6: request.Section.Operation
|
||||
(Psd_Operation)(0), // 7: request.Psd.Operation
|
||||
(Psd_Force)(0), // 8: request.Psd.Force
|
||||
(Psd_Fault)(0), // 9: request.Psd.Fault
|
||||
(TrainControl_TrainControlType)(0), // 10: request.TrainControl.TrainControlType
|
||||
(TrainControl_Direction)(0), // 11: request.TrainControl.Direction
|
||||
(Ckm_Operation)(0), // 12: request.Ckm.Operation
|
||||
(Ckm_Force)(0), // 13: request.Ckm.Force
|
||||
(Ckm_Fault)(0), // 14: request.Ckm.Fault
|
||||
(Xcj_Operation)(0), // 15: request.Xcj.Operation
|
||||
(Xcj_Fault)(0), // 16: request.Xcj.Fault
|
||||
(*Relay)(nil), // 17: request.Relay
|
||||
(*RelayOperationReq)(nil), // 18: request.RelayOperationReq
|
||||
(*Points)(nil), // 19: request.Points
|
||||
(*PointsOperationReq)(nil), // 20: request.PointsOperationReq
|
||||
(*PointsParam)(nil), // 21: request.PointsParam
|
||||
(*Signal)(nil), // 22: request.Signal
|
||||
(*SignalOperationReq)(nil), // 23: request.SignalOperationReq
|
||||
(*SignalParam)(nil), // 24: request.SignalParam
|
||||
(*Section)(nil), // 25: request.Section
|
||||
(*SectionOperationReq)(nil), // 26: request.SectionOperationReq
|
||||
(*SectionParam)(nil), // 27: request.SectionParam
|
||||
(*Psd)(nil), // 28: request.Psd
|
||||
(*PsdOperationReq)(nil), // 29: request.PsdOperationReq
|
||||
(*PsdParam)(nil), // 30: request.PsdParam
|
||||
(*TrainControl)(nil), // 31: request.TrainControl
|
||||
(*CkmOperationReq)(nil), // 32: request.CkmOperationReq
|
||||
(*Ckm)(nil), // 33: request.Ckm
|
||||
(*CkmParam)(nil), // 34: request.CkmParam
|
||||
(*XcjOperationReq)(nil), // 35: request.XcjOperationReq
|
||||
(*Xcj)(nil), // 36: request.Xcj
|
||||
(*XcjParam)(nil), // 37: request.XcjParam
|
||||
(*TrainControl_ControlButton)(nil), // 38: request.TrainControl.ControlButton
|
||||
(*TrainControl_EmergentButton)(nil), // 39: request.TrainControl.EmergentButton
|
||||
(*TrainControl_DriverKeySwitch)(nil), // 40: request.TrainControl.DriverKeySwitch
|
||||
(*TrainControl_DirectionKeySwitch)(nil), // 41: request.TrainControl.DirectionKeySwitch
|
||||
(*TrainControl_PushHandler)(nil), // 42: request.TrainControl.PushHandler
|
||||
(Relay_Operation)(0), // 0: request.Relay.Operation
|
||||
(Points_Operation)(0), // 1: request.Points.Operation
|
||||
(Points_Force)(0), // 2: request.Points.Force
|
||||
(Signal_Operation)(0), // 3: request.Signal.Operation
|
||||
(Signal_DS)(0), // 4: request.Signal.DS
|
||||
(Signal_Force)(0), // 5: request.Signal.Force
|
||||
(Section_Operation)(0), // 6: request.Section.Operation
|
||||
(Psd_Operation)(0), // 7: request.Psd.Operation
|
||||
(Psd_Force)(0), // 8: request.Psd.Force
|
||||
(Psd_Fault)(0), // 9: request.Psd.Fault
|
||||
(TrainControl_TrainControlType)(0), // 10: request.TrainControl.TrainControlType
|
||||
(TrainControl_KeyLocation)(0), // 11: request.TrainControl.KeyLocation
|
||||
(Ckm_Operation)(0), // 12: request.Ckm.Operation
|
||||
(Ckm_Force)(0), // 13: request.Ckm.Force
|
||||
(Ckm_Fault)(0), // 14: request.Ckm.Fault
|
||||
(Xcj_Operation)(0), // 15: request.Xcj.Operation
|
||||
(Xcj_Fault)(0), // 16: request.Xcj.Fault
|
||||
(*Relay)(nil), // 17: request.Relay
|
||||
(*RelayOperationReq)(nil), // 18: request.RelayOperationReq
|
||||
(*Points)(nil), // 19: request.Points
|
||||
(*PointsOperationReq)(nil), // 20: request.PointsOperationReq
|
||||
(*PointsParam)(nil), // 21: request.PointsParam
|
||||
(*Signal)(nil), // 22: request.Signal
|
||||
(*SignalOperationReq)(nil), // 23: request.SignalOperationReq
|
||||
(*SignalParam)(nil), // 24: request.SignalParam
|
||||
(*Section)(nil), // 25: request.Section
|
||||
(*SectionOperationReq)(nil), // 26: request.SectionOperationReq
|
||||
(*SectionParam)(nil), // 27: request.SectionParam
|
||||
(*Psd)(nil), // 28: request.Psd
|
||||
(*PsdOperationReq)(nil), // 29: request.PsdOperationReq
|
||||
(*PsdParam)(nil), // 30: request.PsdParam
|
||||
(*TrainControl)(nil), // 31: request.TrainControl
|
||||
(*CkmOperationReq)(nil), // 32: request.CkmOperationReq
|
||||
(*Ckm)(nil), // 33: request.Ckm
|
||||
(*CkmParam)(nil), // 34: request.CkmParam
|
||||
(*XcjOperationReq)(nil), // 35: request.XcjOperationReq
|
||||
(*Xcj)(nil), // 36: request.Xcj
|
||||
(*XcjParam)(nil), // 37: request.XcjParam
|
||||
(*TrainControl_ControlButton)(nil), // 38: request.TrainControl.ControlButton
|
||||
(*TrainControl_EmergentButton)(nil), // 39: request.TrainControl.EmergentButton
|
||||
(*TrainControl_DriverKeySwitch)(nil), // 40: request.TrainControl.DriverKeySwitch
|
||||
(*TrainControl_SwitchKeyChange)(nil), // 41: request.TrainControl.SwitchKeyChange
|
||||
(*TrainControl_PushHandler)(nil), // 42: request.TrainControl.PushHandler
|
||||
}
|
||||
var file_request_proto_depIdxs = []int32{
|
||||
0, // 0: request.RelayOperationReq.operation:type_name -> request.Relay.Operation
|
||||
|
@ -2664,7 +2668,7 @@ var file_request_proto_depIdxs = []int32{
|
|||
10, // 14: request.TrainControl.controlType:type_name -> request.TrainControl.TrainControlType
|
||||
38, // 15: request.TrainControl.controlButton:type_name -> request.TrainControl.ControlButton
|
||||
40, // 16: request.TrainControl.driverKey:type_name -> request.TrainControl.DriverKeySwitch
|
||||
41, // 17: request.TrainControl.dirKey:type_name -> request.TrainControl.DirectionKeySwitch
|
||||
41, // 17: request.TrainControl.switchKey:type_name -> request.TrainControl.SwitchKeyChange
|
||||
42, // 18: request.TrainControl.handler:type_name -> request.TrainControl.PushHandler
|
||||
12, // 19: request.CkmOperationReq.operation:type_name -> request.Ckm.Operation
|
||||
34, // 20: request.CkmOperationReq.param:type_name -> request.CkmParam
|
||||
|
@ -2975,7 +2979,7 @@ func file_request_proto_init() {
|
|||
}
|
||||
}
|
||||
file_request_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*TrainControl_DirectionKeySwitch); i {
|
||||
switch v := v.(*TrainControl_SwitchKeyChange); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
|
|
|
@ -5072,13 +5072,14 @@ type TrainControlState struct {
|
|||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Buttons map[string]*TrainControlState_ControlButton `protobuf:"bytes,1,rep,name=buttons,proto3" json:"buttons,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||||
DriverKey []*TrainControlState_DriverKeySwitch `protobuf:"bytes,2,rep,name=driverKey,proto3" json:"driverKey,omitempty"` //驾驶端激活
|
||||
DirKey *TrainControlState_DirectionKeySwitch `protobuf:"bytes,3,opt,name=dirKey,proto3" json:"dirKey,omitempty"` //接车运行方向
|
||||
PushHandler *TrainControlState_PushHandler `protobuf:"bytes,4,opt,name=pushHandler,proto3" json:"pushHandler,omitempty"` //牵引制动手柄
|
||||
LightMaps map[string]*TrainControlState_ControlLight `protobuf:"bytes,5,rep,name=lightMaps,proto3" json:"lightMaps,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||||
LineInitTimeStamp12 int64 `protobuf:"varint,6,opt,name=lineInitTimeStamp12,proto3" json:"lineInitTimeStamp12,omitempty"` //12号线列出初始化时间戳
|
||||
Line12ConnErr bool `protobuf:"varint,7,opt,name=line12ConnErr,proto3" json:"line12ConnErr,omitempty"` //12号线连接错误,因为12号线atp故障(此时atp需要重启)时,还是会发送数据通过此次属性标记atp状态情况(多次观察atp故障时,atp输出数字量返回的数据最后一个直接是0)
|
||||
Buttons map[string]*TrainControlState_ControlButton `protobuf:"bytes,1,rep,name=buttons,proto3" json:"buttons,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||||
DriverKey []*TrainControlState_DriverKeySwitch `protobuf:"bytes,2,rep,name=driverKey,proto3" json:"driverKey,omitempty"` //驾驶端激活
|
||||
SwitchKeyMap map[string]*TrainControlState_SwitchKeyChange `protobuf:"bytes,3,rep,name=switchKeyMap,proto3" json:"switchKeyMap,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||||
// DirectionKeySwitch dirKey = 3; //接车运行方向
|
||||
PushHandler *TrainControlState_PushHandler `protobuf:"bytes,4,opt,name=pushHandler,proto3" json:"pushHandler,omitempty"` //牵引制动手柄
|
||||
LightMaps map[string]*TrainControlState_ControlLight `protobuf:"bytes,5,rep,name=lightMaps,proto3" json:"lightMaps,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||||
LineInitTimeStamp12 int64 `protobuf:"varint,6,opt,name=lineInitTimeStamp12,proto3" json:"lineInitTimeStamp12,omitempty"` //12号线列出初始化时间戳
|
||||
Line12ConnErr bool `protobuf:"varint,7,opt,name=line12ConnErr,proto3" json:"line12ConnErr,omitempty"` //12号线连接错误,因为12号线atp故障(此时atp需要重启)时,还是会发送数据通过此次属性标记atp状态情况(多次观察atp故障时,atp输出数字量返回的数据最后一个直接是0)
|
||||
}
|
||||
|
||||
func (x *TrainControlState) Reset() {
|
||||
|
@ -5127,9 +5128,9 @@ func (x *TrainControlState) GetDriverKey() []*TrainControlState_DriverKeySwitch
|
|||
return nil
|
||||
}
|
||||
|
||||
func (x *TrainControlState) GetDirKey() *TrainControlState_DirectionKeySwitch {
|
||||
func (x *TrainControlState) GetSwitchKeyMap() map[string]*TrainControlState_SwitchKeyChange {
|
||||
if x != nil {
|
||||
return x.DirKey
|
||||
return x.SwitchKeyMap
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
@ -5168,11 +5169,11 @@ type TrainControlStateMsg struct {
|
|||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Buttons []*TrainControlState_ControlButton `protobuf:"bytes,1,rep,name=buttons,proto3" json:"buttons,omitempty"`
|
||||
DriverKey []*TrainControlState_DriverKeySwitch `protobuf:"bytes,2,rep,name=driverKey,proto3" json:"driverKey,omitempty"` //驾驶端激活
|
||||
DirKey *TrainControlState_DirectionKeySwitch `protobuf:"bytes,3,opt,name=dirKey,proto3" json:"dirKey,omitempty"` //接车运行方向
|
||||
PushHandler *TrainControlState_PushHandler `protobuf:"bytes,4,opt,name=pushHandler,proto3" json:"pushHandler,omitempty"` //牵引制动手柄
|
||||
Lights []*TrainControlState_ControlLight `protobuf:"bytes,5,rep,name=lights,proto3" json:"lights,omitempty"`
|
||||
Buttons []*TrainControlState_ControlButton `protobuf:"bytes,1,rep,name=buttons,proto3" json:"buttons,omitempty"`
|
||||
DriverKey []*TrainControlState_DriverKeySwitch `protobuf:"bytes,2,rep,name=driverKey,proto3" json:"driverKey,omitempty"` //驾驶端激活
|
||||
SwitchKeys []*TrainControlState_SwitchKeyChange `protobuf:"bytes,3,rep,name=switchKeys,proto3" json:"switchKeys,omitempty"` //接车运行方向
|
||||
PushHandler *TrainControlState_PushHandler `protobuf:"bytes,4,opt,name=pushHandler,proto3" json:"pushHandler,omitempty"` //牵引制动手柄
|
||||
Lights []*TrainControlState_ControlLight `protobuf:"bytes,5,rep,name=lights,proto3" json:"lights,omitempty"`
|
||||
}
|
||||
|
||||
func (x *TrainControlStateMsg) Reset() {
|
||||
|
@ -5221,9 +5222,9 @@ func (x *TrainControlStateMsg) GetDriverKey() []*TrainControlState_DriverKeySwit
|
|||
return nil
|
||||
}
|
||||
|
||||
func (x *TrainControlStateMsg) GetDirKey() *TrainControlState_DirectionKeySwitch {
|
||||
func (x *TrainControlStateMsg) GetSwitchKeys() []*TrainControlState_SwitchKeyChange {
|
||||
if x != nil {
|
||||
return x.DirKey
|
||||
return x.SwitchKeys
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
@ -5488,7 +5489,7 @@ type TrainControlState_ControlButton struct {
|
|||
func (x *TrainControlState_ControlButton) Reset() {
|
||||
*x = TrainControlState_ControlButton{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_device_state_proto_msgTypes[46]
|
||||
mi := &file_device_state_proto_msgTypes[47]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
@ -5501,7 +5502,7 @@ func (x *TrainControlState_ControlButton) String() string {
|
|||
func (*TrainControlState_ControlButton) ProtoMessage() {}
|
||||
|
||||
func (x *TrainControlState_ControlButton) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_device_state_proto_msgTypes[46]
|
||||
mi := &file_device_state_proto_msgTypes[47]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
|
@ -5514,7 +5515,7 @@ func (x *TrainControlState_ControlButton) ProtoReflect() protoreflect.Message {
|
|||
|
||||
// Deprecated: Use TrainControlState_ControlButton.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControlState_ControlButton) Descriptor() ([]byte, []int) {
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 2}
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 3}
|
||||
}
|
||||
|
||||
func (x *TrainControlState_ControlButton) GetId() uint32 {
|
||||
|
@ -5543,7 +5544,7 @@ type TrainControlState_DriverKeySwitch struct {
|
|||
func (x *TrainControlState_DriverKeySwitch) Reset() {
|
||||
*x = TrainControlState_DriverKeySwitch{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_device_state_proto_msgTypes[47]
|
||||
mi := &file_device_state_proto_msgTypes[48]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
@ -5556,7 +5557,7 @@ func (x *TrainControlState_DriverKeySwitch) String() string {
|
|||
func (*TrainControlState_DriverKeySwitch) ProtoMessage() {}
|
||||
|
||||
func (x *TrainControlState_DriverKeySwitch) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_device_state_proto_msgTypes[47]
|
||||
mi := &file_device_state_proto_msgTypes[48]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
|
@ -5569,7 +5570,7 @@ func (x *TrainControlState_DriverKeySwitch) ProtoReflect() protoreflect.Message
|
|||
|
||||
// Deprecated: Use TrainControlState_DriverKeySwitch.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControlState_DriverKeySwitch) Descriptor() ([]byte, []int) {
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 3}
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 4}
|
||||
}
|
||||
|
||||
func (x *TrainControlState_DriverKeySwitch) GetId() uint32 {
|
||||
|
@ -5586,32 +5587,32 @@ func (x *TrainControlState_DriverKeySwitch) GetVal() bool {
|
|||
return false
|
||||
}
|
||||
|
||||
type TrainControlState_DirectionKeySwitch struct {
|
||||
type TrainControlState_SwitchKeyChange struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
||||
Val uint32 `protobuf:"varint,2,opt,name=val,proto3" json:"val,omitempty"` //0=后,1=前,2=中位
|
||||
Val uint32 `protobuf:"varint,2,opt,name=val,proto3" json:"val,omitempty"` //0=后(mm),1=前(AA),2=中位(AM)
|
||||
}
|
||||
|
||||
func (x *TrainControlState_DirectionKeySwitch) Reset() {
|
||||
*x = TrainControlState_DirectionKeySwitch{}
|
||||
func (x *TrainControlState_SwitchKeyChange) Reset() {
|
||||
*x = TrainControlState_SwitchKeyChange{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_device_state_proto_msgTypes[48]
|
||||
mi := &file_device_state_proto_msgTypes[49]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *TrainControlState_DirectionKeySwitch) String() string {
|
||||
func (x *TrainControlState_SwitchKeyChange) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*TrainControlState_DirectionKeySwitch) ProtoMessage() {}
|
||||
func (*TrainControlState_SwitchKeyChange) ProtoMessage() {}
|
||||
|
||||
func (x *TrainControlState_DirectionKeySwitch) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_device_state_proto_msgTypes[48]
|
||||
func (x *TrainControlState_SwitchKeyChange) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_device_state_proto_msgTypes[49]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
|
@ -5622,19 +5623,19 @@ func (x *TrainControlState_DirectionKeySwitch) ProtoReflect() protoreflect.Messa
|
|||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use TrainControlState_DirectionKeySwitch.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControlState_DirectionKeySwitch) Descriptor() ([]byte, []int) {
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 4}
|
||||
// Deprecated: Use TrainControlState_SwitchKeyChange.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControlState_SwitchKeyChange) Descriptor() ([]byte, []int) {
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 5}
|
||||
}
|
||||
|
||||
func (x *TrainControlState_DirectionKeySwitch) GetId() uint32 {
|
||||
func (x *TrainControlState_SwitchKeyChange) GetId() uint32 {
|
||||
if x != nil {
|
||||
return x.Id
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *TrainControlState_DirectionKeySwitch) GetVal() uint32 {
|
||||
func (x *TrainControlState_SwitchKeyChange) GetVal() uint32 {
|
||||
if x != nil {
|
||||
return x.Val
|
||||
}
|
||||
|
@ -5654,7 +5655,7 @@ type TrainControlState_PushHandler struct {
|
|||
func (x *TrainControlState_PushHandler) Reset() {
|
||||
*x = TrainControlState_PushHandler{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_device_state_proto_msgTypes[49]
|
||||
mi := &file_device_state_proto_msgTypes[50]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
@ -5667,7 +5668,7 @@ func (x *TrainControlState_PushHandler) String() string {
|
|||
func (*TrainControlState_PushHandler) ProtoMessage() {}
|
||||
|
||||
func (x *TrainControlState_PushHandler) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_device_state_proto_msgTypes[49]
|
||||
mi := &file_device_state_proto_msgTypes[50]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
|
@ -5680,7 +5681,7 @@ func (x *TrainControlState_PushHandler) ProtoReflect() protoreflect.Message {
|
|||
|
||||
// Deprecated: Use TrainControlState_PushHandler.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControlState_PushHandler) Descriptor() ([]byte, []int) {
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 5}
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 6}
|
||||
}
|
||||
|
||||
func (x *TrainControlState_PushHandler) GetId() uint32 {
|
||||
|
@ -5709,7 +5710,7 @@ type TrainControlState_ControlLight struct {
|
|||
func (x *TrainControlState_ControlLight) Reset() {
|
||||
*x = TrainControlState_ControlLight{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_device_state_proto_msgTypes[50]
|
||||
mi := &file_device_state_proto_msgTypes[51]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
@ -5722,7 +5723,7 @@ func (x *TrainControlState_ControlLight) String() string {
|
|||
func (*TrainControlState_ControlLight) ProtoMessage() {}
|
||||
|
||||
func (x *TrainControlState_ControlLight) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_device_state_proto_msgTypes[50]
|
||||
mi := &file_device_state_proto_msgTypes[51]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
|
@ -5735,7 +5736,7 @@ func (x *TrainControlState_ControlLight) ProtoReflect() protoreflect.Message {
|
|||
|
||||
// Deprecated: Use TrainControlState_ControlLight.ProtoReflect.Descriptor instead.
|
||||
func (*TrainControlState_ControlLight) Descriptor() ([]byte, []int) {
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 6}
|
||||
return file_device_state_proto_rawDescGZIP(), []int{37, 7}
|
||||
}
|
||||
|
||||
func (x *TrainControlState_ControlLight) GetId() uint32 {
|
||||
|
@ -6713,7 +6714,7 @@ var file_device_state_proto_rawDesc = []byte{
|
|||
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74,
|
||||
0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61,
|
||||
0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
|
||||
0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x9a, 0x07, 0x0a, 0x11, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43,
|
||||
0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x8d, 0x08, 0x0a, 0x11, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43,
|
||||
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x0a, 0x07, 0x62,
|
||||
0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73,
|
||||
0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
|
||||
|
@ -6723,88 +6724,96 @@ var file_device_state_proto_rawDesc = []byte{
|
|||
0x28, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e,
|
||||
0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72,
|
||||
0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x52, 0x09, 0x64, 0x72, 0x69, 0x76, 0x65,
|
||||
0x72, 0x4b, 0x65, 0x79, 0x12, 0x43, 0x0a, 0x06, 0x64, 0x69, 0x72, 0x4b, 0x65, 0x79, 0x18, 0x03,
|
||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61,
|
||||
0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x44,
|
||||
0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63,
|
||||
0x68, 0x52, 0x06, 0x64, 0x69, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x46, 0x0a, 0x0b, 0x70, 0x75, 0x73,
|
||||
0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24,
|
||||
0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74,
|
||||
0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e,
|
||||
0x64, 0x6c, 0x65, 0x72, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65,
|
||||
0x72, 0x12, 0x45, 0x0a, 0x09, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x4d, 0x61, 0x70, 0x73, 0x18, 0x05,
|
||||
0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61,
|
||||
0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x4c,
|
||||
0x69, 0x67, 0x68, 0x74, 0x4d, 0x61, 0x70, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x6c,
|
||||
0x69, 0x67, 0x68, 0x74, 0x4d, 0x61, 0x70, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x6c, 0x69, 0x6e, 0x65,
|
||||
0x49, 0x6e, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x31, 0x32, 0x18,
|
||||
0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x54,
|
||||
0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x31, 0x32, 0x12, 0x24, 0x0a, 0x0d, 0x6c, 0x69,
|
||||
0x6e, 0x65, 0x31, 0x32, 0x43, 0x6f, 0x6e, 0x6e, 0x45, 0x72, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28,
|
||||
0x08, 0x52, 0x0d, 0x6c, 0x69, 0x6e, 0x65, 0x31, 0x32, 0x43, 0x6f, 0x6e, 0x6e, 0x45, 0x72, 0x72,
|
||||
0x1a, 0x62, 0x0a, 0x0c, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
|
||||
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
|
||||
0x65, 0x79, 0x12, 0x3c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||
0x0b, 0x32, 0x26, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43,
|
||||
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74,
|
||||
0x72, 0x6f, 0x6c, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
|
||||
0x3a, 0x02, 0x38, 0x01, 0x1a, 0x63, 0x0a, 0x0e, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x4d, 0x61, 0x70,
|
||||
0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
|
||||
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e,
|
||||
0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74,
|
||||
0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x05,
|
||||
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x0d, 0x43, 0x6f, 0x6e,
|
||||
0x74, 0x72, 0x6f, 0x6c, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
|
||||
0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61,
|
||||
0x73, 0x73, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x61, 0x73, 0x73,
|
||||
0x65, 0x64, 0x1a, 0x33, 0x0a, 0x0f, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x53,
|
||||
0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01,
|
||||
0x28, 0x08, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x12, 0x44, 0x69, 0x72, 0x65, 0x63,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x0e, 0x0a,
|
||||
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a,
|
||||
0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a,
|
||||
0x2f, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x12, 0x0e,
|
||||
0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10,
|
||||
0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x76, 0x61, 0x6c,
|
||||
0x1a, 0x30, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74,
|
||||
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64,
|
||||
0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x76,
|
||||
0x61, 0x6c, 0x22, 0xec, 0x02, 0x0a, 0x14, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74,
|
||||
0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x40, 0x0a, 0x07, 0x62,
|
||||
0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73,
|
||||
0x72, 0x4b, 0x65, 0x79, 0x12, 0x4e, 0x0a, 0x0c, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65,
|
||||
0x79, 0x4d, 0x61, 0x70, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x73, 0x74, 0x61,
|
||||
0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53,
|
||||
0x74, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x4d, 0x61,
|
||||
0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65,
|
||||
0x79, 0x4d, 0x61, 0x70, 0x12, 0x46, 0x0a, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64,
|
||||
0x6c, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74,
|
||||
0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74,
|
||||
0x61, 0x74, 0x65, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x52,
|
||||
0x0b, 0x70, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x09,
|
||||
0x6c, 0x69, 0x67, 0x68, 0x74, 0x4d, 0x61, 0x70, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
||||
0x27, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e,
|
||||
0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x4d,
|
||||
0x61, 0x70, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x4d,
|
||||
0x61, 0x70, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x54,
|
||||
0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x31, 0x32, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03,
|
||||
0x52, 0x13, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74,
|
||||
0x61, 0x6d, 0x70, 0x31, 0x32, 0x12, 0x24, 0x0a, 0x0d, 0x6c, 0x69, 0x6e, 0x65, 0x31, 0x32, 0x43,
|
||||
0x6f, 0x6e, 0x6e, 0x45, 0x72, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6c, 0x69,
|
||||
0x6e, 0x65, 0x31, 0x32, 0x43, 0x6f, 0x6e, 0x6e, 0x45, 0x72, 0x72, 0x1a, 0x62, 0x0a, 0x0c, 0x42,
|
||||
0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
|
||||
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3c, 0x0a,
|
||||
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73,
|
||||
0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
|
||||
0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x42, 0x75,
|
||||
0x74, 0x74, 0x6f, 0x6e, 0x52, 0x07, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x12, 0x46, 0x0a,
|
||||
0x09, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
|
||||
0x32, 0x28, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f,
|
||||
0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x72, 0x69, 0x76, 0x65,
|
||||
0x72, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x52, 0x09, 0x64, 0x72, 0x69, 0x76,
|
||||
0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x43, 0x0a, 0x06, 0x64, 0x69, 0x72, 0x4b, 0x65, 0x79, 0x18,
|
||||
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72,
|
||||
0x74, 0x74, 0x6f, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
|
||||
0x69, 0x0a, 0x11, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x4d, 0x61, 0x70, 0x45,
|
||||
0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3e, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
|
||||
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72,
|
||||
0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e,
|
||||
0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74,
|
||||
0x63, 0x68, 0x52, 0x06, 0x64, 0x69, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x46, 0x0a, 0x0b, 0x70, 0x75,
|
||||
0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
||||
0x24, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e,
|
||||
0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61,
|
||||
0x6e, 0x64, 0x6c, 0x65, 0x72, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c,
|
||||
0x65, 0x72, 0x12, 0x3d, 0x0a, 0x06, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03,
|
||||
0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e,
|
||||
0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e,
|
||||
0x74, 0x72, 0x6f, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x06, 0x6c, 0x69, 0x67, 0x68, 0x74,
|
||||
0x73, 0x2a, 0x37, 0x0a, 0x0b, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65,
|
||||
0x12, 0x07, 0x0a, 0x03, 0x41, 0x6e, 0x79, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x78, 0x6c,
|
||||
0x65, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69, 0x63, 0x10, 0x02, 0x12, 0x0a,
|
||||
0x0a, 0x06, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x10, 0x03, 0x42, 0x67, 0x0a, 0x25, 0x63, 0x6c,
|
||||
0x75, 0x62, 0x2e, 0x6a, 0x6f, 0x79, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x62, 0x6a, 0x72, 0x74, 0x73,
|
||||
0x73, 0x2e, 0x61, 0x74, 0x73, 0x2e, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x73, 0x42, 0x10, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65,
|
||||
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x5a, 0x2c, 0x6a, 0x6f, 0x79, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63,
|
||||
0x6c, 0x75, 0x62, 0x2f, 0x62, 0x6a, 0x2d, 0x72, 0x74, 0x73, 0x74, 0x73, 0x2d, 0x73, 0x65, 0x72,
|
||||
0x76, 0x65, 0x72, 0x2f, 0x64, 0x74, 0x6f, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x72,
|
||||
0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52,
|
||||
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x63, 0x0a, 0x0e, 0x4c, 0x69,
|
||||
0x67, 0x68, 0x74, 0x4d, 0x61, 0x70, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
|
||||
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3b,
|
||||
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e,
|
||||
0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72,
|
||||
0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x4c,
|
||||
0x69, 0x67, 0x68, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
|
||||
0x37, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e,
|
||||
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64,
|
||||
0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x73, 0x73, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x06, 0x70, 0x61, 0x73, 0x73, 0x65, 0x64, 0x1a, 0x33, 0x0a, 0x0f, 0x44, 0x72, 0x69, 0x76,
|
||||
0x65, 0x72, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x0e, 0x0a, 0x02, 0x69,
|
||||
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x76,
|
||||
0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x33, 0x0a,
|
||||
0x0f, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
|
||||
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64,
|
||||
0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x76,
|
||||
0x61, 0x6c, 0x1a, 0x2f, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65,
|
||||
0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69,
|
||||
0x64, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03,
|
||||
0x76, 0x61, 0x6c, 0x1a, 0x30, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x4c, 0x69,
|
||||
0x67, 0x68, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
|
||||
0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xf1, 0x02, 0x0a, 0x14, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43,
|
||||
0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x40,
|
||||
0x0a, 0x07, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
||||
0x26, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e,
|
||||
0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
|
||||
0x6c, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x07, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73,
|
||||
0x12, 0x46, 0x0a, 0x09, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20,
|
||||
0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69,
|
||||
0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x72,
|
||||
0x69, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x52, 0x09, 0x64,
|
||||
0x72, 0x69, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x48, 0x0a, 0x0a, 0x73, 0x77, 0x69, 0x74,
|
||||
0x63, 0x68, 0x4b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x73,
|
||||
0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
|
||||
0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65, 0x79,
|
||||
0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0a, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x4b, 0x65,
|
||||
0x79, 0x73, 0x12, 0x46, 0x0a, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65,
|
||||
0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e,
|
||||
0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53, 0x74, 0x61, 0x74,
|
||||
0x65, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x52, 0x0b, 0x70,
|
||||
0x75, 0x73, 0x68, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x12, 0x3d, 0x0a, 0x06, 0x6c, 0x69,
|
||||
0x67, 0x68, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x74, 0x61,
|
||||
0x74, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x53,
|
||||
0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x4c, 0x69, 0x67, 0x68,
|
||||
0x74, 0x52, 0x06, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x73, 0x2a, 0x37, 0x0a, 0x0b, 0x53, 0x65, 0x63,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x6e, 0x79, 0x10,
|
||||
0x00, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x78, 0x6c, 0x65, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4c,
|
||||
0x6f, 0x67, 0x69, 0x63, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63,
|
||||
0x10, 0x03, 0x42, 0x67, 0x0a, 0x25, 0x63, 0x6c, 0x75, 0x62, 0x2e, 0x6a, 0x6f, 0x79, 0x6c, 0x69,
|
||||
0x6e, 0x6b, 0x2e, 0x62, 0x6a, 0x72, 0x74, 0x73, 0x73, 0x2e, 0x61, 0x74, 0x73, 0x2e, 0x76, 0x65,
|
||||
0x72, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x42, 0x10, 0x44, 0x65, 0x76,
|
||||
0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x5a, 0x2c, 0x6a,
|
||||
0x6f, 0x79, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x75, 0x62, 0x2f, 0x62, 0x6a, 0x2d, 0x72,
|
||||
0x74, 0x73, 0x74, 0x73, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x64, 0x74, 0x6f, 0x2f,
|
||||
0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
@ -6820,87 +6829,88 @@ func file_device_state_proto_rawDescGZIP() []byte {
|
|||
}
|
||||
|
||||
var file_device_state_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
|
||||
var file_device_state_proto_msgTypes = make([]protoimpl.MessageInfo, 51)
|
||||
var file_device_state_proto_msgTypes = make([]protoimpl.MessageInfo, 52)
|
||||
var file_device_state_proto_goTypes = []interface{}{
|
||||
(SectionType)(0), // 0: state.SectionType
|
||||
(Signal_Aspect)(0), // 1: state.Signal.Aspect
|
||||
(TrainConnState_TrainConnType)(0), // 2: state.TrainConnState.TrainConnType
|
||||
(SimulationStatus_SimulationState)(0), // 3: state.SimulationStatus.SimulationState
|
||||
(SimulationThirdPartyApiService_Type)(0), // 4: state.SimulationThirdPartyApiService.Type
|
||||
(SimulationThirdPartyApiService_State)(0), // 5: state.SimulationThirdPartyApiService.State
|
||||
(*LinkState)(nil), // 6: state.LinkState
|
||||
(*SectionState)(nil), // 7: state.SectionState
|
||||
(*AxleCountingSectionState)(nil), // 8: state.AxleCountingSectionState
|
||||
(*SwitchState)(nil), // 9: state.SwitchState
|
||||
(*SignalState)(nil), // 10: state.SignalState
|
||||
(*Signal)(nil), // 11: state.Signal
|
||||
(*PlatformState)(nil), // 12: state.PlatformState
|
||||
(*StationState)(nil), // 13: state.StationState
|
||||
(*TrainConnState)(nil), // 14: state.TrainConnState
|
||||
(*TrainState)(nil), // 15: state.TrainState
|
||||
(*TrainBtmCache)(nil), // 16: state.TrainBtmCache
|
||||
(*VobcBtmState)(nil), // 17: state.VobcBtmState
|
||||
(*SensorSpeedPulseCount)(nil), // 18: state.SensorSpeedPulseCount
|
||||
(*TrainDynamicState)(nil), // 19: state.TrainDynamicState
|
||||
(*TrainVobcState)(nil), // 20: state.TrainVobcState
|
||||
(*TrainMapState)(nil), // 21: state.TrainMapState
|
||||
(*BTMState)(nil), // 22: state.BTMState
|
||||
(*TrainDynamicConfigMqtt)(nil), // 23: state.TrainDynamicConfigMqtt
|
||||
(*TrainEndsStateMqtt)(nil), // 24: state.TrainEndsStateMqtt
|
||||
(*ReplyState)(nil), // 25: state.ReplyState
|
||||
(*ButtonState)(nil), // 26: state.ButtonState
|
||||
(*AlarmState)(nil), // 27: state.AlarmState
|
||||
(*LightState)(nil), // 28: state.LightState
|
||||
(*PsdState)(nil), // 29: state.PsdState
|
||||
(*AsdState)(nil), // 30: state.AsdState
|
||||
(*KeyState)(nil), // 31: state.KeyState
|
||||
(*MkxJState)(nil), // 32: state.MkxJState
|
||||
(*BaliseState)(nil), // 33: state.BaliseState
|
||||
(*StationQc)(nil), // 34: state.StationQc
|
||||
(*CkmState)(nil), // 35: state.CkmState
|
||||
(*XcjState)(nil), // 36: state.XcjState
|
||||
(*VariationStatus)(nil), // 37: state.VariationStatus
|
||||
(*AllDevicesStatus)(nil), // 38: state.AllDevicesStatus
|
||||
(*PushedDevicesStatus)(nil), // 39: state.PushedDevicesStatus
|
||||
(*SimulationStatus)(nil), // 40: state.SimulationStatus
|
||||
(*SimulationThirdPartyApiService)(nil), // 41: state.SimulationThirdPartyApiService
|
||||
(*SimulationThirdPartyApiServiceState)(nil), // 42: state.SimulationThirdPartyApiServiceState
|
||||
(*TrainControlState)(nil), // 43: state.TrainControlState
|
||||
(*TrainControlStateMsg)(nil), // 44: state.TrainControlStateMsg
|
||||
nil, // 45: state.SignalState.RelayStateMapEntry
|
||||
nil, // 46: state.VobcBtmState.HistoryEntry
|
||||
(*VobcBtmState_TelegramState)(nil), // 47: state.VobcBtmState.TelegramState
|
||||
(*VobcBtmState_VobcBtmHistoryState)(nil), // 48: state.VobcBtmState.VobcBtmHistoryState
|
||||
(*StationQc_State)(nil), // 49: state.StationQc.State
|
||||
nil, // 50: state.TrainControlState.ButtonsEntry
|
||||
nil, // 51: state.TrainControlState.LightMapsEntry
|
||||
(*TrainControlState_ControlButton)(nil), // 52: state.TrainControlState.ControlButton
|
||||
(*TrainControlState_DriverKeySwitch)(nil), // 53: state.TrainControlState.DriverKeySwitch
|
||||
(*TrainControlState_DirectionKeySwitch)(nil), // 54: state.TrainControlState.DirectionKeySwitch
|
||||
(*TrainControlState_PushHandler)(nil), // 55: state.TrainControlState.PushHandler
|
||||
(*TrainControlState_ControlLight)(nil), // 56: state.TrainControlState.ControlLight
|
||||
(*request_proto.PointsParam)(nil), // 57: request.PointsParam
|
||||
(*request_proto.SignalParam)(nil), // 58: request.SignalParam
|
||||
(*common_proto.TrainDynamicConfig)(nil), // 59: common.TrainDynamicConfig
|
||||
(*common_proto.TrainEndsState)(nil), // 60: common.TrainEndsState
|
||||
(*request_proto.PsdParam)(nil), // 61: request.PsdParam
|
||||
(*data_proto.KilometerSystem)(nil), // 62: graphicData.KilometerSystem
|
||||
(*request_proto.CkmParam)(nil), // 63: request.CkmParam
|
||||
(*request_proto.XcjParam)(nil), // 64: request.XcjParam
|
||||
(SectionType)(0), // 0: state.SectionType
|
||||
(Signal_Aspect)(0), // 1: state.Signal.Aspect
|
||||
(TrainConnState_TrainConnType)(0), // 2: state.TrainConnState.TrainConnType
|
||||
(SimulationStatus_SimulationState)(0), // 3: state.SimulationStatus.SimulationState
|
||||
(SimulationThirdPartyApiService_Type)(0), // 4: state.SimulationThirdPartyApiService.Type
|
||||
(SimulationThirdPartyApiService_State)(0), // 5: state.SimulationThirdPartyApiService.State
|
||||
(*LinkState)(nil), // 6: state.LinkState
|
||||
(*SectionState)(nil), // 7: state.SectionState
|
||||
(*AxleCountingSectionState)(nil), // 8: state.AxleCountingSectionState
|
||||
(*SwitchState)(nil), // 9: state.SwitchState
|
||||
(*SignalState)(nil), // 10: state.SignalState
|
||||
(*Signal)(nil), // 11: state.Signal
|
||||
(*PlatformState)(nil), // 12: state.PlatformState
|
||||
(*StationState)(nil), // 13: state.StationState
|
||||
(*TrainConnState)(nil), // 14: state.TrainConnState
|
||||
(*TrainState)(nil), // 15: state.TrainState
|
||||
(*TrainBtmCache)(nil), // 16: state.TrainBtmCache
|
||||
(*VobcBtmState)(nil), // 17: state.VobcBtmState
|
||||
(*SensorSpeedPulseCount)(nil), // 18: state.SensorSpeedPulseCount
|
||||
(*TrainDynamicState)(nil), // 19: state.TrainDynamicState
|
||||
(*TrainVobcState)(nil), // 20: state.TrainVobcState
|
||||
(*TrainMapState)(nil), // 21: state.TrainMapState
|
||||
(*BTMState)(nil), // 22: state.BTMState
|
||||
(*TrainDynamicConfigMqtt)(nil), // 23: state.TrainDynamicConfigMqtt
|
||||
(*TrainEndsStateMqtt)(nil), // 24: state.TrainEndsStateMqtt
|
||||
(*ReplyState)(nil), // 25: state.ReplyState
|
||||
(*ButtonState)(nil), // 26: state.ButtonState
|
||||
(*AlarmState)(nil), // 27: state.AlarmState
|
||||
(*LightState)(nil), // 28: state.LightState
|
||||
(*PsdState)(nil), // 29: state.PsdState
|
||||
(*AsdState)(nil), // 30: state.AsdState
|
||||
(*KeyState)(nil), // 31: state.KeyState
|
||||
(*MkxJState)(nil), // 32: state.MkxJState
|
||||
(*BaliseState)(nil), // 33: state.BaliseState
|
||||
(*StationQc)(nil), // 34: state.StationQc
|
||||
(*CkmState)(nil), // 35: state.CkmState
|
||||
(*XcjState)(nil), // 36: state.XcjState
|
||||
(*VariationStatus)(nil), // 37: state.VariationStatus
|
||||
(*AllDevicesStatus)(nil), // 38: state.AllDevicesStatus
|
||||
(*PushedDevicesStatus)(nil), // 39: state.PushedDevicesStatus
|
||||
(*SimulationStatus)(nil), // 40: state.SimulationStatus
|
||||
(*SimulationThirdPartyApiService)(nil), // 41: state.SimulationThirdPartyApiService
|
||||
(*SimulationThirdPartyApiServiceState)(nil), // 42: state.SimulationThirdPartyApiServiceState
|
||||
(*TrainControlState)(nil), // 43: state.TrainControlState
|
||||
(*TrainControlStateMsg)(nil), // 44: state.TrainControlStateMsg
|
||||
nil, // 45: state.SignalState.RelayStateMapEntry
|
||||
nil, // 46: state.VobcBtmState.HistoryEntry
|
||||
(*VobcBtmState_TelegramState)(nil), // 47: state.VobcBtmState.TelegramState
|
||||
(*VobcBtmState_VobcBtmHistoryState)(nil), // 48: state.VobcBtmState.VobcBtmHistoryState
|
||||
(*StationQc_State)(nil), // 49: state.StationQc.State
|
||||
nil, // 50: state.TrainControlState.ButtonsEntry
|
||||
nil, // 51: state.TrainControlState.SwitchKeyMapEntry
|
||||
nil, // 52: state.TrainControlState.LightMapsEntry
|
||||
(*TrainControlState_ControlButton)(nil), // 53: state.TrainControlState.ControlButton
|
||||
(*TrainControlState_DriverKeySwitch)(nil), // 54: state.TrainControlState.DriverKeySwitch
|
||||
(*TrainControlState_SwitchKeyChange)(nil), // 55: state.TrainControlState.SwitchKeyChange
|
||||
(*TrainControlState_PushHandler)(nil), // 56: state.TrainControlState.PushHandler
|
||||
(*TrainControlState_ControlLight)(nil), // 57: state.TrainControlState.ControlLight
|
||||
(*request_proto.PointsParam)(nil), // 58: request.PointsParam
|
||||
(*request_proto.SignalParam)(nil), // 59: request.SignalParam
|
||||
(*common_proto.TrainDynamicConfig)(nil), // 60: common.TrainDynamicConfig
|
||||
(*common_proto.TrainEndsState)(nil), // 61: common.TrainEndsState
|
||||
(*request_proto.PsdParam)(nil), // 62: request.PsdParam
|
||||
(*data_proto.KilometerSystem)(nil), // 63: graphicData.KilometerSystem
|
||||
(*request_proto.CkmParam)(nil), // 64: request.CkmParam
|
||||
(*request_proto.XcjParam)(nil), // 65: request.XcjParam
|
||||
}
|
||||
var file_device_state_proto_depIdxs = []int32{
|
||||
57, // 0: state.SwitchState.param:type_name -> request.PointsParam
|
||||
58, // 0: state.SwitchState.param:type_name -> request.PointsParam
|
||||
1, // 1: state.SignalState.aspect:type_name -> state.Signal.Aspect
|
||||
58, // 2: state.SignalState.param:type_name -> request.SignalParam
|
||||
59, // 2: state.SignalState.param:type_name -> request.SignalParam
|
||||
45, // 3: state.SignalState.relayStateMap:type_name -> state.SignalState.RelayStateMapEntry
|
||||
25, // 4: state.PlatformState.spksState:type_name -> state.ReplyState
|
||||
32, // 5: state.PlatformState.mkxJState:type_name -> state.MkxJState
|
||||
2, // 6: state.TrainConnState.connType:type_name -> state.TrainConnState.TrainConnType
|
||||
19, // 7: state.TrainState.dynamicState:type_name -> state.TrainDynamicState
|
||||
20, // 8: state.TrainState.vobcState:type_name -> state.TrainVobcState
|
||||
59, // 9: state.TrainState.trainDynamicConfig:type_name -> common.TrainDynamicConfig
|
||||
60, // 10: state.TrainState.trainEndsA:type_name -> common.TrainEndsState
|
||||
60, // 11: state.TrainState.trainEndsB:type_name -> common.TrainEndsState
|
||||
60, // 9: state.TrainState.trainDynamicConfig:type_name -> common.TrainDynamicConfig
|
||||
61, // 10: state.TrainState.trainEndsA:type_name -> common.TrainEndsState
|
||||
61, // 11: state.TrainState.trainEndsB:type_name -> common.TrainEndsState
|
||||
22, // 12: state.TrainState.btmState:type_name -> state.BTMState
|
||||
43, // 13: state.TrainState.tcc:type_name -> state.TrainControlState
|
||||
14, // 14: state.TrainState.connState:type_name -> state.TrainConnState
|
||||
|
@ -6916,13 +6926,13 @@ var file_device_state_proto_depIdxs = []int32{
|
|||
22, // 24: state.TrainMapState.btmState:type_name -> state.BTMState
|
||||
14, // 25: state.TrainMapState.connState:type_name -> state.TrainConnState
|
||||
30, // 26: state.PsdState.asdStates:type_name -> state.AsdState
|
||||
61, // 27: state.PsdState.param:type_name -> request.PsdParam
|
||||
62, // 27: state.PsdState.param:type_name -> request.PsdParam
|
||||
25, // 28: state.MkxJState.replyState:type_name -> state.ReplyState
|
||||
62, // 29: state.BaliseState.km:type_name -> graphicData.KilometerSystem
|
||||
63, // 29: state.BaliseState.km:type_name -> graphicData.KilometerSystem
|
||||
49, // 30: state.StationQc.qdStates:type_name -> state.StationQc.State
|
||||
49, // 31: state.StationQc.cjStates:type_name -> state.StationQc.State
|
||||
63, // 32: state.CkmState.param:type_name -> request.CkmParam
|
||||
64, // 33: state.XcjState.param:type_name -> request.XcjParam
|
||||
64, // 32: state.CkmState.param:type_name -> request.CkmParam
|
||||
65, // 33: state.XcjState.param:type_name -> request.XcjParam
|
||||
21, // 34: state.VariationStatus.updatedTrain:type_name -> state.TrainMapState
|
||||
9, // 35: state.VariationStatus.updatedSwitch:type_name -> state.SwitchState
|
||||
7, // 36: state.VariationStatus.updatedSection:type_name -> state.SectionState
|
||||
|
@ -6951,23 +6961,24 @@ var file_device_state_proto_depIdxs = []int32{
|
|||
4, // 59: state.SimulationThirdPartyApiServiceState.type:type_name -> state.SimulationThirdPartyApiService.Type
|
||||
5, // 60: state.SimulationThirdPartyApiServiceState.state:type_name -> state.SimulationThirdPartyApiService.State
|
||||
50, // 61: state.TrainControlState.buttons:type_name -> state.TrainControlState.ButtonsEntry
|
||||
53, // 62: state.TrainControlState.driverKey:type_name -> state.TrainControlState.DriverKeySwitch
|
||||
54, // 63: state.TrainControlState.dirKey:type_name -> state.TrainControlState.DirectionKeySwitch
|
||||
55, // 64: state.TrainControlState.pushHandler:type_name -> state.TrainControlState.PushHandler
|
||||
51, // 65: state.TrainControlState.lightMaps:type_name -> state.TrainControlState.LightMapsEntry
|
||||
52, // 66: state.TrainControlStateMsg.buttons:type_name -> state.TrainControlState.ControlButton
|
||||
53, // 67: state.TrainControlStateMsg.driverKey:type_name -> state.TrainControlState.DriverKeySwitch
|
||||
54, // 68: state.TrainControlStateMsg.dirKey:type_name -> state.TrainControlState.DirectionKeySwitch
|
||||
55, // 69: state.TrainControlStateMsg.pushHandler:type_name -> state.TrainControlState.PushHandler
|
||||
56, // 70: state.TrainControlStateMsg.lights:type_name -> state.TrainControlState.ControlLight
|
||||
54, // 62: state.TrainControlState.driverKey:type_name -> state.TrainControlState.DriverKeySwitch
|
||||
51, // 63: state.TrainControlState.switchKeyMap:type_name -> state.TrainControlState.SwitchKeyMapEntry
|
||||
56, // 64: state.TrainControlState.pushHandler:type_name -> state.TrainControlState.PushHandler
|
||||
52, // 65: state.TrainControlState.lightMaps:type_name -> state.TrainControlState.LightMapsEntry
|
||||
53, // 66: state.TrainControlStateMsg.buttons:type_name -> state.TrainControlState.ControlButton
|
||||
54, // 67: state.TrainControlStateMsg.driverKey:type_name -> state.TrainControlState.DriverKeySwitch
|
||||
55, // 68: state.TrainControlStateMsg.switchKeys:type_name -> state.TrainControlState.SwitchKeyChange
|
||||
56, // 69: state.TrainControlStateMsg.pushHandler:type_name -> state.TrainControlState.PushHandler
|
||||
57, // 70: state.TrainControlStateMsg.lights:type_name -> state.TrainControlState.ControlLight
|
||||
48, // 71: state.VobcBtmState.HistoryEntry.value:type_name -> state.VobcBtmState.VobcBtmHistoryState
|
||||
52, // 72: state.TrainControlState.ButtonsEntry.value:type_name -> state.TrainControlState.ControlButton
|
||||
56, // 73: state.TrainControlState.LightMapsEntry.value:type_name -> state.TrainControlState.ControlLight
|
||||
74, // [74:74] is the sub-list for method output_type
|
||||
74, // [74:74] is the sub-list for method input_type
|
||||
74, // [74:74] is the sub-list for extension type_name
|
||||
74, // [74:74] is the sub-list for extension extendee
|
||||
0, // [0:74] is the sub-list for field type_name
|
||||
53, // 72: state.TrainControlState.ButtonsEntry.value:type_name -> state.TrainControlState.ControlButton
|
||||
55, // 73: state.TrainControlState.SwitchKeyMapEntry.value:type_name -> state.TrainControlState.SwitchKeyChange
|
||||
57, // 74: state.TrainControlState.LightMapsEntry.value:type_name -> state.TrainControlState.ControlLight
|
||||
75, // [75:75] is the sub-list for method output_type
|
||||
75, // [75:75] is the sub-list for method input_type
|
||||
75, // [75:75] is the sub-list for extension type_name
|
||||
75, // [75:75] is the sub-list for extension extendee
|
||||
0, // [0:75] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_device_state_proto_init() }
|
||||
|
@ -7480,7 +7491,7 @@ func file_device_state_proto_init() {
|
|||
return nil
|
||||
}
|
||||
}
|
||||
file_device_state_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
|
||||
file_device_state_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*TrainControlState_ControlButton); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
|
@ -7492,7 +7503,7 @@ func file_device_state_proto_init() {
|
|||
return nil
|
||||
}
|
||||
}
|
||||
file_device_state_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
|
||||
file_device_state_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*TrainControlState_DriverKeySwitch); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
|
@ -7504,20 +7515,8 @@ func file_device_state_proto_init() {
|
|||
return nil
|
||||
}
|
||||
}
|
||||
file_device_state_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*TrainControlState_DirectionKeySwitch); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_device_state_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*TrainControlState_PushHandler); i {
|
||||
switch v := v.(*TrainControlState_SwitchKeyChange); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
|
@ -7529,6 +7528,18 @@ func file_device_state_proto_init() {
|
|||
}
|
||||
}
|
||||
file_device_state_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*TrainControlState_PushHandler); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_device_state_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*TrainControlState_ControlLight); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
|
@ -7547,7 +7558,7 @@ func file_device_state_proto_init() {
|
|||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_device_state_proto_rawDesc,
|
||||
NumEnums: 6,
|
||||
NumMessages: 51,
|
||||
NumMessages: 52,
|
||||
NumExtensions: 0,
|
||||
NumServices: 0,
|
||||
},
|
||||
|
|
|
@ -70,7 +70,11 @@ func NewTrainControlMs(vs *memory.VerifySimulation, mapId int32) ms_api.MsgTask
|
|||
for _, button := range ttcc.Buttons {
|
||||
buttons = append(buttons, button)
|
||||
}
|
||||
tcc := &state_proto.TrainControlStateMsg{Buttons: buttons, DriverKey: ttcc.DriverKey, DirKey: ttcc.DirKey, PushHandler: ttcc.PushHandler, Lights: lights}
|
||||
sks := make([]*state_proto.TrainControlState_SwitchKeyChange, 0)
|
||||
for _, sk := range ttcc.SwitchKeyMap {
|
||||
sks = append(sks, sk)
|
||||
}
|
||||
tcc := &state_proto.TrainControlStateMsg{Buttons: buttons, DriverKey: ttcc.DriverKey, SwitchKeys: sks, PushHandler: ttcc.PushHandler, Lights: lights}
|
||||
err := mqtt.GetMsgClient().PubTrainControlState(vs.SimulationId, trainId, tcc)
|
||||
if err != nil {
|
||||
slog.Error("发送列车控制mqtt失败", err)
|
||||
|
|
|
@ -32,7 +32,7 @@ type BtmAntennaRunningInfo struct {
|
|||
|
||||
const (
|
||||
//BtmAntennaOffsetHead = int64(1000) //车载BTM天线距车头端点的距离,mm
|
||||
BtmAntennaOffsetHead = int64(-1000) //车载BTM天线距车头端点的距离,mm
|
||||
BtmAntennaOffsetHead = int64(0) //车载BTM天线距车头端点的距离,mm
|
||||
)
|
||||
|
||||
// TrainHeadPositionInfo 列车车头运行位置信息
|
||||
|
@ -86,8 +86,7 @@ func (t *BaliseDetector) newDetect(wd *component.WorldData, repo *repository.Rep
|
|||
curAntennaRi2 := t.createBtmAntennaRunningInfo(wd, repo, th2) //上次车头
|
||||
var startBalises []*repository.Transponder
|
||||
|
||||
//startBalises = t.searchBalisesFromBetweenLinkPosition(repo, th.Up, curAntennaRi2.LinkId, th2.LinkOffset, th.LinkOffset)
|
||||
|
||||
//startBalises = t.searchBalisesFromBetweenLinkPosition(repo, th.Up, curAntennaRi.LinkId, th2.LinkOffset, th.LinkOffset)
|
||||
startBalises = t.searchBalisesFromBetweenLinkPosition(repo, th.Up, curAntennaRi.LinkId, curAntennaRi2.LinkOffset, curAntennaRi.LinkOffset)
|
||||
|
||||
balises := make([]*repository.Transponder, 0)
|
||||
|
@ -106,8 +105,12 @@ func (t *BaliseDetector) newDetect(wd *component.WorldData, repo *repository.Rep
|
|||
}
|
||||
if len(balises) > 0 {
|
||||
balise := balises[0]
|
||||
//slog.Info(fmt.Sprintf("-----------------id:%v ,offset:%v, up: %v,linkeId:%v ,headoffset:%v,tailOffset:%v", balise.Id(), balise.LinkPosition().Offset(), th.Up, curAntennaRi.LinkId, curAntennaRi.LinkOffset, curAntennaRi2.LinkOffset))
|
||||
telegram, utel := t.rcvTelegram(wd, balise.Id())
|
||||
t.addNewExpectedBalise(balise, btmCache, telegram, utel)
|
||||
if t.addNewExpectedBalise(balise, btmCache, telegram, utel) {
|
||||
|
||||
//slog.Info(fmt.Sprintf("+++++++++++++id:%v ,offset:%v, up: %v,linkeId:%v ,headoffset:%v,tailOffset:%v", balise.Id(), balise.LinkPosition().Offset(), th.Up, curAntennaRi.LinkId, curAntennaRi.LinkOffset, curAntennaRi2.LinkOffset))
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -501,6 +504,34 @@ func (t *BaliseDetector) searchBalisesFromLinkPosition(repo *repository.Reposito
|
|||
}
|
||||
|
||||
// 列车车头端点运行信息转换为车载BTM天线中心点运行信息
|
||||
func (t *BaliseDetector) createBtmAntennaRunningInfo2(wd *component.WorldData, isSameLink bool, repo *repository.Repository, head *TrainHeadPositionInfo) *BtmAntennaRunningInfo {
|
||||
headLink := repo.FindLink(head.Link)
|
||||
if head.Up {
|
||||
if isSameLink { //车头与BTM天线在同一个轨道上
|
||||
return &BtmAntennaRunningInfo{Up: head.Up, LinkId: head.Link, LinkOffset: head.LinkOffset + int64(math.Abs(float64(BtmAntennaOffsetHead))), Speed: head.Speed, Acceleration: head.Acceleration}
|
||||
} else { //车头与BTM天线在同一个轨道上
|
||||
nextLinkPort := t.getNextLink(wd, repo, head.Link, !head.Up)
|
||||
nextLink := nextLinkPort.Link()
|
||||
if nextLinkPort.IsPortA() {
|
||||
return &BtmAntennaRunningInfo{Up: false, LinkId: nextLink.Id(), LinkOffset: BtmAntennaOffsetHead - head.LinkOffset, Speed: head.Speed, Acceleration: head.Acceleration}
|
||||
} else {
|
||||
return &BtmAntennaRunningInfo{Up: true, LinkId: nextLink.Id(), LinkOffset: nextLink.Length() - (BtmAntennaOffsetHead - head.LinkOffset), Speed: head.Speed, Acceleration: head.Acceleration}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if isSameLink { //车头与BTM天线在同一个轨道上
|
||||
return &BtmAntennaRunningInfo{Up: head.Up, LinkId: head.Link, LinkOffset: head.LinkOffset + BtmAntennaOffsetHead, Speed: head.Speed, Acceleration: head.Acceleration}
|
||||
} else {
|
||||
nextLinkPort := t.getNextLink(wd, repo, head.Link, !head.Up)
|
||||
nextLink := nextLinkPort.Link()
|
||||
if nextLinkPort.IsPortA() {
|
||||
return &BtmAntennaRunningInfo{Up: false, LinkId: nextLink.Id(), LinkOffset: BtmAntennaOffsetHead - headLink.Length() + head.LinkOffset, Speed: head.Speed, Acceleration: head.Acceleration}
|
||||
} else {
|
||||
return &BtmAntennaRunningInfo{Up: true, LinkId: nextLink.Id(), LinkOffset: nextLink.Length() - (BtmAntennaOffsetHead - headLink.Length() + head.LinkOffset), Speed: head.Speed, Acceleration: head.Acceleration}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
func (t *BaliseDetector) createBtmAntennaRunningInfo(wd *component.WorldData, repo *repository.Repository, head *TrainHeadPositionInfo) *BtmAntennaRunningInfo {
|
||||
headLink := repo.FindLink(head.Link)
|
||||
if head.Up {
|
||||
|
|
|
@ -222,9 +222,9 @@ const (
|
|||
DRIVER_ACTIVE_REPORT
|
||||
//制动重故障按钮
|
||||
BRAKE_HEAVY_FAULT
|
||||
//左门状态按钮
|
||||
//左门状态
|
||||
LEFT_DOOR_STATE
|
||||
//右门状态按钮
|
||||
//右门状态
|
||||
RIGHT_DOOR_STATE
|
||||
//唤醒按钮
|
||||
WAKE_UP
|
||||
|
@ -249,7 +249,6 @@ const (
|
|||
ATP_CUT
|
||||
//AA自动开关门
|
||||
DOOR_MODE_AA
|
||||
|
||||
//AM自开人关
|
||||
DOOR_MODE_AM
|
||||
//MM人开人关
|
||||
|
|
|
@ -383,7 +383,7 @@ func (d *trainPcSimService) sendTrainLocationAndSpeedTask(ctx context.Context) {
|
|||
trainClient.updateState(connState)
|
||||
s1, _ := d.pluseSpeed(train)
|
||||
runDir := uint16(2)
|
||||
if train.Tcc.DirKey.Val == 1 {
|
||||
if train.VobcState.DirectionForward {
|
||||
runDir = 1
|
||||
}
|
||||
disPluse := pluseCountSpeed(train.WheelDiameter, trainClient.speedPlace.PulseCount1)
|
||||
|
@ -540,7 +540,9 @@ func (d *trainPcSimService) SendTrainControlMsg(train *state_proto.TrainState, b
|
|||
}
|
||||
|
||||
for _, msg := range baseMessage {
|
||||
d.sendData(trainClient.tcpClient, msg.Encode())
|
||||
dd := msg.Encode()
|
||||
//slog.Info(fmt.Sprintf("发送列车控制信息:%x", dd))
|
||||
d.sendData(trainClient.tcpClient, dd)
|
||||
}
|
||||
}
|
||||
func (d *trainPcSimService) sendData(client *tcp.TcpClient, data []byte) {
|
||||
|
|
|
@ -2,6 +2,7 @@ package memory
|
|||
|
||||
import (
|
||||
"joylink.club/bj-rtsts-server/dto/data_proto"
|
||||
"joylink.club/bj-rtsts-server/dto/request_proto"
|
||||
"joylink.club/bj-rtsts-server/dto/state_proto"
|
||||
"joylink.club/bj-rtsts-server/third_party/message"
|
||||
)
|
||||
|
@ -100,16 +101,13 @@ func findTrainTccGraphicDataHandler(tccG *data_proto.TccGraphicStorage, id uint3
|
|||
|
||||
func initTrainVobc(trainLoad int64, trainIsUp bool) (*state_proto.TrainVobcState, uint32) {
|
||||
vobc := &state_proto.TrainVobcState{TrainLoad: int64(trainLoad), BrakingStatus: true, BrakeForce: DEFAULT_BRAKE_FORCE * 100, DirectionForward: true,
|
||||
AllDoorClose: true, ObstacleCheckBtn: true, RightDoorCloseCommand: true, LeftDoorCloseCommand: true, BrakeHeavyFault: true, AtpCutSwitch: true,
|
||||
ConfirmBtn: true, AtpPowerOnBtn: true,
|
||||
AllDoorClose: true, ObstacleCheckBtn: true /*RightDoorCloseCommand: true, LeftDoorCloseCommand: true,*/, BrakeHeavyFault: true, AtpCutSwitch: true,
|
||||
ConfirmBtn: true, AtpPowerOnBtn: true, DoorModeMM: true,
|
||||
}
|
||||
|
||||
var trainActDir uint32 = 0
|
||||
if trainIsUp {
|
||||
//vobc.Tc1Active = true
|
||||
trainActDir = 1
|
||||
} else {
|
||||
//vobc.Tc2Active = true
|
||||
trainActDir = 2
|
||||
}
|
||||
return vobc, trainActDir
|
||||
|
@ -136,7 +134,7 @@ func initTrainTcc(vs *VerifySimulation) *state_proto.TrainControlState {
|
|||
for _, b := range tccGI.TccButtons {
|
||||
btn := &state_proto.TrainControlState_ControlButton{Id: b.Common.Id, Passed: false}
|
||||
switch b.Code {
|
||||
case ATPQCKG, GZM, GYM, ZAWTGJC, ZDZGZ, ATPSD, MSQR:
|
||||
case ATPQCKG /*GZM, GYM,*/, ZAWTGJC, ZDZGZ, ATPSD, MSQR:
|
||||
btn.Passed = true
|
||||
}
|
||||
btns[b.Code] = btn
|
||||
|
@ -149,6 +147,7 @@ func initTrainTcc(vs *VerifySimulation) *state_proto.TrainControlState {
|
|||
}
|
||||
}
|
||||
ds := make([]*state_proto.TrainControlState_DriverKeySwitch, 0)
|
||||
tcc.SwitchKeyMap = make(map[string]*state_proto.TrainControlState_SwitchKeyChange, 0)
|
||||
for _, b := range tccGI.TccKeys {
|
||||
if b.GetType() == data_proto.TccKey_driverControllerActivationClint {
|
||||
val := false
|
||||
|
@ -159,7 +158,10 @@ func initTrainTcc(vs *VerifySimulation) *state_proto.TrainControlState {
|
|||
}*/
|
||||
ds = append(ds, &state_proto.TrainControlState_DriverKeySwitch{Id: b.Common.Id, Val: val})
|
||||
} else if b.GetType() == data_proto.TccKey_frontAndRearDirectionalControl {
|
||||
tcc.DirKey = &state_proto.TrainControlState_DirectionKeySwitch{Id: b.Common.Id, Val: uint32(message.IsTrue(true))}
|
||||
tcc.SwitchKeyMap[b.Code] = &state_proto.TrainControlState_SwitchKeyChange{Id: b.Common.Id, Val: uint32(message.IsTrue(true))}
|
||||
|
||||
} else if b.GetType() == data_proto.TccKey_trainDoorMode {
|
||||
tcc.SwitchKeyMap[b.Code] = &state_proto.TrainControlState_SwitchKeyChange{Id: b.Common.Id, Val: uint32(request_proto.TrainControl_KL_END.Number())}
|
||||
}
|
||||
}
|
||||
tcc.DriverKey = ds
|
||||
|
|
|
@ -73,8 +73,6 @@ func AddTrainStateNew(vs *VerifySimulation, status *state_proto.TrainState, conf
|
|||
linkId, loffset := QueryLinkAndOffsetByDevice(vs.Repo, uid, status.DevicePort, status.HeadOffset)
|
||||
// link上的运行方向、设备上的运行方向
|
||||
up, pointTo := QueryUpAndABByDevice(vs.Repo, uid, status.DevicePort, status.TrainRunUp)
|
||||
//up, pointTo, _ = QueryDirectionAndABByDevice(vs.Repo, uid, status.DevicePort, status.TrainRunUp)
|
||||
//fmt.Println(up2, pointTo2)
|
||||
|
||||
// 车头所在公里标
|
||||
kilometer := CalcTrainKilometer(vs.Repo, uid, status.DevicePort, status.TrainRunUp, status.HeadOffset)
|
||||
|
@ -111,19 +109,16 @@ func AddTrainStateNew(vs *VerifySimulation, status *state_proto.TrainState, conf
|
|||
vobc, _ := initTrainVobc(int64(tl), status.TrainRunUp)
|
||||
status.VobcState = vobc
|
||||
|
||||
//status.TrainActiveDirection = trainActDir
|
||||
|
||||
status.Tcc = initTrainTcc(vs)
|
||||
status.VobcBtm = &state_proto.VobcBtmState{TelegramState: make([]*state_proto.VobcBtmState_TelegramState, 3), History: make(map[uint32]*state_proto.VobcBtmState_VobcBtmHistoryState)}
|
||||
//slog.Debug("列车初始化", "trainIndex", trainIndex, "linkId", linkId, "loffset", loffset)
|
||||
linkIdInt, _ := strconv.Atoi(linkId)
|
||||
err := dynamics.Default().RequestAddTrain(&message.InitTrainInfo{
|
||||
TrainIndex: uint16(trainIndex),
|
||||
LinkIndex: uint16(linkIdInt),
|
||||
LinkOffset: uint32(loffset),
|
||||
Speed: status.Speed / 3.6,
|
||||
Up: status.Up,
|
||||
//Up: status.TrainRunUp,
|
||||
TrainIndex: uint16(trainIndex),
|
||||
LinkIndex: uint16(linkIdInt),
|
||||
LinkOffset: uint32(loffset),
|
||||
Speed: status.Speed / 3.6,
|
||||
Up: status.Up,
|
||||
TrainOperationConfig: CreateMsgTrainConfig(int(trainIndex), status.TrainLength, configTrainData),
|
||||
})
|
||||
if err != nil {
|
||||
|
|
|
@ -45,7 +45,7 @@ func ControlTrainUpdate(s *VerifySimulation, ct *request_proto.TrainControl) {
|
|||
baseMsg = trainControlDriverKey(sta, ct.DriverKey, ct.DeviceId, tccGraphicData)
|
||||
train_pc_sim.Default().SendDriverActive(sta)
|
||||
} else if ct.ControlType == request_proto.TrainControl_DIRECTION_KEY_SWITCH {
|
||||
baseMsg = trainControlDirKey(sta.DynamicState.Speed, vobc, tcc, ct.DirKey, ct.DeviceId, tccGraphicData)
|
||||
baseMsg = trainControlDirKey(sta.DynamicState.Speed, vobc, tcc, ct.SwitchKey, ct.DeviceId, tccGraphicData)
|
||||
//此处先注释,根据现场调试情况 2024-4-16
|
||||
train_pc_sim.Default().SendTrainDirection(sta, sta.VobcState.DirectionForward, sta.VobcState.DirectionBackward)
|
||||
} else if ct.ControlType == request_proto.TrainControl_HANDLER {
|
||||
|
@ -60,12 +60,28 @@ func ControlTrainUpdate(s *VerifySimulation, ct *request_proto.TrainControl) {
|
|||
isTraction := ct.Handler.Val > 0 //是否制动
|
||||
baseMsg = trainControlHandle(vobc, tcc, ct.Handler, ct.DeviceId, tccGraphicData)
|
||||
train_pc_sim.Default().SendHandleSwitch(oldTraction, oldBrakeForce, isTraction, sta)
|
||||
} else if ct.ControlType == request_proto.TrainControl_TRAIN_DOOR_MODE_CHANGE {
|
||||
baseMsg = trainDoorModeChangeHandle(vobc, tcc, ct.SwitchKey, ct.DeviceId, tccGraphicData)
|
||||
}
|
||||
if vobc.DirectionForward && vobc.TractionForce == 0 {
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DIR_ZERO_FORWARD, 1}})
|
||||
} else {
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DIR_ZERO_FORWARD, 0}})
|
||||
}
|
||||
if vobc.LeftDoorOpenCommand || vobc.RightDoorOpenCommand {
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_LOCK_STATE, 0}})
|
||||
if vobc.LeftDoorOpenCommand {
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.LEFT_DOOR_STATE, 1}})
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.RIGHT_DOOR_STATE, 0}})
|
||||
} else if vobc.RightDoorOpenCommand {
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.LEFT_DOOR_STATE, 0}})
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.RIGHT_DOOR_STATE, 1}})
|
||||
}
|
||||
}
|
||||
if vobc.LeftDoorCloseCommand && vobc.RightDoorCloseCommand {
|
||||
baseMsg = append(baseMsg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_LOCK_STATE, 1}})
|
||||
}
|
||||
|
||||
if !vobc.DirectionForward && !vobc.DirectionBackward {
|
||||
vobc.TractionStatus = false
|
||||
vobc.TractionForce = 0
|
||||
|
@ -92,16 +108,16 @@ func trainControlButton(vobc *state_proto.TrainVobcState, buttonMap map[string]*
|
|||
return controlEBBtn(vobc, active, btn)
|
||||
case ATPQCKG: //atp切除
|
||||
return controlAtpBtn(vobc, active, btn)
|
||||
/* case "WBJJZDFK": //外部紧急制动反馈
|
||||
return controlOutEbReportBtn(vobc, active, btn)*/
|
||||
case KZM: //开左门按钮
|
||||
return controlLeftDoorBtn(vobc, active, btn)
|
||||
case GZM: //关左门按钮
|
||||
return controlLeftDoorCloseBtn(vobc, active, btn)
|
||||
case KYM: //开右门按钮
|
||||
return controlRightDoorBtn(vobc, active, btn)
|
||||
case GYM: //关右门按钮
|
||||
return controlRightDoorCloseBtn(vobc, active, btn)
|
||||
case KZM, KYM: //开左门按钮
|
||||
return controlDoorOpenBtn(vobc, active, btn, graphicBtn.Code == KZM)
|
||||
|
||||
case GZM, GYM: //关左门按钮
|
||||
return controlDoorCloseBtn(vobc, active, btn, graphicBtn.Code == KZM)
|
||||
//return controlLeftDoorCloseBtn(vobc, active, btn)
|
||||
//case KYM: //开右门按钮
|
||||
// return controlRightDoorBtn(vobc, active, btn)
|
||||
//case GYM: //关右门按钮
|
||||
// return controlRightDoorCloseBtn(vobc, active, btn)
|
||||
case ZF: //折返按钮
|
||||
return controlReverseBtn(vobc, active, btn)
|
||||
case QZMYX: //强制门允许
|
||||
|
@ -158,6 +174,45 @@ func controlAtpBtn(vobc *state_proto.TrainVobcState, active bool, tccBtn *state_
|
|||
tccBtn.Passed = active
|
||||
return []message.TrainPcSimBaseMessage{{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.ATP_CUT, status}}}
|
||||
}
|
||||
func controlDoorCloseBtn(vobc *state_proto.TrainVobcState, active bool, tccBtn *state_proto.TrainControlState_ControlButton, isLeft bool) []message.TrainPcSimBaseMessage {
|
||||
status := message.IsTrue(active)
|
||||
tccBtn.Passed = active
|
||||
var doorAct byte = message.CLOSE_LEFT_DOOR
|
||||
var doorState byte = message.LEFT_DOOR_STATE
|
||||
if isLeft {
|
||||
vobc.LeftDoorCloseCommand = active
|
||||
} else {
|
||||
vobc.RightDoorCloseCommand = active
|
||||
doorAct = message.CLOSE_RIGHT_DOOR
|
||||
doorState = message.RIGHT_DOOR_STATE
|
||||
}
|
||||
return []message.TrainPcSimBaseMessage{{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{doorAct, status}},
|
||||
{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{doorState, 0}},
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 开车门
|
||||
func controlDoorOpenBtn(vobc *state_proto.TrainVobcState, active bool, tccBtn *state_proto.TrainControlState_ControlButton, isLeft bool) []message.TrainPcSimBaseMessage {
|
||||
status := message.IsTrue(active)
|
||||
msg := make([]message.TrainPcSimBaseMessage, 0)
|
||||
tccBtn.Passed = active
|
||||
var doorAct byte = message.LEFT_OPEN_DOOR
|
||||
var doorState byte = message.LEFT_DOOR_STATE
|
||||
if isLeft {
|
||||
vobc.LeftDoorOpenCommand = active
|
||||
} else {
|
||||
vobc.RightDoorOpenCommand = active
|
||||
doorAct = message.OPEN_RIGHT_DOOR
|
||||
doorState = message.RIGHT_DOOR_STATE
|
||||
}
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{doorAct, status}})
|
||||
if active {
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_LOCK_STATE, 0}})
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{doorState, status}})
|
||||
}
|
||||
return msg
|
||||
}
|
||||
|
||||
// 开左门按钮
|
||||
func controlLeftDoorBtn(vobc *state_proto.TrainVobcState, active bool, tccBtn *state_proto.TrainControlState_ControlButton) []message.TrainPcSimBaseMessage {
|
||||
|
@ -167,7 +222,9 @@ func controlLeftDoorBtn(vobc *state_proto.TrainVobcState, active bool, tccBtn *s
|
|||
}
|
||||
vobc.LeftDoorOpenCommand = active
|
||||
tccBtn.Passed = active
|
||||
return []message.TrainPcSimBaseMessage{{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.LEFT_OPEN_DOOR, status}}}
|
||||
return []message.TrainPcSimBaseMessage{{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.LEFT_OPEN_DOOR, status}},
|
||||
{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.LEFT_DOOR_STATE, status}},
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -334,27 +391,25 @@ func controlSleepBtn(vobc *state_proto.TrainVobcState, active bool, tccBtn *stat
|
|||
}
|
||||
|
||||
// 列车方向
|
||||
func trainControlDirKey(trainSpeed int32, vobc *state_proto.TrainVobcState, tcc *state_proto.TrainControlState, request *request_proto.TrainControl_DirectionKeySwitch, deviceId uint32, tccGraphic *data_proto.TccGraphicStorage) []message.TrainPcSimBaseMessage {
|
||||
_, find := findTrainTccGraphicDataKey(tccGraphic, deviceId)
|
||||
func trainControlDirKey(trainSpeed int32, vobc *state_proto.TrainVobcState, tcc *state_proto.TrainControlState, request *request_proto.TrainControl_SwitchKeyChange, deviceId uint32, tccGraphic *data_proto.TccGraphicStorage) []message.TrainPcSimBaseMessage {
|
||||
dirKey, find := findTrainTccGraphicDataKey(tccGraphic, deviceId)
|
||||
if !find {
|
||||
slog.Error("未找到对应的列车方向键deviceId:", deviceId)
|
||||
panic(sys_error.New("未找到对应的列车方向键"))
|
||||
}
|
||||
if tcc.DirKey == nil {
|
||||
tcc.DirKey = &state_proto.TrainControlState_DirectionKeySwitch{Id: deviceId}
|
||||
}
|
||||
direction := request_proto.TrainControl_Direction(request.Val)
|
||||
|
||||
direction := request_proto.TrainControl_KeyLocation(request.Val)
|
||||
if trainSpeed > 0 {
|
||||
panic(sys_error.New("列车未停稳时,不能变更方向"))
|
||||
}
|
||||
vobc.DirectionBackward = false
|
||||
vobc.DirectionForward = false
|
||||
if direction == request_proto.TrainControl_FORWARD {
|
||||
if direction == request_proto.TrainControl_KL_FONT {
|
||||
vobc.DirectionForward = true
|
||||
} else if direction == request_proto.TrainControl_BACKWARD {
|
||||
} else if direction == request_proto.TrainControl_KL_END {
|
||||
vobc.DirectionBackward = true
|
||||
}
|
||||
tcc.DirKey.Val = request.Val
|
||||
tcc.SwitchKeyMap[dirKey.Code].Val = request.Val
|
||||
return []message.TrainPcSimBaseMessage{{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.HANDLE_BACKWORD, message.IsTrue(vobc.DirectionBackward)}},
|
||||
{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.HANDLE_FORWORD, message.IsTrue(vobc.DirectionForward)}}}
|
||||
}
|
||||
|
@ -399,6 +454,31 @@ func trainControlDriverKey(train *state_proto.TrainState, request *request_proto
|
|||
return []message.TrainPcSimBaseMessage{{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.KEY_STATE, message.IsTrue(request.Val)}}}
|
||||
|
||||
}
|
||||
func trainDoorModeChangeHandle(vobc *state_proto.TrainVobcState, tcc *state_proto.TrainControlState, request *request_proto.TrainControl_SwitchKeyChange, deviceId uint32, tccGraphic *data_proto.TccGraphicStorage) []message.TrainPcSimBaseMessage {
|
||||
sk, find := findTrainTccGraphicDataHandler(tccGraphic, deviceId)
|
||||
if !find {
|
||||
slog.Error("未找到对应的牵引制动手柄设备deviceId:", deviceId)
|
||||
return nil
|
||||
}
|
||||
msg := make([]message.TrainPcSimBaseMessage, 0)
|
||||
kl := request_proto.TrainControl_KeyLocation(request.Val)
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_MODE_AA, 0}})
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_MODE_AM, 0}})
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_MODE_MM, 0}})
|
||||
switch kl {
|
||||
case request_proto.TrainControl_KL_END:
|
||||
vobc.DoorModeMM = true
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_MODE_AA, 1}})
|
||||
case request_proto.TrainControl_KL_CENTER:
|
||||
vobc.DoorModeAM = true
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_MODE_AM, 1}})
|
||||
case request_proto.TrainControl_KL_FONT:
|
||||
msg = append(msg, message.TrainPcSimBaseMessage{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.DOOR_MODE_MM, 1}})
|
||||
vobc.DoorModeAA = true
|
||||
}
|
||||
tcc.SwitchKeyMap[sk.Code].Val = request.Val
|
||||
return msg
|
||||
}
|
||||
|
||||
// 列车牵引控制
|
||||
func trainControlHandle(vobc *state_proto.TrainVobcState, tcc *state_proto.TrainControlState, request *request_proto.TrainControl_PushHandler, deviceId uint32, tccGraphic *data_proto.TccGraphicStorage) []message.TrainPcSimBaseMessage {
|
||||
|
@ -422,16 +502,19 @@ func trainControlHandle(vobc *state_proto.TrainVobcState, tcc *state_proto.Train
|
|||
notBreak := byte(0)
|
||||
var zeroState byte = 0
|
||||
var brakeState byte = 0
|
||||
var traction byte = 0
|
||||
if request.Val > 0 {
|
||||
vobc.TractionStatus = true
|
||||
vobc.TractionForce = int64(float32(request.Val)/100*DEFAULT_TRAIN_TRACTION) * 100
|
||||
notBreak = 1
|
||||
traction = 1
|
||||
} else if request.Val < 0 {
|
||||
vobc.BrakingStatus = true
|
||||
vobc.BrakeForce = int64(math.Abs(float64(request.Val))/100*DEFAULT_BRAKE_FORCE) * 100
|
||||
vobc.EmergencyBrakingStatus = false
|
||||
jjzdBtn.Passed = false
|
||||
brakeState = 0
|
||||
brakeState = 1
|
||||
|
||||
} else {
|
||||
zeroState = 1
|
||||
}
|
||||
|
@ -443,7 +526,8 @@ func trainControlHandle(vobc *state_proto.TrainVobcState, tcc *state_proto.Train
|
|||
return []message.TrainPcSimBaseMessage{{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.HANDLE_TO_ZERO, zeroState}},
|
||||
{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.TRAIN_BRAKE_STATE, brakeState}},
|
||||
/*{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.OUTER_EMERGENCY_BRAKE, 1}},*/
|
||||
{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.NOT_BREAK, notBreak}}}
|
||||
{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{message.NOT_BREAK, notBreak}},
|
||||
{Type: message.SENDER_TRAIN_OUTR_INFO, Data: []byte{38, traction}}}
|
||||
}
|
||||
|
||||
func (s *VerifySimulation) GetConnTrain2() []*state_proto.TrainState {
|
||||
|
@ -715,6 +799,7 @@ func (s *VerifySimulation) TrainBtmQuery2(train *state_proto.TrainState, data []
|
|||
} else {
|
||||
balise, dsn, bc, mc = can_btm.Default().FindBaliseByNotSend(train)
|
||||
}
|
||||
balise, dsn, bc, mc = can_btm.Default().FindBaliseByNotSend(train)
|
||||
cl := clock(atpReq)
|
||||
btmRepFrame := createBtmStatus(trainAtm.CanId.ID4, balise, atpReq, cl, dsn, bc, mc)
|
||||
timeSyncF := message.NewBtmTimeSyncCheckFrame(trainAtm.CanId.ID4)
|
||||
|
@ -725,14 +810,15 @@ func (s *VerifySimulation) TrainBtmQuery2(train *state_proto.TrainState, data []
|
|||
queryData = append(queryData, btmRepFrame.EncodeBtmAtp().Encode()...)
|
||||
queryData = append(queryData, timeSyncF.EncodeBtmAtp().Encode()...)
|
||||
train_pc_sim.Default().SendBaliseData(train, message.RECIVE_TRAIN_BTM_NOT_DATA, queryData)
|
||||
//slog.Info(fmt.Sprintf("接受应答器查询:%x发送无应答器数据,id:%v,数据:%X", data, trainAtm.CanId.ID4, queryData))
|
||||
} else {
|
||||
logstr := ""
|
||||
if atpReq.IsResend() {
|
||||
logstr = fmt.Sprintf("准备重新发送应答id:%v,接受时间:%v,发送时间:%v , 数据:%v 经过:%v,解报文:%v", balise.BaliseId, ts, time.Now().UnixMilli(), balise.Telegram, bc, mc)
|
||||
logstr = fmt.Sprintf("准备重新发送应答id:%v,接受时间:%v,发送时间:%v , 数据:%v 经过:%v,解报文:%v,接受应答器报文:%X", balise.BaliseId, ts, time.Now().UnixMilli(), balise.Telegram, bc, mc, data)
|
||||
|
||||
} else if !balise.IsSend {
|
||||
balise.IsSend = true
|
||||
logstr = fmt.Sprintf("准备发送应答id:%v,接受时间:%v,发送时间:%v , 数据:%v 经过:%v,解报文:%v", balise.BaliseId, ts, time.Now().UnixMilli(), balise.Telegram, bc, mc)
|
||||
logstr = fmt.Sprintf("准备发送应答id:%v,接受时间:%v,发送时间:%v , 数据:%v 经过:%v,解报文:%v,接受应答器报文:%X", balise.BaliseId, ts, time.Now().UnixMilli(), balise.Telegram, bc, mc, data)
|
||||
} else {
|
||||
return
|
||||
}
|
||||
|
@ -782,7 +868,6 @@ func clock(atpReq *message.AtpRequestFrame) can_btm.BtmClock {
|
|||
func (s *VerifySimulation) ObtainTrainDigitalMockDataForStatus(train *state_proto.TrainState) []message.TrainPcSimBaseMessage {
|
||||
msgArr := make([]message.TrainPcSimBaseMessage, 0)
|
||||
vs := train.VobcState
|
||||
tcc := train.Tcc
|
||||
|
||||
if vs.Tc1Active || vs.Tc2Active {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.KEY_STATE, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //钥匙激活
|
||||
|
@ -801,24 +886,20 @@ func (s *VerifySimulation) ObtainTrainDigitalMockDataForStatus(train *state_prot
|
|||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.OUTER_EMERGENCY_BRAKE, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //紧急制动
|
||||
}
|
||||
|
||||
dir := request_proto.TrainControl_Direction(tcc.DirKey.Val)
|
||||
/*if vs.DirectionForward && vs.TractionForce == 0 {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.DIR_ZERO_FORWARD, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //手柄零位方向向前
|
||||
} else*/if dir == request_proto.TrainControl_FORWARD {
|
||||
//msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.DIR_ZERO_FORWARD, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //手柄零位方向向前
|
||||
if vs.DirectionForward {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.HANDLE_FORWORD, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //方向手柄向前控制
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.HANDLE_BACKWORD, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //方向手柄向前控制
|
||||
} else if dir == request_proto.TrainControl_BACKWARD {
|
||||
//msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.DIR_ZERO_FORWARD, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //手柄零位方向向前
|
||||
} else if vs.DirectionForward {
|
||||
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.HANDLE_FORWORD, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //方向手柄向前控制
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.HANDLE_BACKWORD, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //方向手柄向前控制
|
||||
}
|
||||
if vs.RightDoorCloseCommand {
|
||||
/*if vs.RightDoorCloseCommand {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.CLOSE_RIGHT_DOOR, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //关右门按钮
|
||||
}
|
||||
if vs.LeftDoorCloseCommand {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.CLOSE_LEFT_DOOR, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //关左门按钮
|
||||
}
|
||||
}*/
|
||||
if vs.AllDoorClose {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.DOOR_LOCK_STATE, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //车门锁闭状态
|
||||
}
|
||||
|
@ -840,6 +921,14 @@ func (s *VerifySimulation) ObtainTrainDigitalMockDataForStatus(train *state_prot
|
|||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.LIFE_DOOR, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //逃生门状态
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.EMERGENT_HANDLE_DOWN, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //紧急手柄拉下
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.TRAIN_TRACTION_CUTED, 1}, Type: message.SENDER_TRAIN_OUTR_INFO}) //紧急手柄拉下
|
||||
|
||||
if vs.DoorModeAA {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.DOOR_MODE_AA, 1}, Type: message.SENDER_TRAIN_OUTR_INFO})
|
||||
} else if vs.DoorModeAM {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.DOOR_MODE_AM, 1}, Type: message.SENDER_TRAIN_OUTR_INFO})
|
||||
} else if vs.DoorModeMM {
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.DOOR_MODE_MM, 1}, Type: message.SENDER_TRAIN_OUTR_INFO})
|
||||
}
|
||||
return msgArr
|
||||
}
|
||||
func (s *VerifySimulation) ObtainTrainDigitalMockData(train *state_proto.TrainState) []message.TrainPcSimBaseMessage {
|
||||
|
@ -847,6 +936,7 @@ func (s *VerifySimulation) ObtainTrainDigitalMockData(train *state_proto.TrainSt
|
|||
|
||||
stateArr := s.ObtainTrainDigitalMockDataForStatus(train)
|
||||
msgArr = append(msgArr, stateArr...)
|
||||
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.ATO_SEND_TRAIN, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //ATO发车按钮
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.LEFT_DOOR_STATE, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //左门状态按钮
|
||||
msgArr = append(msgArr, message.TrainPcSimBaseMessage{Data: []byte{message.RIGHT_DOOR_STATE, 0}, Type: message.SENDER_TRAIN_OUTR_INFO}) //列车完整性
|
||||
|
|
Loading…
Reference in New Issue