/* COPYRIGHT Esri - https://js.arcgis.com/5.1.0/LICENSE.txt */
import{BaseRasterProcessorTechnique as e}from"./BaseRasterProcessorTechnique.js";import{RemapShader as a}from"../../shaders/raster/processor/RemapShader.js";class s extends e{constructor(){super(...arguments),this.name="RasterRemapProcessor",this.type=18,this.shaders={remap:new a}}_process(e,a){const s=e.rasterFunction.parameters,r={replaceUnmatched:s.allowUnmatched&&null!=s.replacementValue},t={rangeMaps:[...s.rangeMaps],noDataRanges:[...s.noDataRanges],unmatchMask:s.allowUnmatched?1:0,replacementValue:s.replacementValue??0,clampRange:s.clampRange},{config:n,textures:o}=this._getCommonConfig(e,a),m={shader:this.shaders.remap,uniforms:{config:n,remapConfig:t},textures:o,defines:r,optionalAttributes:null,useComputeBuffer:!1},{painter:p,context:c}=e;p.submitDrawMesh(c,m,p.quadMesh)}}export{s as RemapTechnique};
