rts-sim-module/repo/dto/cg_repo.pb.go
walker 1101edd1d3 调整repo定义
城轨和国铁分开
2023-12-27 13:04:19 +08:00

4061 lines
114 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.31.0
// protoc v4.23.1
// source: cg_repo.proto
package dto
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// 列车运行方向(Train Running Direction)
type TRD int32
const (
// 上行
TRD_Upward TRD = 0
// 下行
TRD_Downward TRD = 1
)
// Enum value maps for TRD.
var (
TRD_name = map[int32]string{
0: "Upward",
1: "Downward",
}
TRD_value = map[string]int32{
"Upward": 0,
"Downward": 1,
}
)
func (x TRD) Enum() *TRD {
p := new(TRD)
*p = x
return p
}
func (x TRD) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (TRD) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[0].Descriptor()
}
func (TRD) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[0]
}
func (x TRD) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use TRD.Descriptor instead.
func (TRD) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{0}
}
// 应答器类型
type Balise_Type int32
const (
// 无源应答器
Balise_FB Balise_Type = 0
// 有源应答器
Balise_TB Balise_Type = 1
)
// Enum value maps for Balise_Type.
var (
Balise_Type_name = map[int32]string{
0: "FB",
1: "TB",
}
Balise_Type_value = map[string]int32{
"FB": 0,
"TB": 1,
}
)
func (x Balise_Type) Enum() *Balise_Type {
p := new(Balise_Type)
*p = x
return p
}
func (x Balise_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Balise_Type) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[1].Descriptor()
}
func (Balise_Type) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[1]
}
func (x Balise_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Balise_Type.Descriptor instead.
func (Balise_Type) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{11, 0}
}
// 区段分界点类型
type DevidingPoint_Type int32
const (
// 区段边界
DevidingPoint_Boundary DevidingPoint_Type = 0
// 计轴器
DevidingPoint_JZ DevidingPoint_Type = 1
// 绝缘节
DevidingPoint_JYJ DevidingPoint_Type = 2
)
// Enum value maps for DevidingPoint_Type.
var (
DevidingPoint_Type_name = map[int32]string{
0: "Boundary",
1: "JZ",
2: "JYJ",
}
DevidingPoint_Type_value = map[string]int32{
"Boundary": 0,
"JZ": 1,
"JYJ": 2,
}
)
func (x DevidingPoint_Type) Enum() *DevidingPoint_Type {
p := new(DevidingPoint_Type)
*p = x
return p
}
func (x DevidingPoint_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DevidingPoint_Type) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[2].Descriptor()
}
func (DevidingPoint_Type) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[2]
}
func (x DevidingPoint_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use DevidingPoint_Type.Descriptor instead.
func (DevidingPoint_Type) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{12, 0}
}
// 模型类型
type Model_Type int32
const (
// 未知无效
Model_Unknown Model_Type = 0
// 区段
Model_Section Model_Type = 1
// 道岔
Model_Turnout Model_Type = 2
// 信号机
Model_Signal Model_Type = 3
)
// Enum value maps for Model_Type.
var (
Model_Type_name = map[int32]string{
0: "Unknown",
1: "Section",
2: "Turnout",
3: "Signal",
}
Model_Type_value = map[string]int32{
"Unknown": 0,
"Section": 1,
"Turnout": 2,
"Signal": 3,
}
)
func (x Model_Type) Enum() *Model_Type {
p := new(Model_Type)
*p = x
return p
}
func (x Model_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Model_Type) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[3].Descriptor()
}
func (Model_Type) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[3]
}
func (x Model_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Model_Type.Descriptor instead.
func (Model_Type) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{13, 0}
}
type SectionPort_Type int32
const (
SectionPort_A SectionPort_Type = 0
SectionPort_B SectionPort_Type = 1
SectionPort_C SectionPort_Type = 2
)
// Enum value maps for SectionPort_Type.
var (
SectionPort_Type_name = map[int32]string{
0: "A",
1: "B",
2: "C",
}
SectionPort_Type_value = map[string]int32{
"A": 0,
"B": 1,
"C": 2,
}
)
func (x SectionPort_Type) Enum() *SectionPort_Type {
p := new(SectionPort_Type)
*p = x
return p
}
func (x SectionPort_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (SectionPort_Type) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[4].Descriptor()
}
func (SectionPort_Type) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[4]
}
func (x SectionPort_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use SectionPort_Type.Descriptor instead.
func (SectionPort_Type) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{14, 0}
}
// 信号机模型型号
type Signal_Model int32
const (
// 红绿黄三显示信号机
// 红绿黄三显示引导为红黄
// 红绿黄三显示,不封,有单黄,有引导
Signal_HLU_0_1_1 Signal_Model = 0
// 红绿黄三显示,不封,无单黄,有引导
Signal_HLU_0_0_1 Signal_Model = 1
// 红绿黄三显示,不封,有单黄,无引导
Signal_HLU_0_1_0 Signal_Model = 2
// 红绿黄三显示,封黄,无单黄,有引导
Signal_HLU_U_0_0 Signal_Model = 3
// 红绿黄三显示,封绿,有单黄,有引导
Signal_HLU_L_1_1 Signal_Model = 4
// 红绿黄三显示,封绿,有单黄,无引导
Signal_HLU_L_1_0 Signal_Model = 5
// 红绿黄三显示,全封
Signal_HLU_LU_0_0 Signal_Model = 6
// 红绿二显示信号机
// 红绿二显示,不封
Signal_HL_0 Signal_Model = 7
// 红绿二显示,封绿
Signal_HL_L Signal_Model = 8
// 红黄二显示,不封
Signal_HU_0 Signal_Model = 9
// 红黄二显示,封黄
Signal_HU_U Signal_Model = 10
// 单红显示信号机
Signal_H Signal_Model = 11
// 蓝白二显示信号机
Signal_AB Signal_Model = 12
// 红白黄三显示信号机
// 红白黄三显示,不封,有单黄,无引导
Signal_HBU_0_1_0 Signal_Model = 13
// 红白黄三显示,封黄,无单黄,无引导
Signal_HBU_U_0_0 Signal_Model = 14
)
// Enum value maps for Signal_Model.
var (
Signal_Model_name = map[int32]string{
0: "HLU_0_1_1",
1: "HLU_0_0_1",
2: "HLU_0_1_0",
3: "HLU_U_0_0",
4: "HLU_L_1_1",
5: "HLU_L_1_0",
6: "HLU_LU_0_0",
7: "HL_0",
8: "HL_L",
9: "HU_0",
10: "HU_U",
11: "H",
12: "AB",
13: "HBU_0_1_0",
14: "HBU_U_0_0",
}
Signal_Model_value = map[string]int32{
"HLU_0_1_1": 0,
"HLU_0_0_1": 1,
"HLU_0_1_0": 2,
"HLU_U_0_0": 3,
"HLU_L_1_1": 4,
"HLU_L_1_0": 5,
"HLU_LU_0_0": 6,
"HL_0": 7,
"HL_L": 8,
"HU_0": 9,
"HU_U": 10,
"H": 11,
"AB": 12,
"HBU_0_1_0": 13,
"HBU_U_0_0": 14,
}
)
func (x Signal_Model) Enum() *Signal_Model {
p := new(Signal_Model)
*p = x
return p
}
func (x Signal_Model) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Signal_Model) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[5].Descriptor()
}
func (Signal_Model) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[5]
}
func (x Signal_Model) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Signal_Model.Descriptor instead.
func (Signal_Model) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{15, 0}
}
// 道岔模型型号
type Turnout_Model int32
const (
// ZDJ9单机牵引
Turnout_ZDJ9_1 Turnout_Model = 0
// ZDJ9双机牵引
Turnout_ZDJ9_2 Turnout_Model = 1
)
// Enum value maps for Turnout_Model.
var (
Turnout_Model_name = map[int32]string{
0: "ZDJ9_1",
1: "ZDJ9_2",
}
Turnout_Model_value = map[string]int32{
"ZDJ9_1": 0,
"ZDJ9_2": 1,
}
)
func (x Turnout_Model) Enum() *Turnout_Model {
p := new(Turnout_Model)
*p = x
return p
}
func (x Turnout_Model) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Turnout_Model) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[6].Descriptor()
}
func (Turnout_Model) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[6]
}
func (x Turnout_Model) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Turnout_Model.Descriptor instead.
func (Turnout_Model) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{16, 0}
}
// 物理区段类型
type Section_Type int32
const (
// 一般物理区段
Section_Physical Section_Type = 0
// 道岔物理区段
Section_TurnoutPhysical Section_Type = 1
// 逻辑区段
Section_Logical Section_Type = 2
)
// Enum value maps for Section_Type.
var (
Section_Type_name = map[int32]string{
0: "Physical",
1: "TurnoutPhysical",
2: "Logical",
}
Section_Type_value = map[string]int32{
"Physical": 0,
"TurnoutPhysical": 1,
"Logical": 2,
}
)
func (x Section_Type) Enum() *Section_Type {
p := new(Section_Type)
*p = x
return p
}
func (x Section_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Section_Type) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[7].Descriptor()
}
func (Section_Type) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[7]
}
func (x Section_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Section_Type.Descriptor instead.
func (Section_Type) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{17, 0}
}
// 继电器型号
type Relay_Model int32
const (
Relay_JPXC_1000 Relay_Model = 0
Relay_JPXC_1700 Relay_Model = 1
Relay_JWJXC_480 Relay_Model = 2
Relay_JWJXC_H125_80 Relay_Model = 3
Relay_JWXC_1700 Relay_Model = 4
Relay_JWXC_H340 Relay_Model = 5
Relay_JYJXC_160_260 Relay_Model = 6
Relay_JZXC_H18 Relay_Model = 7
)
// Enum value maps for Relay_Model.
var (
Relay_Model_name = map[int32]string{
0: "JPXC_1000",
1: "JPXC_1700",
2: "JWJXC_480",
3: "JWJXC_H125_80",
4: "JWXC_1700",
5: "JWXC_H340",
6: "JYJXC_160_260",
7: "JZXC_H18",
}
Relay_Model_value = map[string]int32{
"JPXC_1000": 0,
"JPXC_1700": 1,
"JWJXC_480": 2,
"JWJXC_H125_80": 3,
"JWXC_1700": 4,
"JWXC_H340": 5,
"JYJXC_160_260": 6,
"JZXC_H18": 7,
}
)
func (x Relay_Model) Enum() *Relay_Model {
p := new(Relay_Model)
*p = x
return p
}
func (x Relay_Model) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Relay_Model) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[8].Descriptor()
}
func (Relay_Model) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[8]
}
func (x Relay_Model) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Relay_Model.Descriptor instead.
func (Relay_Model) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{28, 0}
}
// 监控盘类型
type JKP_Type int32
const (
// IBP盘(综合后备盘)
JKP_IBP JKP_Type = 0
// 屏蔽门就地控制盘
JKP_PSL JKP_Type = 1
// 门控箱
JKP_MKX JKP_Type = 2
)
// Enum value maps for JKP_Type.
var (
JKP_Type_name = map[int32]string{
0: "IBP",
1: "PSL",
2: "MKX",
}
JKP_Type_value = map[string]int32{
"IBP": 0,
"PSL": 1,
"MKX": 2,
}
)
func (x JKP_Type) Enum() *JKP_Type {
p := new(JKP_Type)
*p = x
return p
}
func (x JKP_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (JKP_Type) Descriptor() protoreflect.EnumDescriptor {
return file_cg_repo_proto_enumTypes[9].Descriptor()
}
func (JKP_Type) Type() protoreflect.EnumType {
return &file_cg_repo_proto_enumTypes[9]
}
func (x JKP_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use JKP_Type.Descriptor instead.
func (JKP_Type) EnumDescriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{29, 0}
}
// 城轨数据
type CgRepo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// 线路数据
Lines []*Line `protobuf:"bytes,2,rep,name=lines,proto3" json:"lines,omitempty"`
// 监控盘(IBP/PSL/MKX等)数据,线路相关数据会引用这里
Jkps []*JKP `protobuf:"bytes,3,rep,name=jkps,proto3" json:"jkps,omitempty"`
}
func (x *CgRepo) Reset() {
*x = CgRepo{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CgRepo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CgRepo) ProtoMessage() {}
func (x *CgRepo) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CgRepo.ProtoReflect.Descriptor instead.
func (*CgRepo) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{0}
}
func (x *CgRepo) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *CgRepo) GetLines() []*Line {
if x != nil {
return x.Lines
}
return nil
}
func (x *CgRepo) GetJkps() []*JKP {
if x != nil {
return x.Jkps
}
return nil
}
// 城轨线路数据
type Line struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 所在城市
City string `protobuf:"bytes,1,opt,name=city,proto3" json:"city,omitempty"`
// 线路编号
LineId string `protobuf:"bytes,2,opt,name=lineId,proto3" json:"lineId,omitempty"`
// 信号布置
Xhbz *XHBZ `protobuf:"bytes,3,opt,name=xhbz,proto3" json:"xhbz,omitempty"`
// 继电器柜布置
Jdqbz []*CiJDQBZ `protobuf:"bytes,4,rep,name=jdqbz,proto3" json:"jdqbz,omitempty"`
}
func (x *Line) Reset() {
*x = Line{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Line) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Line) ProtoMessage() {}
func (x *Line) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Line.ProtoReflect.Descriptor instead.
func (*Line) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{1}
}
func (x *Line) GetCity() string {
if x != nil {
return x.City
}
return ""
}
func (x *Line) GetLineId() string {
if x != nil {
return x.LineId
}
return ""
}
func (x *Line) GetXhbz() *XHBZ {
if x != nil {
return x.Xhbz
}
return nil
}
func (x *Line) GetJdqbz() []*CiJDQBZ {
if x != nil {
return x.Jdqbz
}
return nil
}
// 信号布置数据
type XHBZ struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 数据id
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// 车站
Stations []*Station `protobuf:"bytes,2,rep,name=stations,proto3" json:"stations,omitempty"`
// 站台
Platforms []*Platform `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms,omitempty"`
// 屏蔽门
Psds []*Psd `protobuf:"bytes,4,rep,name=psds,proto3" json:"psds,omitempty"`
// 区段
Sections []*Section `protobuf:"bytes,5,rep,name=sections,proto3" json:"sections,omitempty"`
// 道岔
Turnouts []*Turnout `protobuf:"bytes,6,rep,name=turnouts,proto3" json:"turnouts,omitempty"`
// 检测点
DevidingPoints []*DevidingPoint `protobuf:"bytes,7,rep,name=devidingPoints,proto3" json:"devidingPoints,omitempty"`
// 信号机
Signals []*Signal `protobuf:"bytes,8,rep,name=signals,proto3" json:"signals,omitempty"`
// 应答器(欧标)
Balises []*Balise `protobuf:"bytes,9,rep,name=balises,proto3" json:"balises,omitempty"`
// 停车点
ParkingSpots []*ParkingSpot `protobuf:"bytes,10,rep,name=parkingSpots,proto3" json:"parkingSpots,omitempty"`
// 坡度
Pds []*Pd `protobuf:"bytes,11,rep,name=pds,proto3" json:"pds,omitempty"`
// 曲度
Qds []*Qd `protobuf:"bytes,12,rep,name=qds,proto3" json:"qds,omitempty"`
// 紧急关闭(停车)按钮
Emps []*EMP `protobuf:"bytes,13,rep,name=emps,proto3" json:"emps,omitempty"`
// 发车计时器(Train Depart Timer,TDT 或 Depart Time Indicator,DTI)
Tdts []*TDT `protobuf:"bytes,14,rep,name=tdts,proto3" json:"tdts,omitempty"`
// 门控箱
Mkxs []*Mkx `protobuf:"bytes,15,rep,name=mkxs,proto3" json:"mkxs,omitempty"`
// 就地控制盘
Psls []*PSL `protobuf:"bytes,16,rep,name=psls,proto3" json:"psls,omitempty"`
// 人员防护开关
Spks []*SPKS `protobuf:"bytes,17,rep,name=spks,proto3" json:"spks,omitempty"`
// 设备电子元件组合
DeviceEccs []*DeviceEcc `protobuf:"bytes,18,rep,name=deviceEccs,proto3" json:"deviceEccs,omitempty"`
}
func (x *XHBZ) Reset() {
*x = XHBZ{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *XHBZ) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*XHBZ) ProtoMessage() {}
func (x *XHBZ) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use XHBZ.ProtoReflect.Descriptor instead.
func (*XHBZ) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{2}
}
func (x *XHBZ) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *XHBZ) GetStations() []*Station {
if x != nil {
return x.Stations
}
return nil
}
func (x *XHBZ) GetPlatforms() []*Platform {
if x != nil {
return x.Platforms
}
return nil
}
func (x *XHBZ) GetPsds() []*Psd {
if x != nil {
return x.Psds
}
return nil
}
func (x *XHBZ) GetSections() []*Section {
if x != nil {
return x.Sections
}
return nil
}
func (x *XHBZ) GetTurnouts() []*Turnout {
if x != nil {
return x.Turnouts
}
return nil
}
func (x *XHBZ) GetDevidingPoints() []*DevidingPoint {
if x != nil {
return x.DevidingPoints
}
return nil
}
func (x *XHBZ) GetSignals() []*Signal {
if x != nil {
return x.Signals
}
return nil
}
func (x *XHBZ) GetBalises() []*Balise {
if x != nil {
return x.Balises
}
return nil
}
func (x *XHBZ) GetParkingSpots() []*ParkingSpot {
if x != nil {
return x.ParkingSpots
}
return nil
}
func (x *XHBZ) GetPds() []*Pd {
if x != nil {
return x.Pds
}
return nil
}
func (x *XHBZ) GetQds() []*Qd {
if x != nil {
return x.Qds
}
return nil
}
func (x *XHBZ) GetEmps() []*EMP {
if x != nil {
return x.Emps
}
return nil
}
func (x *XHBZ) GetTdts() []*TDT {
if x != nil {
return x.Tdts
}
return nil
}
func (x *XHBZ) GetMkxs() []*Mkx {
if x != nil {
return x.Mkxs
}
return nil
}
func (x *XHBZ) GetPsls() []*PSL {
if x != nil {
return x.Psls
}
return nil
}
func (x *XHBZ) GetSpks() []*SPKS {
if x != nil {
return x.Spks
}
return nil
}
func (x *XHBZ) GetDeviceEccs() []*DeviceEcc {
if x != nil {
return x.DeviceEccs
}
return nil
}
// 人员防护开关
type SPKS struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 关联站台id
PlatformId uint32 `protobuf:"varint,3,opt,name=platformId,proto3" json:"platformId,omitempty"`
}
func (x *SPKS) Reset() {
*x = SPKS{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SPKS) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SPKS) ProtoMessage() {}
func (x *SPKS) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SPKS.ProtoReflect.Descriptor instead.
func (*SPKS) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{3}
}
func (x *SPKS) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *SPKS) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *SPKS) GetPlatformId() uint32 {
if x != nil {
return x.PlatformId
}
return 0
}
// 就地控制盘
type PSL struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 关联屏蔽门id
PsdId uint32 `protobuf:"varint,3,opt,name=psdId,proto3" json:"psdId,omitempty"`
}
func (x *PSL) Reset() {
*x = PSL{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PSL) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PSL) ProtoMessage() {}
func (x *PSL) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PSL.ProtoReflect.Descriptor instead.
func (*PSL) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{4}
}
func (x *PSL) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *PSL) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *PSL) GetPsdId() uint32 {
if x != nil {
return x.PsdId
}
return 0
}
// 门控箱
type Mkx struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 关联屏蔽门id
PsdId uint32 `protobuf:"varint,3,opt,name=psdId,proto3" json:"psdId,omitempty"`
}
func (x *Mkx) Reset() {
*x = Mkx{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Mkx) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Mkx) ProtoMessage() {}
func (x *Mkx) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Mkx.ProtoReflect.Descriptor instead.
func (*Mkx) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{5}
}
func (x *Mkx) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Mkx) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Mkx) GetPsdId() uint32 {
if x != nil {
return x.PsdId
}
return 0
}
// 发车计时器
type TDT struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 关联站台id
PlatformId uint32 `protobuf:"varint,3,opt,name=platformId,proto3" json:"platformId,omitempty"`
}
func (x *TDT) Reset() {
*x = TDT{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TDT) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TDT) ProtoMessage() {}
func (x *TDT) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TDT.ProtoReflect.Descriptor instead.
func (*TDT) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{6}
}
func (x *TDT) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *TDT) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *TDT) GetPlatformId() uint32 {
if x != nil {
return x.PlatformId
}
return 0
}
// 紧急关闭/停车按钮
type EMP struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 关联站台id
PlatformId uint32 `protobuf:"varint,3,opt,name=platformId,proto3" json:"platformId,omitempty"`
}
func (x *EMP) Reset() {
*x = EMP{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EMP) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EMP) ProtoMessage() {}
func (x *EMP) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use EMP.ProtoReflect.Descriptor instead.
func (*EMP) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{7}
}
func (x *EMP) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *EMP) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *EMP) GetPlatformId() uint32 {
if x != nil {
return x.PlatformId
}
return 0
}
// 曲度
type Qd struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
}
func (x *Qd) Reset() {
*x = Qd{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Qd) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Qd) ProtoMessage() {}
func (x *Qd) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Qd.ProtoReflect.Descriptor instead.
func (*Qd) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{8}
}
func (x *Qd) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
// 坡度
type Pd struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
}
func (x *Pd) Reset() {
*x = Pd{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Pd) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Pd) ProtoMessage() {}
func (x *Pd) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Pd.ProtoReflect.Descriptor instead.
func (*Pd) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{9}
}
func (x *Pd) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
// 停车点
type ParkingSpot struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 列车编组数量
Tgn uint32 `protobuf:"varint,2,opt,name=tgn,proto3" json:"tgn,omitempty"`
// 公里标
Glb *GLB `protobuf:"bytes,3,opt,name=glb,proto3" json:"glb,omitempty"`
}
func (x *ParkingSpot) Reset() {
*x = ParkingSpot{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ParkingSpot) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ParkingSpot) ProtoMessage() {}
func (x *ParkingSpot) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ParkingSpot.ProtoReflect.Descriptor instead.
func (*ParkingSpot) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{10}
}
func (x *ParkingSpot) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *ParkingSpot) GetTgn() uint32 {
if x != nil {
return x.Tgn
}
return 0
}
func (x *ParkingSpot) GetGlb() *GLB {
if x != nil {
return x.Glb
}
return nil
}
// 应答器
type Balise struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 应答器类型
Type Balise_Type `protobuf:"varint,2,opt,name=type,proto3,enum=message.Balise_Type" json:"type,omitempty"`
// 应答器编号
Code string `protobuf:"bytes,3,opt,name=code,proto3" json:"code,omitempty"`
// 所属设备集中站id
EcsId uint32 `protobuf:"varint,4,opt,name=ecsId,proto3" json:"ecsId,omitempty"`
}
func (x *Balise) Reset() {
*x = Balise{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Balise) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Balise) ProtoMessage() {}
func (x *Balise) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Balise.ProtoReflect.Descriptor instead.
func (*Balise) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{11}
}
func (x *Balise) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Balise) GetType() Balise_Type {
if x != nil {
return x.Type
}
return Balise_FB
}
func (x *Balise) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Balise) GetEcsId() uint32 {
if x != nil {
return x.EcsId
}
return 0
}
// 区段分界点
type DevidingPoint struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 区段分界点类型
Type DevidingPoint_Type `protobuf:"varint,2,opt,name=type,proto3,enum=message.DevidingPoint_Type" json:"type,omitempty"`
// 区段分界点编号
Code string `protobuf:"bytes,3,opt,name=code,proto3" json:"code,omitempty"`
// 公里标
Glb *GLB `protobuf:"bytes,4,opt,name=glb,proto3" json:"glb,omitempty"`
// 关联的物理区段/道岔端点
SectionPorts []*SectionPort `protobuf:"bytes,5,rep,name=sectionPorts,proto3" json:"sectionPorts,omitempty"`
// 所属设备集中站id
EcsIds []uint32 `protobuf:"varint,6,rep,packed,name=ecsIds,proto3" json:"ecsIds,omitempty"`
}
func (x *DevidingPoint) Reset() {
*x = DevidingPoint{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DevidingPoint) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DevidingPoint) ProtoMessage() {}
func (x *DevidingPoint) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DevidingPoint.ProtoReflect.Descriptor instead.
func (*DevidingPoint) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{12}
}
func (x *DevidingPoint) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *DevidingPoint) GetType() DevidingPoint_Type {
if x != nil {
return x.Type
}
return DevidingPoint_Boundary
}
func (x *DevidingPoint) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *DevidingPoint) GetGlb() *GLB {
if x != nil {
return x.Glb
}
return nil
}
func (x *DevidingPoint) GetSectionPorts() []*SectionPort {
if x != nil {
return x.SectionPorts
}
return nil
}
func (x *DevidingPoint) GetEcsIds() []uint32 {
if x != nil {
return x.EcsIds
}
return nil
}
// 模型
type Model struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 模型id
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 模型类型
Type Model_Type `protobuf:"varint,2,opt,name=type,proto3,enum=message.Model_Type" json:"type,omitempty"`
}
func (x *Model) Reset() {
*x = Model{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Model) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Model) ProtoMessage() {}
func (x *Model) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Model.ProtoReflect.Descriptor instead.
func (*Model) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{13}
}
func (x *Model) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Model) GetType() Model_Type {
if x != nil {
return x.Type
}
return Model_Unknown
}
// 区段端点
type SectionPort struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 元素类型
//
// enum ElementType {
// // 区段
// Section = 0;
// // 道岔
// Turnout = 1;
// }
//
// 类型
Type Model_Type `protobuf:"varint,1,opt,name=type,proto3,enum=message.Model_Type" json:"type,omitempty"`
// 区段/道岔 id
Id uint32 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
// 端点
Port SectionPort_Type `protobuf:"varint,3,opt,name=port,proto3,enum=message.SectionPort_Type" json:"port,omitempty"`
}
func (x *SectionPort) Reset() {
*x = SectionPort{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SectionPort) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SectionPort) ProtoMessage() {}
func (x *SectionPort) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SectionPort.ProtoReflect.Descriptor instead.
func (*SectionPort) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{14}
}
func (x *SectionPort) GetType() Model_Type {
if x != nil {
return x.Type
}
return Model_Unknown
}
func (x *SectionPort) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *SectionPort) GetPort() SectionPort_Type {
if x != nil {
return x.Port
}
return SectionPort_A
}
// 信号机
type Signal struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 信号机编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 信号机模型型号
Model Signal_Model `protobuf:"varint,3,opt,name=model,proto3,enum=message.Signal_Model" json:"model,omitempty"`
// 所属设备集中站id
EcsId uint32 `protobuf:"varint,4,opt,name=ecsId,proto3" json:"ecsId,omitempty"`
// 列车运行方向(上下行)
Trd TRD `protobuf:"varint,5,opt,name=trd,proto3,enum=message.TRD" json:"trd,omitempty"`
}
func (x *Signal) Reset() {
*x = Signal{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Signal) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Signal) ProtoMessage() {}
func (x *Signal) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Signal.ProtoReflect.Descriptor instead.
func (*Signal) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{15}
}
func (x *Signal) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Signal) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Signal) GetModel() Signal_Model {
if x != nil {
return x.Model
}
return Signal_HLU_0_1_1
}
func (x *Signal) GetEcsId() uint32 {
if x != nil {
return x.EcsId
}
return 0
}
func (x *Signal) GetTrd() TRD {
if x != nil {
return x.Trd
}
return TRD_Upward
}
// 道岔
type Turnout struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 道岔编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 道岔模型型号
Model Turnout_Model `protobuf:"varint,3,opt,name=model,proto3,enum=message.Turnout_Model" json:"model,omitempty"`
// 道岔A端关联的区段/道岔端点
Asp *SectionPort `protobuf:"bytes,4,opt,name=asp,proto3" json:"asp,omitempty"`
// 道岔B端关联的区段/道岔端点
Bsp *SectionPort `protobuf:"bytes,5,opt,name=bsp,proto3" json:"bsp,omitempty"`
// 道岔C端关联的区段/道岔端点
Csp *SectionPort `protobuf:"bytes,6,opt,name=csp,proto3" json:"csp,omitempty"`
// 所属设备集中站id
EcsId uint32 `protobuf:"varint,7,opt,name=ecsId,proto3" json:"ecsId,omitempty"`
}
func (x *Turnout) Reset() {
*x = Turnout{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Turnout) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Turnout) ProtoMessage() {}
func (x *Turnout) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Turnout.ProtoReflect.Descriptor instead.
func (*Turnout) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{16}
}
func (x *Turnout) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Turnout) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Turnout) GetModel() Turnout_Model {
if x != nil {
return x.Model
}
return Turnout_ZDJ9_1
}
func (x *Turnout) GetAsp() *SectionPort {
if x != nil {
return x.Asp
}
return nil
}
func (x *Turnout) GetBsp() *SectionPort {
if x != nil {
return x.Bsp
}
return nil
}
func (x *Turnout) GetCsp() *SectionPort {
if x != nil {
return x.Csp
}
return nil
}
func (x *Turnout) GetEcsId() uint32 {
if x != nil {
return x.EcsId
}
return 0
}
// 物理区段
type Section struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 物理区段类型
Type Section_Type `protobuf:"varint,3,opt,name=type,proto3,enum=message.Section_Type" json:"type,omitempty"`
// 物理区段A端关联的区段/道岔端点
Asp *SectionPort `protobuf:"bytes,4,opt,name=asp,proto3" json:"asp,omitempty"`
// 物理区段B端关联的区段/道岔端点
Bsp *SectionPort `protobuf:"bytes,5,opt,name=bsp,proto3" json:"bsp,omitempty"`
// 所属设备集中站id
EcsId uint32 `protobuf:"varint,6,opt,name=ecsId,proto3" json:"ecsId,omitempty"`
// 列车运行方向(上下行)
Trd TRD `protobuf:"varint,7,opt,name=trd,proto3,enum=message.TRD" json:"trd,omitempty"`
}
func (x *Section) Reset() {
*x = Section{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Section) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Section) ProtoMessage() {}
func (x *Section) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Section.ProtoReflect.Descriptor instead.
func (*Section) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{17}
}
func (x *Section) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Section) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Section) GetType() Section_Type {
if x != nil {
return x.Type
}
return Section_Physical
}
func (x *Section) GetAsp() *SectionPort {
if x != nil {
return x.Asp
}
return nil
}
func (x *Section) GetBsp() *SectionPort {
if x != nil {
return x.Bsp
}
return nil
}
func (x *Section) GetEcsId() uint32 {
if x != nil {
return x.EcsId
}
return 0
}
func (x *Section) GetTrd() TRD {
if x != nil {
return x.Trd
}
return TRD_Upward
}
// 屏蔽门
type Psd struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 关联的站台
PlatformId uint32 `protobuf:"varint,3,opt,name=platformId,proto3" json:"platformId,omitempty"`
}
func (x *Psd) Reset() {
*x = Psd{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Psd) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Psd) ProtoMessage() {}
func (x *Psd) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Psd.ProtoReflect.Descriptor instead.
func (*Psd) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{18}
}
func (x *Psd) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Psd) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Psd) GetPlatformId() uint32 {
if x != nil {
return x.PlatformId
}
return 0
}
// 站台
type Platform struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 所属车站
StationId uint32 `protobuf:"varint,3,opt,name=stationId,proto3" json:"stationId,omitempty"`
// 关联物理区段(站台轨)
PhysicalSectionId uint32 `protobuf:"varint,4,opt,name=physicalSectionId,proto3" json:"physicalSectionId,omitempty"`
}
func (x *Platform) Reset() {
*x = Platform{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Platform) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Platform) ProtoMessage() {}
func (x *Platform) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Platform.ProtoReflect.Descriptor instead.
func (*Platform) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{19}
}
func (x *Platform) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Platform) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Platform) GetStationId() uint32 {
if x != nil {
return x.StationId
}
return 0
}
func (x *Platform) GetPhysicalSectionId() uint32 {
if x != nil {
return x.PhysicalSectionId
}
return 0
}
// 车站
type Station struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 车站名
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
// 车站站名
Zname string `protobuf:"bytes,3,opt,name=zname,proto3" json:"zname,omitempty"`
// 车站公里标
Glb *GLB `protobuf:"bytes,4,opt,name=glb,proto3" json:"glb,omitempty"`
// 是否设备集中站(Equipment centralized station)
IsEcs bool `protobuf:"varint,5,opt,name=isEcs,proto3" json:"isEcs,omitempty"`
// 是否停车场/车辆段
IsCd bool `protobuf:"varint,6,opt,name=isCd,proto3" json:"isCd,omitempty"`
// 集中站关联下属车站
EcsStationIds []uint32 `protobuf:"varint,7,rep,packed,name=ecsStationIds,proto3" json:"ecsStationIds,omitempty"`
}
func (x *Station) Reset() {
*x = Station{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Station) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Station) ProtoMessage() {}
func (x *Station) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Station.ProtoReflect.Descriptor instead.
func (*Station) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{20}
}
func (x *Station) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Station) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Station) GetZname() string {
if x != nil {
return x.Zname
}
return ""
}
func (x *Station) GetGlb() *GLB {
if x != nil {
return x.Glb
}
return nil
}
func (x *Station) GetIsEcs() bool {
if x != nil {
return x.IsEcs
}
return false
}
func (x *Station) GetIsCd() bool {
if x != nil {
return x.IsCd
}
return false
}
func (x *Station) GetEcsStationIds() []uint32 {
if x != nil {
return x.EcsStationIds
}
return nil
}
// 公里标
type GLB struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 坐标系编号
Zbx string `protobuf:"bytes,1,opt,name=zbx,proto3" json:"zbx,omitempty"`
// 左右行
Right bool `protobuf:"varint,2,opt,name=right,proto3" json:"right,omitempty"`
// 公里标值,单位mm
Value int64 `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"`
}
func (x *GLB) Reset() {
*x = GLB{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GLB) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GLB) ProtoMessage() {}
func (x *GLB) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[21]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GLB.ProtoReflect.Descriptor instead.
func (*GLB) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{21}
}
func (x *GLB) GetZbx() string {
if x != nil {
return x.Zbx
}
return ""
}
func (x *GLB) GetRight() bool {
if x != nil {
return x.Right
}
return false
}
func (x *GLB) GetValue() int64 {
if x != nil {
return x.Value
}
return 0
}
// 联锁设备布置数据
type CiJDQBZ struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 设备集中站uid
EcsName string `protobuf:"bytes,1,opt,name=ecsName,proto3" json:"ecsName,omitempty"`
// 继电器
Relays []*Relay `protobuf:"bytes,2,rep,name=relays,proto3" json:"relays,omitempty"`
// 断相保护器
Pfps []*PFP `protobuf:"bytes,3,rep,name=pfps,proto3" json:"pfps,omitempty"`
// 设备电气组合组
DeviceEcgDatas []*DeviceEcc `protobuf:"bytes,4,rep,name=deviceEcgDatas,proto3" json:"deviceEcgDatas,omitempty"`
// 联锁采集码表
Cjt []*CiCjTable `protobuf:"bytes,5,rep,name=cjt,proto3" json:"cjt,omitempty"`
// 联锁驱动码表
Qdt []*CiQdTable `protobuf:"bytes,6,rep,name=qdt,proto3" json:"qdt,omitempty"`
// 联锁区段码位表
SectionIds []uint32 `protobuf:"varint,7,rep,packed,name=sectionIds,proto3" json:"sectionIds,omitempty"`
}
func (x *CiJDQBZ) Reset() {
*x = CiJDQBZ{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CiJDQBZ) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CiJDQBZ) ProtoMessage() {}
func (x *CiJDQBZ) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[22]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CiJDQBZ.ProtoReflect.Descriptor instead.
func (*CiJDQBZ) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{22}
}
func (x *CiJDQBZ) GetEcsName() string {
if x != nil {
return x.EcsName
}
return ""
}
func (x *CiJDQBZ) GetRelays() []*Relay {
if x != nil {
return x.Relays
}
return nil
}
func (x *CiJDQBZ) GetPfps() []*PFP {
if x != nil {
return x.Pfps
}
return nil
}
func (x *CiJDQBZ) GetDeviceEcgDatas() []*DeviceEcc {
if x != nil {
return x.DeviceEcgDatas
}
return nil
}
func (x *CiJDQBZ) GetCjt() []*CiCjTable {
if x != nil {
return x.Cjt
}
return nil
}
func (x *CiJDQBZ) GetQdt() []*CiQdTable {
if x != nil {
return x.Qdt
}
return nil
}
func (x *CiJDQBZ) GetSectionIds() []uint32 {
if x != nil {
return x.SectionIds
}
return nil
}
// 联锁区段码位表
type CiSectionTable struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 区段id
SectionIds []uint32 `protobuf:"varint,1,rep,packed,name=sectionIds,proto3" json:"sectionIds,omitempty"`
}
func (x *CiSectionTable) Reset() {
*x = CiSectionTable{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CiSectionTable) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CiSectionTable) ProtoMessage() {}
func (x *CiSectionTable) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[23]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CiSectionTable.ProtoReflect.Descriptor instead.
func (*CiSectionTable) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{23}
}
func (x *CiSectionTable) GetSectionIds() []uint32 {
if x != nil {
return x.SectionIds
}
return nil
}
// 联锁驱动码表
type CiQdTable struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 继电器id(按位顺序排列)
RelayIds []string `protobuf:"bytes,1,rep,name=relayIds,proto3" json:"relayIds,omitempty"`
}
func (x *CiQdTable) Reset() {
*x = CiQdTable{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CiQdTable) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CiQdTable) ProtoMessage() {}
func (x *CiQdTable) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CiQdTable.ProtoReflect.Descriptor instead.
func (*CiQdTable) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{24}
}
func (x *CiQdTable) GetRelayIds() []string {
if x != nil {
return x.RelayIds
}
return nil
}
// 联锁采集码表
type CiCjTable struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 采集继电器接点(按位顺序排列)
Items []*CiCjItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
}
func (x *CiCjTable) Reset() {
*x = CiCjTable{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CiCjTable) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CiCjTable) ProtoMessage() {}
func (x *CiCjTable) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CiCjTable.ProtoReflect.Descriptor instead.
func (*CiCjTable) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{25}
}
func (x *CiCjTable) GetItems() []*CiCjItem {
if x != nil {
return x.Items
}
return nil
}
// 联锁采集项
type CiCjItem struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 继电器id
Uint32 string `protobuf:"bytes,1,opt,name=uint32,proto3" json:"uint32,omitempty"`
// 采集继电器前后接点(前接点为吸起/定位),true-前接点,false-后接点
Q bool `protobuf:"varint,2,opt,name=q,proto3" json:"q,omitempty"`
}
func (x *CiCjItem) Reset() {
*x = CiCjItem{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CiCjItem) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CiCjItem) ProtoMessage() {}
func (x *CiCjItem) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CiCjItem.ProtoReflect.Descriptor instead.
func (*CiCjItem) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{26}
}
func (x *CiCjItem) GetUint32() string {
if x != nil {
return x.Uint32
}
return ""
}
func (x *CiCjItem) GetQ() bool {
if x != nil {
return x.Q
}
return false
}
// 断相保护器(Phase failure protector)
type PFP struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
}
func (x *PFP) Reset() {
*x = PFP{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PFP) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PFP) ProtoMessage() {}
func (x *PFP) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PFP.ProtoReflect.Descriptor instead.
func (*PFP) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{27}
}
func (x *PFP) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *PFP) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
// 继电器
type Relay struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 继电器型号
Model Relay_Model `protobuf:"varint,2,opt,name=model,proto3,enum=message.Relay_Model" json:"model,omitempty"`
// 编号
Code string `protobuf:"bytes,3,opt,name=code,proto3" json:"code,omitempty"`
}
func (x *Relay) Reset() {
*x = Relay{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Relay) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Relay) ProtoMessage() {}
func (x *Relay) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Relay.ProtoReflect.Descriptor instead.
func (*Relay) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{28}
}
func (x *Relay) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Relay) GetModel() Relay_Model {
if x != nil {
return x.Model
}
return Relay_JPXC_1000
}
func (x *Relay) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
// 按钮、灯等监控盘(IBP/门控箱/PSL等)
type JKP struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 数据id
Gid string `protobuf:"bytes,1,opt,name=gid,proto3" json:"gid,omitempty"`
// 数据类型
Type JKP_Type `protobuf:"varint,2,opt,name=type,proto3,enum=message.JKP_Type" json:"type,omitempty"`
// 开关
Kgs []*KaiGuan `protobuf:"bytes,3,rep,name=kgs,proto3" json:"kgs,omitempty"`
// 灯
Lamps []*Lamp `protobuf:"bytes,4,rep,name=lamps,proto3" json:"lamps,omitempty"`
// 警铃
Alarms []*Alarm `protobuf:"bytes,5,rep,name=alarms,proto3" json:"alarms,omitempty"`
// 设备电子元件组合
DeviceEccs []*DeviceEcc `protobuf:"bytes,6,rep,name=deviceEccs,proto3" json:"deviceEccs,omitempty"`
}
func (x *JKP) Reset() {
*x = JKP{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *JKP) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*JKP) ProtoMessage() {}
func (x *JKP) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use JKP.ProtoReflect.Descriptor instead.
func (*JKP) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{29}
}
func (x *JKP) GetGid() string {
if x != nil {
return x.Gid
}
return ""
}
func (x *JKP) GetType() JKP_Type {
if x != nil {
return x.Type
}
return JKP_IBP
}
func (x *JKP) GetKgs() []*KaiGuan {
if x != nil {
return x.Kgs
}
return nil
}
func (x *JKP) GetLamps() []*Lamp {
if x != nil {
return x.Lamps
}
return nil
}
func (x *JKP) GetAlarms() []*Alarm {
if x != nil {
return x.Alarms
}
return nil
}
func (x *JKP) GetDeviceEccs() []*DeviceEcc {
if x != nil {
return x.DeviceEccs
}
return nil
}
// 警铃/蜂鸣器
type Alarm struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
}
func (x *Alarm) Reset() {
*x = Alarm{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Alarm) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Alarm) ProtoMessage() {}
func (x *Alarm) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Alarm.ProtoReflect.Descriptor instead.
func (*Alarm) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{30}
}
func (x *Alarm) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Alarm) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
// 开关
type KaiGuan struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
// 是否自复位
Zfw bool `protobuf:"varint,3,opt,name=zfw,proto3" json:"zfw,omitempty"`
// 是否有背光灯
Lamp bool `protobuf:"varint,4,opt,name=lamp,proto3" json:"lamp,omitempty"`
}
func (x *KaiGuan) Reset() {
*x = KaiGuan{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *KaiGuan) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KaiGuan) ProtoMessage() {}
func (x *KaiGuan) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use KaiGuan.ProtoReflect.Descriptor instead.
func (*KaiGuan) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{31}
}
func (x *KaiGuan) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *KaiGuan) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *KaiGuan) GetZfw() bool {
if x != nil {
return x.Zfw
}
return false
}
func (x *KaiGuan) GetLamp() bool {
if x != nil {
return x.Lamp
}
return false
}
// 灯
type Lamp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// 编号
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"`
}
func (x *Lamp) Reset() {
*x = Lamp{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Lamp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Lamp) ProtoMessage() {}
func (x *Lamp) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Lamp.ProtoReflect.Descriptor instead.
func (*Lamp) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{32}
}
func (x *Lamp) GetId() uint32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Lamp) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
// 设备电子元件组合
type DeviceEcc struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 设备类型
DeviceType Model_Type `protobuf:"varint,1,opt,name=deviceType,proto3,enum=message.Model_Type" json:"deviceType,omitempty"`
// 设备编号
DeviceCode string `protobuf:"bytes,2,opt,name=deviceCode,proto3" json:"deviceCode,omitempty"`
// 电子元件组合
Ecc []*Ecc `protobuf:"bytes,3,rep,name=ecc,proto3" json:"ecc,omitempty"`
}
func (x *DeviceEcc) Reset() {
*x = DeviceEcc{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeviceEcc) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeviceEcc) ProtoMessage() {}
func (x *DeviceEcc) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeviceEcc.ProtoReflect.Descriptor instead.
func (*DeviceEcc) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{33}
}
func (x *DeviceEcc) GetDeviceType() Model_Type {
if x != nil {
return x.DeviceType
}
return Model_Unknown
}
func (x *DeviceEcc) GetDeviceCode() string {
if x != nil {
return x.DeviceCode
}
return ""
}
func (x *DeviceEcc) GetEcc() []*Ecc {
if x != nil {
return x.Ecc
}
return nil
}
// 电子元件组合
type Ecc struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// 组合名称
Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"`
// 关联的电子元件(包括但不限于继电器、断相保护器、按钮、灯等)id
Ids []uint32 `protobuf:"varint,2,rep,packed,name=ids,proto3" json:"ids,omitempty"`
}
func (x *Ecc) Reset() {
*x = Ecc{}
if protoimpl.UnsafeEnabled {
mi := &file_cg_repo_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Ecc) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Ecc) ProtoMessage() {}
func (x *Ecc) ProtoReflect() protoreflect.Message {
mi := &file_cg_repo_proto_msgTypes[34]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Ecc.ProtoReflect.Descriptor instead.
func (*Ecc) Descriptor() ([]byte, []int) {
return file_cg_repo_proto_rawDescGZIP(), []int{34}
}
func (x *Ecc) GetCode() string {
if x != nil {
return x.Code
}
return ""
}
func (x *Ecc) GetIds() []uint32 {
if x != nil {
return x.Ids
}
return nil
}
var File_cg_repo_proto protoreflect.FileDescriptor
var file_cg_repo_proto_rawDesc = []byte{
0x0a, 0x0d, 0x63, 0x67, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x5f, 0x0a, 0x06, 0x43, 0x67, 0x52, 0x65,
0x70, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x0d, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x65,
0x52, 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x04, 0x6a, 0x6b, 0x70, 0x73, 0x18,
0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e,
0x4a, 0x4b, 0x50, 0x52, 0x04, 0x6a, 0x6b, 0x70, 0x73, 0x22, 0x7d, 0x0a, 0x04, 0x4c, 0x69, 0x6e,
0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x63, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a,
0x04, 0x78, 0x68, 0x62, 0x7a, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x58, 0x48, 0x42, 0x5a, 0x52, 0x04, 0x78, 0x68, 0x62, 0x7a,
0x12, 0x26, 0x0a, 0x05, 0x6a, 0x64, 0x71, 0x62, 0x7a, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x10, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x69, 0x4a, 0x44, 0x51, 0x42,
0x5a, 0x52, 0x05, 0x6a, 0x64, 0x71, 0x62, 0x7a, 0x22, 0xe0, 0x05, 0x0a, 0x04, 0x58, 0x48, 0x42,
0x5a, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
0x64, 0x12, 0x2c, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
0x2f, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x6c, 0x61,
0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73,
0x12, 0x20, 0x0a, 0x04, 0x70, 0x73, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c,
0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x73, 0x64, 0x52, 0x04, 0x70, 0x73,
0x64, 0x73, 0x12, 0x2c, 0x0a, 0x08, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x12, 0x2c, 0x0a, 0x08, 0x74, 0x75, 0x72, 0x6e, 0x6f, 0x75, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x75, 0x72,
0x6e, 0x6f, 0x75, 0x74, 0x52, 0x08, 0x74, 0x75, 0x72, 0x6e, 0x6f, 0x75, 0x74, 0x73, 0x12, 0x3e,
0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73,
0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x2e, 0x44, 0x65, 0x76, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0e,
0x64, 0x65, 0x76, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x29,
0x0a, 0x07, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x0f, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c,
0x52, 0x07, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x73, 0x12, 0x29, 0x0a, 0x07, 0x62, 0x61, 0x6c,
0x69, 0x73, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2e, 0x42, 0x61, 0x6c, 0x69, 0x73, 0x65, 0x52, 0x07, 0x62, 0x61, 0x6c,
0x69, 0x73, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53,
0x70, 0x6f, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x6f, 0x74,
0x52, 0x0c, 0x70, 0x61, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x6f, 0x74, 0x73, 0x12, 0x1d,
0x0a, 0x03, 0x70, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x64, 0x52, 0x03, 0x70, 0x64, 0x73, 0x12, 0x1d, 0x0a,
0x03, 0x71, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2e, 0x51, 0x64, 0x52, 0x03, 0x71, 0x64, 0x73, 0x12, 0x20, 0x0a, 0x04,
0x65, 0x6d, 0x70, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2e, 0x45, 0x4d, 0x50, 0x52, 0x04, 0x65, 0x6d, 0x70, 0x73, 0x12, 0x20,
0x0a, 0x04, 0x74, 0x64, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x44, 0x54, 0x52, 0x04, 0x74, 0x64, 0x74, 0x73,
0x12, 0x20, 0x0a, 0x04, 0x6d, 0x6b, 0x78, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c,
0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x6b, 0x78, 0x52, 0x04, 0x6d, 0x6b,
0x78, 0x73, 0x12, 0x20, 0x0a, 0x04, 0x70, 0x73, 0x6c, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x53, 0x4c, 0x52, 0x04,
0x70, 0x73, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x04, 0x73, 0x70, 0x6b, 0x73, 0x18, 0x11, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x50, 0x4b,
0x53, 0x52, 0x04, 0x73, 0x70, 0x6b, 0x73, 0x12, 0x32, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63,
0x65, 0x45, 0x63, 0x63, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x45, 0x63, 0x63, 0x52,
0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x45, 0x63, 0x63, 0x73, 0x22, 0x4a, 0x0a, 0x04, 0x53,
0x50, 0x4b, 0x53, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66,
0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61,
0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x03, 0x50, 0x53, 0x4c, 0x12, 0x0e,
0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12,
0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f,
0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x73, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x05, 0x70, 0x73, 0x64, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x03, 0x4d, 0x6b, 0x78, 0x12,
0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12,
0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63,
0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x73, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x05, 0x70, 0x73, 0x64, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x03, 0x54, 0x44, 0x54,
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64,
0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x63, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
0x72, 0x6d, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x03, 0x45, 0x4d, 0x50, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63,
0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12,
0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x22,
0x14, 0x0a, 0x02, 0x51, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x02, 0x69, 0x64, 0x22, 0x14, 0x0a, 0x02, 0x50, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x0b, 0x50,
0x61, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x6f, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x67,
0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x74, 0x67, 0x6e, 0x12, 0x1e, 0x0a, 0x03,
0x67, 0x6c, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x2e, 0x47, 0x4c, 0x42, 0x52, 0x03, 0x67, 0x6c, 0x62, 0x22, 0x84, 0x01, 0x0a,
0x06, 0x42, 0x61, 0x6c, 0x69, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e,
0x42, 0x61, 0x6c, 0x69, 0x73, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70,
0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x63, 0x73, 0x49, 0x64, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x63, 0x73, 0x49, 0x64, 0x22, 0x16, 0x0a, 0x04, 0x54,
0x79, 0x70, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x46, 0x42, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x54,
0x42, 0x10, 0x01, 0x22, 0xfd, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x76, 0x69, 0x64, 0x69, 0x6e, 0x67,
0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x44, 0x65,
0x76, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x2e, 0x54, 0x79, 0x70, 0x65,
0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x03, 0x67, 0x6c,
0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x2e, 0x47, 0x4c, 0x42, 0x52, 0x03, 0x67, 0x6c, 0x62, 0x12, 0x38, 0x0a, 0x0c, 0x73, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x0c, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50,
0x6f, 0x72, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x63, 0x73, 0x49, 0x64, 0x73, 0x18, 0x06,
0x20, 0x03, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x63, 0x73, 0x49, 0x64, 0x73, 0x22, 0x25, 0x0a, 0x04,
0x54, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x79,
0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4a, 0x5a, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x4a, 0x59,
0x4a, 0x10, 0x02, 0x22, 0x7b, 0x0a, 0x05, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x0e, 0x0a, 0x02,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x27, 0x0a, 0x04,
0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52,
0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x39, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a,
0x07, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x75, 0x72, 0x6e, 0x6f,
0x75, 0x74, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x10, 0x03,
0x22, 0x92, 0x01, 0x0a, 0x0b, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74,
0x12, 0x27, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13,
0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54,
0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2d, 0x0a, 0x04, 0x70, 0x6f, 0x72,
0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x2e, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x2e, 0x54, 0x79,
0x70, 0x65, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x1b, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65,
0x12, 0x05, 0x0a, 0x01, 0x41, 0x10, 0x00, 0x12, 0x05, 0x0a, 0x01, 0x42, 0x10, 0x01, 0x12, 0x05,
0x0a, 0x01, 0x43, 0x10, 0x02, 0x22, 0xd8, 0x02, 0x0a, 0x06, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c,
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64,
0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x63, 0x6f, 0x64, 0x65, 0x12, 0x2b, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x69,
0x67, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65,
0x6c, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x63, 0x73, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d,
0x52, 0x05, 0x65, 0x63, 0x73, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x03, 0x74, 0x72, 0x64, 0x18, 0x05,
0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54,
0x52, 0x44, 0x52, 0x03, 0x74, 0x72, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x05, 0x4d, 0x6f, 0x64, 0x65,
0x6c, 0x12, 0x0d, 0x0a, 0x09, 0x48, 0x4c, 0x55, 0x5f, 0x30, 0x5f, 0x31, 0x5f, 0x31, 0x10, 0x00,
0x12, 0x0d, 0x0a, 0x09, 0x48, 0x4c, 0x55, 0x5f, 0x30, 0x5f, 0x30, 0x5f, 0x31, 0x10, 0x01, 0x12,
0x0d, 0x0a, 0x09, 0x48, 0x4c, 0x55, 0x5f, 0x30, 0x5f, 0x31, 0x5f, 0x30, 0x10, 0x02, 0x12, 0x0d,
0x0a, 0x09, 0x48, 0x4c, 0x55, 0x5f, 0x55, 0x5f, 0x30, 0x5f, 0x30, 0x10, 0x03, 0x12, 0x0d, 0x0a,
0x09, 0x48, 0x4c, 0x55, 0x5f, 0x4c, 0x5f, 0x31, 0x5f, 0x31, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09,
0x48, 0x4c, 0x55, 0x5f, 0x4c, 0x5f, 0x31, 0x5f, 0x30, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x48,
0x4c, 0x55, 0x5f, 0x4c, 0x55, 0x5f, 0x30, 0x5f, 0x30, 0x10, 0x06, 0x12, 0x08, 0x0a, 0x04, 0x48,
0x4c, 0x5f, 0x30, 0x10, 0x07, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x4c, 0x5f, 0x4c, 0x10, 0x08, 0x12,
0x08, 0x0a, 0x04, 0x48, 0x55, 0x5f, 0x30, 0x10, 0x09, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x55, 0x5f,
0x55, 0x10, 0x0a, 0x12, 0x05, 0x0a, 0x01, 0x48, 0x10, 0x0b, 0x12, 0x06, 0x0a, 0x02, 0x41, 0x42,
0x10, 0x0c, 0x12, 0x0d, 0x0a, 0x09, 0x48, 0x42, 0x55, 0x5f, 0x30, 0x5f, 0x31, 0x5f, 0x30, 0x10,
0x0d, 0x12, 0x0d, 0x0a, 0x09, 0x48, 0x42, 0x55, 0x5f, 0x55, 0x5f, 0x30, 0x5f, 0x30, 0x10, 0x0e,
0x22, 0x8a, 0x02, 0x0a, 0x07, 0x54, 0x75, 0x72, 0x6e, 0x6f, 0x75, 0x74, 0x12, 0x0e, 0x0a, 0x02,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04,
0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65,
0x12, 0x2c, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x16, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x75, 0x72, 0x6e, 0x6f, 0x75,
0x74, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x26,
0x0a, 0x03, 0x61, 0x73, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72,
0x74, 0x52, 0x03, 0x61, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x03, 0x62, 0x73, 0x70, 0x18, 0x05, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x03, 0x62, 0x73, 0x70, 0x12, 0x26,
0x0a, 0x03, 0x63, 0x73, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72,
0x74, 0x52, 0x03, 0x63, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x63, 0x73, 0x49, 0x64, 0x18,
0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x63, 0x73, 0x49, 0x64, 0x22, 0x1f, 0x0a, 0x05,
0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x0a, 0x0a, 0x06, 0x5a, 0x44, 0x4a, 0x39, 0x5f, 0x31, 0x10,
0x00, 0x12, 0x0a, 0x0a, 0x06, 0x5a, 0x44, 0x4a, 0x39, 0x5f, 0x32, 0x10, 0x01, 0x22, 0x96, 0x02,
0x0a, 0x07, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x29, 0x0a,
0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x79,
0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x03, 0x61, 0x73, 0x70, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e,
0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x03, 0x61, 0x73, 0x70,
0x12, 0x26, 0x0a, 0x03, 0x62, 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50,
0x6f, 0x72, 0x74, 0x52, 0x03, 0x62, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x63, 0x73, 0x49,
0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x63, 0x73, 0x49, 0x64, 0x12, 0x1e,
0x0a, 0x03, 0x74, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x52, 0x44, 0x52, 0x03, 0x74, 0x72, 0x64, 0x22, 0x36,
0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63,
0x61, 0x6c, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x75, 0x72, 0x6e, 0x6f, 0x75, 0x74, 0x50,
0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4c, 0x6f, 0x67,
0x69, 0x63, 0x61, 0x6c, 0x10, 0x02, 0x22, 0x49, 0x0a, 0x03, 0x50, 0x73, 0x64, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64,
0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18,
0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49,
0x64, 0x22, 0x7a, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64,
0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12,
0x2c, 0x0a, 0x11, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x68, 0x79, 0x73,
0x69, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xb3, 0x01,
0x0a, 0x07, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a,
0x05, 0x7a, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x7a, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x03, 0x67, 0x6c, 0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x47, 0x4c, 0x42, 0x52, 0x03,
0x67, 0x6c, 0x62, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x73, 0x45, 0x63, 0x73, 0x18, 0x05, 0x20, 0x01,
0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x45, 0x63, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x43,
0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x43, 0x64, 0x12, 0x24, 0x0a,
0x0d, 0x65, 0x63, 0x73, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x18, 0x07,
0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x65, 0x63, 0x73, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x49, 0x64, 0x73, 0x22, 0x43, 0x0a, 0x03, 0x47, 0x4c, 0x42, 0x12, 0x10, 0x0a, 0x03, 0x7a, 0x62,
0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x7a, 0x62, 0x78, 0x12, 0x14, 0x0a, 0x05,
0x72, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x72, 0x69, 0x67,
0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x95, 0x02, 0x0a, 0x07, 0x43, 0x69, 0x4a,
0x44, 0x51, 0x42, 0x5a, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x63, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x63, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26,
0x0a, 0x06, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e,
0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x06,
0x72, 0x65, 0x6c, 0x61, 0x79, 0x73, 0x12, 0x20, 0x0a, 0x04, 0x70, 0x66, 0x70, 0x73, 0x18, 0x03,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50,
0x46, 0x50, 0x52, 0x04, 0x70, 0x66, 0x70, 0x73, 0x12, 0x3a, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69,
0x63, 0x65, 0x45, 0x63, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63,
0x65, 0x45, 0x63, 0x63, 0x52, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x45, 0x63, 0x67, 0x44,
0x61, 0x74, 0x61, 0x73, 0x12, 0x24, 0x0a, 0x03, 0x63, 0x6a, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x69, 0x43, 0x6a,
0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x03, 0x63, 0x6a, 0x74, 0x12, 0x24, 0x0a, 0x03, 0x71, 0x64,
0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x2e, 0x43, 0x69, 0x51, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x03, 0x71, 0x64, 0x74,
0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x18, 0x07,
0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73,
0x22, 0x30, 0x0a, 0x0e, 0x43, 0x69, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x62,
0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49,
0x64, 0x73, 0x22, 0x27, 0x0a, 0x09, 0x43, 0x69, 0x51, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12,
0x1a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x09, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x73, 0x22, 0x34, 0x0a, 0x09, 0x43,
0x69, 0x43, 0x6a, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x27, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x2e, 0x43, 0x69, 0x43, 0x6a, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x22, 0x30, 0x0a, 0x08, 0x43, 0x69, 0x43, 0x6a, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a,
0x06, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75,
0x69, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x0c, 0x0a, 0x01, 0x71, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
0x52, 0x01, 0x71, 0x22, 0x29, 0x0a, 0x03, 0x50, 0x46, 0x50, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0xe0,
0x01, 0x0a, 0x05, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65,
0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d,
0x6f, 0x64, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x86, 0x01, 0x0a, 0x05, 0x4d, 0x6f, 0x64,
0x65, 0x6c, 0x12, 0x0d, 0x0a, 0x09, 0x4a, 0x50, 0x58, 0x43, 0x5f, 0x31, 0x30, 0x30, 0x30, 0x10,
0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4a, 0x50, 0x58, 0x43, 0x5f, 0x31, 0x37, 0x30, 0x30, 0x10, 0x01,
0x12, 0x0d, 0x0a, 0x09, 0x4a, 0x57, 0x4a, 0x58, 0x43, 0x5f, 0x34, 0x38, 0x30, 0x10, 0x02, 0x12,
0x11, 0x0a, 0x0d, 0x4a, 0x57, 0x4a, 0x58, 0x43, 0x5f, 0x48, 0x31, 0x32, 0x35, 0x5f, 0x38, 0x30,
0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x4a, 0x57, 0x58, 0x43, 0x5f, 0x31, 0x37, 0x30, 0x30, 0x10,
0x04, 0x12, 0x0d, 0x0a, 0x09, 0x4a, 0x57, 0x58, 0x43, 0x5f, 0x48, 0x33, 0x34, 0x30, 0x10, 0x05,
0x12, 0x11, 0x0a, 0x0d, 0x4a, 0x59, 0x4a, 0x58, 0x43, 0x5f, 0x31, 0x36, 0x30, 0x5f, 0x32, 0x36,
0x30, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x4a, 0x5a, 0x58, 0x43, 0x5f, 0x48, 0x31, 0x38, 0x10,
0x07, 0x22, 0x86, 0x02, 0x0a, 0x03, 0x4a, 0x4b, 0x50, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x04, 0x74,
0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x2e, 0x4a, 0x4b, 0x50, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79,
0x70, 0x65, 0x12, 0x22, 0x0a, 0x03, 0x6b, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x10, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4b, 0x61, 0x69, 0x47, 0x75, 0x61,
0x6e, 0x52, 0x03, 0x6b, 0x67, 0x73, 0x12, 0x23, 0x0a, 0x05, 0x6c, 0x61, 0x6d, 0x70, 0x73, 0x18,
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e,
0x4c, 0x61, 0x6d, 0x70, 0x52, 0x05, 0x6c, 0x61, 0x6d, 0x70, 0x73, 0x12, 0x26, 0x0a, 0x06, 0x61,
0x6c, 0x61, 0x72, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x41, 0x6c, 0x61, 0x72, 0x6d, 0x52, 0x06, 0x61, 0x6c, 0x61,
0x72, 0x6d, 0x73, 0x12, 0x32, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x45, 0x63, 0x63,
0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x45, 0x63, 0x63, 0x52, 0x0a, 0x64, 0x65, 0x76,
0x69, 0x63, 0x65, 0x45, 0x63, 0x63, 0x73, 0x22, 0x21, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12,
0x07, 0x0a, 0x03, 0x49, 0x42, 0x50, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x50, 0x53, 0x4c, 0x10,
0x01, 0x12, 0x07, 0x0a, 0x03, 0x4d, 0x4b, 0x58, 0x10, 0x02, 0x22, 0x2b, 0x0a, 0x05, 0x41, 0x6c,
0x61, 0x72, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x53, 0x0a, 0x07, 0x4b, 0x61, 0x69, 0x47, 0x75,
0x61, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02,
0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x7a, 0x66, 0x77, 0x18, 0x03, 0x20,
0x01, 0x28, 0x08, 0x52, 0x03, 0x7a, 0x66, 0x77, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6d, 0x70,
0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6c, 0x61, 0x6d, 0x70, 0x22, 0x2a, 0x0a, 0x04,
0x4c, 0x61, 0x6d, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x80, 0x01, 0x0a, 0x09, 0x44, 0x65, 0x76,
0x69, 0x63, 0x65, 0x45, 0x63, 0x63, 0x12, 0x33, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52,
0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64,
0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x03, 0x65,
0x63, 0x63, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x2e, 0x45, 0x63, 0x63, 0x52, 0x03, 0x65, 0x63, 0x63, 0x22, 0x2b, 0x0a, 0x03, 0x45,
0x63, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20,
0x03, 0x28, 0x0d, 0x52, 0x03, 0x69, 0x64, 0x73, 0x2a, 0x1f, 0x0a, 0x03, 0x54, 0x52, 0x44, 0x12,
0x0a, 0x0a, 0x06, 0x55, 0x70, 0x77, 0x61, 0x72, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x44,
0x6f, 0x77, 0x6e, 0x77, 0x61, 0x72, 0x64, 0x10, 0x01, 0x42, 0x0c, 0x5a, 0x0a, 0x2e, 0x2f, 0x72,
0x65, 0x70, 0x6f, 0x2f, 0x64, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_cg_repo_proto_rawDescOnce sync.Once
file_cg_repo_proto_rawDescData = file_cg_repo_proto_rawDesc
)
func file_cg_repo_proto_rawDescGZIP() []byte {
file_cg_repo_proto_rawDescOnce.Do(func() {
file_cg_repo_proto_rawDescData = protoimpl.X.CompressGZIP(file_cg_repo_proto_rawDescData)
})
return file_cg_repo_proto_rawDescData
}
var file_cg_repo_proto_enumTypes = make([]protoimpl.EnumInfo, 10)
var file_cg_repo_proto_msgTypes = make([]protoimpl.MessageInfo, 35)
var file_cg_repo_proto_goTypes = []interface{}{
(TRD)(0), // 0: message.TRD
(Balise_Type)(0), // 1: message.Balise.Type
(DevidingPoint_Type)(0), // 2: message.DevidingPoint.Type
(Model_Type)(0), // 3: message.Model.Type
(SectionPort_Type)(0), // 4: message.SectionPort.Type
(Signal_Model)(0), // 5: message.Signal.Model
(Turnout_Model)(0), // 6: message.Turnout.Model
(Section_Type)(0), // 7: message.Section.Type
(Relay_Model)(0), // 8: message.Relay.Model
(JKP_Type)(0), // 9: message.JKP.Type
(*CgRepo)(nil), // 10: message.CgRepo
(*Line)(nil), // 11: message.Line
(*XHBZ)(nil), // 12: message.XHBZ
(*SPKS)(nil), // 13: message.SPKS
(*PSL)(nil), // 14: message.PSL
(*Mkx)(nil), // 15: message.Mkx
(*TDT)(nil), // 16: message.TDT
(*EMP)(nil), // 17: message.EMP
(*Qd)(nil), // 18: message.Qd
(*Pd)(nil), // 19: message.Pd
(*ParkingSpot)(nil), // 20: message.ParkingSpot
(*Balise)(nil), // 21: message.Balise
(*DevidingPoint)(nil), // 22: message.DevidingPoint
(*Model)(nil), // 23: message.Model
(*SectionPort)(nil), // 24: message.SectionPort
(*Signal)(nil), // 25: message.Signal
(*Turnout)(nil), // 26: message.Turnout
(*Section)(nil), // 27: message.Section
(*Psd)(nil), // 28: message.Psd
(*Platform)(nil), // 29: message.Platform
(*Station)(nil), // 30: message.Station
(*GLB)(nil), // 31: message.GLB
(*CiJDQBZ)(nil), // 32: message.CiJDQBZ
(*CiSectionTable)(nil), // 33: message.CiSectionTable
(*CiQdTable)(nil), // 34: message.CiQdTable
(*CiCjTable)(nil), // 35: message.CiCjTable
(*CiCjItem)(nil), // 36: message.CiCjItem
(*PFP)(nil), // 37: message.PFP
(*Relay)(nil), // 38: message.Relay
(*JKP)(nil), // 39: message.JKP
(*Alarm)(nil), // 40: message.Alarm
(*KaiGuan)(nil), // 41: message.KaiGuan
(*Lamp)(nil), // 42: message.Lamp
(*DeviceEcc)(nil), // 43: message.DeviceEcc
(*Ecc)(nil), // 44: message.Ecc
}
var file_cg_repo_proto_depIdxs = []int32{
11, // 0: message.CgRepo.lines:type_name -> message.Line
39, // 1: message.CgRepo.jkps:type_name -> message.JKP
12, // 2: message.Line.xhbz:type_name -> message.XHBZ
32, // 3: message.Line.jdqbz:type_name -> message.CiJDQBZ
30, // 4: message.XHBZ.stations:type_name -> message.Station
29, // 5: message.XHBZ.platforms:type_name -> message.Platform
28, // 6: message.XHBZ.psds:type_name -> message.Psd
27, // 7: message.XHBZ.sections:type_name -> message.Section
26, // 8: message.XHBZ.turnouts:type_name -> message.Turnout
22, // 9: message.XHBZ.devidingPoints:type_name -> message.DevidingPoint
25, // 10: message.XHBZ.signals:type_name -> message.Signal
21, // 11: message.XHBZ.balises:type_name -> message.Balise
20, // 12: message.XHBZ.parkingSpots:type_name -> message.ParkingSpot
19, // 13: message.XHBZ.pds:type_name -> message.Pd
18, // 14: message.XHBZ.qds:type_name -> message.Qd
17, // 15: message.XHBZ.emps:type_name -> message.EMP
16, // 16: message.XHBZ.tdts:type_name -> message.TDT
15, // 17: message.XHBZ.mkxs:type_name -> message.Mkx
14, // 18: message.XHBZ.psls:type_name -> message.PSL
13, // 19: message.XHBZ.spks:type_name -> message.SPKS
43, // 20: message.XHBZ.deviceEccs:type_name -> message.DeviceEcc
31, // 21: message.ParkingSpot.glb:type_name -> message.GLB
1, // 22: message.Balise.type:type_name -> message.Balise.Type
2, // 23: message.DevidingPoint.type:type_name -> message.DevidingPoint.Type
31, // 24: message.DevidingPoint.glb:type_name -> message.GLB
24, // 25: message.DevidingPoint.sectionPorts:type_name -> message.SectionPort
3, // 26: message.Model.type:type_name -> message.Model.Type
3, // 27: message.SectionPort.type:type_name -> message.Model.Type
4, // 28: message.SectionPort.port:type_name -> message.SectionPort.Type
5, // 29: message.Signal.model:type_name -> message.Signal.Model
0, // 30: message.Signal.trd:type_name -> message.TRD
6, // 31: message.Turnout.model:type_name -> message.Turnout.Model
24, // 32: message.Turnout.asp:type_name -> message.SectionPort
24, // 33: message.Turnout.bsp:type_name -> message.SectionPort
24, // 34: message.Turnout.csp:type_name -> message.SectionPort
7, // 35: message.Section.type:type_name -> message.Section.Type
24, // 36: message.Section.asp:type_name -> message.SectionPort
24, // 37: message.Section.bsp:type_name -> message.SectionPort
0, // 38: message.Section.trd:type_name -> message.TRD
31, // 39: message.Station.glb:type_name -> message.GLB
38, // 40: message.CiJDQBZ.relays:type_name -> message.Relay
37, // 41: message.CiJDQBZ.pfps:type_name -> message.PFP
43, // 42: message.CiJDQBZ.deviceEcgDatas:type_name -> message.DeviceEcc
35, // 43: message.CiJDQBZ.cjt:type_name -> message.CiCjTable
34, // 44: message.CiJDQBZ.qdt:type_name -> message.CiQdTable
36, // 45: message.CiCjTable.items:type_name -> message.CiCjItem
8, // 46: message.Relay.model:type_name -> message.Relay.Model
9, // 47: message.JKP.type:type_name -> message.JKP.Type
41, // 48: message.JKP.kgs:type_name -> message.KaiGuan
42, // 49: message.JKP.lamps:type_name -> message.Lamp
40, // 50: message.JKP.alarms:type_name -> message.Alarm
43, // 51: message.JKP.deviceEccs:type_name -> message.DeviceEcc
3, // 52: message.DeviceEcc.deviceType:type_name -> message.Model.Type
44, // 53: message.DeviceEcc.ecc:type_name -> message.Ecc
54, // [54:54] is the sub-list for method output_type
54, // [54:54] is the sub-list for method input_type
54, // [54:54] is the sub-list for extension type_name
54, // [54:54] is the sub-list for extension extendee
0, // [0:54] is the sub-list for field type_name
}
func init() { file_cg_repo_proto_init() }
func file_cg_repo_proto_init() {
if File_cg_repo_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_cg_repo_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CgRepo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Line); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*XHBZ); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SPKS); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PSL); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Mkx); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TDT); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EMP); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Qd); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Pd); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ParkingSpot); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Balise); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DevidingPoint); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Model); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SectionPort); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Signal); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Turnout); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Section); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Psd); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Platform); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Station); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GLB); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CiJDQBZ); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CiSectionTable); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CiQdTable); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CiCjTable); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CiCjItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PFP); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Relay); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*JKP); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Alarm); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*KaiGuan); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Lamp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeviceEcc); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_cg_repo_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Ecc); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_cg_repo_proto_rawDesc,
NumEnums: 10,
NumMessages: 35,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_cg_repo_proto_goTypes,
DependencyIndexes: file_cg_repo_proto_depIdxs,
EnumInfos: file_cg_repo_proto_enumTypes,
MessageInfos: file_cg_repo_proto_msgTypes,
}.Build()
File_cg_repo_proto = out.File
file_cg_repo_proto_rawDesc = nil
file_cg_repo_proto_goTypes = nil
file_cg_repo_proto_depIdxs = nil
}