polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
37 lines (36 loc) • 2.94 kB
TypeScript
import { PolyDictionary } from '../../../types/GlobalTypes';
import { PolyScene } from '../PolyScene';
import { ObjectsManagerNode } from '../../nodes/manager/ObjectsManager';
import { BaseNodeType } from '../../nodes/_Base';
import { NodeContext } from '../../poly/NodeContext';
import { NodeChildrenMapByContext } from '../../poly/registers/nodes/All';
export declare class NodesController {
private scene;
constructor(scene: PolyScene);
_root: ObjectsManagerNode;
_node_context_signatures: PolyDictionary<boolean>;
_instanciated_nodes_by_context_and_type: PolyDictionary<PolyDictionary<PolyDictionary<BaseNodeType>>>;
init(): void;
root(): ObjectsManagerNode;
private _traverseNode;
clear(): void;
node(path: string): BaseNodeType | ObjectsManagerNode | null;
allNodes(): BaseNodeType[];
nodesFromMask(mask: string): BaseNodeType[];
reset_node_context_signatures(): void;
register_node_context_signature(node: BaseNodeType): void;
node_context_signatures(): string[];
addToInstanciatedNode(node: BaseNodeType): void;
removeFromInstanciatedNode(node: BaseNodeType): void;
nodesByType(type: string): BaseNodeType[];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.ANIM]>(context: NodeContext.ANIM, node_type: T): NodeChildrenMapByContext[NodeContext.ANIM][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.COP]>(context: NodeContext.COP, node_type: T): NodeChildrenMapByContext[NodeContext.COP][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.EVENT]>(context: NodeContext.EVENT, node_type: T): NodeChildrenMapByContext[NodeContext.EVENT][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.GL]>(context: NodeContext.GL, node_type: T): NodeChildrenMapByContext[NodeContext.GL][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.JS]>(context: NodeContext.JS, node_type: T): NodeChildrenMapByContext[NodeContext.JS][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.MAT]>(context: NodeContext.MAT, node_type: T): NodeChildrenMapByContext[NodeContext.MAT][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.OBJ]>(context: NodeContext.OBJ, node_type: T): NodeChildrenMapByContext[NodeContext.OBJ][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.POST]>(context: NodeContext.POST, node_type: T): NodeChildrenMapByContext[NodeContext.POST][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.ROP]>(context: NodeContext.ROP, node_type: T): NodeChildrenMapByContext[NodeContext.ROP][T][];
nodesByContextAndType<T extends keyof NodeChildrenMapByContext[NodeContext.SOP]>(context: NodeContext.SOP, node_type: T): NodeChildrenMapByContext[NodeContext.SOP][T][];
}