/* COPYRIGHT Esri - https://js.arcgis.com/5.1.2/LICENSE.txt */
import{FeatureTechnique as e}from"../FeatureTechnique.js";import{isHittest as t,getSelectionDefines as r,getFeatureTextures as s,getFeatureUniforms as o,resolveDynamicUniforms as a,getFeaturePipelineState as i}from"../featureTechniqueUtils.js";import{MarkerShader as n}from"./MarkerShader.js";class u extends e{constructor(){super(...arguments),this.type=23,this.shaders={geometry:new n},this.symbologyPlane=2}render(e,n){const{painter:u}=e,m=n.instance.getInput();u.setShader({shader:this.shaders.geometry,uniforms:{...a(e,n.target,m.uniforms),...o(e,n.target),mosaicInfo:u.textureManager.getMosaicInfo(e,n.textureKey,!0)},textures:{...s(e),mosaicTexture:u.textureManager.getMosaicTexture(e,n.textureKey,!0)},defines:{...r(e)},optionalAttributes:m.optionalAttributes,useComputeBuffer:t(e)}),u.setPipelineState(i(e)),u.submitDraw(e,n)}}export{u as MarkerTechnique};
