| // Copyright 2018 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Code generated by protoc-gen-go. DO NOT EDIT. |
| // versions: |
| // protoc-gen-go v1.26.0 |
| // protoc v3.12.1 |
| // source: infra/libs/skylab/inventory/device.proto |
| |
| package inventory |
| |
| 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) |
| ) |
| |
| // Servo Firmware Channel describes the firmware expected to have on servos. |
| // Next Tag : 4 |
| type ServoFwChannel int32 |
| |
| const ( |
| // Servo firmware from Stable channel. |
| ServoFwChannel_SERVO_FW_STABLE ServoFwChannel = 0 |
| // The previous Servo firmware from Stable channel. |
| ServoFwChannel_SERVO_FW_PREV ServoFwChannel = 1 |
| // Servo firmware from Dev channel. |
| ServoFwChannel_SERVO_FW_DEV ServoFwChannel = 2 |
| // Servo firmware from Alpha channel. |
| ServoFwChannel_SERVO_FW_ALPHA ServoFwChannel = 3 |
| ) |
| |
| // Enum value maps for ServoFwChannel. |
| var ( |
| ServoFwChannel_name = map[int32]string{ |
| 0: "SERVO_FW_STABLE", |
| 1: "SERVO_FW_PREV", |
| 2: "SERVO_FW_DEV", |
| 3: "SERVO_FW_ALPHA", |
| } |
| ServoFwChannel_value = map[string]int32{ |
| "SERVO_FW_STABLE": 0, |
| "SERVO_FW_PREV": 1, |
| "SERVO_FW_DEV": 2, |
| "SERVO_FW_ALPHA": 3, |
| } |
| ) |
| |
| func (x ServoFwChannel) Enum() *ServoFwChannel { |
| p := new(ServoFwChannel) |
| *p = x |
| return p |
| } |
| |
| func (x ServoFwChannel) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (ServoFwChannel) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[0].Descriptor() |
| } |
| |
| func (ServoFwChannel) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[0] |
| } |
| |
| func (x ServoFwChannel) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *ServoFwChannel) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = ServoFwChannel(num) |
| return nil |
| } |
| |
| // Deprecated: Use ServoFwChannel.Descriptor instead. |
| func (ServoFwChannel) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{0} |
| } |
| |
| // copy of enum from dut_state.proto |
| // Next Tag: 22 |
| type PeripheralState int32 |
| |
| const ( |
| // Please keep for all unknown states. |
| PeripheralState_UNKNOWN PeripheralState = 0 |
| // Device and software on it is working as expected. |
| PeripheralState_WORKING PeripheralState = 1 |
| // Configuration for device is not provided. |
| PeripheralState_MISSING_CONFIG PeripheralState = 5 |
| // Configuration contains incorrect information. |
| PeripheralState_WRONG_CONFIG PeripheralState = 4 |
| // Device is not connected/plugged. |
| PeripheralState_NOT_CONNECTED PeripheralState = 2 |
| // Device is not reachable over ssh. |
| PeripheralState_NO_SSH PeripheralState = 6 |
| // Device is broken or not working as expected. the state used if no specified state for the issue. |
| PeripheralState_BROKEN PeripheralState = 3 |
| // Device cannot be repaired or required manual attention to fix/replace it. |
| PeripheralState_NEED_REPLACEMENT PeripheralState = 7 |
| // Servo specific states. |
| // cr50 console missing or unresponsive. |
| PeripheralState_CR50_CONSOLE_MISSING PeripheralState = 13 |
| // Servod daemon cannot start on servo-host because cr50 testlab not enabled. |
| PeripheralState_CCD_TESTLAB_ISSUE PeripheralState = 8 |
| // Servod daemon cannot start on servo-host. |
| PeripheralState_SERVOD_ISSUE PeripheralState = 9 |
| // device lid is not open. |
| PeripheralState_LID_OPEN_FAILED PeripheralState = 10 |
| // the ribbon cable between servo and DUT is broken or not connected. |
| PeripheralState_BAD_RIBBON_CABLE PeripheralState = 11 |
| // the EC on the DUT has issue. |
| PeripheralState_EC_BROKEN PeripheralState = 12 |
| // Servo is not connected to the DUT. |
| PeripheralState_DUT_NOT_CONNECTED PeripheralState = 14 |
| // Some component in servo-topology missed or not detected. |
| PeripheralState_TOPOLOGY_ISSUE PeripheralState = 15 |
| // SBU voltage issues effect CR50 detection. |
| PeripheralState_SBU_LOW_VOLTAGE PeripheralState = 16 |
| // CR50 SBU voltage detected but device was not enumerated. |
| PeripheralState_CR50_NOT_ENUMERATED PeripheralState = 17 |
| // Servo serial mismatch, when servo not detected and another serial detected on previous used port. |
| PeripheralState_SERVO_SERIAL_MISMATCH PeripheralState = 18 |
| // Issue to connect to servod by XMLRPC proxy. |
| PeripheralState_SERVOD_PROXY_ISSUE PeripheralState = 19 |
| // Issue related to servo-host. Timeout to start servod or issue with detecting devices. |
| PeripheralState_SERVO_HOST_ISSUE PeripheralState = 20 |
| // Issue related to servo_updater. |
| PeripheralState_SERVO_UPDATER_ISSUE PeripheralState = 21 |
| ) |
| |
| // Enum value maps for PeripheralState. |
| var ( |
| PeripheralState_name = map[int32]string{ |
| 0: "UNKNOWN", |
| 1: "WORKING", |
| 5: "MISSING_CONFIG", |
| 4: "WRONG_CONFIG", |
| 2: "NOT_CONNECTED", |
| 6: "NO_SSH", |
| 3: "BROKEN", |
| 7: "NEED_REPLACEMENT", |
| 13: "CR50_CONSOLE_MISSING", |
| 8: "CCD_TESTLAB_ISSUE", |
| 9: "SERVOD_ISSUE", |
| 10: "LID_OPEN_FAILED", |
| 11: "BAD_RIBBON_CABLE", |
| 12: "EC_BROKEN", |
| 14: "DUT_NOT_CONNECTED", |
| 15: "TOPOLOGY_ISSUE", |
| 16: "SBU_LOW_VOLTAGE", |
| 17: "CR50_NOT_ENUMERATED", |
| 18: "SERVO_SERIAL_MISMATCH", |
| 19: "SERVOD_PROXY_ISSUE", |
| 20: "SERVO_HOST_ISSUE", |
| 21: "SERVO_UPDATER_ISSUE", |
| } |
| PeripheralState_value = map[string]int32{ |
| "UNKNOWN": 0, |
| "WORKING": 1, |
| "MISSING_CONFIG": 5, |
| "WRONG_CONFIG": 4, |
| "NOT_CONNECTED": 2, |
| "NO_SSH": 6, |
| "BROKEN": 3, |
| "NEED_REPLACEMENT": 7, |
| "CR50_CONSOLE_MISSING": 13, |
| "CCD_TESTLAB_ISSUE": 8, |
| "SERVOD_ISSUE": 9, |
| "LID_OPEN_FAILED": 10, |
| "BAD_RIBBON_CABLE": 11, |
| "EC_BROKEN": 12, |
| "DUT_NOT_CONNECTED": 14, |
| "TOPOLOGY_ISSUE": 15, |
| "SBU_LOW_VOLTAGE": 16, |
| "CR50_NOT_ENUMERATED": 17, |
| "SERVO_SERIAL_MISMATCH": 18, |
| "SERVOD_PROXY_ISSUE": 19, |
| "SERVO_HOST_ISSUE": 20, |
| "SERVO_UPDATER_ISSUE": 21, |
| } |
| ) |
| |
| func (x PeripheralState) Enum() *PeripheralState { |
| p := new(PeripheralState) |
| *p = x |
| return p |
| } |
| |
| func (x PeripheralState) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (PeripheralState) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[1].Descriptor() |
| } |
| |
| func (PeripheralState) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[1] |
| } |
| |
| func (x PeripheralState) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *PeripheralState) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = PeripheralState(num) |
| return nil |
| } |
| |
| // Deprecated: Use PeripheralState.Descriptor instead. |
| func (PeripheralState) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{1} |
| } |
| |
| // copy of enum from dut_state.proto |
| // The states are using for DUT storage and USB-drive on servo. |
| // Next Tag: 5 |
| type HardwareState int32 |
| |
| const ( |
| // keep for all unknown state by default. |
| HardwareState_HARDWARE_UNKNOWN HardwareState = 0 |
| // Hardware is in good shape and pass all verifiers. |
| HardwareState_HARDWARE_NORMAL HardwareState = 1 |
| // Hardware is still good but some not critical verifiers did not pass or provided border values. |
| // (used for DUT storage when usage reached 98%) |
| HardwareState_HARDWARE_ACCEPTABLE HardwareState = 2 |
| // Hardware is broken or bad (did not pass verifiers). |
| HardwareState_HARDWARE_NEED_REPLACEMENT HardwareState = 3 |
| // Hardware is not detected to run verifiers. |
| // (used for USB-drive when it expected but not detected on the device) |
| HardwareState_HARDWARE_NOT_DETECTED HardwareState = 4 |
| ) |
| |
| // Enum value maps for HardwareState. |
| var ( |
| HardwareState_name = map[int32]string{ |
| 0: "HARDWARE_UNKNOWN", |
| 1: "HARDWARE_NORMAL", |
| 2: "HARDWARE_ACCEPTABLE", |
| 3: "HARDWARE_NEED_REPLACEMENT", |
| 4: "HARDWARE_NOT_DETECTED", |
| } |
| HardwareState_value = map[string]int32{ |
| "HARDWARE_UNKNOWN": 0, |
| "HARDWARE_NORMAL": 1, |
| "HARDWARE_ACCEPTABLE": 2, |
| "HARDWARE_NEED_REPLACEMENT": 3, |
| "HARDWARE_NOT_DETECTED": 4, |
| } |
| ) |
| |
| func (x HardwareState) Enum() *HardwareState { |
| p := new(HardwareState) |
| *p = x |
| return p |
| } |
| |
| func (x HardwareState) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (HardwareState) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[2].Descriptor() |
| } |
| |
| func (HardwareState) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[2] |
| } |
| |
| func (x HardwareState) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *HardwareState) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = HardwareState(num) |
| return nil |
| } |
| |
| // Deprecated: Use HardwareState.Descriptor instead. |
| func (HardwareState) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{2} |
| } |
| |
| // Next Tag: 3 |
| type LicenseType int32 |
| |
| const ( |
| LicenseType_LICENSE_TYPE_UNSPECIFIED LicenseType = 0 |
| // Microsoft Windows 10 Professional Desktop Operating System. |
| // Contact the Chrome OS Parallels team for license specifics. |
| LicenseType_LICENSE_TYPE_WINDOWS_10_PRO LicenseType = 1 |
| // Microsoft Office Standard. |
| // Contact the Chrome OS Parallels team for license specifics. |
| LicenseType_LICENSE_TYPE_MS_OFFICE_STANDARD LicenseType = 2 |
| ) |
| |
| // Enum value maps for LicenseType. |
| var ( |
| LicenseType_name = map[int32]string{ |
| 0: "LICENSE_TYPE_UNSPECIFIED", |
| 1: "LICENSE_TYPE_WINDOWS_10_PRO", |
| 2: "LICENSE_TYPE_MS_OFFICE_STANDARD", |
| } |
| LicenseType_value = map[string]int32{ |
| "LICENSE_TYPE_UNSPECIFIED": 0, |
| "LICENSE_TYPE_WINDOWS_10_PRO": 1, |
| "LICENSE_TYPE_MS_OFFICE_STANDARD": 2, |
| } |
| ) |
| |
| func (x LicenseType) Enum() *LicenseType { |
| p := new(LicenseType) |
| *p = x |
| return p |
| } |
| |
| func (x LicenseType) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (LicenseType) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[3].Descriptor() |
| } |
| |
| func (LicenseType) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[3] |
| } |
| |
| func (x LicenseType) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *LicenseType) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = LicenseType(num) |
| return nil |
| } |
| |
| // Deprecated: Use LicenseType.Descriptor instead. |
| func (LicenseType) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{3} |
| } |
| |
| // Similar to device phases, but for the cr50 module onboard. |
| // |
| // NEXT TAG: 3 |
| type SchedulableLabels_CR50_Phase int32 |
| |
| const ( |
| SchedulableLabels_CR50_PHASE_INVALID SchedulableLabels_CR50_Phase = 0 |
| SchedulableLabels_CR50_PHASE_PREPVT SchedulableLabels_CR50_Phase = 1 |
| SchedulableLabels_CR50_PHASE_PVT SchedulableLabels_CR50_Phase = 2 |
| ) |
| |
| // Enum value maps for SchedulableLabels_CR50_Phase. |
| var ( |
| SchedulableLabels_CR50_Phase_name = map[int32]string{ |
| 0: "CR50_PHASE_INVALID", |
| 1: "CR50_PHASE_PREPVT", |
| 2: "CR50_PHASE_PVT", |
| } |
| SchedulableLabels_CR50_Phase_value = map[string]int32{ |
| "CR50_PHASE_INVALID": 0, |
| "CR50_PHASE_PREPVT": 1, |
| "CR50_PHASE_PVT": 2, |
| } |
| ) |
| |
| func (x SchedulableLabels_CR50_Phase) Enum() *SchedulableLabels_CR50_Phase { |
| p := new(SchedulableLabels_CR50_Phase) |
| *p = x |
| return p |
| } |
| |
| func (x SchedulableLabels_CR50_Phase) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (SchedulableLabels_CR50_Phase) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[4].Descriptor() |
| } |
| |
| func (SchedulableLabels_CR50_Phase) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[4] |
| } |
| |
| func (x SchedulableLabels_CR50_Phase) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *SchedulableLabels_CR50_Phase) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = SchedulableLabels_CR50_Phase(num) |
| return nil |
| } |
| |
| // Deprecated: Use SchedulableLabels_CR50_Phase.Descriptor instead. |
| func (SchedulableLabels_CR50_Phase) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10, 0} |
| } |
| |
| // critical_pools are pool labels that the builders are dependent on, and that |
| // the cros-infra team is responsible for managing explicitly. All other pool |
| // labels used for adhoc labeling of DUTs go into self_serve_pools. |
| // |
| // NEXT TAG: 9 |
| type SchedulableLabels_DUTPool int32 |
| |
| const ( |
| SchedulableLabels_DUT_POOL_INVALID SchedulableLabels_DUTPool = 0 |
| SchedulableLabels_DUT_POOL_CQ SchedulableLabels_DUTPool = 1 |
| SchedulableLabels_DUT_POOL_BVT SchedulableLabels_DUTPool = 2 |
| SchedulableLabels_DUT_POOL_SUITES SchedulableLabels_DUTPool = 3 |
| SchedulableLabels_DUT_POOL_CTS SchedulableLabels_DUTPool = 4 |
| SchedulableLabels_DUT_POOL_CTS_PERBUILD SchedulableLabels_DUTPool = 5 |
| SchedulableLabels_DUT_POOL_CONTINUOUS SchedulableLabels_DUTPool = 6 |
| SchedulableLabels_DUT_POOL_ARC_PRESUBMIT SchedulableLabels_DUTPool = 7 |
| SchedulableLabels_DUT_POOL_QUOTA SchedulableLabels_DUTPool = 8 |
| ) |
| |
| // Enum value maps for SchedulableLabels_DUTPool. |
| var ( |
| SchedulableLabels_DUTPool_name = map[int32]string{ |
| 0: "DUT_POOL_INVALID", |
| 1: "DUT_POOL_CQ", |
| 2: "DUT_POOL_BVT", |
| 3: "DUT_POOL_SUITES", |
| 4: "DUT_POOL_CTS", |
| 5: "DUT_POOL_CTS_PERBUILD", |
| 6: "DUT_POOL_CONTINUOUS", |
| 7: "DUT_POOL_ARC_PRESUBMIT", |
| 8: "DUT_POOL_QUOTA", |
| } |
| SchedulableLabels_DUTPool_value = map[string]int32{ |
| "DUT_POOL_INVALID": 0, |
| "DUT_POOL_CQ": 1, |
| "DUT_POOL_BVT": 2, |
| "DUT_POOL_SUITES": 3, |
| "DUT_POOL_CTS": 4, |
| "DUT_POOL_CTS_PERBUILD": 5, |
| "DUT_POOL_CONTINUOUS": 6, |
| "DUT_POOL_ARC_PRESUBMIT": 7, |
| "DUT_POOL_QUOTA": 8, |
| } |
| ) |
| |
| func (x SchedulableLabels_DUTPool) Enum() *SchedulableLabels_DUTPool { |
| p := new(SchedulableLabels_DUTPool) |
| *p = x |
| return p |
| } |
| |
| func (x SchedulableLabels_DUTPool) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (SchedulableLabels_DUTPool) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[5].Descriptor() |
| } |
| |
| func (SchedulableLabels_DUTPool) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[5] |
| } |
| |
| func (x SchedulableLabels_DUTPool) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *SchedulableLabels_DUTPool) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = SchedulableLabels_DUTPool(num) |
| return nil |
| } |
| |
| // Deprecated: Use SchedulableLabels_DUTPool.Descriptor instead. |
| func (SchedulableLabels_DUTPool) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10, 1} |
| } |
| |
| // NEXT TAG: 3 |
| type SchedulableLabels_CTSABI int32 |
| |
| const ( |
| SchedulableLabels_CTS_ABI_INVALID SchedulableLabels_CTSABI = 0 |
| SchedulableLabels_CTS_ABI_ARM SchedulableLabels_CTSABI = 1 |
| SchedulableLabels_CTS_ABI_X86 SchedulableLabels_CTSABI = 2 |
| ) |
| |
| // Enum value maps for SchedulableLabels_CTSABI. |
| var ( |
| SchedulableLabels_CTSABI_name = map[int32]string{ |
| 0: "CTS_ABI_INVALID", |
| 1: "CTS_ABI_ARM", |
| 2: "CTS_ABI_X86", |
| } |
| SchedulableLabels_CTSABI_value = map[string]int32{ |
| "CTS_ABI_INVALID": 0, |
| "CTS_ABI_ARM": 1, |
| "CTS_ABI_X86": 2, |
| } |
| ) |
| |
| func (x SchedulableLabels_CTSABI) Enum() *SchedulableLabels_CTSABI { |
| p := new(SchedulableLabels_CTSABI) |
| *p = x |
| return p |
| } |
| |
| func (x SchedulableLabels_CTSABI) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (SchedulableLabels_CTSABI) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[6].Descriptor() |
| } |
| |
| func (SchedulableLabels_CTSABI) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[6] |
| } |
| |
| func (x SchedulableLabels_CTSABI) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *SchedulableLabels_CTSABI) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = SchedulableLabels_CTSABI(num) |
| return nil |
| } |
| |
| // Deprecated: Use SchedulableLabels_CTSABI.Descriptor instead. |
| func (SchedulableLabels_CTSABI) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10, 2} |
| } |
| |
| // NEXT TAG: 3 |
| type SchedulableLabels_CTSCPU int32 |
| |
| const ( |
| SchedulableLabels_CTS_CPU_INVALID SchedulableLabels_CTSCPU = 0 |
| SchedulableLabels_CTS_CPU_ARM SchedulableLabels_CTSCPU = 1 |
| SchedulableLabels_CTS_CPU_X86 SchedulableLabels_CTSCPU = 2 |
| ) |
| |
| // Enum value maps for SchedulableLabels_CTSCPU. |
| var ( |
| SchedulableLabels_CTSCPU_name = map[int32]string{ |
| 0: "CTS_CPU_INVALID", |
| 1: "CTS_CPU_ARM", |
| 2: "CTS_CPU_X86", |
| } |
| SchedulableLabels_CTSCPU_value = map[string]int32{ |
| "CTS_CPU_INVALID": 0, |
| "CTS_CPU_ARM": 1, |
| "CTS_CPU_X86": 2, |
| } |
| ) |
| |
| func (x SchedulableLabels_CTSCPU) Enum() *SchedulableLabels_CTSCPU { |
| p := new(SchedulableLabels_CTSCPU) |
| *p = x |
| return p |
| } |
| |
| func (x SchedulableLabels_CTSCPU) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (SchedulableLabels_CTSCPU) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[7].Descriptor() |
| } |
| |
| func (SchedulableLabels_CTSCPU) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[7] |
| } |
| |
| func (x SchedulableLabels_CTSCPU) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *SchedulableLabels_CTSCPU) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = SchedulableLabels_CTSCPU(num) |
| return nil |
| } |
| |
| // Deprecated: Use SchedulableLabels_CTSCPU.Descriptor instead. |
| func (SchedulableLabels_CTSCPU) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10, 3} |
| } |
| |
| // NEXT TAG: 2 |
| type SchedulableLabels_ECType int32 |
| |
| const ( |
| SchedulableLabels_EC_TYPE_INVALID SchedulableLabels_ECType = 0 |
| SchedulableLabels_EC_TYPE_CHROME_OS SchedulableLabels_ECType = 1 |
| ) |
| |
| // Enum value maps for SchedulableLabels_ECType. |
| var ( |
| SchedulableLabels_ECType_name = map[int32]string{ |
| 0: "EC_TYPE_INVALID", |
| 1: "EC_TYPE_CHROME_OS", |
| } |
| SchedulableLabels_ECType_value = map[string]int32{ |
| "EC_TYPE_INVALID": 0, |
| "EC_TYPE_CHROME_OS": 1, |
| } |
| ) |
| |
| func (x SchedulableLabels_ECType) Enum() *SchedulableLabels_ECType { |
| p := new(SchedulableLabels_ECType) |
| *p = x |
| return p |
| } |
| |
| func (x SchedulableLabels_ECType) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (SchedulableLabels_ECType) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[8].Descriptor() |
| } |
| |
| func (SchedulableLabels_ECType) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[8] |
| } |
| |
| func (x SchedulableLabels_ECType) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *SchedulableLabels_ECType) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = SchedulableLabels_ECType(num) |
| return nil |
| } |
| |
| // Deprecated: Use SchedulableLabels_ECType.Descriptor instead. |
| func (SchedulableLabels_ECType) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10, 4} |
| } |
| |
| // NEXT TAG: 6 |
| type SchedulableLabels_OSType int32 |
| |
| const ( |
| SchedulableLabels_OS_TYPE_INVALID SchedulableLabels_OSType = 0 |
| SchedulableLabels_OS_TYPE_ANDROID SchedulableLabels_OSType = 1 |
| SchedulableLabels_OS_TYPE_CROS SchedulableLabels_OSType = 2 |
| SchedulableLabels_OS_TYPE_JETSTREAM SchedulableLabels_OSType = 3 |
| SchedulableLabels_OS_TYPE_MOBLAB SchedulableLabels_OSType = 4 |
| SchedulableLabels_OS_TYPE_LABSTATION SchedulableLabels_OSType = 5 |
| ) |
| |
| // Enum value maps for SchedulableLabels_OSType. |
| var ( |
| SchedulableLabels_OSType_name = map[int32]string{ |
| 0: "OS_TYPE_INVALID", |
| 1: "OS_TYPE_ANDROID", |
| 2: "OS_TYPE_CROS", |
| 3: "OS_TYPE_JETSTREAM", |
| 4: "OS_TYPE_MOBLAB", |
| 5: "OS_TYPE_LABSTATION", |
| } |
| SchedulableLabels_OSType_value = map[string]int32{ |
| "OS_TYPE_INVALID": 0, |
| "OS_TYPE_ANDROID": 1, |
| "OS_TYPE_CROS": 2, |
| "OS_TYPE_JETSTREAM": 3, |
| "OS_TYPE_MOBLAB": 4, |
| "OS_TYPE_LABSTATION": 5, |
| } |
| ) |
| |
| func (x SchedulableLabels_OSType) Enum() *SchedulableLabels_OSType { |
| p := new(SchedulableLabels_OSType) |
| *p = x |
| return p |
| } |
| |
| func (x SchedulableLabels_OSType) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (SchedulableLabels_OSType) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[9].Descriptor() |
| } |
| |
| func (SchedulableLabels_OSType) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[9] |
| } |
| |
| func (x SchedulableLabels_OSType) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *SchedulableLabels_OSType) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = SchedulableLabels_OSType(num) |
| return nil |
| } |
| |
| // Deprecated: Use SchedulableLabels_OSType.Descriptor instead. |
| func (SchedulableLabels_OSType) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10, 5} |
| } |
| |
| // Devices go through the phases EVT -> DVT -> PVT during early development. |
| // Post launch devices are in the MP phase. |
| // Certain phases end up having to be repeated as hardware evolves. Leave some |
| // scope for iteration within phases. |
| // |
| // NEXT TAG: 9 |
| type SchedulableLabels_Phase int32 |
| |
| const ( |
| SchedulableLabels_PHASE_INVALID SchedulableLabels_Phase = 0 |
| SchedulableLabels_PHASE_EVT SchedulableLabels_Phase = 1 |
| SchedulableLabels_PHASE_EVT2 SchedulableLabels_Phase = 2 |
| SchedulableLabels_PHASE_DVT SchedulableLabels_Phase = 3 |
| SchedulableLabels_PHASE_DVT2 SchedulableLabels_Phase = 4 |
| SchedulableLabels_PHASE_PVT SchedulableLabels_Phase = 5 |
| SchedulableLabels_PHASE_PVT2 SchedulableLabels_Phase = 6 |
| SchedulableLabels_PHASE_PVT3 SchedulableLabels_Phase = 7 |
| SchedulableLabels_PHASE_MP SchedulableLabels_Phase = 8 |
| ) |
| |
| // Enum value maps for SchedulableLabels_Phase. |
| var ( |
| SchedulableLabels_Phase_name = map[int32]string{ |
| 0: "PHASE_INVALID", |
| 1: "PHASE_EVT", |
| 2: "PHASE_EVT2", |
| 3: "PHASE_DVT", |
| 4: "PHASE_DVT2", |
| 5: "PHASE_PVT", |
| 6: "PHASE_PVT2", |
| 7: "PHASE_PVT3", |
| 8: "PHASE_MP", |
| } |
| SchedulableLabels_Phase_value = map[string]int32{ |
| "PHASE_INVALID": 0, |
| "PHASE_EVT": 1, |
| "PHASE_EVT2": 2, |
| "PHASE_DVT": 3, |
| "PHASE_DVT2": 4, |
| "PHASE_PVT": 5, |
| "PHASE_PVT2": 6, |
| "PHASE_PVT3": 7, |
| "PHASE_MP": 8, |
| } |
| ) |
| |
| func (x SchedulableLabels_Phase) Enum() *SchedulableLabels_Phase { |
| p := new(SchedulableLabels_Phase) |
| *p = x |
| return p |
| } |
| |
| func (x SchedulableLabels_Phase) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (SchedulableLabels_Phase) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[10].Descriptor() |
| } |
| |
| func (SchedulableLabels_Phase) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[10] |
| } |
| |
| func (x SchedulableLabels_Phase) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *SchedulableLabels_Phase) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = SchedulableLabels_Phase(num) |
| return nil |
| } |
| |
| // Deprecated: Use SchedulableLabels_Phase.Descriptor instead. |
| func (SchedulableLabels_Phase) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10, 6} |
| } |
| |
| // NEXT TAG: 8 |
| type HardwareCapabilities_Carrier int32 |
| |
| const ( |
| HardwareCapabilities_CARRIER_INVALID HardwareCapabilities_Carrier = 0 |
| HardwareCapabilities_CARRIER_ATT HardwareCapabilities_Carrier = 1 |
| HardwareCapabilities_CARRIER_TMOBILE HardwareCapabilities_Carrier = 2 |
| HardwareCapabilities_CARRIER_VERIZON HardwareCapabilities_Carrier = 3 |
| HardwareCapabilities_CARRIER_SPRINT HardwareCapabilities_Carrier = 4 |
| HardwareCapabilities_CARRIER_TESTESIM HardwareCapabilities_Carrier = 5 |
| HardwareCapabilities_CARRIER_ESIM HardwareCapabilities_Carrier = 6 |
| HardwareCapabilities_CARRIER_MULTISIM HardwareCapabilities_Carrier = 7 |
| ) |
| |
| // Enum value maps for HardwareCapabilities_Carrier. |
| var ( |
| HardwareCapabilities_Carrier_name = map[int32]string{ |
| 0: "CARRIER_INVALID", |
| 1: "CARRIER_ATT", |
| 2: "CARRIER_TMOBILE", |
| 3: "CARRIER_VERIZON", |
| 4: "CARRIER_SPRINT", |
| 5: "CARRIER_TESTESIM", |
| 6: "CARRIER_ESIM", |
| 7: "CARRIER_MULTISIM", |
| } |
| HardwareCapabilities_Carrier_value = map[string]int32{ |
| "CARRIER_INVALID": 0, |
| "CARRIER_ATT": 1, |
| "CARRIER_TMOBILE": 2, |
| "CARRIER_VERIZON": 3, |
| "CARRIER_SPRINT": 4, |
| "CARRIER_TESTESIM": 5, |
| "CARRIER_ESIM": 6, |
| "CARRIER_MULTISIM": 7, |
| } |
| ) |
| |
| func (x HardwareCapabilities_Carrier) Enum() *HardwareCapabilities_Carrier { |
| p := new(HardwareCapabilities_Carrier) |
| *p = x |
| return p |
| } |
| |
| func (x HardwareCapabilities_Carrier) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (HardwareCapabilities_Carrier) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[11].Descriptor() |
| } |
| |
| func (HardwareCapabilities_Carrier) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[11] |
| } |
| |
| func (x HardwareCapabilities_Carrier) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *HardwareCapabilities_Carrier) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = HardwareCapabilities_Carrier(num) |
| return nil |
| } |
| |
| // Deprecated: Use HardwareCapabilities_Carrier.Descriptor instead. |
| func (HardwareCapabilities_Carrier) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{11, 0} |
| } |
| |
| // NEXT TAG: 13 |
| type HardwareCapabilities_VideoAcceleration int32 |
| |
| const ( |
| HardwareCapabilities_VIDEO_ACCELERATION_INVALID HardwareCapabilities_VideoAcceleration = 0 |
| HardwareCapabilities_VIDEO_ACCELERATION_H264 HardwareCapabilities_VideoAcceleration = 1 |
| HardwareCapabilities_VIDEO_ACCELERATION_ENC_H264 HardwareCapabilities_VideoAcceleration = 2 |
| HardwareCapabilities_VIDEO_ACCELERATION_VP8 HardwareCapabilities_VideoAcceleration = 3 |
| HardwareCapabilities_VIDEO_ACCELERATION_ENC_VP8 HardwareCapabilities_VideoAcceleration = 4 |
| HardwareCapabilities_VIDEO_ACCELERATION_VP9 HardwareCapabilities_VideoAcceleration = 5 |
| HardwareCapabilities_VIDEO_ACCELERATION_ENC_VP9 HardwareCapabilities_VideoAcceleration = 6 |
| HardwareCapabilities_VIDEO_ACCELERATION_VP9_2 HardwareCapabilities_VideoAcceleration = 7 |
| HardwareCapabilities_VIDEO_ACCELERATION_ENC_VP9_2 HardwareCapabilities_VideoAcceleration = 8 |
| HardwareCapabilities_VIDEO_ACCELERATION_H265 HardwareCapabilities_VideoAcceleration = 9 |
| HardwareCapabilities_VIDEO_ACCELERATION_ENC_H265 HardwareCapabilities_VideoAcceleration = 10 |
| HardwareCapabilities_VIDEO_ACCELERATION_MJPG HardwareCapabilities_VideoAcceleration = 11 |
| HardwareCapabilities_VIDEO_ACCELERATION_ENC_MJPG HardwareCapabilities_VideoAcceleration = 12 |
| ) |
| |
| // Enum value maps for HardwareCapabilities_VideoAcceleration. |
| var ( |
| HardwareCapabilities_VideoAcceleration_name = map[int32]string{ |
| 0: "VIDEO_ACCELERATION_INVALID", |
| 1: "VIDEO_ACCELERATION_H264", |
| 2: "VIDEO_ACCELERATION_ENC_H264", |
| 3: "VIDEO_ACCELERATION_VP8", |
| 4: "VIDEO_ACCELERATION_ENC_VP8", |
| 5: "VIDEO_ACCELERATION_VP9", |
| 6: "VIDEO_ACCELERATION_ENC_VP9", |
| 7: "VIDEO_ACCELERATION_VP9_2", |
| 8: "VIDEO_ACCELERATION_ENC_VP9_2", |
| 9: "VIDEO_ACCELERATION_H265", |
| 10: "VIDEO_ACCELERATION_ENC_H265", |
| 11: "VIDEO_ACCELERATION_MJPG", |
| 12: "VIDEO_ACCELERATION_ENC_MJPG", |
| } |
| HardwareCapabilities_VideoAcceleration_value = map[string]int32{ |
| "VIDEO_ACCELERATION_INVALID": 0, |
| "VIDEO_ACCELERATION_H264": 1, |
| "VIDEO_ACCELERATION_ENC_H264": 2, |
| "VIDEO_ACCELERATION_VP8": 3, |
| "VIDEO_ACCELERATION_ENC_VP8": 4, |
| "VIDEO_ACCELERATION_VP9": 5, |
| "VIDEO_ACCELERATION_ENC_VP9": 6, |
| "VIDEO_ACCELERATION_VP9_2": 7, |
| "VIDEO_ACCELERATION_ENC_VP9_2": 8, |
| "VIDEO_ACCELERATION_H265": 9, |
| "VIDEO_ACCELERATION_ENC_H265": 10, |
| "VIDEO_ACCELERATION_MJPG": 11, |
| "VIDEO_ACCELERATION_ENC_MJPG": 12, |
| } |
| ) |
| |
| func (x HardwareCapabilities_VideoAcceleration) Enum() *HardwareCapabilities_VideoAcceleration { |
| p := new(HardwareCapabilities_VideoAcceleration) |
| *p = x |
| return p |
| } |
| |
| func (x HardwareCapabilities_VideoAcceleration) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (HardwareCapabilities_VideoAcceleration) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[12].Descriptor() |
| } |
| |
| func (HardwareCapabilities_VideoAcceleration) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[12] |
| } |
| |
| func (x HardwareCapabilities_VideoAcceleration) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *HardwareCapabilities_VideoAcceleration) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = HardwareCapabilities_VideoAcceleration(num) |
| return nil |
| } |
| |
| // Deprecated: Use HardwareCapabilities_VideoAcceleration.Descriptor instead. |
| func (HardwareCapabilities_VideoAcceleration) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{11, 1} |
| } |
| |
| // NEXT TAG: 9 |
| type Peripherals_ChameleonType int32 |
| |
| const ( |
| Peripherals_CHAMELEON_TYPE_INVALID Peripherals_ChameleonType = 0 |
| Peripherals_CHAMELEON_TYPE_DP Peripherals_ChameleonType = 2 |
| Peripherals_CHAMELEON_TYPE_DP_HDMI Peripherals_ChameleonType = 3 |
| Peripherals_CHAMELEON_TYPE_VGA Peripherals_ChameleonType = 4 |
| Peripherals_CHAMELEON_TYPE_HDMI Peripherals_ChameleonType = 5 |
| ) |
| |
| // Enum value maps for Peripherals_ChameleonType. |
| var ( |
| Peripherals_ChameleonType_name = map[int32]string{ |
| 0: "CHAMELEON_TYPE_INVALID", |
| 2: "CHAMELEON_TYPE_DP", |
| 3: "CHAMELEON_TYPE_DP_HDMI", |
| 4: "CHAMELEON_TYPE_VGA", |
| 5: "CHAMELEON_TYPE_HDMI", |
| } |
| Peripherals_ChameleonType_value = map[string]int32{ |
| "CHAMELEON_TYPE_INVALID": 0, |
| "CHAMELEON_TYPE_DP": 2, |
| "CHAMELEON_TYPE_DP_HDMI": 3, |
| "CHAMELEON_TYPE_VGA": 4, |
| "CHAMELEON_TYPE_HDMI": 5, |
| } |
| ) |
| |
| func (x Peripherals_ChameleonType) Enum() *Peripherals_ChameleonType { |
| p := new(Peripherals_ChameleonType) |
| *p = x |
| return p |
| } |
| |
| func (x Peripherals_ChameleonType) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Peripherals_ChameleonType) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[13].Descriptor() |
| } |
| |
| func (Peripherals_ChameleonType) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[13] |
| } |
| |
| func (x Peripherals_ChameleonType) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *Peripherals_ChameleonType) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = Peripherals_ChameleonType(num) |
| return nil |
| } |
| |
| // Deprecated: Use Peripherals_ChameleonType.Descriptor instead. |
| func (Peripherals_ChameleonType) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{12, 0} |
| } |
| |
| // Facing of DUT's camera to be tested whose FOV should cover chart tablet's |
| // screen in camerabox setup. |
| // NEXT TAG: 3 |
| type Peripherals_CameraboxFacing int32 |
| |
| const ( |
| Peripherals_CAMERABOX_FACING_UNKNOWN Peripherals_CameraboxFacing = 0 |
| Peripherals_CAMERABOX_FACING_BACK Peripherals_CameraboxFacing = 1 |
| Peripherals_CAMERABOX_FACING_FRONT Peripherals_CameraboxFacing = 2 |
| ) |
| |
| // Enum value maps for Peripherals_CameraboxFacing. |
| var ( |
| Peripherals_CameraboxFacing_name = map[int32]string{ |
| 0: "CAMERABOX_FACING_UNKNOWN", |
| 1: "CAMERABOX_FACING_BACK", |
| 2: "CAMERABOX_FACING_FRONT", |
| } |
| Peripherals_CameraboxFacing_value = map[string]int32{ |
| "CAMERABOX_FACING_UNKNOWN": 0, |
| "CAMERABOX_FACING_BACK": 1, |
| "CAMERABOX_FACING_FRONT": 2, |
| } |
| ) |
| |
| func (x Peripherals_CameraboxFacing) Enum() *Peripherals_CameraboxFacing { |
| p := new(Peripherals_CameraboxFacing) |
| *p = x |
| return p |
| } |
| |
| func (x Peripherals_CameraboxFacing) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Peripherals_CameraboxFacing) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[14].Descriptor() |
| } |
| |
| func (Peripherals_CameraboxFacing) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[14] |
| } |
| |
| func (x Peripherals_CameraboxFacing) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *Peripherals_CameraboxFacing) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = Peripherals_CameraboxFacing(num) |
| return nil |
| } |
| |
| // Deprecated: Use Peripherals_CameraboxFacing.Descriptor instead. |
| func (Peripherals_CameraboxFacing) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{12, 1} |
| } |
| |
| // External light source in the camerabox, LED or NOLED. |
| // NEXT TAG: 3 |
| type Peripherals_CameraboxLight int32 |
| |
| const ( |
| Peripherals_CAMERABOX_LIGHT_UNKNOWN Peripherals_CameraboxLight = 0 |
| Peripherals_CAMERABOX_LIGHT_LED Peripherals_CameraboxLight = 1 |
| Peripherals_CAMERABOX_LIGHT_NOLED Peripherals_CameraboxLight = 2 |
| ) |
| |
| // Enum value maps for Peripherals_CameraboxLight. |
| var ( |
| Peripherals_CameraboxLight_name = map[int32]string{ |
| 0: "CAMERABOX_LIGHT_UNKNOWN", |
| 1: "CAMERABOX_LIGHT_LED", |
| 2: "CAMERABOX_LIGHT_NOLED", |
| } |
| Peripherals_CameraboxLight_value = map[string]int32{ |
| "CAMERABOX_LIGHT_UNKNOWN": 0, |
| "CAMERABOX_LIGHT_LED": 1, |
| "CAMERABOX_LIGHT_NOLED": 2, |
| } |
| ) |
| |
| func (x Peripherals_CameraboxLight) Enum() *Peripherals_CameraboxLight { |
| p := new(Peripherals_CameraboxLight) |
| *p = x |
| return p |
| } |
| |
| func (x Peripherals_CameraboxLight) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Peripherals_CameraboxLight) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[15].Descriptor() |
| } |
| |
| func (Peripherals_CameraboxLight) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[15] |
| } |
| |
| func (x Peripherals_CameraboxLight) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *Peripherals_CameraboxLight) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = Peripherals_CameraboxLight(num) |
| return nil |
| } |
| |
| // Deprecated: Use Peripherals_CameraboxLight.Descriptor instead. |
| func (Peripherals_CameraboxLight) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{12, 2} |
| } |
| |
| // Related to sparse CTS testing. See b/70309087 |
| // NEXT TAG: 4 |
| type TestCoverageHints_CTSSparse int32 |
| |
| const ( |
| TestCoverageHints_CTS_SPARSE_INVALID TestCoverageHints_CTSSparse = 0 |
| TestCoverageHints_CTS_SPARSE_2 TestCoverageHints_CTSSparse = 1 |
| TestCoverageHints_CTS_SPARSE_3 TestCoverageHints_CTSSparse = 2 |
| TestCoverageHints_CTS_SPARSE_5 TestCoverageHints_CTSSparse = 3 |
| ) |
| |
| // Enum value maps for TestCoverageHints_CTSSparse. |
| var ( |
| TestCoverageHints_CTSSparse_name = map[int32]string{ |
| 0: "CTS_SPARSE_INVALID", |
| 1: "CTS_SPARSE_2", |
| 2: "CTS_SPARSE_3", |
| 3: "CTS_SPARSE_5", |
| } |
| TestCoverageHints_CTSSparse_value = map[string]int32{ |
| "CTS_SPARSE_INVALID": 0, |
| "CTS_SPARSE_2": 1, |
| "CTS_SPARSE_3": 2, |
| "CTS_SPARSE_5": 3, |
| } |
| ) |
| |
| func (x TestCoverageHints_CTSSparse) Enum() *TestCoverageHints_CTSSparse { |
| p := new(TestCoverageHints_CTSSparse) |
| *p = x |
| return p |
| } |
| |
| func (x TestCoverageHints_CTSSparse) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (TestCoverageHints_CTSSparse) Descriptor() protoreflect.EnumDescriptor { |
| return file_infra_libs_skylab_inventory_device_proto_enumTypes[16].Descriptor() |
| } |
| |
| func (TestCoverageHints_CTSSparse) Type() protoreflect.EnumType { |
| return &file_infra_libs_skylab_inventory_device_proto_enumTypes[16] |
| } |
| |
| func (x TestCoverageHints_CTSSparse) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Do not use. |
| func (x *TestCoverageHints_CTSSparse) UnmarshalJSON(b []byte) error { |
| num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) |
| if err != nil { |
| return err |
| } |
| *x = TestCoverageHints_CTSSparse(num) |
| return nil |
| } |
| |
| // Deprecated: Use TestCoverageHints_CTSSparse.Descriptor instead. |
| func (TestCoverageHints_CTSSparse) EnumDescriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{15, 0} |
| } |
| |
| // NEXT TAG: 4 |
| type Device struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Each of these must contain a 'CommonDeviceSpecs common' field. |
| // We will use this informal composition based sharing rather than proto |
| // extensions because extensions are unwieldy, and we really want composition |
| // not inhertence. |
| // |
| // Types that are assignable to Device: |
| // *Device_Dut |
| // *Device_ServoHost |
| // *Device_Chameleon |
| Device isDevice_Device `protobuf_oneof:"device"` |
| } |
| |
| func (x *Device) Reset() { |
| *x = Device{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[0] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Device) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Device) ProtoMessage() {} |
| |
| func (x *Device) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 Device.ProtoReflect.Descriptor instead. |
| func (*Device) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{0} |
| } |
| |
| func (m *Device) GetDevice() isDevice_Device { |
| if m != nil { |
| return m.Device |
| } |
| return nil |
| } |
| |
| func (x *Device) GetDut() *DeviceUnderTest { |
| if x, ok := x.GetDevice().(*Device_Dut); ok { |
| return x.Dut |
| } |
| return nil |
| } |
| |
| func (x *Device) GetServoHost() *ServoHostDevice { |
| if x, ok := x.GetDevice().(*Device_ServoHost); ok { |
| return x.ServoHost |
| } |
| return nil |
| } |
| |
| func (x *Device) GetChameleon() *ChameleonDevice { |
| if x, ok := x.GetDevice().(*Device_Chameleon); ok { |
| return x.Chameleon |
| } |
| return nil |
| } |
| |
| type isDevice_Device interface { |
| isDevice_Device() |
| } |
| |
| type Device_Dut struct { |
| Dut *DeviceUnderTest `protobuf:"bytes,1,opt,name=dut,oneof"` |
| } |
| |
| type Device_ServoHost struct { |
| ServoHost *ServoHostDevice `protobuf:"bytes,2,opt,name=servo_host,json=servoHost,oneof"` |
| } |
| |
| type Device_Chameleon struct { |
| Chameleon *ChameleonDevice `protobuf:"bytes,3,opt,name=chameleon,oneof"` |
| } |
| |
| func (*Device_Dut) isDevice_Device() {} |
| |
| func (*Device_ServoHost) isDevice_Device() {} |
| |
| func (*Device_Chameleon) isDevice_Device() {} |
| |
| // NEXT TAG: 2 |
| type DeviceUnderTest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Common *CommonDeviceSpecs `protobuf:"bytes,1,req,name=common" json:"common,omitempty"` |
| RemovalReason *RemovalReason `protobuf:"bytes,2,opt,name=removal_reason,json=removalReason" json:"removal_reason,omitempty"` |
| } |
| |
| func (x *DeviceUnderTest) Reset() { |
| *x = DeviceUnderTest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[1] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *DeviceUnderTest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*DeviceUnderTest) ProtoMessage() {} |
| |
| func (x *DeviceUnderTest) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 DeviceUnderTest.ProtoReflect.Descriptor instead. |
| func (*DeviceUnderTest) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{1} |
| } |
| |
| func (x *DeviceUnderTest) GetCommon() *CommonDeviceSpecs { |
| if x != nil { |
| return x.Common |
| } |
| return nil |
| } |
| |
| func (x *DeviceUnderTest) GetRemovalReason() *RemovalReason { |
| if x != nil { |
| return x.RemovalReason |
| } |
| return nil |
| } |
| |
| // NEXT TAG: 2 |
| type ServoHostDevice struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Common *CommonDeviceSpecs `protobuf:"bytes,1,req,name=common" json:"common,omitempty"` |
| Version *string `protobuf:"bytes,2,opt,name=version" json:"version,omitempty"` |
| } |
| |
| func (x *ServoHostDevice) Reset() { |
| *x = ServoHostDevice{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[2] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ServoHostDevice) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ServoHostDevice) ProtoMessage() {} |
| |
| func (x *ServoHostDevice) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 ServoHostDevice.ProtoReflect.Descriptor instead. |
| func (*ServoHostDevice) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{2} |
| } |
| |
| func (x *ServoHostDevice) GetCommon() *CommonDeviceSpecs { |
| if x != nil { |
| return x.Common |
| } |
| return nil |
| } |
| |
| func (x *ServoHostDevice) GetVersion() string { |
| if x != nil && x.Version != nil { |
| return *x.Version |
| } |
| return "" |
| } |
| |
| // NEXT TAG: 2 |
| type ChameleonDevice struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Common *CommonDeviceSpecs `protobuf:"bytes,1,req,name=common" json:"common,omitempty"` |
| } |
| |
| func (x *ChameleonDevice) Reset() { |
| *x = ChameleonDevice{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[3] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ChameleonDevice) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ChameleonDevice) ProtoMessage() {} |
| |
| func (x *ChameleonDevice) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 ChameleonDevice.ProtoReflect.Descriptor instead. |
| func (*ChameleonDevice) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{3} |
| } |
| |
| func (x *ChameleonDevice) GetCommon() *CommonDeviceSpecs { |
| if x != nil { |
| return x.Common |
| } |
| return nil |
| } |
| |
| // |
| // Keep sorted by field name. |
| // |
| // NEXT TAG: 12 |
| type CommonDeviceSpecs struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // These are opaque keyvals for skylab services. Devices may arbitrarily |
| // define any attributes they want. |
| Attributes []*KeyValue `protobuf:"bytes,9,rep,name=attributes" json:"attributes,omitempty"` |
| // A device may be locked for multiple reasons by multiple people. All locks |
| // need to be removed for the device to go back into circulation. |
| DeviceLocks []*DeviceLock `protobuf:"bytes,6,rep,name=device_locks,json=deviceLocks" json:"device_locks,omitempty"` |
| Environment *Environment `protobuf:"varint,10,opt,name=environment,enum=chrome.chromeos_infra.skylab.proto.inventory.Environment" json:"environment,omitempty"` |
| Hostname *string `protobuf:"bytes,2,req,name=hostname" json:"hostname,omitempty"` |
| // An invariant property corresponding to the hardware deployed for this |
| // device. |
| Hwid *string `protobuf:"bytes,3,opt,name=hwid" json:"hwid,omitempty"` |
| Id *string `protobuf:"bytes,1,req,name=id" json:"id,omitempty"` |
| // The scheduling system uses these to target jobs at the right kinds of |
| // devices. |
| Labels *SchedulableLabels `protobuf:"bytes,8,opt,name=labels" json:"labels,omitempty"` |
| Location *Location `protobuf:"bytes,5,opt,name=location" json:"location,omitempty"` |
| // Deprecated: This is needed for the master AFE in the autotest infra to |
| // forward RPCs to the relevant shard for a device. |
| // Not to be used in skylab. |
| // |
| // Deprecated: Do not use. |
| OwnerShard *Shard `protobuf:"bytes,7,opt,name=owner_shard,json=ownerShard" json:"owner_shard,omitempty"` |
| // An invariant about the distros inventory tag associated with the device. |
| // For ChromeOS devices, this can be read off of vboot. |
| SerialNumber *string `protobuf:"bytes,4,opt,name=serial_number,json=serialNumber" json:"serial_number,omitempty"` |
| // Similar to a useless machine, if set to true, automatic inventory |
| // updates should set this back to false. This can be used to test |
| // that automated updates are firing correctly. |
| UselessSwitch *bool `protobuf:"varint,11,opt,name=useless_switch,json=uselessSwitch" json:"useless_switch,omitempty"` |
| } |
| |
| func (x *CommonDeviceSpecs) Reset() { |
| *x = CommonDeviceSpecs{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[4] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *CommonDeviceSpecs) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*CommonDeviceSpecs) ProtoMessage() {} |
| |
| func (x *CommonDeviceSpecs) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 CommonDeviceSpecs.ProtoReflect.Descriptor instead. |
| func (*CommonDeviceSpecs) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{4} |
| } |
| |
| func (x *CommonDeviceSpecs) GetAttributes() []*KeyValue { |
| if x != nil { |
| return x.Attributes |
| } |
| return nil |
| } |
| |
| func (x *CommonDeviceSpecs) GetDeviceLocks() []*DeviceLock { |
| if x != nil { |
| return x.DeviceLocks |
| } |
| return nil |
| } |
| |
| func (x *CommonDeviceSpecs) GetEnvironment() Environment { |
| if x != nil && x.Environment != nil { |
| return *x.Environment |
| } |
| return Environment_ENVIRONMENT_INVALID |
| } |
| |
| func (x *CommonDeviceSpecs) GetHostname() string { |
| if x != nil && x.Hostname != nil { |
| return *x.Hostname |
| } |
| return "" |
| } |
| |
| func (x *CommonDeviceSpecs) GetHwid() string { |
| if x != nil && x.Hwid != nil { |
| return *x.Hwid |
| } |
| return "" |
| } |
| |
| func (x *CommonDeviceSpecs) GetId() string { |
| if x != nil && x.Id != nil { |
| return *x.Id |
| } |
| return "" |
| } |
| |
| func (x *CommonDeviceSpecs) GetLabels() *SchedulableLabels { |
| if x != nil { |
| return x.Labels |
| } |
| return nil |
| } |
| |
| func (x *CommonDeviceSpecs) GetLocation() *Location { |
| if x != nil { |
| return x.Location |
| } |
| return nil |
| } |
| |
| // Deprecated: Do not use. |
| func (x *CommonDeviceSpecs) GetOwnerShard() *Shard { |
| if x != nil { |
| return x.OwnerShard |
| } |
| return nil |
| } |
| |
| func (x *CommonDeviceSpecs) GetSerialNumber() string { |
| if x != nil && x.SerialNumber != nil { |
| return *x.SerialNumber |
| } |
| return "" |
| } |
| |
| func (x *CommonDeviceSpecs) GetUselessSwitch() bool { |
| if x != nil && x.UselessSwitch != nil { |
| return *x.UselessSwitch |
| } |
| return false |
| } |
| |
| // RemovalReason describes the reason for a DUT being removed from running |
| // tasks. See also go/skylab-dut-removal-reason NEXT TAG: 4 |
| type RemovalReason struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // bug is a link to a bug in crbug.com or other bug tracker. Required. |
| Bug *string `protobuf:"bytes,1,opt,name=bug" json:"bug,omitempty"` |
| // comment should be a short comment to provide quick context for |
| // the removal reason. This should not be used as a replacement for |
| // keeping the bug up to date with context. |
| Comment *string `protobuf:"bytes,2,opt,name=comment" json:"comment,omitempty"` |
| // expire_time indicates when the reason for removal should be |
| // revisited so that DUTs don't get forgotten. Required. |
| ExpireTime *Timestamp `protobuf:"bytes,3,opt,name=expire_time,json=expireTime" json:"expire_time,omitempty"` |
| } |
| |
| func (x *RemovalReason) Reset() { |
| *x = RemovalReason{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[5] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *RemovalReason) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*RemovalReason) ProtoMessage() {} |
| |
| func (x *RemovalReason) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 RemovalReason.ProtoReflect.Descriptor instead. |
| func (*RemovalReason) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{5} |
| } |
| |
| func (x *RemovalReason) GetBug() string { |
| if x != nil && x.Bug != nil { |
| return *x.Bug |
| } |
| return "" |
| } |
| |
| func (x *RemovalReason) GetComment() string { |
| if x != nil && x.Comment != nil { |
| return *x.Comment |
| } |
| return "" |
| } |
| |
| func (x *RemovalReason) GetExpireTime() *Timestamp { |
| if x != nil { |
| return x.ExpireTime |
| } |
| return nil |
| } |
| |
| // NEXT TAG: 5 |
| type Location struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Lab *PhysicalLab `protobuf:"bytes,1,req,name=lab" json:"lab,omitempty"` |
| Row *int32 `protobuf:"varint,2,req,name=row" json:"row,omitempty"` |
| Rack *int32 `protobuf:"varint,3,req,name=rack" json:"rack,omitempty"` |
| Host *int32 `protobuf:"varint,4,req,name=host" json:"host,omitempty"` |
| } |
| |
| func (x *Location) Reset() { |
| *x = Location{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[6] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Location) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Location) ProtoMessage() {} |
| |
| func (x *Location) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 Location.ProtoReflect.Descriptor instead. |
| func (*Location) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{6} |
| } |
| |
| func (x *Location) GetLab() *PhysicalLab { |
| if x != nil { |
| return x.Lab |
| } |
| return nil |
| } |
| |
| func (x *Location) GetRow() int32 { |
| if x != nil && x.Row != nil { |
| return *x.Row |
| } |
| return 0 |
| } |
| |
| func (x *Location) GetRack() int32 { |
| if x != nil && x.Rack != nil { |
| return *x.Rack |
| } |
| return 0 |
| } |
| |
| func (x *Location) GetHost() int32 { |
| if x != nil && x.Host != nil { |
| return *x.Host |
| } |
| return 0 |
| } |
| |
| // NEXT TAG: 2 |
| type PhysicalLab struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Name *string `protobuf:"bytes,1,req,name=name" json:"name,omitempty"` |
| } |
| |
| func (x *PhysicalLab) Reset() { |
| *x = PhysicalLab{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[7] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *PhysicalLab) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*PhysicalLab) ProtoMessage() {} |
| |
| func (x *PhysicalLab) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 PhysicalLab.ProtoReflect.Descriptor instead. |
| func (*PhysicalLab) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{7} |
| } |
| |
| func (x *PhysicalLab) GetName() string { |
| if x != nil && x.Name != nil { |
| return *x.Name |
| } |
| return "" |
| } |
| |
| // A DeviceLock is a generic way of pulling any lab device out of commission |
| // temporarily. This allows us to quickly take out a device without deleting it |
| // from inventory. The exact effect of locking a device varies by the type of |
| // device and services involved. |
| // NEXT TAG: 6 |
| type DeviceLock struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Deprecated: Do not use. |
| Lock *bool `protobuf:"varint,1,req,name=lock" json:"lock,omitempty"` |
| // This field is informational only. Do not assume this as a real user |
| // identity in any auth domain. |
| LockedBy *string `protobuf:"bytes,2,req,name=locked_by,json=lockedBy" json:"locked_by,omitempty"` |
| LockReason *string `protobuf:"bytes,3,req,name=lock_reason,json=lockReason" json:"lock_reason,omitempty"` |
| BeginTime *Timestamp `protobuf:"bytes,4,req,name=begin_time,json=beginTime" json:"begin_time,omitempty"` |
| ExpireTime *Timestamp `protobuf:"bytes,5,req,name=expire_time,json=expireTime" json:"expire_time,omitempty"` |
| // Deprecated: Do not use. |
| LockId *int32 `protobuf:"varint,6,req,name=lock_id,json=lockId" json:"lock_id,omitempty"` |
| Id *string `protobuf:"bytes,7,req,name=id" json:"id,omitempty"` |
| } |
| |
| func (x *DeviceLock) Reset() { |
| *x = DeviceLock{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[8] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *DeviceLock) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*DeviceLock) ProtoMessage() {} |
| |
| func (x *DeviceLock) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 DeviceLock.ProtoReflect.Descriptor instead. |
| func (*DeviceLock) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{8} |
| } |
| |
| // Deprecated: Do not use. |
| func (x *DeviceLock) GetLock() bool { |
| if x != nil && x.Lock != nil { |
| return *x.Lock |
| } |
| return false |
| } |
| |
| func (x *DeviceLock) GetLockedBy() string { |
| if x != nil && x.LockedBy != nil { |
| return *x.LockedBy |
| } |
| return "" |
| } |
| |
| func (x *DeviceLock) GetLockReason() string { |
| if x != nil && x.LockReason != nil { |
| return *x.LockReason |
| } |
| return "" |
| } |
| |
| func (x *DeviceLock) GetBeginTime() *Timestamp { |
| if x != nil { |
| return x.BeginTime |
| } |
| return nil |
| } |
| |
| func (x *DeviceLock) GetExpireTime() *Timestamp { |
| if x != nil { |
| return x.ExpireTime |
| } |
| return nil |
| } |
| |
| // Deprecated: Do not use. |
| func (x *DeviceLock) GetLockId() int32 { |
| if x != nil && x.LockId != nil { |
| return *x.LockId |
| } |
| return 0 |
| } |
| |
| func (x *DeviceLock) GetId() string { |
| if x != nil && x.Id != nil { |
| return *x.Id |
| } |
| return "" |
| } |
| |
| // NEXT TAG: 2 |
| type Shard struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Hostname *string `protobuf:"bytes,1,req,name=hostname" json:"hostname,omitempty"` |
| } |
| |
| func (x *Shard) Reset() { |
| *x = Shard{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[9] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Shard) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Shard) ProtoMessage() {} |
| |
| func (x *Shard) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 Shard.ProtoReflect.Descriptor instead. |
| func (*Shard) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{9} |
| } |
| |
| func (x *Shard) GetHostname() string { |
| if x != nil && x.Hostname != nil { |
| return *x.Hostname |
| } |
| return "" |
| } |
| |
| // These labels are used for scheduling decisions in skylab. They should be |
| // semantically known to the inventory service to allow filtering based on them. |
| // (i.e., no "extra_labels" field down here) |
| // |
| // Keep sorted by field name. |
| // |
| // NEXT TAG: 35 |
| type SchedulableLabels struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Whether this device supports ARC execution environment. |
| Arc *bool `protobuf:"varint,20,opt,name=arc" json:"arc,omitempty"` |
| // TODO(pprabhu) This should be an enum shared with stable_versions.proto |
| // But there are 171 of them... |
| Board *string `protobuf:"bytes,2,opt,name=board" json:"board,omitempty"` |
| // This matches the brand id in chromiumos/infra/proto/src/device/brand_id.proto |
| Brand *string `protobuf:"bytes,26,opt,name=brand" json:"brand,omitempty"` |
| Capabilities *HardwareCapabilities `protobuf:"bytes,5,opt,name=capabilities" json:"capabilities,omitempty"` |
| Cr50Phase *SchedulableLabels_CR50_Phase `protobuf:"varint,22,opt,name=cr50_phase,json=cr50Phase,enum=chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels_CR50_Phase" json:"cr50_phase,omitempty"` |
| // Example: cr50-ro-keyid:prod |
| // Example: cr50-ro-keyid:0xaa66150f |
| Cr50RoKeyid *string `protobuf:"bytes,28,opt,name=cr50_ro_keyid,json=cr50RoKeyid" json:"cr50_ro_keyid,omitempty"` |
| // Example: cr50-ro-version:0.0.10 |
| Cr50RoVersion *string `protobuf:"bytes,29,opt,name=cr50_ro_version,json=cr50RoVersion" json:"cr50_ro_version,omitempty"` |
| // Example: cr50-rw-keyid:prod |
| // Example: cr50-rw-keyid:0xde88588d |
| Cr50RwKeyid *string `protobuf:"bytes,30,opt,name=cr50_rw_keyid,json=cr50RwKeyid" json:"cr50_rw_keyid,omitempty"` |
| // Example:cr50-rw-version:0.3.20 |
| Cr50RwVersion *string `protobuf:"bytes,31,opt,name=cr50_rw_version,json=cr50RwVersion" json:"cr50_rw_version,omitempty"` |
| CriticalPools []SchedulableLabels_DUTPool `protobuf:"varint,3,rep,name=critical_pools,json=criticalPools,enum=chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels_DUTPool" json:"critical_pools,omitempty"` |
| CtsAbi []SchedulableLabels_CTSABI `protobuf:"varint,14,rep,name=cts_abi,json=ctsAbi,enum=chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels_CTSABI" json:"cts_abi,omitempty"` |
| CtsCpu []SchedulableLabels_CTSCPU `protobuf:"varint,21,rep,name=cts_cpu,json=ctsCpu,enum=chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels_CTSCPU" json:"cts_cpu,omitempty"` |
| EcType *SchedulableLabels_ECType `protobuf:"varint,10,opt,name=ec_type,json=ecType,enum=chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels_ECType" json:"ec_type,omitempty"` |
| HwidComponent []string `protobuf:"bytes,33,rep,name=hwid_component,json=hwidComponent" json:"hwid_component,omitempty"` |
| // crbug.com/994200: this matches to label "sku" in autotest. |
| HwidSku *string `protobuf:"bytes,27,opt,name=hwid_sku,json=hwidSku" json:"hwid_sku,omitempty"` |
| // The set of software licenses assigned to the device. |
| Licenses []*License `protobuf:"bytes,34,rep,name=licenses" json:"licenses,omitempty"` |
| Model *string `protobuf:"bytes,13,opt,name=model" json:"model,omitempty"` |
| Sku *string `protobuf:"bytes,25,opt,name=sku" json:"sku,omitempty"` |
| OsType *SchedulableLabels_OSType `protobuf:"varint,15,opt,name=os_type,json=osType,enum=chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels_OSType" json:"os_type,omitempty"` |
| Peripherals *Peripherals `protobuf:"bytes,19,opt,name=peripherals" json:"peripherals,omitempty"` |
| Phase *SchedulableLabels_Phase `protobuf:"varint,16,opt,name=phase,enum=chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels_Phase" json:"phase,omitempty"` |
| // TODO(pprabhu) This should be an enum shared with stable_versions.proto |
| // But there are 171 of them... |
| Platform *string `protobuf:"bytes,1,opt,name=platform" json:"platform,omitempty"` |
| ReferenceDesign *string `protobuf:"bytes,24,opt,name=reference_design,json=referenceDesign" json:"reference_design,omitempty"` |
| SelfServePools []string `protobuf:"bytes,4,rep,name=self_serve_pools,json=selfServePools" json:"self_serve_pools,omitempty"` |
| TestCoverageHints *TestCoverageHints `protobuf:"bytes,18,opt,name=test_coverage_hints,json=testCoverageHints" json:"test_coverage_hints,omitempty"` |
| // useless_switch does nothing. Like a useless machine, if set to |
| // true, automatic label updates should set this back to false. |
| // This can be used to test that automated updates are firing |
| // correctly. |
| UselessSwitch *bool `protobuf:"varint,23,opt,name=useless_switch,json=uselessSwitch" json:"useless_switch,omitempty"` |
| Variant []string `protobuf:"bytes,17,rep,name=variant" json:"variant,omitempty"` |
| // Come from manufacturing config: crbug.com/1046971 |
| WifiChip *string `protobuf:"bytes,32,opt,name=wifi_chip,json=wifiChip" json:"wifi_chip,omitempty"` |
| } |
| |
| func (x *SchedulableLabels) Reset() { |
| *x = SchedulableLabels{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[10] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *SchedulableLabels) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*SchedulableLabels) ProtoMessage() {} |
| |
| func (x *SchedulableLabels) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 SchedulableLabels.ProtoReflect.Descriptor instead. |
| func (*SchedulableLabels) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{10} |
| } |
| |
| func (x *SchedulableLabels) GetArc() bool { |
| if x != nil && x.Arc != nil { |
| return *x.Arc |
| } |
| return false |
| } |
| |
| func (x *SchedulableLabels) GetBoard() string { |
| if x != nil && x.Board != nil { |
| return *x.Board |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetBrand() string { |
| if x != nil && x.Brand != nil { |
| return *x.Brand |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetCapabilities() *HardwareCapabilities { |
| if x != nil { |
| return x.Capabilities |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetCr50Phase() SchedulableLabels_CR50_Phase { |
| if x != nil && x.Cr50Phase != nil { |
| return *x.Cr50Phase |
| } |
| return SchedulableLabels_CR50_PHASE_INVALID |
| } |
| |
| func (x *SchedulableLabels) GetCr50RoKeyid() string { |
| if x != nil && x.Cr50RoKeyid != nil { |
| return *x.Cr50RoKeyid |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetCr50RoVersion() string { |
| if x != nil && x.Cr50RoVersion != nil { |
| return *x.Cr50RoVersion |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetCr50RwKeyid() string { |
| if x != nil && x.Cr50RwKeyid != nil { |
| return *x.Cr50RwKeyid |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetCr50RwVersion() string { |
| if x != nil && x.Cr50RwVersion != nil { |
| return *x.Cr50RwVersion |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetCriticalPools() []SchedulableLabels_DUTPool { |
| if x != nil { |
| return x.CriticalPools |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetCtsAbi() []SchedulableLabels_CTSABI { |
| if x != nil { |
| return x.CtsAbi |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetCtsCpu() []SchedulableLabels_CTSCPU { |
| if x != nil { |
| return x.CtsCpu |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetEcType() SchedulableLabels_ECType { |
| if x != nil && x.EcType != nil { |
| return *x.EcType |
| } |
| return SchedulableLabels_EC_TYPE_INVALID |
| } |
| |
| func (x *SchedulableLabels) GetHwidComponent() []string { |
| if x != nil { |
| return x.HwidComponent |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetHwidSku() string { |
| if x != nil && x.HwidSku != nil { |
| return *x.HwidSku |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetLicenses() []*License { |
| if x != nil { |
| return x.Licenses |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetModel() string { |
| if x != nil && x.Model != nil { |
| return *x.Model |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetSku() string { |
| if x != nil && x.Sku != nil { |
| return *x.Sku |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetOsType() SchedulableLabels_OSType { |
| if x != nil && x.OsType != nil { |
| return *x.OsType |
| } |
| return SchedulableLabels_OS_TYPE_INVALID |
| } |
| |
| func (x *SchedulableLabels) GetPeripherals() *Peripherals { |
| if x != nil { |
| return x.Peripherals |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetPhase() SchedulableLabels_Phase { |
| if x != nil && x.Phase != nil { |
| return *x.Phase |
| } |
| return SchedulableLabels_PHASE_INVALID |
| } |
| |
| func (x *SchedulableLabels) GetPlatform() string { |
| if x != nil && x.Platform != nil { |
| return *x.Platform |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetReferenceDesign() string { |
| if x != nil && x.ReferenceDesign != nil { |
| return *x.ReferenceDesign |
| } |
| return "" |
| } |
| |
| func (x *SchedulableLabels) GetSelfServePools() []string { |
| if x != nil { |
| return x.SelfServePools |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetTestCoverageHints() *TestCoverageHints { |
| if x != nil { |
| return x.TestCoverageHints |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetUselessSwitch() bool { |
| if x != nil && x.UselessSwitch != nil { |
| return *x.UselessSwitch |
| } |
| return false |
| } |
| |
| func (x *SchedulableLabels) GetVariant() []string { |
| if x != nil { |
| return x.Variant |
| } |
| return nil |
| } |
| |
| func (x *SchedulableLabels) GetWifiChip() string { |
| if x != nil && x.WifiChip != nil { |
| return *x.WifiChip |
| } |
| return "" |
| } |
| |
| // Keep sorted by field name. |
| // |
| // NEXT TAG: 20 |
| type HardwareCapabilities struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Atrus *bool `protobuf:"varint,17,opt,name=atrus" json:"atrus,omitempty"` |
| Bluetooth *bool `protobuf:"varint,7,opt,name=bluetooth" json:"bluetooth,omitempty"` |
| Carrier *HardwareCapabilities_Carrier `protobuf:"varint,16,opt,name=carrier,enum=chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities_Carrier" json:"carrier,omitempty"` |
| Detachablebase *bool `protobuf:"varint,12,opt,name=detachablebase" json:"detachablebase,omitempty"` |
| // Indicating if the device has fingerprint sensor. |
| Fingerprint *bool `protobuf:"varint,19,opt,name=fingerprint" json:"fingerprint,omitempty"` |
| Flashrom *bool `protobuf:"varint,14,opt,name=flashrom" json:"flashrom,omitempty"` |
| GpuFamily *string `protobuf:"bytes,3,opt,name=gpu_family,json=gpuFamily" json:"gpu_family,omitempty"` |
| Graphics *string `protobuf:"bytes,4,opt,name=graphics" json:"graphics,omitempty"` |
| Hotwording *bool `protobuf:"varint,15,opt,name=hotwording" json:"hotwording,omitempty"` |
| InternalDisplay *bool `protobuf:"varint,8,opt,name=internal_display,json=internalDisplay" json:"internal_display,omitempty"` |
| Lucidsleep *bool `protobuf:"varint,13,opt,name=lucidsleep" json:"lucidsleep,omitempty"` |
| Modem *string `protobuf:"bytes,1,opt,name=modem" json:"modem,omitempty"` |
| Power *string `protobuf:"bytes,6,opt,name=power" json:"power,omitempty"` |
| Storage *string `protobuf:"bytes,5,opt,name=storage" json:"storage,omitempty"` |
| Telephony *string `protobuf:"bytes,2,opt,name=telephony" json:"telephony,omitempty"` |
| Webcam *bool `protobuf:"varint,9,opt,name=webcam" json:"webcam,omitempty"` |
| Touchpad *bool `protobuf:"varint,10,opt,name=touchpad" json:"touchpad,omitempty"` |
| Touchscreen *bool `protobuf:"varint,18,opt,name=touchscreen" json:"touchscreen,omitempty"` |
| VideoAcceleration []HardwareCapabilities_VideoAcceleration `protobuf:"varint,11,rep,name=video_acceleration,json=videoAcceleration,enum=chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities_VideoAcceleration" json:"video_acceleration,omitempty"` |
| } |
| |
| func (x *HardwareCapabilities) Reset() { |
| *x = HardwareCapabilities{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[11] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *HardwareCapabilities) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*HardwareCapabilities) ProtoMessage() {} |
| |
| func (x *HardwareCapabilities) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 HardwareCapabilities.ProtoReflect.Descriptor instead. |
| func (*HardwareCapabilities) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{11} |
| } |
| |
| func (x *HardwareCapabilities) GetAtrus() bool { |
| if x != nil && x.Atrus != nil { |
| return *x.Atrus |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetBluetooth() bool { |
| if x != nil && x.Bluetooth != nil { |
| return *x.Bluetooth |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetCarrier() HardwareCapabilities_Carrier { |
| if x != nil && x.Carrier != nil { |
| return *x.Carrier |
| } |
| return HardwareCapabilities_CARRIER_INVALID |
| } |
| |
| func (x *HardwareCapabilities) GetDetachablebase() bool { |
| if x != nil && x.Detachablebase != nil { |
| return *x.Detachablebase |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetFingerprint() bool { |
| if x != nil && x.Fingerprint != nil { |
| return *x.Fingerprint |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetFlashrom() bool { |
| if x != nil && x.Flashrom != nil { |
| return *x.Flashrom |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetGpuFamily() string { |
| if x != nil && x.GpuFamily != nil { |
| return *x.GpuFamily |
| } |
| return "" |
| } |
| |
| func (x *HardwareCapabilities) GetGraphics() string { |
| if x != nil && x.Graphics != nil { |
| return *x.Graphics |
| } |
| return "" |
| } |
| |
| func (x *HardwareCapabilities) GetHotwording() bool { |
| if x != nil && x.Hotwording != nil { |
| return *x.Hotwording |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetInternalDisplay() bool { |
| if x != nil && x.InternalDisplay != nil { |
| return *x.InternalDisplay |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetLucidsleep() bool { |
| if x != nil && x.Lucidsleep != nil { |
| return *x.Lucidsleep |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetModem() string { |
| if x != nil && x.Modem != nil { |
| return *x.Modem |
| } |
| return "" |
| } |
| |
| func (x *HardwareCapabilities) GetPower() string { |
| if x != nil && x.Power != nil { |
| return *x.Power |
| } |
| return "" |
| } |
| |
| func (x *HardwareCapabilities) GetStorage() string { |
| if x != nil && x.Storage != nil { |
| return *x.Storage |
| } |
| return "" |
| } |
| |
| func (x *HardwareCapabilities) GetTelephony() string { |
| if x != nil && x.Telephony != nil { |
| return *x.Telephony |
| } |
| return "" |
| } |
| |
| func (x *HardwareCapabilities) GetWebcam() bool { |
| if x != nil && x.Webcam != nil { |
| return *x.Webcam |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetTouchpad() bool { |
| if x != nil && x.Touchpad != nil { |
| return *x.Touchpad |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetTouchscreen() bool { |
| if x != nil && x.Touchscreen != nil { |
| return *x.Touchscreen |
| } |
| return false |
| } |
| |
| func (x *HardwareCapabilities) GetVideoAcceleration() []HardwareCapabilities_VideoAcceleration { |
| if x != nil { |
| return x.VideoAcceleration |
| } |
| return nil |
| } |
| |
| // Peripherals list peripherals connected to the device in the lab. |
| // |
| // These peripherals are not addressable as devices themselves. For peripherals |
| // that have complex connections with devices, create a separate device and |
| // connections with other devices. |
| // |
| // Keep sorted by field names. |
| // |
| // NEXT TAG: 30 |
| type Peripherals struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| AudioBoard *bool `protobuf:"varint,6,opt,name=audio_board,json=audioBoard" json:"audio_board,omitempty"` |
| // The DUT is housed in an audio box to record / replay audio for audio |
| // testing. |
| AudioBox *bool `protobuf:"varint,7,opt,name=audio_box,json=audioBox" json:"audio_box,omitempty"` |
| // Is the DUT connected with a static 3.5mm audio cable. |
| AudioCable *bool `protobuf:"varint,23,opt,name=audio_cable,json=audioCable" json:"audio_cable,omitempty"` |
| AudioLoopbackDongle *bool `protobuf:"varint,1,opt,name=audio_loopback_dongle,json=audioLoopbackDongle" json:"audio_loopback_dongle,omitempty"` |
| // Is this device connected to a chameleon (GVC head). |
| Chameleon *bool `protobuf:"varint,5,opt,name=chameleon" json:"chameleon,omitempty"` |
| ChameleonType []Peripherals_ChameleonType `protobuf:"varint,10,rep,name=chameleon_type,json=chameleonType,enum=chrome.chromeos_infra.skylab.proto.inventory.Peripherals_ChameleonType" json:"chameleon_type,omitempty"` |
| // Whether DUT WiFi antenna is connected conductively or OTA. |
| Conductive *bool `protobuf:"varint,11,opt,name=conductive" json:"conductive,omitempty"` |
| Huddly *bool `protobuf:"varint,9,opt,name=huddly" json:"huddly,omitempty"` |
| Mimo *bool `protobuf:"varint,8,opt,name=mimo" json:"mimo,omitempty"` |
| // Whether a DUT has a special camera (Logitech PTZ Pro 2) connected to it. |
| Ptzpro2 *bool `protobuf:"varint,12,opt,name=ptzpro2" json:"ptzpro2,omitempty"` |
| Servo *bool `protobuf:"varint,2,opt,name=servo" json:"servo,omitempty"` |
| ServoState *PeripheralState `protobuf:"varint,15,opt,name=servo_state,json=servoState,enum=chrome.chromeos_infra.skylab.proto.inventory.PeripheralState" json:"servo_state,omitempty"` |
| ServoType *string `protobuf:"bytes,17,opt,name=servo_type,json=servoType" json:"servo_type,omitempty"` |
| ServoTopology *ServoTopology `protobuf:"bytes,24,opt,name=servo_topology,json=servoTopology" json:"servo_topology,omitempty"` |
| ServoFwChannel *ServoFwChannel `protobuf:"varint,27,opt,name=servo_fw_channel,json=servoFwChannel,enum=chrome.chromeos_infra.skylab.proto.inventory.ServoFwChannel" json:"servo_fw_channel,omitempty"` |
| SmartUsbhub *bool `protobuf:"varint,21,opt,name=smart_usbhub,json=smartUsbhub" json:"smart_usbhub,omitempty"` |
| Stylus *bool `protobuf:"varint,3,opt,name=stylus" json:"stylus,omitempty"` |
| Camerabox *bool `protobuf:"varint,13,opt,name=camerabox" json:"camerabox,omitempty"` |
| // Is this device inside a hermetic wifi cell. |
| Wificell *bool `protobuf:"varint,4,opt,name=wificell" json:"wificell,omitempty"` |
| // Indicate if the device is in a pre-setup environment with 802.11ax routers. |
| // crbug.com/1044786 |
| Router_802_11Ax *bool `protobuf:"varint,14,opt,name=router_802_11ax,json=router80211ax" json:"router_802_11ax,omitempty"` |
| // Indicate how many working btpeers for this device: crbug.com/1052511 |
| WorkingBluetoothBtpeer *int32 `protobuf:"varint,16,opt,name=working_bluetooth_btpeer,json=workingBluetoothBtpeer" json:"working_bluetooth_btpeer,omitempty"` |
| CameraboxFacing *Peripherals_CameraboxFacing `protobuf:"varint,18,opt,name=camerabox_facing,json=cameraboxFacing,enum=chrome.chromeos_infra.skylab.proto.inventory.Peripherals_CameraboxFacing" json:"camerabox_facing,omitempty"` |
| CameraboxLight *Peripherals_CameraboxLight `protobuf:"varint,22,opt,name=camerabox_light,json=cameraboxLight,enum=chrome.chromeos_infra.skylab.proto.inventory.Peripherals_CameraboxLight" json:"camerabox_light,omitempty"` |
| StorageState *HardwareState `protobuf:"varint,19,opt,name=storage_state,json=storageState,enum=chrome.chromeos_infra.skylab.proto.inventory.HardwareState" json:"storage_state,omitempty"` |
| ServoUsbState *HardwareState `protobuf:"varint,20,opt,name=servo_usb_state,json=servoUsbState,enum=chrome.chromeos_infra.skylab.proto.inventory.HardwareState" json:"servo_usb_state,omitempty"` |
| BatteryState *HardwareState `protobuf:"varint,26,opt,name=battery_state,json=batteryState,enum=chrome.chromeos_infra.skylab.proto.inventory.HardwareState" json:"battery_state,omitempty"` |
| WifiState *HardwareState `protobuf:"varint,28,opt,name=wifi_state,json=wifiState,enum=chrome.chromeos_infra.skylab.proto.inventory.HardwareState" json:"wifi_state,omitempty"` |
| BluetoothState *HardwareState `protobuf:"varint,29,opt,name=bluetooth_state,json=bluetoothState,enum=chrome.chromeos_infra.skylab.proto.inventory.HardwareState" json:"bluetooth_state,omitempty"` |
| RpmState *PeripheralState `protobuf:"varint,25,opt,name=rpm_state,json=rpmState,enum=chrome.chromeos_infra.skylab.proto.inventory.PeripheralState" json:"rpm_state,omitempty"` |
| } |
| |
| func (x *Peripherals) Reset() { |
| *x = Peripherals{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[12] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Peripherals) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Peripherals) ProtoMessage() {} |
| |
| func (x *Peripherals) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 Peripherals.ProtoReflect.Descriptor instead. |
| func (*Peripherals) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{12} |
| } |
| |
| func (x *Peripherals) GetAudioBoard() bool { |
| if x != nil && x.AudioBoard != nil { |
| return *x.AudioBoard |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetAudioBox() bool { |
| if x != nil && x.AudioBox != nil { |
| return *x.AudioBox |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetAudioCable() bool { |
| if x != nil && x.AudioCable != nil { |
| return *x.AudioCable |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetAudioLoopbackDongle() bool { |
| if x != nil && x.AudioLoopbackDongle != nil { |
| return *x.AudioLoopbackDongle |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetChameleon() bool { |
| if x != nil && x.Chameleon != nil { |
| return *x.Chameleon |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetChameleonType() []Peripherals_ChameleonType { |
| if x != nil { |
| return x.ChameleonType |
| } |
| return nil |
| } |
| |
| func (x *Peripherals) GetConductive() bool { |
| if x != nil && x.Conductive != nil { |
| return *x.Conductive |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetHuddly() bool { |
| if x != nil && x.Huddly != nil { |
| return *x.Huddly |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetMimo() bool { |
| if x != nil && x.Mimo != nil { |
| return *x.Mimo |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetPtzpro2() bool { |
| if x != nil && x.Ptzpro2 != nil { |
| return *x.Ptzpro2 |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetServo() bool { |
| if x != nil && x.Servo != nil { |
| return *x.Servo |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetServoState() PeripheralState { |
| if x != nil && x.ServoState != nil { |
| return *x.ServoState |
| } |
| return PeripheralState_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetServoType() string { |
| if x != nil && x.ServoType != nil { |
| return *x.ServoType |
| } |
| return "" |
| } |
| |
| func (x *Peripherals) GetServoTopology() *ServoTopology { |
| if x != nil { |
| return x.ServoTopology |
| } |
| return nil |
| } |
| |
| func (x *Peripherals) GetServoFwChannel() ServoFwChannel { |
| if x != nil && x.ServoFwChannel != nil { |
| return *x.ServoFwChannel |
| } |
| return ServoFwChannel_SERVO_FW_STABLE |
| } |
| |
| func (x *Peripherals) GetSmartUsbhub() bool { |
| if x != nil && x.SmartUsbhub != nil { |
| return *x.SmartUsbhub |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetStylus() bool { |
| if x != nil && x.Stylus != nil { |
| return *x.Stylus |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetCamerabox() bool { |
| if x != nil && x.Camerabox != nil { |
| return *x.Camerabox |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetWificell() bool { |
| if x != nil && x.Wificell != nil { |
| return *x.Wificell |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetRouter_802_11Ax() bool { |
| if x != nil && x.Router_802_11Ax != nil { |
| return *x.Router_802_11Ax |
| } |
| return false |
| } |
| |
| func (x *Peripherals) GetWorkingBluetoothBtpeer() int32 { |
| if x != nil && x.WorkingBluetoothBtpeer != nil { |
| return *x.WorkingBluetoothBtpeer |
| } |
| return 0 |
| } |
| |
| func (x *Peripherals) GetCameraboxFacing() Peripherals_CameraboxFacing { |
| if x != nil && x.CameraboxFacing != nil { |
| return *x.CameraboxFacing |
| } |
| return Peripherals_CAMERABOX_FACING_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetCameraboxLight() Peripherals_CameraboxLight { |
| if x != nil && x.CameraboxLight != nil { |
| return *x.CameraboxLight |
| } |
| return Peripherals_CAMERABOX_LIGHT_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetStorageState() HardwareState { |
| if x != nil && x.StorageState != nil { |
| return *x.StorageState |
| } |
| return HardwareState_HARDWARE_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetServoUsbState() HardwareState { |
| if x != nil && x.ServoUsbState != nil { |
| return *x.ServoUsbState |
| } |
| return HardwareState_HARDWARE_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetBatteryState() HardwareState { |
| if x != nil && x.BatteryState != nil { |
| return *x.BatteryState |
| } |
| return HardwareState_HARDWARE_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetWifiState() HardwareState { |
| if x != nil && x.WifiState != nil { |
| return *x.WifiState |
| } |
| return HardwareState_HARDWARE_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetBluetoothState() HardwareState { |
| if x != nil && x.BluetoothState != nil { |
| return *x.BluetoothState |
| } |
| return HardwareState_HARDWARE_UNKNOWN |
| } |
| |
| func (x *Peripherals) GetRpmState() PeripheralState { |
| if x != nil && x.RpmState != nil { |
| return *x.RpmState |
| } |
| return PeripheralState_UNKNOWN |
| } |
| |
| // Copy from servo.proto |
| // Servo Topology describe connected servo devices on DUT set-up to provide Servo functionality. |
| // Next Tag : 3 |
| type ServoTopology struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Main *ServoTopologyItem `protobuf:"bytes,1,opt,name=main" json:"main,omitempty"` |
| Children []*ServoTopologyItem `protobuf:"bytes,2,rep,name=children" json:"children,omitempty"` |
| } |
| |
| func (x *ServoTopology) Reset() { |
| *x = ServoTopology{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[13] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ServoTopology) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ServoTopology) ProtoMessage() {} |
| |
| func (x *ServoTopology) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 ServoTopology.ProtoReflect.Descriptor instead. |
| func (*ServoTopology) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{13} |
| } |
| |
| func (x *ServoTopology) GetMain() *ServoTopologyItem { |
| if x != nil { |
| return x.Main |
| } |
| return nil |
| } |
| |
| func (x *ServoTopology) GetChildren() []*ServoTopologyItem { |
| if x != nil { |
| return x.Children |
| } |
| return nil |
| } |
| |
| // Servo Topology Item describe details of one servo device on DUT set-up. |
| // Next Tag : 5 |
| type ServoTopologyItem struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // type provides the type of servo device. Keeping as String to avoid issue with introduce new type. |
| Type *string `protobuf:"bytes,1,opt,name=type" json:"type,omitempty"` |
| // sysfs_product providess the product name of the device recorded in File System. |
| SysfsProduct *string `protobuf:"bytes,2,opt,name=sysfs_product,json=sysfsProduct" json:"sysfs_product,omitempty"` |
| // serial providess the serilal number of the device. |
| Serial *string `protobuf:"bytes,3,opt,name=serial" json:"serial,omitempty"` |
| // usb_hub_port providess the port connection to the device. |
| // e.g. '1-6.2.2' where |
| // '1-6' - port on the labstation |
| // '2' - port on smart-hub connected to the labstation |
| // '2' - port on servo hub (part of servo_v4 or servo_v4.1) connected to the smart-hub |
| // The same path will look '1-6.2' if connected servo_v4 directly to the labstation. |
| UsbHubPort *string `protobuf:"bytes,4,opt,name=usb_hub_port,json=usbHubPort" json:"usb_hub_port,omitempty"` |
| } |
| |
| func (x *ServoTopologyItem) Reset() { |
| *x = ServoTopologyItem{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[14] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ServoTopologyItem) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ServoTopologyItem) ProtoMessage() {} |
| |
| func (x *ServoTopologyItem) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 ServoTopologyItem.ProtoReflect.Descriptor instead. |
| func (*ServoTopologyItem) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{14} |
| } |
| |
| func (x *ServoTopologyItem) GetType() string { |
| if x != nil && x.Type != nil { |
| return *x.Type |
| } |
| return "" |
| } |
| |
| func (x *ServoTopologyItem) GetSysfsProduct() string { |
| if x != nil && x.SysfsProduct != nil { |
| return *x.SysfsProduct |
| } |
| return "" |
| } |
| |
| func (x *ServoTopologyItem) GetSerial() string { |
| if x != nil && x.Serial != nil { |
| return *x.Serial |
| } |
| return "" |
| } |
| |
| func (x *ServoTopologyItem) GetUsbHubPort() string { |
| if x != nil && x.UsbHubPort != nil { |
| return *x.UsbHubPort |
| } |
| return "" |
| } |
| |
| // These labels are used by the CI system to provide test coverage hints to |
| // Skylab. |
| // |
| // TODO(pprabhu) Most of these should instead be self-servo pools. |
| // Migrate the test requests to use pools and then deprecate these fields in |
| // favor of pools. |
| // |
| // Keep sorted by field name. |
| // |
| // NEXT TAG: 14 |
| type TestCoverageHints struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| ChaosDut *bool `protobuf:"varint,7,opt,name=chaos_dut,json=chaosDut" json:"chaos_dut,omitempty"` |
| ChaosNightly *bool `protobuf:"varint,13,opt,name=chaos_nightly,json=chaosNightly" json:"chaos_nightly,omitempty"` |
| Chromesign *bool `protobuf:"varint,11,opt,name=chromesign" json:"chromesign,omitempty"` |
| CtsSparse []TestCoverageHints_CTSSparse `protobuf:"varint,1,rep,name=cts_sparse,json=ctsSparse,enum=chrome.chromeos_infra.skylab.proto.inventory.TestCoverageHints_CTSSparse" json:"cts_sparse,omitempty"` |
| // Whether the DUT has the hangout app installed. |
| // This is a software feature of the DUT that is not provisioned as part of |
| // the test setup, hence the DUT must be labelled explicitly as supporting |
| // this feature. Should probably be a SoftwareFeature for the DUT. |
| HangoutApp *bool `protobuf:"varint,9,opt,name=hangout_app,json=hangoutApp" json:"hangout_app,omitempty"` |
| // Whether the DUT has the meet app installed. |
| // This is a software feature of the DUT that is not provisioned as part of |
| // the test setup, hence the DUT must be labelled explicitly as supporting |
| // this feature. Should probably be a SoftwareFeature for the DUT. |
| MeetApp *bool `protobuf:"varint,10,opt,name=meet_app,json=meetApp" json:"meet_app,omitempty"` |
| RecoveryTest *bool `protobuf:"varint,8,opt,name=recovery_test,json=recoveryTest" json:"recovery_test,omitempty"` |
| TestAudiojack *bool `protobuf:"varint,3,opt,name=test_audiojack,json=testAudiojack" json:"test_audiojack,omitempty"` |
| TestHdmiaudio *bool `protobuf:"varint,2,opt,name=test_hdmiaudio,json=testHdmiaudio" json:"test_hdmiaudio,omitempty"` |
| TestUsbaudio *bool `protobuf:"varint,4,opt,name=test_usbaudio,json=testUsbaudio" json:"test_usbaudio,omitempty"` |
| TestUsbprinting *bool `protobuf:"varint,5,opt,name=test_usbprinting,json=testUsbprinting" json:"test_usbprinting,omitempty"` |
| UsbDetect *bool `protobuf:"varint,6,opt,name=usb_detect,json=usbDetect" json:"usb_detect,omitempty"` |
| UseLid *bool `protobuf:"varint,12,opt,name=use_lid,json=useLid" json:"use_lid,omitempty"` |
| } |
| |
| func (x *TestCoverageHints) Reset() { |
| *x = TestCoverageHints{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[15] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *TestCoverageHints) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*TestCoverageHints) ProtoMessage() {} |
| |
| func (x *TestCoverageHints) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 TestCoverageHints.ProtoReflect.Descriptor instead. |
| func (*TestCoverageHints) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{15} |
| } |
| |
| func (x *TestCoverageHints) GetChaosDut() bool { |
| if x != nil && x.ChaosDut != nil { |
| return *x.ChaosDut |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetChaosNightly() bool { |
| if x != nil && x.ChaosNightly != nil { |
| return *x.ChaosNightly |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetChromesign() bool { |
| if x != nil && x.Chromesign != nil { |
| return *x.Chromesign |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetCtsSparse() []TestCoverageHints_CTSSparse { |
| if x != nil { |
| return x.CtsSparse |
| } |
| return nil |
| } |
| |
| func (x *TestCoverageHints) GetHangoutApp() bool { |
| if x != nil && x.HangoutApp != nil { |
| return *x.HangoutApp |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetMeetApp() bool { |
| if x != nil && x.MeetApp != nil { |
| return *x.MeetApp |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetRecoveryTest() bool { |
| if x != nil && x.RecoveryTest != nil { |
| return *x.RecoveryTest |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetTestAudiojack() bool { |
| if x != nil && x.TestAudiojack != nil { |
| return *x.TestAudiojack |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetTestHdmiaudio() bool { |
| if x != nil && x.TestHdmiaudio != nil { |
| return *x.TestHdmiaudio |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetTestUsbaudio() bool { |
| if x != nil && x.TestUsbaudio != nil { |
| return *x.TestUsbaudio |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetTestUsbprinting() bool { |
| if x != nil && x.TestUsbprinting != nil { |
| return *x.TestUsbprinting |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetUsbDetect() bool { |
| if x != nil && x.UsbDetect != nil { |
| return *x.UsbDetect |
| } |
| return false |
| } |
| |
| func (x *TestCoverageHints) GetUseLid() bool { |
| if x != nil && x.UseLid != nil { |
| return *x.UseLid |
| } |
| return false |
| } |
| |
| // NEXT TAG: 3 |
| type KeyValue struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Key *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"` |
| Value *string `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` |
| } |
| |
| func (x *KeyValue) Reset() { |
| *x = KeyValue{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[16] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *KeyValue) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*KeyValue) ProtoMessage() {} |
| |
| func (x *KeyValue) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 KeyValue.ProtoReflect.Descriptor instead. |
| func (*KeyValue) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{16} |
| } |
| |
| func (x *KeyValue) GetKey() string { |
| if x != nil && x.Key != nil { |
| return *x.Key |
| } |
| return "" |
| } |
| |
| func (x *KeyValue) GetValue() string { |
| if x != nil && x.Value != nil { |
| return *x.Value |
| } |
| return "" |
| } |
| |
| // Represents a Software License assigned to a device. |
| // Next Tag: 2 |
| type License struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // The type of licenses (e.g. Windows) |
| Type *LicenseType `protobuf:"varint,1,opt,name=type,enum=chrome.chromeos_infra.skylab.proto.inventory.LicenseType" json:"type,omitempty"` |
| // An optional string to uniquely identify the license that was assigned, |
| // for tracking purposes. |
| Identifier *string `protobuf:"bytes,2,opt,name=identifier" json:"identifier,omitempty"` |
| } |
| |
| func (x *License) Reset() { |
| *x = License{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_infra_libs_skylab_inventory_device_proto_msgTypes[17] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *License) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*License) ProtoMessage() {} |
| |
| func (x *License) ProtoReflect() protoreflect.Message { |
| mi := &file_infra_libs_skylab_inventory_device_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 License.ProtoReflect.Descriptor instead. |
| func (*License) Descriptor() ([]byte, []int) { |
| return file_infra_libs_skylab_inventory_device_proto_rawDescGZIP(), []int{17} |
| } |
| |
| func (x *License) GetType() LicenseType { |
| if x != nil && x.Type != nil { |
| return *x.Type |
| } |
| return LicenseType_LICENSE_TYPE_UNSPECIFIED |
| } |
| |
| func (x *License) GetIdentifier() string { |
| if x != nil && x.Identifier != nil { |
| return *x.Identifier |
| } |
| return "" |
| } |
| |
| var File_infra_libs_skylab_inventory_device_proto protoreflect.FileDescriptor |
| |
| var file_infra_libs_skylab_inventory_device_proto_rawDesc = []byte{ |
| 0x0a, 0x28, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2f, 0x6c, 0x69, 0x62, 0x73, 0x2f, 0x73, 0x6b, 0x79, |
| 0x6c, 0x61, 0x62, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x64, 0x65, |
| 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x2c, 0x63, 0x68, 0x72, 0x6f, |
| 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, |
| 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, |
| 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x28, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2f, |
| 0x6c, 0x69, 0x62, 0x73, 0x2f, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2f, 0x69, 0x6e, 0x76, 0x65, |
| 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x22, 0xa4, 0x02, 0x0a, 0x06, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x51, 0x0a, |
| 0x03, 0x64, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, |
| 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, |
| 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, |
| 0x55, 0x6e, 0x64, 0x65, 0x72, 0x54, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x03, 0x64, 0x75, 0x74, |
| 0x12, 0x5e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x6f, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, |
| 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, |
| 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, |
| 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, |
| 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x6f, 0x48, 0x6f, 0x73, 0x74, 0x44, 0x65, 0x76, |
| 0x69, 0x63, 0x65, 0x48, 0x00, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x6f, 0x48, 0x6f, 0x73, 0x74, |
| 0x12, 0x5d, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x18, 0x03, 0x20, |
| 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, |
| 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, |
| 0x72, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, |
| 0x63, 0x65, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x42, |
| 0x08, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0xce, 0x01, 0x0a, 0x0f, 0x44, 0x65, |
| 0x76, 0x69, 0x63, 0x65, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x54, 0x65, 0x73, 0x74, 0x12, 0x57, 0x0a, |
| 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x3f, 0x2e, |
| 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, |
| 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6d, |
| 0x6d, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x06, |
| 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x62, 0x0a, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x61, |
| 0x6c, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, |
| 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, |
| 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, |
| 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x52, 0x65, |
| 0x6d, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0d, 0x72, 0x65, 0x6d, |
| 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x0f, 0x53, |
| 0x65, 0x72, 0x76, 0x6f, 0x48, 0x6f, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x57, |
| 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x3f, |
| 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, |
| 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, |
| 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x43, 0x6f, |
| 0x6d, 0x6d, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, |
| 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, |
| 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, |
| 0x6e, 0x22, 0x6a, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x44, 0x65, |
| 0x76, 0x69, 0x63, 0x65, 0x12, 0x57, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x01, |
| 0x20, 0x02, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, |
| 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, |
| 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, |
| 0x6f, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, |
| 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xb8, 0x05, |
| 0x0a, 0x11, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x70, |
| 0x65, 0x63, 0x73, 0x12, 0x56, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, |
| 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, |
| 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, |
| 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, |
| 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x5b, 0x0a, 0x0c, 0x64, |
| 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, |
| 0x0b, 0x32, 0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, |
| 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, |
| 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, |
| 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x0b, 0x64, 0x65, 0x76, |
| 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x5b, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, |
| 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, |
| 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, |
| 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x45, 0x6e, 0x76, |
| 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, |
| 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, |
| 0x65, 0x18, 0x02, 0x20, 0x02, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, |
| 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x77, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, |
| 0x04, 0x68, 0x77, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, |
| 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x57, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, |
| 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, |
| 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, |
| 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, |
| 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, |
| 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x52, |
| 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x36, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, |
| 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x68, 0x61, 0x72, |
| 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, |
| 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, |
| 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x42, 0x02, 0x18, 0x01, |
| 0x52, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x23, 0x0a, 0x0d, |
| 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, |
| 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x75, 0x73, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x77, 0x69, |
| 0x74, 0x63, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x75, 0x73, 0x65, 0x6c, 0x65, |
| 0x73, 0x73, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x22, 0x95, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x6d, |
| 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x75, |
| 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x62, 0x75, 0x67, 0x12, 0x18, 0x0a, 0x07, |
| 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, |
| 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x58, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, |
| 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x63, 0x68, |
| 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, |
| 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, |
| 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, |
| 0x22, 0x91, 0x01, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, |
| 0x03, 0x6c, 0x61, 0x62, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, |
| 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, |
| 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, |
| 0x61, 0x6c, 0x4c, 0x61, 0x62, 0x52, 0x03, 0x6c, 0x61, 0x62, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x6f, |
| 0x77, 0x18, 0x02, 0x20, 0x02, 0x28, 0x05, 0x52, 0x03, 0x72, 0x6f, 0x77, 0x12, 0x12, 0x0a, 0x04, |
| 0x72, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x02, 0x28, 0x05, 0x52, 0x04, 0x72, 0x61, 0x63, 0x6b, |
| 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x04, 0x20, 0x02, 0x28, 0x05, 0x52, 0x04, |
| 0x68, 0x6f, 0x73, 0x74, 0x22, 0x21, 0x0a, 0x0b, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, |
| 0x4c, 0x61, 0x62, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, |
| 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xc1, 0x02, 0x0a, 0x0a, 0x44, 0x65, 0x76, 0x69, |
| 0x63, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x16, 0x0a, 0x04, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, |
| 0x20, 0x02, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1b, |
| 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x02, 0x20, 0x02, 0x28, |
| 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x42, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, |
| 0x6f, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x02, 0x28, 0x09, |
| 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x0a, |
| 0x62, 0x65, 0x67, 0x69, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x02, 0x28, 0x0b, |
| 0x32, 0x37, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x62, 0x65, 0x67, 0x69, 0x6e, |
| 0x54, 0x69, 0x6d, 0x65, 0x12, 0x58, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, |
| 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x63, 0x68, 0x72, 0x6f, |
| 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, |
| 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, |
| 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, |
| 0x6d, 0x70, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, |
| 0x0a, 0x07, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x02, 0x28, 0x05, 0x42, |
| 0x02, 0x18, 0x01, 0x52, 0x06, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, |
| 0x64, 0x18, 0x07, 0x20, 0x02, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x23, 0x0a, 0x05, 0x53, |
| 0x68, 0x61, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, |
| 0x18, 0x01, 0x20, 0x02, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, |
| 0x22, 0xe2, 0x12, 0x0a, 0x11, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, |
| 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x72, 0x63, 0x18, 0x14, 0x20, |
| 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, 0x72, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x61, 0x72, |
| 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x14, |
| 0x0a, 0x05, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, |
| 0x72, 0x61, 0x6e, 0x64, 0x12, 0x66, 0x0a, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, |
| 0x74, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, |
| 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, |
| 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, |
| 0x72, 0x65, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0c, |
| 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x69, 0x0a, 0x0a, |
| 0x63, 0x72, 0x35, 0x30, 0x5f, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, |
| 0x32, 0x4a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, |
| 0x73, 0x2e, 0x43, 0x52, 0x35, 0x30, 0x5f, 0x50, 0x68, 0x61, 0x73, 0x65, 0x52, 0x09, 0x63, 0x72, |
| 0x35, 0x30, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x72, 0x35, 0x30, 0x5f, |
| 0x72, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x69, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, |
| 0x63, 0x72, 0x35, 0x30, 0x52, 0x6f, 0x4b, 0x65, 0x79, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, |
| 0x72, 0x35, 0x30, 0x5f, 0x72, 0x6f, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1d, |
| 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x35, 0x30, 0x52, 0x6f, 0x56, 0x65, 0x72, 0x73, |
| 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x72, 0x35, 0x30, 0x5f, 0x72, 0x77, 0x5f, 0x6b, |
| 0x65, 0x79, 0x69, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x35, 0x30, |
| 0x52, 0x77, 0x4b, 0x65, 0x79, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x72, 0x35, 0x30, 0x5f, |
| 0x72, 0x77, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, |
| 0x52, 0x0d, 0x63, 0x72, 0x35, 0x30, 0x52, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, |
| 0x6e, 0x0a, 0x0e, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, |
| 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, |
| 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, |
| 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, |
| 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x2e, 0x44, 0x55, 0x54, 0x50, 0x6f, 0x6f, 0x6c, |
| 0x52, 0x0d, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x12, |
| 0x5f, 0x0a, 0x07, 0x63, 0x74, 0x73, 0x5f, 0x61, 0x62, 0x69, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0e, |
| 0x32, 0x46, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, |
| 0x73, 0x2e, 0x43, 0x54, 0x53, 0x41, 0x42, 0x49, 0x52, 0x06, 0x63, 0x74, 0x73, 0x41, 0x62, 0x69, |
| 0x12, 0x5f, 0x0a, 0x07, 0x63, 0x74, 0x73, 0x5f, 0x63, 0x70, 0x75, 0x18, 0x15, 0x20, 0x03, 0x28, |
| 0x0e, 0x32, 0x46, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, |
| 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, |
| 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, |
| 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, |
| 0x6c, 0x73, 0x2e, 0x43, 0x54, 0x53, 0x43, 0x50, 0x55, 0x52, 0x06, 0x63, 0x74, 0x73, 0x43, 0x70, |
| 0x75, 0x12, 0x5f, 0x0a, 0x07, 0x65, 0x63, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, |
| 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, |
| 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, |
| 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, |
| 0x79, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, |
| 0x65, 0x6c, 0x73, 0x2e, 0x45, 0x43, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x65, 0x63, 0x54, 0x79, |
| 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x68, 0x77, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, |
| 0x6e, 0x65, 0x6e, 0x74, 0x18, 0x21, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x68, 0x77, 0x69, 0x64, |
| 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x77, 0x69, |
| 0x64, 0x5f, 0x73, 0x6b, 0x75, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x77, 0x69, |
| 0x64, 0x53, 0x6b, 0x75, 0x12, 0x51, 0x0a, 0x08, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, |
| 0x18, 0x22, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, |
| 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, |
| 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, |
| 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x6c, |
| 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, |
| 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x10, 0x0a, |
| 0x03, 0x73, 0x6b, 0x75, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x6b, 0x75, 0x12, |
| 0x5f, 0x0a, 0x07, 0x6f, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, |
| 0x32, 0x46, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, |
| 0x73, 0x2e, 0x4f, 0x53, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, |
| 0x12, 0x5b, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x18, |
| 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, |
| 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, |
| 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, |
| 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x73, |
| 0x52, 0x0b, 0x70, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x12, 0x5b, 0x0a, |
| 0x05, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x45, 0x2e, 0x63, |
| 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, |
| 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, |
| 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x63, 0x68, 0x65, |
| 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x2e, 0x50, 0x68, |
| 0x61, 0x73, 0x65, 0x52, 0x05, 0x70, 0x68, 0x61, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, |
| 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, |
| 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, |
| 0x6e, 0x63, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, |
| 0x52, 0x0f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x44, 0x65, 0x73, 0x69, 0x67, |
| 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, |
| 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x6c, |
| 0x66, 0x53, 0x65, 0x72, 0x76, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x6f, 0x0a, 0x13, 0x74, |
| 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x68, 0x69, 0x6e, |
| 0x74, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, |
| 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, |
| 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, |
| 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x76, 0x65, |
| 0x72, 0x61, 0x67, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x11, 0x74, 0x65, 0x73, 0x74, 0x43, |
| 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, |
| 0x75, 0x73, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x18, 0x17, |
| 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x75, 0x73, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x77, 0x69, |
| 0x74, 0x63, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x11, |
| 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x1b, 0x0a, |
| 0x09, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x63, 0x68, 0x69, 0x70, 0x18, 0x20, 0x20, 0x01, 0x28, 0x09, |
| 0x52, 0x08, 0x77, 0x69, 0x66, 0x69, 0x43, 0x68, 0x69, 0x70, 0x22, 0x4f, 0x0a, 0x0a, 0x43, 0x52, |
| 0x35, 0x30, 0x5f, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x52, 0x35, 0x30, |
| 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, |
| 0x12, 0x15, 0x0a, 0x11, 0x43, 0x52, 0x35, 0x30, 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x50, |
| 0x52, 0x45, 0x50, 0x56, 0x54, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x52, 0x35, 0x30, 0x5f, |
| 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x50, 0x56, 0x54, 0x10, 0x02, 0x22, 0xcd, 0x01, 0x0a, 0x07, |
| 0x44, 0x55, 0x54, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x55, 0x54, 0x5f, 0x50, |
| 0x4f, 0x4f, 0x4c, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, |
| 0x0b, 0x44, 0x55, 0x54, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, 0x43, 0x51, 0x10, 0x01, 0x12, 0x10, |
| 0x0a, 0x0c, 0x44, 0x55, 0x54, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, 0x42, 0x56, 0x54, 0x10, 0x02, |
| 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x55, 0x54, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, 0x53, 0x55, 0x49, |
| 0x54, 0x45, 0x53, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x55, 0x54, 0x5f, 0x50, 0x4f, 0x4f, |
| 0x4c, 0x5f, 0x43, 0x54, 0x53, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x55, 0x54, 0x5f, 0x50, |
| 0x4f, 0x4f, 0x4c, 0x5f, 0x43, 0x54, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x42, 0x55, 0x49, 0x4c, 0x44, |
| 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x55, 0x54, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, 0x43, |
| 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x55, 0x4f, 0x55, 0x53, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x44, |
| 0x55, 0x54, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, 0x41, 0x52, 0x43, 0x5f, 0x50, 0x52, 0x45, 0x53, |
| 0x55, 0x42, 0x4d, 0x49, 0x54, 0x10, 0x07, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x55, 0x54, 0x5f, 0x50, |
| 0x4f, 0x4f, 0x4c, 0x5f, 0x51, 0x55, 0x4f, 0x54, 0x41, 0x10, 0x08, 0x22, 0x3f, 0x0a, 0x06, 0x43, |
| 0x54, 0x53, 0x41, 0x42, 0x49, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x54, 0x53, 0x5f, 0x41, 0x42, 0x49, |
| 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x54, |
| 0x53, 0x5f, 0x41, 0x42, 0x49, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x43, |
| 0x54, 0x53, 0x5f, 0x41, 0x42, 0x49, 0x5f, 0x58, 0x38, 0x36, 0x10, 0x02, 0x22, 0x3f, 0x0a, 0x06, |
| 0x43, 0x54, 0x53, 0x43, 0x50, 0x55, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x54, 0x53, 0x5f, 0x43, 0x50, |
| 0x55, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, |
| 0x54, 0x53, 0x5f, 0x43, 0x50, 0x55, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, |
| 0x43, 0x54, 0x53, 0x5f, 0x43, 0x50, 0x55, 0x5f, 0x58, 0x38, 0x36, 0x10, 0x02, 0x22, 0x34, 0x0a, |
| 0x06, 0x45, 0x43, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x43, 0x5f, 0x54, 0x59, |
| 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, |
| 0x45, 0x43, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x48, 0x52, 0x4f, 0x4d, 0x45, 0x5f, 0x4f, |
| 0x53, 0x10, 0x01, 0x22, 0x87, 0x01, 0x0a, 0x06, 0x4f, 0x53, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, |
| 0x0a, 0x0f, 0x4f, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, |
| 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, |
| 0x4e, 0x44, 0x52, 0x4f, 0x49, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x53, 0x5f, 0x54, |
| 0x59, 0x50, 0x45, 0x5f, 0x43, 0x52, 0x4f, 0x53, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x53, |
| 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4a, 0x45, 0x54, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x10, |
| 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, 0x42, |
| 0x4c, 0x41, 0x42, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, |
| 0x5f, 0x4c, 0x41, 0x42, 0x53, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x22, 0x95, 0x01, |
| 0x0a, 0x05, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x48, 0x41, 0x53, 0x45, |
| 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x48, |
| 0x41, 0x53, 0x45, 0x5f, 0x45, 0x56, 0x54, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x48, 0x41, |
| 0x53, 0x45, 0x5f, 0x45, 0x56, 0x54, 0x32, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x48, 0x41, |
| 0x53, 0x45, 0x5f, 0x44, 0x56, 0x54, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x48, 0x41, 0x53, |
| 0x45, 0x5f, 0x44, 0x56, 0x54, 0x32, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x48, 0x41, 0x53, |
| 0x45, 0x5f, 0x50, 0x56, 0x54, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x48, 0x41, 0x53, 0x45, |
| 0x5f, 0x50, 0x56, 0x54, 0x32, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x48, 0x41, 0x53, 0x45, |
| 0x5f, 0x50, 0x56, 0x54, 0x33, 0x10, 0x07, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x48, 0x41, 0x53, 0x45, |
| 0x5f, 0x4d, 0x50, 0x10, 0x08, 0x22, 0xd2, 0x0a, 0x0a, 0x14, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, |
| 0x72, 0x65, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, |
| 0x0a, 0x05, 0x61, 0x74, 0x72, 0x75, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x61, |
| 0x74, 0x72, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, |
| 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, |
| 0x74, 0x68, 0x12, 0x64, 0x0a, 0x07, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x18, 0x10, 0x20, |
| 0x01, 0x28, 0x0e, 0x32, 0x4a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, |
| 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, |
| 0x72, 0x79, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x43, 0x61, 0x70, 0x61, 0x62, |
| 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x52, |
| 0x07, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0e, 0x64, 0x65, 0x74, 0x61, |
| 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, |
| 0x52, 0x0e, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x62, 0x61, 0x73, 0x65, |
| 0x12, 0x20, 0x0a, 0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, |
| 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, |
| 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x72, 0x6f, 0x6d, 0x18, 0x0e, |
| 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x6c, 0x61, 0x73, 0x68, 0x72, 0x6f, 0x6d, 0x12, 0x1d, |
| 0x0a, 0x0a, 0x67, 0x70, 0x75, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, |
| 0x28, 0x09, 0x52, 0x09, 0x67, 0x70, 0x75, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x1a, 0x0a, |
| 0x08, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, |
| 0x08, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x6f, 0x74, |
| 0x77, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, |
| 0x6f, 0x74, 0x77, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x74, |
| 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x18, 0x08, 0x20, |
| 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x44, 0x69, 0x73, |
| 0x70, 0x6c, 0x61, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x73, 0x6c, 0x65, |
| 0x65, 0x70, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x73, |
| 0x6c, 0x65, 0x65, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, |
| 0x77, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, |
| 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, |
| 0x09, 0x52, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x65, |
| 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, |
| 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x62, 0x63, |
| 0x61, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x77, 0x65, 0x62, 0x63, 0x61, 0x6d, |
| 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x70, 0x61, 0x64, 0x18, 0x0a, 0x20, 0x01, |
| 0x28, 0x08, 0x52, 0x08, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x70, 0x61, 0x64, 0x12, 0x20, 0x0a, 0x0b, |
| 0x74, 0x6f, 0x75, 0x63, 0x68, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, |
| 0x08, 0x52, 0x0b, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x83, |
| 0x01, 0x0a, 0x12, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, |
| 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x54, 0x2e, 0x63, 0x68, |
| 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, |
| 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, |
| 0x61, 0x72, 0x65, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, |
| 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, |
| 0x6e, 0x52, 0x11, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, |
| 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xab, 0x01, 0x0a, 0x07, 0x43, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, |
| 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x41, 0x52, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, |
| 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x41, 0x52, 0x52, 0x49, 0x45, 0x52, |
| 0x5f, 0x41, 0x54, 0x54, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x41, 0x52, 0x52, 0x49, 0x45, |
| 0x52, 0x5f, 0x54, 0x4d, 0x4f, 0x42, 0x49, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x43, |
| 0x41, 0x52, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x5a, 0x4f, 0x4e, 0x10, 0x03, |
| 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x41, 0x52, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x53, 0x50, 0x52, 0x49, |
| 0x4e, 0x54, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x41, 0x52, 0x52, 0x49, 0x45, 0x52, 0x5f, |
| 0x54, 0x45, 0x53, 0x54, 0x45, 0x53, 0x49, 0x4d, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x41, |
| 0x52, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x45, 0x53, 0x49, 0x4d, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, |
| 0x43, 0x41, 0x52, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x53, 0x49, 0x4d, |
| 0x10, 0x07, 0x22, 0xa5, 0x03, 0x0a, 0x11, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x63, 0x63, 0x65, |
| 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x1a, 0x56, 0x49, 0x44, 0x45, |
| 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, |
| 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x56, 0x49, 0x44, 0x45, |
| 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x48, |
| 0x32, 0x36, 0x34, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, |
| 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x4e, 0x43, 0x5f, |
| 0x48, 0x32, 0x36, 0x34, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, |
| 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x50, 0x38, |
| 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, |
| 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x56, 0x50, 0x38, |
| 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, |
| 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x50, 0x39, 0x10, 0x05, 0x12, 0x1e, |
| 0x0a, 0x1a, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, |
| 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x56, 0x50, 0x39, 0x10, 0x06, 0x12, 0x1c, |
| 0x0a, 0x18, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, |
| 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x50, 0x39, 0x5f, 0x32, 0x10, 0x07, 0x12, 0x20, 0x0a, 0x1c, |
| 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, |
| 0x4f, 0x4e, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x56, 0x50, 0x39, 0x5f, 0x32, 0x10, 0x08, 0x12, 0x1b, |
| 0x0a, 0x17, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, |
| 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x48, 0x32, 0x36, 0x35, 0x10, 0x09, 0x12, 0x1f, 0x0a, 0x1b, 0x56, |
| 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, |
| 0x4e, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x48, 0x32, 0x36, 0x35, 0x10, 0x0a, 0x12, 0x1b, 0x0a, 0x17, |
| 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, |
| 0x4f, 0x4e, 0x5f, 0x4d, 0x4a, 0x50, 0x47, 0x10, 0x0b, 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x49, 0x44, |
| 0x45, 0x4f, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, |
| 0x45, 0x4e, 0x43, 0x5f, 0x4d, 0x4a, 0x50, 0x47, 0x10, 0x0c, 0x22, 0xe5, 0x10, 0x0a, 0x0b, 0x50, |
| 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x75, |
| 0x64, 0x69, 0x6f, 0x5f, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, |
| 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, |
| 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, |
| 0x61, 0x75, 0x64, 0x69, 0x6f, 0x42, 0x6f, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x75, 0x64, 0x69, |
| 0x6f, 0x5f, 0x63, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, |
| 0x75, 0x64, 0x69, 0x6f, 0x43, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x75, 0x64, |
| 0x69, 0x6f, 0x5f, 0x6c, 0x6f, 0x6f, 0x70, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x64, 0x6f, 0x6e, 0x67, |
| 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x4c, |
| 0x6f, 0x6f, 0x70, 0x62, 0x61, 0x63, 0x6b, 0x44, 0x6f, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1c, 0x0a, |
| 0x09, 0x63, 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, |
| 0x52, 0x09, 0x63, 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x12, 0x6e, 0x0a, 0x0e, 0x63, |
| 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, |
| 0x03, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, |
| 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, |
| 0x72, 0x79, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x2e, 0x43, |
| 0x68, 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x68, |
| 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, |
| 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, |
| 0x0a, 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, |
| 0x75, 0x64, 0x64, 0x6c, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x68, 0x75, 0x64, |
| 0x64, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x69, 0x6d, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, |
| 0x08, 0x52, 0x04, 0x6d, 0x69, 0x6d, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x74, 0x7a, 0x70, 0x72, |
| 0x6f, 0x32, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x74, 0x7a, 0x70, 0x72, 0x6f, |
| 0x32, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x65, 0x72, 0x76, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, |
| 0x52, 0x05, 0x73, 0x65, 0x72, 0x76, 0x6f, 0x12, 0x5e, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x6f, |
| 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x63, |
| 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, |
| 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, |
| 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x65, 0x72, 0x69, |
| 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, 0x73, 0x65, 0x72, |
| 0x76, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x6f, |
| 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, |
| 0x76, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x6f, 0x5f, |
| 0x74, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, |
| 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, |
| 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, |
| 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x65, |
| 0x72, 0x76, 0x6f, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x52, 0x0d, 0x73, 0x65, 0x72, |
| 0x76, 0x6f, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x12, 0x66, 0x0a, 0x10, 0x73, 0x65, |
| 0x72, 0x76, 0x6f, 0x5f, 0x66, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x1b, |
| 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, |
| 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, |
| 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, |
| 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x6f, 0x46, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
| 0x65, 0x6c, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x6f, 0x46, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
| 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x5f, 0x75, 0x73, 0x62, 0x68, |
| 0x75, 0x62, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x55, |
| 0x73, 0x62, 0x68, 0x75, 0x62, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x18, |
| 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x12, 0x1c, 0x0a, |
| 0x09, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, |
| 0x52, 0x09, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x77, |
| 0x69, 0x66, 0x69, 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x77, |
| 0x69, 0x66, 0x69, 0x63, 0x65, 0x6c, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x6f, 0x75, 0x74, 0x65, |
| 0x72, 0x5f, 0x38, 0x30, 0x32, 0x5f, 0x31, 0x31, 0x61, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, |
| 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x38, 0x30, 0x32, 0x31, 0x31, 0x61, 0x78, 0x12, |
| 0x38, 0x0a, 0x18, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6c, 0x75, 0x65, 0x74, |
| 0x6f, 0x6f, 0x74, 0x68, 0x5f, 0x62, 0x74, 0x70, 0x65, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, |
| 0x05, 0x52, 0x16, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, |
| 0x6f, 0x74, 0x68, 0x42, 0x74, 0x70, 0x65, 0x65, 0x72, 0x12, 0x74, 0x0a, 0x10, 0x63, 0x61, 0x6d, |
| 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x5f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x18, 0x12, 0x20, |
| 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, |
| 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, |
| 0x72, 0x79, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x2e, 0x43, |
| 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x46, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x52, 0x0f, |
| 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x46, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x12, |
| 0x71, 0x0a, 0x0f, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x5f, 0x6c, 0x69, 0x67, |
| 0x68, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x48, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, |
| 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, |
| 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, |
| 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, |
| 0x61, 0x6c, 0x73, 0x2e, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x4c, 0x69, 0x67, |
| 0x68, 0x74, 0x52, 0x0e, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x4c, 0x69, 0x67, |
| 0x68, 0x74, 0x12, 0x60, 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, |
| 0x61, 0x74, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x63, 0x68, 0x72, 0x6f, |
| 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, |
| 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, |
| 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, |
| 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, |
| 0x74, 0x61, 0x74, 0x65, 0x12, 0x63, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x6f, 0x5f, 0x75, 0x73, |
| 0x62, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, |
| 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, |
| 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x48, 0x61, 0x72, |
| 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, |
| 0x6f, 0x55, 0x73, 0x62, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x60, 0x0a, 0x0d, 0x62, 0x61, 0x74, |
| 0x74, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0e, |
| 0x32, 0x3b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x62, |
| 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x5a, 0x0a, 0x0a, 0x77, |
| 0x69, 0x66, 0x69, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0e, 0x32, |
| 0x3b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, |
| 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, |
| 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x48, |
| 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x09, 0x77, 0x69, |
| 0x66, 0x69, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x64, 0x0a, 0x0f, 0x62, 0x6c, 0x75, 0x65, 0x74, |
| 0x6f, 0x6f, 0x74, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0e, |
| 0x32, 0x3b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0e, 0x62, |
| 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x5a, 0x0a, |
| 0x09, 0x72, 0x70, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0e, |
| 0x32, 0x3d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x50, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, |
| 0x08, 0x72, 0x70, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x9b, 0x01, 0x0a, 0x0d, 0x43, 0x68, |
| 0x61, 0x6d, 0x65, 0x6c, 0x65, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x43, |
| 0x48, 0x41, 0x4d, 0x45, 0x4c, 0x45, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, |
| 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x48, 0x41, 0x4d, 0x45, |
| 0x4c, 0x45, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x50, 0x10, 0x02, 0x12, 0x1a, |
| 0x0a, 0x16, 0x43, 0x48, 0x41, 0x4d, 0x45, 0x4c, 0x45, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, |
| 0x5f, 0x44, 0x50, 0x5f, 0x48, 0x44, 0x4d, 0x49, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x48, |
| 0x41, 0x4d, 0x45, 0x4c, 0x45, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, 0x47, 0x41, |
| 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x48, 0x41, 0x4d, 0x45, 0x4c, 0x45, 0x4f, 0x4e, 0x5f, |
| 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x44, 0x4d, 0x49, 0x10, 0x05, 0x22, 0x04, 0x08, 0x01, 0x10, |
| 0x01, 0x22, 0x04, 0x08, 0x06, 0x10, 0x08, 0x22, 0x66, 0x0a, 0x0f, 0x43, 0x61, 0x6d, 0x65, 0x72, |
| 0x61, 0x62, 0x6f, 0x78, 0x46, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x41, |
| 0x4d, 0x45, 0x52, 0x41, 0x42, 0x4f, 0x58, 0x5f, 0x46, 0x41, 0x43, 0x49, 0x4e, 0x47, 0x5f, 0x55, |
| 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x41, 0x4d, 0x45, |
| 0x52, 0x41, 0x42, 0x4f, 0x58, 0x5f, 0x46, 0x41, 0x43, 0x49, 0x4e, 0x47, 0x5f, 0x42, 0x41, 0x43, |
| 0x4b, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x41, 0x4d, 0x45, 0x52, 0x41, 0x42, 0x4f, 0x58, |
| 0x5f, 0x46, 0x41, 0x43, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x52, 0x4f, 0x4e, 0x54, 0x10, 0x02, 0x22, |
| 0x61, 0x0a, 0x0e, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x62, 0x6f, 0x78, 0x4c, 0x69, 0x67, 0x68, |
| 0x74, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x41, 0x4d, 0x45, 0x52, 0x41, 0x42, 0x4f, 0x58, 0x5f, 0x4c, |
| 0x49, 0x47, 0x48, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x17, |
| 0x0a, 0x13, 0x43, 0x41, 0x4d, 0x45, 0x52, 0x41, 0x42, 0x4f, 0x58, 0x5f, 0x4c, 0x49, 0x47, 0x48, |
| 0x54, 0x5f, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x41, 0x4d, 0x45, 0x52, |
| 0x41, 0x42, 0x4f, 0x58, 0x5f, 0x4c, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x4e, 0x4f, 0x4c, 0x45, 0x44, |
| 0x10, 0x02, 0x22, 0xc1, 0x01, 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x6f, 0x54, 0x6f, 0x70, 0x6f, |
| 0x6c, 0x6f, 0x67, 0x79, 0x12, 0x53, 0x0a, 0x04, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, |
| 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, |
| 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, |
| 0x79, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x6f, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x49, |
| 0x74, 0x65, 0x6d, 0x52, 0x04, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x5b, 0x0a, 0x08, 0x63, 0x68, 0x69, |
| 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x63, 0x68, |
| 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, |
| 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x6f, |
| 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x63, 0x68, |
| 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x22, 0x86, 0x01, 0x0a, 0x11, 0x53, 0x65, 0x72, 0x76, 0x6f, |
| 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, |
| 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, |
| 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x79, 0x73, 0x66, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, |
| 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x79, 0x73, 0x66, 0x73, 0x50, 0x72, |
| 0x6f, 0x64, 0x75, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x18, |
| 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x20, 0x0a, |
| 0x0c, 0x75, 0x73, 0x62, 0x5f, 0x68, 0x75, 0x62, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x73, 0x62, 0x48, 0x75, 0x62, 0x50, 0x6f, 0x72, 0x74, 0x22, |
| 0xf1, 0x04, 0x0a, 0x11, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, |
| 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6f, 0x73, 0x5f, 0x64, |
| 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6f, 0x73, 0x44, |
| 0x75, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6f, 0x73, 0x5f, 0x6e, 0x69, 0x67, 0x68, |
| 0x74, 0x6c, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6f, 0x73, |
| 0x4e, 0x69, 0x67, 0x68, 0x74, 0x6c, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x72, 0x6f, 0x6d, |
| 0x65, 0x73, 0x69, 0x67, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x12, 0x68, 0x0a, 0x0a, 0x63, 0x74, 0x73, 0x5f, 0x73, |
| 0x70, 0x61, 0x72, 0x73, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x63, 0x68, |
| 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x6f, 0x73, 0x5f, 0x69, 0x6e, |
| 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x43, |
| 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x54, 0x53, |
| 0x53, 0x70, 0x61, 0x72, 0x73, 0x65, 0x52, 0x09, 0x63, 0x74, 0x73, 0x53, 0x70, 0x61, 0x72, 0x73, |
| 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x6e, 0x67, 0x6f, 0x75, 0x74, 0x5f, 0x61, 0x70, 0x70, |
| 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x6e, 0x67, 0x6f, 0x75, 0x74, 0x41, |
| 0x70, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x65, 0x65, 0x74, 0x5f, 0x61, 0x70, 0x70, 0x18, 0x0a, |
| 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6d, 0x65, 0x65, 0x74, 0x41, 0x70, 0x70, 0x12, 0x23, 0x0a, |
| 0x0d, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x08, |
| 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x54, 0x65, |
| 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, |
| 0x6a, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x65, 0x73, 0x74, |
| 0x41, 0x75, 0x64, 0x69, 0x6f, 0x6a, 0x61, 0x63, 0x6b, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, 0x73, |
| 0x74, 0x5f, 0x68, 0x64, 0x6d, 0x69, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, |
| 0x08, 0x52, 0x0d, 0x74, 0x65, 0x73, 0x74, 0x48, 0x64, 0x6d, 0x69, 0x61, 0x75, 0x64, 0x69, 0x6f, |
| 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x62, 0x61, 0x75, 0x64, 0x69, |
| 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x65, 0x73, 0x74, 0x55, 0x73, 0x62, |
| 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x75, 0x73, |
| 0x62, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, |
| 0x0f, 0x74, 0x65, 0x73, 0x74, 0x55, 0x73, 0x62, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, |
| 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x62, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x18, 0x06, |
| 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x75, 0x73, 0x62, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x12, |
| 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x5f, 0x6c, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, |
| 0x52, 0x06, 0x75, 0x73, 0x65, 0x4c, 0x69, 0x64, 0x22, 0x59, 0x0a, 0x09, 0x43, 0x54, 0x53, 0x53, |
| 0x70, 0x61, 0x72, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x54, 0x53, 0x5f, 0x53, 0x50, 0x41, |
| 0x52, 0x53, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, |
| 0x0c, 0x43, 0x54, 0x53, 0x5f, 0x53, 0x50, 0x41, 0x52, 0x53, 0x45, 0x5f, 0x32, 0x10, 0x01, 0x12, |
| 0x10, 0x0a, 0x0c, 0x43, 0x54, 0x53, 0x5f, 0x53, 0x50, 0x41, 0x52, 0x53, 0x45, 0x5f, 0x33, 0x10, |
| 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x54, 0x53, 0x5f, 0x53, 0x50, 0x41, 0x52, 0x53, 0x45, 0x5f, |
| 0x35, 0x10, 0x03, 0x22, 0x32, 0x0a, 0x08, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, |
| 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x02, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, |
| 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, |
| 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x78, 0x0a, 0x07, 0x4c, 0x69, 0x63, 0x65, 0x6e, |
| 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, |
| 0x32, 0x39, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x65, |
| 0x6f, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, |
| 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, |
| 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, |
| 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, |
| 0x72, 0x2a, 0x5e, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x6f, 0x46, 0x77, 0x43, 0x68, 0x61, 0x6e, |
| 0x6e, 0x65, 0x6c, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x52, 0x56, 0x4f, 0x5f, 0x46, 0x57, 0x5f, |
| 0x53, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x45, 0x52, 0x56, |
| 0x4f, 0x5f, 0x46, 0x57, 0x5f, 0x50, 0x52, 0x45, 0x56, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x53, |
| 0x45, 0x52, 0x56, 0x4f, 0x5f, 0x46, 0x57, 0x5f, 0x44, 0x45, 0x56, 0x10, 0x02, 0x12, 0x12, 0x0a, |
| 0x0e, 0x53, 0x45, 0x52, 0x56, 0x4f, 0x5f, 0x46, 0x57, 0x5f, 0x41, 0x4c, 0x50, 0x48, 0x41, 0x10, |
| 0x03, 0x2a, 0xca, 0x03, 0x0a, 0x0f, 0x50, 0x65, 0x72, 0x69, 0x70, 0x68, 0x65, 0x72, 0x61, 0x6c, |
| 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, |
| 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x4f, 0x52, 0x4b, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, |
| 0x12, 0x0a, 0x0e, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, |
| 0x47, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x57, 0x52, 0x4f, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4e, |
| 0x46, 0x49, 0x47, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x4e, 0x4f, 0x54, 0x5f, 0x43, 0x4f, 0x4e, |
| 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x5f, 0x53, |
| 0x53, 0x48, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x52, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x03, |
| 0x12, 0x14, 0x0a, 0x10, 0x4e, 0x45, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, |
| 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x07, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x52, 0x35, 0x30, 0x5f, 0x43, |
| 0x4f, 0x4e, 0x53, 0x4f, 0x4c, 0x45, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x10, 0x0d, |
| 0x12, 0x15, 0x0a, 0x11, 0x43, 0x43, 0x44, 0x5f, 0x54, 0x45, 0x53, 0x54, 0x4c, 0x41, 0x42, 0x5f, |
| 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x08, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x52, 0x56, 0x4f, |
| 0x44, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x49, 0x44, |
| 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x0a, 0x12, 0x14, |
| 0x0a, 0x10, 0x42, 0x41, 0x44, 0x5f, 0x52, 0x49, 0x42, 0x42, 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x42, |
| 0x4c, 0x45, 0x10, 0x0b, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x43, 0x5f, 0x42, 0x52, 0x4f, 0x4b, 0x45, |
| 0x4e, 0x10, 0x0c, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x55, 0x54, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x43, |
| 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x0e, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x4f, |
| 0x50, 0x4f, 0x4c, 0x4f, 0x47, 0x59, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x0f, 0x12, 0x13, |
| 0x0a, 0x0f, 0x53, 0x42, 0x55, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x56, 0x4f, 0x4c, 0x54, 0x41, 0x47, |
| 0x45, 0x10, 0x10, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x52, 0x35, 0x30, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, |
| 0x45, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x41, 0x54, 0x45, 0x44, 0x10, 0x11, 0x12, 0x19, 0x0a, 0x15, |
| 0x53, 0x45, 0x52, 0x56, 0x4f, 0x5f, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x5f, 0x4d, 0x49, 0x53, |
| 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x12, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x45, 0x52, 0x56, 0x4f, |
| 0x44, 0x5f, 0x50, 0x52, 0x4f, 0x58, 0x59, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x13, 0x12, |
| 0x14, 0x0a, 0x10, 0x53, 0x45, 0x52, 0x56, 0x4f, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x5f, 0x49, 0x53, |
| 0x53, 0x55, 0x45, 0x10, 0x14, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x45, 0x52, 0x56, 0x4f, 0x5f, 0x55, |
| 0x50, 0x44, 0x41, 0x54, 0x45, 0x52, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x15, 0x2a, 0x8d, |
| 0x01, 0x0a, 0x0d, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, |
| 0x12, 0x14, 0x0a, 0x10, 0x48, 0x41, 0x52, 0x44, 0x57, 0x41, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x4b, |
| 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x48, 0x41, 0x52, 0x44, 0x57, 0x41, |
| 0x52, 0x45, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x48, |
| 0x41, 0x52, 0x44, 0x57, 0x41, 0x52, 0x45, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x41, 0x42, |
| 0x4c, 0x45, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x48, 0x41, 0x52, 0x44, 0x57, 0x41, 0x52, 0x45, |
| 0x5f, 0x4e, 0x45, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x4d, 0x45, 0x4e, |
| 0x54, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x48, 0x41, 0x52, 0x44, 0x57, 0x41, 0x52, 0x45, 0x5f, |
| 0x4e, 0x4f, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x04, 0x2a, 0x71, |
| 0x0a, 0x0b, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, |
| 0x18, 0x4c, 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, |
| 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x4c, |
| 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x57, 0x49, 0x4e, 0x44, |
| 0x4f, 0x57, 0x53, 0x5f, 0x31, 0x30, 0x5f, 0x50, 0x52, 0x4f, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, |
| 0x4c, 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x53, 0x5f, |
| 0x4f, 0x46, 0x46, 0x49, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x4e, 0x44, 0x41, 0x52, 0x44, 0x10, |
| 0x02, 0x42, 0x27, 0x5a, 0x25, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2f, 0x6c, 0x69, 0x62, 0x73, 0x2f, |
| 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, |
| 0x3b, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, |
| } |
| |
| var ( |
| file_infra_libs_skylab_inventory_device_proto_rawDescOnce sync.Once |
| file_infra_libs_skylab_inventory_device_proto_rawDescData = file_infra_libs_skylab_inventory_device_proto_rawDesc |
| ) |
| |
| func file_infra_libs_skylab_inventory_device_proto_rawDescGZIP() []byte { |
| file_infra_libs_skylab_inventory_device_proto_rawDescOnce.Do(func() { |
| file_infra_libs_skylab_inventory_device_proto_rawDescData = protoimpl.X.CompressGZIP(file_infra_libs_skylab_inventory_device_proto_rawDescData) |
| }) |
| return file_infra_libs_skylab_inventory_device_proto_rawDescData |
| } |
| |
| var file_infra_libs_skylab_inventory_device_proto_enumTypes = make([]protoimpl.EnumInfo, 17) |
| var file_infra_libs_skylab_inventory_device_proto_msgTypes = make([]protoimpl.MessageInfo, 18) |
| var file_infra_libs_skylab_inventory_device_proto_goTypes = []interface{}{ |
| (ServoFwChannel)(0), // 0: chrome.chromeos_infra.skylab.proto.inventory.ServoFwChannel |
| (PeripheralState)(0), // 1: chrome.chromeos_infra.skylab.proto.inventory.PeripheralState |
| (HardwareState)(0), // 2: chrome.chromeos_infra.skylab.proto.inventory.HardwareState |
| (LicenseType)(0), // 3: chrome.chromeos_infra.skylab.proto.inventory.LicenseType |
| (SchedulableLabels_CR50_Phase)(0), // 4: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.CR50_Phase |
| (SchedulableLabels_DUTPool)(0), // 5: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.DUTPool |
| (SchedulableLabels_CTSABI)(0), // 6: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.CTSABI |
| (SchedulableLabels_CTSCPU)(0), // 7: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.CTSCPU |
| (SchedulableLabels_ECType)(0), // 8: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.ECType |
| (SchedulableLabels_OSType)(0), // 9: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.OSType |
| (SchedulableLabels_Phase)(0), // 10: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.Phase |
| (HardwareCapabilities_Carrier)(0), // 11: chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities.Carrier |
| (HardwareCapabilities_VideoAcceleration)(0), // 12: chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities.VideoAcceleration |
| (Peripherals_ChameleonType)(0), // 13: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.ChameleonType |
| (Peripherals_CameraboxFacing)(0), // 14: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.CameraboxFacing |
| (Peripherals_CameraboxLight)(0), // 15: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.CameraboxLight |
| (TestCoverageHints_CTSSparse)(0), // 16: chrome.chromeos_infra.skylab.proto.inventory.TestCoverageHints.CTSSparse |
| (*Device)(nil), // 17: chrome.chromeos_infra.skylab.proto.inventory.Device |
| (*DeviceUnderTest)(nil), // 18: chrome.chromeos_infra.skylab.proto.inventory.DeviceUnderTest |
| (*ServoHostDevice)(nil), // 19: chrome.chromeos_infra.skylab.proto.inventory.ServoHostDevice |
| (*ChameleonDevice)(nil), // 20: chrome.chromeos_infra.skylab.proto.inventory.ChameleonDevice |
| (*CommonDeviceSpecs)(nil), // 21: chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs |
| (*RemovalReason)(nil), // 22: chrome.chromeos_infra.skylab.proto.inventory.RemovalReason |
| (*Location)(nil), // 23: chrome.chromeos_infra.skylab.proto.inventory.Location |
| (*PhysicalLab)(nil), // 24: chrome.chromeos_infra.skylab.proto.inventory.PhysicalLab |
| (*DeviceLock)(nil), // 25: chrome.chromeos_infra.skylab.proto.inventory.DeviceLock |
| (*Shard)(nil), // 26: chrome.chromeos_infra.skylab.proto.inventory.Shard |
| (*SchedulableLabels)(nil), // 27: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels |
| (*HardwareCapabilities)(nil), // 28: chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities |
| (*Peripherals)(nil), // 29: chrome.chromeos_infra.skylab.proto.inventory.Peripherals |
| (*ServoTopology)(nil), // 30: chrome.chromeos_infra.skylab.proto.inventory.ServoTopology |
| (*ServoTopologyItem)(nil), // 31: chrome.chromeos_infra.skylab.proto.inventory.ServoTopologyItem |
| (*TestCoverageHints)(nil), // 32: chrome.chromeos_infra.skylab.proto.inventory.TestCoverageHints |
| (*KeyValue)(nil), // 33: chrome.chromeos_infra.skylab.proto.inventory.KeyValue |
| (*License)(nil), // 34: chrome.chromeos_infra.skylab.proto.inventory.License |
| (Environment)(0), // 35: chrome.chromeos_infra.skylab.proto.inventory.Environment |
| (*Timestamp)(nil), // 36: chrome.chromeos_infra.skylab.proto.inventory.Timestamp |
| } |
| var file_infra_libs_skylab_inventory_device_proto_depIdxs = []int32{ |
| 18, // 0: chrome.chromeos_infra.skylab.proto.inventory.Device.dut:type_name -> chrome.chromeos_infra.skylab.proto.inventory.DeviceUnderTest |
| 19, // 1: chrome.chromeos_infra.skylab.proto.inventory.Device.servo_host:type_name -> chrome.chromeos_infra.skylab.proto.inventory.ServoHostDevice |
| 20, // 2: chrome.chromeos_infra.skylab.proto.inventory.Device.chameleon:type_name -> chrome.chromeos_infra.skylab.proto.inventory.ChameleonDevice |
| 21, // 3: chrome.chromeos_infra.skylab.proto.inventory.DeviceUnderTest.common:type_name -> chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs |
| 22, // 4: chrome.chromeos_infra.skylab.proto.inventory.DeviceUnderTest.removal_reason:type_name -> chrome.chromeos_infra.skylab.proto.inventory.RemovalReason |
| 21, // 5: chrome.chromeos_infra.skylab.proto.inventory.ServoHostDevice.common:type_name -> chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs |
| 21, // 6: chrome.chromeos_infra.skylab.proto.inventory.ChameleonDevice.common:type_name -> chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs |
| 33, // 7: chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs.attributes:type_name -> chrome.chromeos_infra.skylab.proto.inventory.KeyValue |
| 25, // 8: chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs.device_locks:type_name -> chrome.chromeos_infra.skylab.proto.inventory.DeviceLock |
| 35, // 9: chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs.environment:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Environment |
| 27, // 10: chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs.labels:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels |
| 23, // 11: chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs.location:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Location |
| 26, // 12: chrome.chromeos_infra.skylab.proto.inventory.CommonDeviceSpecs.owner_shard:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Shard |
| 36, // 13: chrome.chromeos_infra.skylab.proto.inventory.RemovalReason.expire_time:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Timestamp |
| 24, // 14: chrome.chromeos_infra.skylab.proto.inventory.Location.lab:type_name -> chrome.chromeos_infra.skylab.proto.inventory.PhysicalLab |
| 36, // 15: chrome.chromeos_infra.skylab.proto.inventory.DeviceLock.begin_time:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Timestamp |
| 36, // 16: chrome.chromeos_infra.skylab.proto.inventory.DeviceLock.expire_time:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Timestamp |
| 28, // 17: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.capabilities:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities |
| 4, // 18: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.cr50_phase:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.CR50_Phase |
| 5, // 19: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.critical_pools:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.DUTPool |
| 6, // 20: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.cts_abi:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.CTSABI |
| 7, // 21: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.cts_cpu:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.CTSCPU |
| 8, // 22: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.ec_type:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.ECType |
| 34, // 23: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.licenses:type_name -> chrome.chromeos_infra.skylab.proto.inventory.License |
| 9, // 24: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.os_type:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.OSType |
| 29, // 25: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.peripherals:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Peripherals |
| 10, // 26: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.phase:type_name -> chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.Phase |
| 32, // 27: chrome.chromeos_infra.skylab.proto.inventory.SchedulableLabels.test_coverage_hints:type_name -> chrome.chromeos_infra.skylab.proto.inventory.TestCoverageHints |
| 11, // 28: chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities.carrier:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities.Carrier |
| 12, // 29: chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities.video_acceleration:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareCapabilities.VideoAcceleration |
| 13, // 30: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.chameleon_type:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Peripherals.ChameleonType |
| 1, // 31: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.servo_state:type_name -> chrome.chromeos_infra.skylab.proto.inventory.PeripheralState |
| 30, // 32: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.servo_topology:type_name -> chrome.chromeos_infra.skylab.proto.inventory.ServoTopology |
| 0, // 33: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.servo_fw_channel:type_name -> chrome.chromeos_infra.skylab.proto.inventory.ServoFwChannel |
| 14, // 34: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.camerabox_facing:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Peripherals.CameraboxFacing |
| 15, // 35: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.camerabox_light:type_name -> chrome.chromeos_infra.skylab.proto.inventory.Peripherals.CameraboxLight |
| 2, // 36: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.storage_state:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareState |
| 2, // 37: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.servo_usb_state:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareState |
| 2, // 38: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.battery_state:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareState |
| 2, // 39: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.wifi_state:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareState |
| 2, // 40: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.bluetooth_state:type_name -> chrome.chromeos_infra.skylab.proto.inventory.HardwareState |
| 1, // 41: chrome.chromeos_infra.skylab.proto.inventory.Peripherals.rpm_state:type_name -> chrome.chromeos_infra.skylab.proto.inventory.PeripheralState |
| 31, // 42: chrome.chromeos_infra.skylab.proto.inventory.ServoTopology.main:type_name -> chrome.chromeos_infra.skylab.proto.inventory.ServoTopologyItem |
| 31, // 43: chrome.chromeos_infra.skylab.proto.inventory.ServoTopology.children:type_name -> chrome.chromeos_infra.skylab.proto.inventory.ServoTopologyItem |
| 16, // 44: chrome.chromeos_infra.skylab.proto.inventory.TestCoverageHints.cts_sparse:type_name -> chrome.chromeos_infra.skylab.proto.inventory.TestCoverageHints.CTSSparse |
| 3, // 45: chrome.chromeos_infra.skylab.proto.inventory.License.type:type_name -> chrome.chromeos_infra.skylab.proto.inventory.LicenseType |
| 46, // [46:46] is the sub-list for method output_type |
| 46, // [46:46] is the sub-list for method input_type |
| 46, // [46:46] is the sub-list for extension type_name |
| 46, // [46:46] is the sub-list for extension extendee |
| 0, // [0:46] is the sub-list for field type_name |
| } |
| |
| func init() { file_infra_libs_skylab_inventory_device_proto_init() } |
| func file_infra_libs_skylab_inventory_device_proto_init() { |
| if File_infra_libs_skylab_inventory_device_proto != nil { |
| return |
| } |
| file_infra_libs_skylab_inventory_common_proto_init() |
| if !protoimpl.UnsafeEnabled { |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Device); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*DeviceUnderTest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*ServoHostDevice); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*ChameleonDevice); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*CommonDeviceSpecs); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*RemovalReason); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Location); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*PhysicalLab); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*DeviceLock); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Shard); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*SchedulableLabels); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_infra_libs_skylab_inventory_device_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*HardwareCapabilities); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| |