UNPKG

@joergmittaglawo/dmvconfig

Version:

DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.

866 lines (846 loc) 26.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Enums = exports.All = exports.FanSpeedAsTableRow = exports.FanSpeed = exports.QSFPAsTableRow = exports.QSFP = exports.PSUAsTableRow = exports.PSU = exports.SlotInformationAsTableRow = exports.SlotInformation = exports.NeighborhoodWatch = exports.SWVersion = exports.InternalHW = exports.MEMORY = exports.SPD = exports.ECC = exports.Device = exports.PCBInfoAsTableRow = exports.PCBInfo = exports.DeviceInfo = exports.CompileInfo = exports.lower = exports.lift = void 0; const VScript = require("vscript"); exports.lift = { AllCommandLogging: (kwl, socket) => kwl ? (new AllCommandLogging(new VScript.Subtree(socket, kwl))) : null, AllServices: (kwl, socket) => kwl ? (new AllServices(new VScript.Subtree(socket, kwl))) : null, AllEcc: (kwl, socket) => kwl ? (new AllEcc(new VScript.Subtree(socket, kwl))) : null, AllUsrinfo: (kwl, socket) => kwl ? (new AllUsrinfo(new VScript.Subtree(socket, kwl))) : null, AllSysinfo: (kwl, socket) => kwl ? (new AllSysinfo(new VScript.Subtree(socket, kwl))) : null, AllPartitions: (kwl, socket) => kwl ? (new AllPartitions(new VScript.Subtree(socket, kwl))) : null, AllPower: (kwl, socket) => kwl ? (new AllPower(new VScript.Subtree(socket, kwl))) : null, AllTemperature: (kwl, socket) => kwl ? (new AllTemperature(new VScript.Subtree(socket, kwl))) : null, FanSpeed: (kwl, socket) => kwl ? (new FanSpeed(new VScript.Subtree(socket, kwl))) : null, QSFP: (kwl, socket) => kwl ? (new QSFP(new VScript.Subtree(socket, kwl))) : null, QSFPRxPower: (kwl, socket) => kwl ? (new QSFPRxPower(new VScript.Subtree(socket, kwl))) : null, PSU: (kwl, socket) => kwl ? (new PSU(new VScript.Subtree(socket, kwl))) : null, SlotInformation: (kwl, socket) => kwl ? (new SlotInformation(new VScript.Subtree(socket, kwl))) : null, SlotInformationIpAddresses: (kwl, socket) => kwl ? (new SlotInformationIpAddresses(new VScript.Subtree(socket, kwl))) : null, NeighborhoodWatch: (kwl, socket) => kwl ? (new NeighborhoodWatch(new VScript.Subtree(socket, kwl))) : null, SWVersion: (kwl, socket) => kwl ? (new SWVersion(new VScript.Subtree(socket, kwl))) : null, InternalHW: (kwl, socket) => kwl ? (new InternalHW(new VScript.Subtree(socket, kwl))) : null, InternalHWSgmii: (kwl, socket) => kwl ? (new InternalHWSgmii(new VScript.Subtree(socket, kwl))) : null, MEMORY: (kwl, socket) => kwl ? (new MEMORY(new VScript.Subtree(socket, kwl))) : null, SPD: (kwl, socket) => kwl ? (new SPD(new VScript.Subtree(socket, kwl))) : null, ECC: (kwl, socket) => kwl ? (new ECC(new VScript.Subtree(socket, kwl))) : null, Device: (kwl, socket) => kwl ? (new Device(new VScript.Subtree(socket, kwl))) : null, PCBInfo: (kwl, socket) => kwl ? (new PCBInfo(new VScript.Subtree(socket, kwl))) : null, DeviceInfo: (kwl, socket) => kwl ? (new DeviceInfo(new VScript.Subtree(socket, kwl))) : null, Revision: (x, _) => { return x ? { major: x[0], minor: x[1] } : null; }, CompileInfo: (kwl, socket) => kwl ? (new CompileInfo(new VScript.Subtree(socket, kwl))) : null }; exports.lower = { AllCommandLogging: (ref) => ref ? ref.raw.kwl : null, AllServices: (ref) => ref ? ref.raw.kwl : null, AllEcc: (ref) => ref ? ref.raw.kwl : null, AllUsrinfo: (ref) => ref ? ref.raw.kwl : null, AllSysinfo: (ref) => ref ? ref.raw.kwl : null, AllPartitions: (ref) => ref ? ref.raw.kwl : null, AllPower: (ref) => ref ? ref.raw.kwl : null, AllTemperature: (ref) => ref ? ref.raw.kwl : null, FanSpeed: (ref) => ref ? ref.raw.kwl : null, QSFP: (ref) => ref ? ref.raw.kwl : null, QSFPRxPower: (ref) => ref ? ref.raw.kwl : null, PSU: (ref) => ref ? ref.raw.kwl : null, SlotInformation: (ref) => ref ? ref.raw.kwl : null, SlotInformationIpAddresses: (ref) => ref ? ref.raw.kwl : null, NeighborhoodWatch: (ref) => ref ? ref.raw.kwl : null, SWVersion: (ref) => ref ? ref.raw.kwl : null, InternalHW: (ref) => ref ? ref.raw.kwl : null, InternalHWSgmii: (ref) => ref ? ref.raw.kwl : null, MEMORY: (ref) => ref ? ref.raw.kwl : null, SPD: (ref) => ref ? ref.raw.kwl : null, ECC: (ref) => ref ? ref.raw.kwl : null, Device: (ref) => ref ? ref.raw.kwl : null, PCBInfo: (ref) => ref ? ref.raw.kwl : null, DeviceInfo: (ref) => ref ? ref.raw.kwl : null, Revision: (x) => x ? [x.major, x.minor] : null, CompileInfo: (ref) => ref ? ref.raw.kwl : null }; class CompileInfo { constructor(raw) { this.raw = raw; } get hg() { return new VScript.rKeyword(this, "hg"); } get user() { return new VScript.rKeyword(this, "user"); } get time() { return new VScript.rKeyword(this, "time"); } get proj() { return new VScript.rKeyword(this, "proj"); } } exports.CompileInfo = CompileInfo; class DeviceInfo { constructor(raw) { this.raw = raw; } get type() { return new VScript.rKeyword(this, "type"); } get revision() { return new VScript.rKeyword(this, "revision", { lift: exports.lift.Revision, lower: exports.lower.Revision }); } get serial() { return new VScript.rKeyword(this, "serial"); } } exports.DeviceInfo = DeviceInfo; class PCBInfo { constructor(raw) { this.raw = raw; } get type() { return new VScript.rKeyword(this, "type"); } get revision() { return new VScript.rKeyword(this, "revision", { lift: exports.lift.Revision, lower: exports.lower.Revision }); } get serial() { return new VScript.rKeyword(this, "serial"); } get vendor() { return new VScript.rKeyword(this, "vendor"); } get date() { return new VScript.rKeyword(this, "date"); } } exports.PCBInfo = PCBInfo; class PCBInfoAsTableRow extends PCBInfo { constructor(raw_row, enclosing_table) { super(new VScript.Subtree(raw_row.socket, raw_row.kwl)); this.enclosing_table = enclosing_table; this.index = raw_row.index; } } exports.PCBInfoAsTableRow = PCBInfoAsTableRow; class Device { constructor(raw) { this.raw = raw; } get info() { return new DeviceInfo(this.raw.find("info")); } get pcb() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("pcb")), (row, enclosing_table) => new PCBInfoAsTableRow(row, enclosing_table)); } } exports.Device = Device; class ECC { constructor(raw) { this.raw = raw; } /** Corrected errors */ get ce_count() { return new VScript.rKeyword(this, "ce_count"); } /** Uncorrected errors */ get ue_count() { return new VScript.rKeyword(this, "ue_count"); } } exports.ECC = ECC; class SPD { constructor(raw) { this.raw = raw; } /** ID code of the module manufacturer. 0x2C80 = Micron 0x5207 = Memphis */ get module_manufacturer() { return new VScript.rKeyword(this, "module_manufacturer"); } /** ID code of the DRAM chips manufacturer. 0xAD80 = SK Hynix 0xCE80 = Samsung 0x2C80 = Micron */ get dram_manufacturer() { return new VScript.rKeyword(this, "dram_manufacturer"); } get year() { return new VScript.rKeyword(this, "year"); } get week() { return new VScript.rKeyword(this, "week"); } get sn() { return new VScript.rKeyword(this, "sn"); } get pn() { return new VScript.rKeyword(this, "pn"); } get revision() { return new VScript.rKeyword(this, "revision"); } } exports.SPD = SPD; class MEMORY { constructor(raw) { this.raw = raw; } /** if RAM calibration failed and rebooting does not fix the issue, please contact customer support */ get ram_sodimm1() { return new VScript.rKeyword(this, "ram_sodimm1"); } /** if RAM calibration failed and rebooting does not fix the issue, please contact customer support */ get ram_sodimm2() { return new VScript.rKeyword(this, "ram_sodimm2"); } /** if RAM calibration failed and rebooting does not fix the issue, please contact customer support */ get ram_u16() { return new VScript.rKeyword(this, "ram_u16"); } /** J101 */ get spd_sodimm1() { return new SPD(this.raw.find("spd_sodimm1")); } /** J111 */ get spd_sodimm2() { return new SPD(this.raw.find("spd_sodimm2")); } get spd_cpu() { return new SPD(this.raw.find("spd_cpu")); } } exports.MEMORY = MEMORY; class InternalHWSgmii { constructor(raw) { this.raw = raw; } get link_up() { return new VScript.rKeyword(this, "link_up"); } get crc_errors() { return new VScript.rKeyword(this, "crc_errors"); } get pcs_errors() { return new VScript.rKeyword(this, "pcs_errors"); } } class InternalHWSgmiiAsArrayRow extends InternalHWSgmii { constructor(st, index, parent) { super(st); this.index = index; this.parent = parent; } } class InternalHW { constructor(raw) { this.raw = raw; } get alert_level() { return new VScript.rKeyword(this, "alert_level"); } /** Active PCIe lanes - should be 4 */ get pcie_lanes() { return new VScript.rKeyword(this, "pcie_lanes"); } /** Active PCIe speed - should be GT_5_0 */ get pcie_speed() { return new VScript.rKeyword(this, "pcie_speed"); } get sgmii() { return new VScript.StronglyTypedArray(this, "sgmii", (st, index, parent) => new InternalHWSgmiiAsArrayRow(st, index, parent)); } } exports.InternalHW = InternalHW; class SWVersion { constructor(raw) { this.raw = raw; } get version() { return new VScript.rKeyword(this, "version"); } get timestamp() { return new VScript.rKeyword(this, "timestamp"); } } exports.SWVersion = SWVersion; class NeighborhoodWatch { constructor(raw) { this.raw = raw; } get connected() { return new VScript.rKeyword(this, "connected"); } get neighbor_info() { return new VScript.rKeyword(this, "neighbor_info"); } get alert_level() { return new VScript.rKeyword(this, "alert_level"); } /** if this is set to true, successfully parsed neighbor info lines will be filtered from the output */ get filter_neighbor_info() { return new VScript.rwKeyword(this, "filter_neighbor_info"); } get output() { return new VScript.rKeyword(this, "output"); } } exports.NeighborhoodWatch = NeighborhoodWatch; class SlotInformationIpAddresses { constructor(raw) { this.raw = raw; } get port() { return new VScript.rKeyword(this, "port"); } get ip_address() { return new VScript.rKeyword(this, "ip_address"); } } class SlotInformationIpAddressesAsTableRow extends SlotInformationIpAddresses { constructor(raw_row, enclosing_table) { super(new VScript.Subtree(raw_row.socket, raw_row.kwl)); this.enclosing_table = enclosing_table; this.index = raw_row.index; } } class SlotInformation { constructor(raw) { this.raw = raw; } get location() { return new VScript.rKeyword(this, "location"); } get version() { return new VScript.rKeyword(this, "version"); } get temperature() { return new VScript.rKeyword(this, "temperature"); } get ip_addresses() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("ip_addresses")), (row, enclosing_table) => new SlotInformationIpAddressesAsTableRow(row, enclosing_table)); } } exports.SlotInformation = SlotInformation; class SlotInformationAsTableRow extends SlotInformation { constructor(raw_row, enclosing_table) { super(new VScript.Subtree(raw_row.socket, raw_row.kwl)); this.enclosing_table = enclosing_table; this.index = raw_row.index; } } exports.SlotInformationAsTableRow = SlotInformationAsTableRow; class PSU { constructor(raw) { this.raw = raw; } get alert_level() { return new VScript.rKeyword(this, "alert_level"); } get vin() { return new VScript.rKeyword(this, "vin"); } get iin() { return new VScript.rKeyword(this, "iin"); } get vout() { return new VScript.rKeyword(this, "vout"); } get iout() { return new VScript.rKeyword(this, "iout"); } get temp1() { return new VScript.rKeyword(this, "temp1"); } get temp2() { return new VScript.rKeyword(this, "temp2"); } get temp_hotspot() { return new VScript.rKeyword(this, "temp_hotspot"); } get on() { return new VScript.rKeyword(this, "on"); } get fanspeed() { return new VScript.rKeyword(this, "fanspeed"); } get current_fanspeed_profile() { return new VScript.rKeyword(this, "current_fanspeed_profile"); } } exports.PSU = PSU; class PSUAsTableRow extends PSU { constructor(raw_row, enclosing_table) { super(new VScript.Subtree(raw_row.socket, raw_row.kwl)); this.enclosing_table = enclosing_table; this.index = raw_row.index; } } exports.PSUAsTableRow = PSUAsTableRow; class QSFPRxPower { constructor(raw) { this.raw = raw; } get u_w() { return new VScript.rKeyword(this, "u_w"); } get d_bm() { return new VScript.rKeyword(this, "d_bm"); } get error() { return new VScript.rKeyword(this, "error"); } } class QSFPRxPowerAsArrayRow extends QSFPRxPower { constructor(st, index, parent) { super(st); this.index = index; this.parent = parent; } } class QSFP { constructor(raw) { this.raw = raw; } get vendor_name() { return new VScript.rKeyword(this, "vendor_name"); } /** IEEE company ID */ get vendor_oui() { return new VScript.rKeyword(this, "vendor_oui"); } get vendor_pn() { return new VScript.rKeyword(this, "vendor_pn"); } get vendor_rev() { return new VScript.rKeyword(this, "vendor_rev"); } get vendor_sn() { return new VScript.rKeyword(this, "vendor_sn"); } get date_code() { return new VScript.rKeyword(this, "date_code"); } get temperature() { return new VScript.rKeyword(this, "temperature"); } get temp_error() { return new VScript.rKeyword(this, "temp_error"); } get rx_power() { return new VScript.StronglyTypedArray(this, "rx_power", (st, index, parent) => new QSFPRxPowerAsArrayRow(st, index, parent)); } } exports.QSFP = QSFP; class QSFPAsTableRow extends QSFP { constructor(raw_row, enclosing_table) { super(new VScript.Subtree(raw_row.socket, raw_row.kwl)); this.enclosing_table = enclosing_table; this.index = raw_row.index; } } exports.QSFPAsTableRow = QSFPAsTableRow; class FanSpeed { constructor(raw) { this.raw = raw; } get id() { return new VScript.rKeyword(this, "id"); } get alert_level() { return new VScript.rKeyword(this, "alert_level"); } get speed() { return new VScript.rKeyword(this, "speed"); } } exports.FanSpeed = FanSpeed; class FanSpeedAsTableRow extends FanSpeed { constructor(raw_row, enclosing_table) { super(new VScript.Subtree(raw_row.socket, raw_row.kwl)); this.enclosing_table = enclosing_table; this.index = raw_row.index; } } exports.FanSpeedAsTableRow = FanSpeedAsTableRow; class AllTemperature { constructor(raw) { this.raw = raw; } get alert_level() { return new VScript.rKeyword(this, "alert_level"); } get fpga_int() { return new VScript.rKeyword(this, "fpga_int"); } get fpga_ext() { return new VScript.rKeyword(this, "fpga_ext"); } get cpu() { return new VScript.rKeyword(this, "cpu"); } /** Temperature of U21 in °C */ get u21() { return new VScript.rKeyword(this, "u21"); } /** Temperature of U22 in °C */ get u22() { return new VScript.rKeyword(this, "u22"); } /** Temperature of Fan-Controller (U24) in °C */ get fan_controller() { return new VScript.rKeyword(this, "fan_controller"); } /** Temperature of U42 in °C */ get p0v95_t1() { return new VScript.rKeyword(this, "p0v95_t1"); } /** Temperature of U43 in °C */ get p0v95_t2() { return new VScript.rKeyword(this, "p0v95_t2"); } /** Temperature of U45 in °C */ get p1v1_p1v2() { return new VScript.rKeyword(this, "p1v1_p1v2"); } /** Temperature of U44 in °C */ get p1v8() { return new VScript.rKeyword(this, "p1v8"); } /** Temperature of IO-Board in °C */ get ioboard() { return new VScript.rKeyword(this, "ioboard"); } /** Temperature of FPGA-SODIMM 1 (J101) in °C */ get fpga_sodimm1() { return new VScript.rKeyword(this, "fpga_sodimm1"); } /** Temperature of FPGA-SODIMM 2 (J111) in °C */ get fpga_sodimm2() { return new VScript.rKeyword(this, "fpga_sodimm2"); } /** Temperature of CPU-SODIMM (J71) in °C */ get cpu_sodimm() { return new VScript.rKeyword(this, "cpu_sodimm"); } /** Temperature of U2 in °C */ get mgmt_phy() { return new VScript.rKeyword(this, "mgmt_phy"); } /** Total minutes spent at overtemperature, where overtemperature is defined as follows: `CPU`: 100 °C `CPU_SODIMM`: 75 °C `MGMT_PHY`: 125 °C `FPGA_SODIMM1`: 75 °C `FPGA_SODIMM2`: 75 °C `FAN_CONTROLLER`: 70 °C `FPGA_EXT`: 100 °C `FPGA_INT`: 105 °C `P0V95_T1`: 125 °C `P0V95_T2`: 125 °C `P1V1_P1V2` 125 °C `P1V8`: 125 °C `U21`: 85 °C `U22`: 70 °C */ get accumulated_overtemperature_time() { return new VScript.rKeyword(this, "accumulated_overtemperature_time"); } get current_fanspeed_profile() { return new VScript.rKeyword(this, "current_fanspeed_profile"); } } class AllPower { constructor(raw) { this.raw = raw; } /** Power usage for P0V95 in W */ get p0v95() { return new VScript.rKeyword(this, "p0v95"); } /** Power usage for P1V1 and P1V2 in W */ get p1v1_1v2() { return new VScript.rKeyword(this, "p1v1_1v2"); } /** Power usage for P1V8 in W */ get p1v8() { return new VScript.rKeyword(this, "p1v8"); } } class AllPartitions { constructor(raw) { this.raw = raw; } get booted() { return new VScript.rKeyword(this, "booted", { lift: exports.lift.SWVersion, lower: exports.lower.SWVersion }); } get recovery() { return new SWVersion(this.raw.find("recovery")); } get system0() { return new SWVersion(this.raw.find("system0")); } get system1() { return new SWVersion(this.raw.find("system1")); } } class AllSysinfo { constructor(raw) { this.raw = raw; } /** System runtime since boot */ get uptime() { return new VScript.rKeyword(this, "uptime"); } /** Load average for 1, 5 and 15 minutes */ get load_avg() { return new VScript.rKeyword(this, "load_avg"); } /** Free memory in MB */ get freeram() { return new VScript.rKeyword(this, "freeram"); } /** Number of running processes */ get procs() { return new VScript.rKeyword(this, "procs"); } /** Number of currently active CPU cores */ get num_cores() { return new VScript.rKeyword(this, "num_cores"); } } class AllUsrinfo { constructor(raw) { this.raw = raw; } /** this should be a brief, human-readable description that will be displayed within the web UI */ get short_desc() { return new VScript.rwKeyword(this, "short_desc"); } /** this should be a detailed, human-readable description that will be displayed within the web UI */ get long_desc() { return new VScript.rwKeyword(this, "long_desc"); } /** enter a towel owner to mark this machine as reserved. Like a physical towel, this serves as a declaration of interest only and does not provide any protection against unauthorized access */ get towel() { return new VScript.rwKeyword(this, "towel"); } /** this is a transient status field that does not persist across machine restarts. It can be used to, e.g., signal a machine's current task within an automated testing environment */ get cur_status() { return new VScript.rwKeyword(this, "cur_status"); } } class AllEcc { constructor(raw) { this.raw = raw; } get cpu_internal() { return new ECC(this.raw.find("cpu_internal")); } get cpu_memory() { return new ECC(this.raw.find("cpu_memory")); } } class AllServices { constructor(raw) { this.raw = raw; } /** Enables Avahi daemon (mDNS/DNS-SD) */ get avahi() { return new VScript.duplexKeyword(this, "avahi"); } /** Enables SNMP daemon */ get snmp() { return new VScript.duplexKeyword(this, "snmp"); } } class AllCommandLogging { constructor(raw) { this.raw = raw; } get log_commands_to_syslog() { return new VScript.rwKeyword(this, "log_commands_to_syslog"); } get include_sender_id() { return new VScript.rwKeyword(this, "include_sender_id"); } get include_data() { return new VScript.rwKeyword(this, "include_data"); } } class All { constructor(raw) { this.raw = raw; } get barebox_version() { return new VScript.rKeyword(this, "barebox_version"); } get barebox_state() { return new VScript.rKeyword(this, "barebox_state"); } get booted_partition() { return new VScript.rKeyword(this, "booted_partition"); } get watchdog_version() { return new VScript.rKeyword(this, "watchdog_version", { lift: exports.lift.Revision, lower: exports.lower.Revision }); } /** FPGA debug bus at last reboot */ get previous_dbg_bus() { return new VScript.rKeyword(this, "previous_dbg_bus"); } /** Watchdog event log - contains boot reason and times */ get watchdog_event_log() { return new VScript.rKeyword(this, "watchdog_event_log"); } get board_location() { return new VScript.rKeyword(this, "board_location"); } /** Currently loaded FPGA */ get selected_fpga() { return new VScript.rKeyword(this, "selected_fpga"); } /** Change which FPGA to load on next reboot */ get select_fpga() { return new VScript.duplexKeyword(this, "select_fpga"); } /** @brief Perform a reboot of the blade @desc Type in 'reboot' to reboot the current partition. Type in 'system0' or 'system1' to reboot to the respective partition. */ get reboot() { return new VScript.rwKeyword(this, "reboot"); } /** @brief Perform a power cycle @desc Interrupt blade power for 3 seconds */ get powercycle() { return new VScript.rwKeyword(this, "powercycle"); } /** @brief Reset NVRAM @desc Enter /reset/ to clear all settings and reboot */ get reset() { return new VScript.rwKeyword(this, "reset"); } get temperature() { return new AllTemperature(this.raw.find("temperature")); } get power() { return new AllPower(this.raw.find("power")); } get fan_speed() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("fan_speed")), (row, enclosing_table) => new FanSpeedAsTableRow(row, enclosing_table)); } get partitions() { return new AllPartitions(this.raw.find("partitions")); } get sysinfo() { return new AllSysinfo(this.raw.find("sysinfo")); } get usrinfo() { return new AllUsrinfo(this.raw.find("usrinfo")); } get neighborhood_watch() { return new NeighborhoodWatch(this.raw.find("neighborhood_watch")); } get psu() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("psu")), (row, enclosing_table) => new PSUAsTableRow(row, enclosing_table)); } get qsfp() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("qsfp")), (row, enclosing_table) => new QSFPAsTableRow(row, enclosing_table)); } get ecc() { return new AllEcc(this.raw.find("ecc")); } get fpga() { return new CompileInfo(this.raw.find("fpga")); } get device() { return new Device(this.raw.find("device")); } get io_board() { return new Device(this.raw.find("io_board")); } get fan_board() { return new Device(this.raw.find("fan_board")); } get frame() { return new Device(this.raw.find("frame")); } get memory() { return new MEMORY(this.raw.find("memory")); } get internal_hw() { return new InternalHW(this.raw.find("internal_hw")); } get slots() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("slots")), (row, enclosing_table) => new SlotInformationAsTableRow(row, enclosing_table)); } get services() { return new AllServices(this.raw.find("services")); } get command_logging() { return new AllCommandLogging(this.raw.find("command_logging")); } } exports.All = All; exports.Enums = { FPGASelection: ["AVP", "AVP_40GbE", "DMV_40GbE", "UDX_40GbE", "J2KD", "J2KD_40GbE"], PCIESPEED: ["UNKNOWN", "GT_2_5", "GT_5_0"], BOARDPOS: ["BOTTOM_LEFT", "BOTTOM_RIGHT", "MID_LEFT", "MID_CENTER", "MID_RIGHT", "TOP_LEFT", "TOP_CENTER", "TOP_RIGHT", "UNKNOWN"], RAMCALIBRATION: ["Successful", "Unknown", "Failed"], QSFPError: ["OK", "LOW_WARNING", "HIGH_WARNING", "LOW_ALARM", "HIGH_ALARM"] };