UNPKG

@joergmittaglawo/dmvconfig

Version:

DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.

80 lines (79 loc) 2.84 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.All = exports.LevelsAsNamedTableRow = exports.Levels = exports.Control = exports.lower = exports.lift = void 0; const VScript = require("vscript"); const _Audio = require("./Audio"); exports.lift = { Levels: (kwl, socket) => kwl ? (new Levels(new VScript.Subtree(socket, kwl))) : null, LevelsOutputs: (kwl, socket) => kwl ? (new LevelsOutputs(new VScript.Subtree(socket, kwl))) : null, Control: (kwl, socket) => kwl ? (new Control(new VScript.Subtree(socket, kwl))) : null }; exports.lower = { Levels: (ref) => ref ? ref.raw.kwl : null, LevelsOutputs: (ref) => ref ? ref.raw.kwl : null, Control: (ref) => ref ? ref.raw.kwl : null }; class Control { constructor(raw) { this.raw = raw; } /** Default */ get reset_to_default() { return new VScript.wKeyword(this, "reset_to_default"); } get gain() { return new VScript.rwKeyword(this, "gain"); } get phase_inversion() { return new VScript.rwKeyword(this, "phase_inversion"); } } exports.Control = Control; class LevelsOutputs { constructor(raw) { this.raw = raw; } get control() { return new Control(this.raw.find("control")); } get output() { return new _Audio.Essence(this.raw.find("output")); } } class LevelsOutputsAsTableRow extends LevelsOutputs { 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 Levels { constructor(raw) { this.raw = raw; } get source() { return new VScript.duplexKeyword(this, "source", { lift: _Audio.lift.Essence, lower: _Audio.lower.Essence }); } get outputs() { return new VScript.StronglyTypedTable(new VScript.Table(this.raw.socket, this.raw.full_kwl("outputs")), (row, enclosing_table) => new LevelsOutputsAsTableRow(row, enclosing_table)); } } exports.Levels = Levels; class LevelsAsNamedTableRow extends Levels { 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.LevelsAsNamedTableRow = LevelsAsNamedTableRow; class All { constructor(raw) { this.raw = raw; } get levels() { return new VScript.StronglyTypedNamedTable(new VScript.NamedTable(this.raw.socket, this.raw.full_kwl("levels")), (row, enclosing_table) => new LevelsAsNamedTableRow(row, enclosing_table)); } } exports.All = All;