/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
import{BaseRasterProcessorTechnique as s}from"./BaseRasterProcessorTechnique.js";import{MaskShader as e}from"../../shaders/raster/processor/MaskShader.js";class a extends s{constructor(){super(...arguments),this.name="RasterMaskProcessor",this.type=16,this.shaders={mask:new e}}_process(s,e){const a=s.rasterFunction.parameters,r={isMultiband:a.bandCount>1},t={includedRanges:[...a.includedRanges],noDataValues:[...a.noDataValues]},o=this._getCommonConfig(s,e),n={shader:this.shaders.mask,uniforms:{config:o,maskConfig:t},defines:r,optionalAttributes:null,useComputeBuffer:!1},{painter:i,context:u}=s;i.submitDrawMesh(u,n,i.quadMesh)}}export{a as MaskTechnique};
