UNPKG

@babylonjs/viewer

Version:

The Babylon Viewer aims to simplify a specific but common Babylon.js use case: loading, viewing, and interacting with a 3D model.

3 lines (2 loc) 1.81 kB
import{c as t}from"./KHR_interactivity-D4lwBSW9.esm.min.js";import{j as i,F as e}from"./declarationMapper-D_filC93.esm.min.js";import{u as n}from"./index-BPURObVq.esm.min.js";import"./objectModelMapping-ClgDmo5Q.esm.min.js";import"./spotLight.pure-5s2DDDIt.esm.min.js";class s extends t{constructor(t){super(t),this.config=t,this.inFlows=[],this._cachedActivationState=[],this.reset=this._registerSignalInput("reset"),this.completed=this._registerSignalOutput("completed"),this.remainingInputs=this.registerDataOutput("remainingInputs",i,new e(this.config.inputSignalCount||0));for(let t=0;t<this.config.inputSignalCount;t++)this.inFlows.push(this._registerSignalInput(`in_${t}`));this._unregisterSignalInput("in")}_getCurrentActivationState(t){const i=this._cachedActivationState;if(i.length=0,t._hasExecutionVariable(this,"activationState")){const e=t._getExecutionVariable(this,"activationState",[]);for(let t=0;t<e.length;t++)i.push(e[t])}else for(let t=0;t<this.config.inputSignalCount;t++)i.push(!1);return i}_execute(t,i){const n=this._getCurrentActivationState(t);if(i===this.reset)for(let t=0;t<this.config.inputSignalCount;t++)n[t]=!1;else{const t=this.inFlows.indexOf(i);t>=0&&(n[t]=!0)}if(this.remainingInputs.setValue(new e(n.filter(t=>!t).length),t),t._setExecutionVariable(this,"activationState",n.slice()),n.includes(!1))i!==this.reset&&this.out._activateSignal(t);else{this.completed._activateSignal(t);for(let t=0;t<this.config.inputSignalCount;t++)n[t]=!1}}getClassName(){return"FlowGraphWaitAllBlock"}serialize(t){super.serialize(t),t.config.inputFlows=this.config.inputSignalCount}}let a=!1;function o(){a||(a=!0,n("FlowGraphWaitAllBlock",s))}o();export{s as FlowGraphWaitAllBlock,o as RegisterFlowGraphWaitAllBlock}; //# sourceMappingURL=flowGraphWaitAllBlock-DGGRSuHS.esm.min.js.map