@joergmittaglawo/dmvconfig
Version:
DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.
66 lines (65 loc) • 4.85 kB
TypeScript
import * as VScript from "vscript";
export declare const lift: {
readonly Traits: (kwl: string | null, socket: VScript.VSocket) => Traits | null;
readonly ClockQuality: (x: any | null, _: VScript.VSocket) => ClockQuality | null;
readonly PortIdentity: (x: any | null, _: VScript.VSocket) => PortIdentity | null;
};
export declare const lower: {
readonly Traits: (ref: Traits | null) => string | null;
readonly ClockQuality: (x: ClockQuality | null) => (number | "ProfileSpecific" | "Reserved" | "SynchronizedToPrimary" | "WasSynchronizedToPrimaryNowInHoldOver" | "SynchronizedToAppSpecific" | "WasSynchronizedToAppSpecificNowInHoldOver" | "WasSynchronizedToPrimaryDegradAlternativeA" | "WasSynchronizedToAppSpecificDegradAlternativeA" | "WasSynchronizedToPrimaryDegradAlternativeB" | "WasSynchronizedToAppSpecificDegradAlternativeB" | "Default" | "ReservedForV1Compatibility" | "SlaveOnly" | "AccurateToWithin25ns" | "AccurateToWithin100ns" | "AccurateToWithin250ns" | "AccurateToWithin1000ns" | "AccurateToWithin2500ns" | "AccurateToWithin10us" | "AccurateToWithin25us" | "AccurateToWithin100us" | "AccurateToWithin250us" | "AccurateToWithin1000us" | "AccurateToWithin2500us" | "AccurateToWithin10ms" | "AccurateToWithin25ms" | "AccurateToWithin100ms" | "AccurateToWithin250ms" | "AccurateToWithin1s" | "AccurateToWithin10s" | "AccuracyBelow10s" | "Unknown")[] | null;
readonly PortIdentity: (x: PortIdentity | null) => (number | [number, number, number, number, number, number, number, number])[] | null;
};
export declare type SourceType = "AtomicClock" | "GPS" | "TerrestrialRadio" | "PTP" | "NTP" | "HandSet" | "Other" | "InternalOscillator" | "ProfileSpecific" | "Reserved";
export interface PortIdentity {
/**
ClockIdentity as defined by the PTP standard, stored in big-endian order.
*/
clock_identity: [
number,
number,
number,
number,
number,
number,
number,
number
];
port_number: number;
}
export declare type TimeScale = "PTP" | "Arbitrary";
export declare type ClockClass = "Reserved" | "SynchronizedToPrimary" | "WasSynchronizedToPrimaryNowInHoldOver" | "SynchronizedToAppSpecific" | "WasSynchronizedToAppSpecificNowInHoldOver" | "WasSynchronizedToPrimaryDegradAlternativeA" | "WasSynchronizedToAppSpecificDegradAlternativeA" | "ProfileSpecific" | "WasSynchronizedToPrimaryDegradAlternativeB" | "WasSynchronizedToAppSpecificDegradAlternativeB" | "Default" | "ReservedForV1Compatibility" | "SlaveOnly";
export declare type ClockAccuracy = "Reserved" | "AccurateToWithin25ns" | "AccurateToWithin100ns" | "AccurateToWithin250ns" | "AccurateToWithin1000ns" | "AccurateToWithin2500ns" | "AccurateToWithin10us" | "AccurateToWithin25us" | "AccurateToWithin100us" | "AccurateToWithin250us" | "AccurateToWithin1000us" | "AccurateToWithin2500us" | "AccurateToWithin10ms" | "AccurateToWithin25ms" | "AccurateToWithin100ms" | "AccurateToWithin250ms" | "AccurateToWithin1s" | "AccurateToWithin10s" | "AccuracyBelow10s" | "ProfileSpecific" | "Unknown";
export interface ClockQuality {
clock_class: ClockClass;
clock_accuracy: ClockAccuracy;
offset_scaled_log_variance: number;
}
export declare type Traceability = "NotTraceable" | "FrequencyTraceable" | "Traceable";
export declare class Traits {
readonly raw: VScript.Subtree;
constructor(raw: VScript.Subtree);
get domain(): VScript.rKeyword<number, number, Traits>;
get alternate_master(): VScript.rKeyword<boolean, boolean, Traits>;
get leap61(): VScript.rKeyword<boolean, boolean, Traits>;
get leap59(): VScript.rKeyword<boolean, boolean, Traits>;
get ptp_timescale(): VScript.rKeyword<TimeScale, TimeScale, Traits>;
get traceability(): VScript.rKeyword<Traceability, Traceability, Traits>;
get utc_offset_seconds(): VScript.rKeyword<number, number, Traits>;
get source_type(): VScript.rKeyword<SourceType, SourceType, Traits>;
get port_identity(): VScript.rKeyword<any, PortIdentity | null, this>;
get grandmaster_priority_1(): VScript.rKeyword<number, number, Traits>;
get grandmaster_clock_quality(): VScript.rKeyword<any, ClockQuality | null, this>;
get grandmaster_priority_2(): VScript.rKeyword<number, number, Traits>;
/**
ClockIdentity as defined by the PTP standard, stored in big-endian order.
*/
get grandmaster_identity(): VScript.rKeyword<[number, number, number, number, number, number, number, number], [number, number, number, number, number, number, number, number], Traits>;
get steps_removed(): VScript.rKeyword<number, number, Traits>;
}
export declare const Enums: {
readonly Traceability: Traceability[];
readonly ClockAccuracy: ClockAccuracy[];
readonly ClockClass: ClockClass[];
readonly TimeScale: TimeScale[];
readonly SourceType: SourceType[];
};