/*
All material copyright Esri, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
*/
import{SizedPixelFormat as e,PixelType as t}from"../../../../../../../webgl/enums.js";import{FramebufferObject as r}from"../../../../../../../webgl/FramebufferObject.js";import n from"../../../../../../../webgl/Texture.js";import{TextureDescriptor as i}from"../../../../../../../webgl/TextureDescriptor.js";function o(r,n){const o=new i(r,n);return o.internalFormat=e.RGBA32F,o.samplingMode=9728,o.dataType=t.FLOAT,o.isImmutable=!0,o.wrapMode=33071,o}function a(e,t,r){const i=o(t,r);return new n(e,i)}function u(e,t,n){const i=o(t,n);return new r(e,i)}function l(e,t){const{symbolizerParameters:r}=e,{type:n}=r,i="lut"===n?"nearest":e.interpolation,o="bilinear"===i&&("lut"!==n&&("stretch"!==n||1===r.bandCount)),a="cubic"===i;return{bilinear:o||"bilinear"===i&&null!=t&&!t.capabilities.textureFloatLinear,bicubic:a,nearestOnEdge:o}}export{u as createNewFBO,a as createProcessedTexture,l as getInterpolationDefines};
