UNPKG

@doegis/core

Version:

DOE GIS API

3 lines (1 loc) 1.34 kB
import e from"./isWebGL2Context.js";class t{constructor(e,t,E,T,r,_,i,u,s){this.createQuery=e,this.deleteQuery=t,this.resultAvailable=E,this.getResult=T,this.disjoint=r,this.beginTimeElapsed=_,this.endTimeElapsed=i,this.createTimestamp=u,this.timestampBits=s}}let E=!1;function T(T,r){if(r.disjointTimerQuery)return null;let _=T.getExtension("EXT_disjoint_timer_query_webgl2");return _&&e(T)?new t((()=>T.createQuery()),(e=>{T.deleteQuery(e),E=!1}),(e=>T.getQueryParameter(e,T.QUERY_RESULT_AVAILABLE)),(e=>T.getQueryParameter(e,T.QUERY_RESULT)),(()=>T.getParameter(_.GPU_DISJOINT_EXT)),(e=>{E||(E=!0,T.beginQuery(_.TIME_ELAPSED_EXT,e))}),(()=>{T.endQuery(_.TIME_ELAPSED_EXT),E=!1}),(e=>_.queryCounterEXT(e,_.TIMESTAMP_EXT)),(()=>T.getQuery(_.TIMESTAMP_EXT,_.QUERY_COUNTER_BITS_EXT))):(_=T.getExtension("EXT_disjoint_timer_query"),_?new t((()=>_.createQueryEXT()),(e=>{_.deleteQueryEXT(e),E=!1}),(e=>_.getQueryObjectEXT(e,_.QUERY_RESULT_AVAILABLE_EXT)),(e=>_.getQueryObjectEXT(e,_.QUERY_RESULT_EXT)),(()=>T.getParameter(_.GPU_DISJOINT_EXT)),(e=>{E||(E=!0,_.beginQueryEXT(_.TIME_ELAPSED_EXT,e))}),(()=>{_.endQueryEXT(_.TIME_ELAPSED_EXT),E=!1}),(e=>_.queryCounterEXT(e,_.TIMESTAMP_EXT)),(()=>_.getQueryEXT(_.TIMESTAMP_EXT,_.QUERY_COUNTER_BITS_EXT))):null)}export{t as DisjointTimerQuery,T as createDisjointTimerQuery,E as hasRunningElapsedTimer};