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.53 kB
import{f as t}from"./declarationMapper-13w1YGqM.esm.min.js";import{b as i}from"./KHR_interactivity-CKt1TdMW.esm.min.js";import{R as e}from"./index-Bw2N6w1y.esm.min.js";import"./objectModelMapping-DX92iJ8M.esm.min.js";class a extends i{constructor(i){super(i),this.reset=this._registerSignalInput("reset"),this.duration=this.registerDataInput("duration",t),this.lastRemainingTime=this.registerDataOutput("lastRemainingTime",t,NaN)}_execute(t,i){if(i===this.reset)return this.lastRemainingTime.setValue(NaN,t),t._setExecutionVariable(this,"lastRemainingTime",NaN),void t._setExecutionVariable(this,"timestamp",0);const e=this.duration.getValue(t);if(e<=0||isNaN(e)||!isFinite(e))return this._reportError(t,"Invalid duration in Throttle block");const a=t._getExecutionVariable(this,"lastRemainingTime",NaN),s=Date.now();if(isNaN(a))return this.lastRemainingTime.setValue(0,t),t._setExecutionVariable(this,"lastRemainingTime",0),t._setExecutionVariable(this,"timestamp",s),this.out._activateSignal(t);{const i=s-t._getExecutionVariable(this,"timestamp",0),a=1e3*e;if(a<=i)return this.lastRemainingTime.setValue(0,t),t._setExecutionVariable(this,"lastRemainingTime",0),t._setExecutionVariable(this,"timestamp",s),this.out._activateSignal(t);{const e=a-i;this.lastRemainingTime.setValue(e/1e3,t),t._setExecutionVariable(this,"lastRemainingTime",e)}}}getClassName(){return"FlowGraphThrottleBlock"}}e("FlowGraphThrottleBlock",a);export{a as FlowGraphThrottleBlock}; //# sourceMappingURL=flowGraphThrottleBlock-BaDKjO7R.esm.min.js.map