UNPKG

@joergmittaglawo/dmvconfig

Version:

DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.

73 lines (72 loc) 3.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Enums = exports.Traits = exports.lower = exports.lift = void 0; const VScript = require("vscript"); exports.lift = { Traits: (kwl, socket) => kwl ? (new Traits(new VScript.Subtree(socket, kwl))) : null, ClockQuality: (x, _) => { return x ? { clock_class: x[0], clock_accuracy: x[1], offset_scaled_log_variance: x[2] } : null; }, PortIdentity: (x, _) => { return x ? { clock_identity: x[0], port_number: x[1] } : null; } }; exports.lower = { Traits: (ref) => ref ? ref.raw.kwl : null, ClockQuality: (x) => x ? [x.clock_class, x.clock_accuracy, x.offset_scaled_log_variance] : null, PortIdentity: (x) => x ? [x.clock_identity, x.port_number] : null }; class Traits { constructor(raw) { this.raw = raw; } get domain() { return new VScript.rKeyword(this, "domain"); } get alternate_master() { return new VScript.rKeyword(this, "alternate_master"); } get leap61() { return new VScript.rKeyword(this, "leap61"); } get leap59() { return new VScript.rKeyword(this, "leap59"); } get ptp_timescale() { return new VScript.rKeyword(this, "ptp_timescale"); } get traceability() { return new VScript.rKeyword(this, "traceability"); } get utc_offset_seconds() { return new VScript.rKeyword(this, "utc_offset_seconds"); } get source_type() { return new VScript.rKeyword(this, "source_type"); } get port_identity() { return new VScript.rKeyword(this, "port_identity", { lift: exports.lift.PortIdentity, lower: exports.lower.PortIdentity }); } get grandmaster_priority_1() { return new VScript.rKeyword(this, "grandmaster_priority_1"); } get grandmaster_clock_quality() { return new VScript.rKeyword(this, "grandmaster_clock_quality", { lift: exports.lift.ClockQuality, lower: exports.lower.ClockQuality }); } get grandmaster_priority_2() { return new VScript.rKeyword(this, "grandmaster_priority_2"); } /** ClockIdentity as defined by the PTP standard, stored in big-endian order. */ get grandmaster_identity() { return new VScript.rKeyword(this, "grandmaster_identity"); } get steps_removed() { return new VScript.rKeyword(this, "steps_removed"); } } exports.Traits = Traits; exports.Enums = { Traceability: ["NotTraceable", "FrequencyTraceable", "Traceable"], ClockAccuracy: ["Reserved", "AccurateToWithin25ns", "AccurateToWithin100ns", "AccurateToWithin250ns", "AccurateToWithin1000ns", "AccurateToWithin2500ns", "AccurateToWithin10us", "AccurateToWithin25us", "AccurateToWithin100us", "AccurateToWithin250us", "AccurateToWithin1000us", "AccurateToWithin2500us", "AccurateToWithin10ms", "AccurateToWithin25ms", "AccurateToWithin100ms", "AccurateToWithin250ms", "AccurateToWithin1s", "AccurateToWithin10s", "AccuracyBelow10s", "ProfileSpecific", "Unknown"], ClockClass: ["Reserved", "SynchronizedToPrimary", "WasSynchronizedToPrimaryNowInHoldOver", "SynchronizedToAppSpecific", "WasSynchronizedToAppSpecificNowInHoldOver", "WasSynchronizedToPrimaryDegradAlternativeA", "WasSynchronizedToAppSpecificDegradAlternativeA", "ProfileSpecific", "WasSynchronizedToPrimaryDegradAlternativeB", "WasSynchronizedToAppSpecificDegradAlternativeB", "Default", "ReservedForV1Compatibility", "SlaveOnly"], TimeScale: ["PTP", "Arbitrary"], SourceType: ["AtomicClock", "GPS", "TerrestrialRadio", "PTP", "NTP", "HandSet", "Other", "InternalOscillator", "ProfileSpecific", "Reserved"] };