UNPKG

@joergmittaglawo/dmvconfig

Version:

DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.

78 lines (77 loc) 2.97 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Enums = exports.All = exports.SingleReTransmitterAsNamedTableRow = exports.SingleReTransmitter = exports.lower = exports.lift = void 0; const VScript = require("vscript"); const _RTPReceiver = require("./RTPReceiver"); const _Definitions = require("./Definitions"); exports.lift = { SingleReTransmitter: (kwl, socket) => kwl ? (new SingleReTransmitter(new VScript.Subtree(socket, kwl))) : null }; exports.lower = { SingleReTransmitter: (ref) => ref ? ref.raw.kwl : null }; class SingleReTransmitter { constructor(raw) { this.raw = raw; } get active() { return new VScript.duplexKeyword(this, "active"); } get num_outputs() { return new VScript.rwKeyword(this, "num_outputs"); } get bandwidth_factor() { return new VScript.duplexKeyword(this, "bandwidth_factor"); } get delay() { return new VScript.duplexKeyword(this, "delay"); } get num_slices() { return new VScript.duplexKeyword(this, "num_slices"); } get sdp() { return new VScript.rKeyword(this, "sdp"); } get source() { return new VScript.duplexKeyword(this, "source", { lift: _RTPReceiver.lift.PassthroughEssence, lower: _RTPReceiver.lower.PassthroughEssence }); } get output_port() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("output_port")), (row, enclosing_table) => new _Definitions.TransmitterOutputPortSingleAsTableRow(row, enclosing_table)); } get stream_name() { return new _Definitions.NAME(this.raw.find("stream_name")); } } exports.SingleReTransmitter = SingleReTransmitter; class SingleReTransmitterAsNamedTableRow extends SingleReTransmitter { constructor(raw_row, enclosing_table) { super(new VScript.Subtree(raw_row.socket, raw_row.kwl)); this.raw_row = raw_row; this.enclosing_table = enclosing_table; this.index = raw_row.index; } async rename(name, opts) { await this.raw_row.rename(name, opts); } async delete(opts) { await this.raw_row.delete(opts); } } exports.SingleReTransmitterAsNamedTableRow = SingleReTransmitterAsNamedTableRow; class All { constructor(raw) { this.raw = raw; } get mode_1() { return new VScript.rKeyword(this, "mode_1"); } get mode_2() { return new VScript.rKeyword(this, "mode_2"); } get preserve_src_ip_entry() { return new VScript.rwKeyword(this, "preserve_src_ip_entry"); } get passthrough_transmitter_output() { return new VScript.StronglyTypedNamedTable(new VScript.NamedTable(this.raw.socket, this.raw.full_kwl("passthrough_transmitter_output")), (row, enclosing_table) => new SingleReTransmitterAsNamedTableRow(row, enclosing_table)); } } exports.All = All; exports.Enums = { SLICES: ["s_128", "s_256", "s_512", "s_1024"] };