/* COPYRIGHT Esri - https://js.arcgis.com/5.0.18/LICENSE.txt */
import{FeatureTechnique as e}from"../FeatureTechnique.js";import{isHittest as t,getSelectionDefines as r,getLocalTileOffset as s,getFeatureUniforms as i,resolveDynamicUniforms as o,getFeaturePipelineState as a}from"../featureTechniqueUtils.js";import{ComplexFillShader as n}from"../shaders/ComplexFillShader.js";class u extends e{constructor(){super(...arguments),this.type=10,this.shaders={geometry:new n}}render(e,n){const{painter:u}=e,m=n.instance.getInput();u.setShader({shader:this.shaders.geometry,uniforms:{...o(e,n.target,m.uniforms),...i(e,n.target),mosaicInfo:u.textureManager.getMosaicInfo(e,n.textureKey),localTileOffset:s(n.target)},defines:{...r(e)},optionalAttributes:m.optionalAttributes,useComputeBuffer:t(e)}),u.setPipelineState(a(e)),u.submitDraw(e,n)}}export{u as ComplexFillTechnique};
