polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
42 lines (41 loc) • 1.62 kB
JavaScript
import {InputsController as InputsController2} from "./InputsController";
import {OutputsController as OutputsController2} from "./OutputsController";
import {ConnectionsController as ConnectionsController2} from "./ConnectionsController";
import {SavedConnectionPointsDataController as SavedConnectionPointsDataController2} from "./SavedConnectionPointsDataController";
import {ConnectionPointsController as ConnectionPointsController2} from "./ConnectionPointsController";
export class IOController {
constructor(node) {
this.node = node;
this._connections = new ConnectionsController2(this.node);
}
get connections() {
return this._connections;
}
get inputs() {
return this._inputs = this._inputs || new InputsController2(this.node);
}
has_inputs() {
return this._inputs != null;
}
get outputs() {
return this._outputs = this._outputs || new OutputsController2(this.node);
}
has_outputs() {
return this._outputs != null;
}
get connection_points() {
return this._connection_points = this._connection_points || new ConnectionPointsController2(this.node, this.node.nodeContext());
}
get has_connection_points_controller() {
return this._connection_points != null;
}
get saved_connection_points_data() {
return this._saved_connection_points_data = this._saved_connection_points_data || new SavedConnectionPointsDataController2(this.node);
}
clear_saved_connection_points_data() {
if (this._saved_connection_points_data) {
this._saved_connection_points_data.clear();
this._saved_connection_points_data = void 0;
}
}
}