polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
47 lines (46 loc) • 2.43 kB
TypeScript
import { CoreGraphNode } from '../../../../core/graph/CoreGraphNode';
import { ConnectionPointTypeMap, ConnectionPointEnumMap } from './connections/ConnectionMap';
import { TypedNode } from '../../_Base';
import { ConnectionPointsSpareParamsController } from './ConnectionPointsSpareParamsController';
import { NodeContext } from '../../../poly/NodeContext';
declare type IONameFunction = (index: number) => string;
declare type ExpectedConnectionTypesFunction<NC extends NodeContext> = () => ConnectionPointEnumMap[NC][];
export declare class ConnectionPointsController<NC extends NodeContext> {
private node;
private _context;
private _spare_params_controller;
private _create_spare_params_from_inputs;
private _functions_overridden;
constructor(node: TypedNode<NC, any>, _context: NC);
private _input_name_function;
private _output_name_function;
private _expected_input_types_function;
private _expected_output_types_function;
protected default_connection_type(): ConnectionPointEnumMap[NC];
protected create_connection_point(name: string, type: ConnectionPointEnumMap[NC]): ConnectionPointTypeMap[NC];
functions_overridden(): boolean;
initialized(): boolean;
set_create_spare_params_from_inputs(state: boolean): void;
set_input_name_function(func: IONameFunction): void;
set_output_name_function(func: IONameFunction): void;
set_expected_input_types_function(func: ExpectedConnectionTypesFunction<NC>): void;
set_expected_output_types_function(func: ExpectedConnectionTypesFunction<NC>): void;
input_name(index: number): string;
output_name(index: number): string;
private _update_signature_if_required_bound;
private _initialized;
initializeNode(): void;
private _initialize_if_required;
get spare_params(): ConnectionPointsSpareParamsController<NC>;
update_signature_if_required(dirty_trigger?: CoreGraphNode): void;
private make_successors_update_signatures;
update_connection_types(): void;
protected _connections_match_inputs(): boolean;
private _wrapped_expected_input_types_function;
private _wrapped_expected_output_types_function;
private _wrapped_input_name_function;
private _wrapped_output_name_function;
first_input_connection_type(): ConnectionPointEnumMap[NC] | undefined;
input_connection_type(index: number): ConnectionPointEnumMap[NC] | undefined;
}
export {};