/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
import{__decorate as r}from"tslib";import{uniform as o,UniformGroup as e}from"../../../../GraphShaderModule.js";import{clamp as s,Vec4 as t,Mat3 as p,Vec2 as i}from"../../../../graph/glsl.js";import{BaseRasterProcessorShader as a}from"./BaseRasterProcessorShader.js";class n extends e{}r([o(p)],n.prototype,"weights",void 0),r([o(i)],n.prototype,"clampRange",void 0);class l extends a{constructor(){super(...arguments),this.type="SpectralConversionShader"}_process(r){const o=this._getPixel(r),{weights:e,clampRange:p}=this.spectralConversionConfig,i=e.multiply(o.rgb),a=s(i.r,p.x,p.y),n=s(i.g,p.x,p.y),l=s(i.b,p.x,p.y);return new t(a,n,l,o.a)}}r([o(n)],l.prototype,"spectralConversionConfig",void 0);export{l as SpectralConversionShader};
