UNPKG

@joergmittaglawo/dmvconfig

Version:

DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.

59 lines (58 loc) 2.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.All = exports.SPAsNamedTableRow = exports.SP = exports.lower = exports.lift = void 0; const VScript = require("vscript"); const _Video = require("./Video"); exports.lift = { SP: (kwl, socket) => kwl ? (new SP(new VScript.Subtree(socket, kwl))) : null, SPOutputs: (kwl, socket) => kwl ? (new SPOutputs(new VScript.Subtree(socket, kwl))) : null }; exports.lower = { SP: (ref) => ref ? ref.raw.kwl : null, SPOutputs: (ref) => ref ? ref.raw.kwl : null }; class SPOutputs { constructor(raw) { this.raw = raw; } get output() { return new _Video.Essence(this.raw.find("output")); } } class SPOutputsAsTableRow extends SPOutputs { 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 SP { constructor(raw) { this.raw = raw; } get source() { return new VScript.duplexKeyword(this, "source", { lift: _Video.lift.Essence, lower: _Video.lower.Essence }); } get outputs() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("outputs")), (row, enclosing_table) => new SPOutputsAsTableRow(row, enclosing_table)); } } exports.SP = SP; class SPAsNamedTableRow extends SP { 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.SPAsNamedTableRow = SPAsNamedTableRow; class All { constructor(raw) { this.raw = raw; } get pool() { return new VScript.StronglyTypedNamedTable(new VScript.NamedTable(this.raw.socket, this.raw.full_kwl("pool")), (row, enclosing_table) => new SPAsNamedTableRow(row, enclosing_table)); } } exports.All = All;