/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["require","exports","../../../chunks/_rollupPluginBabelHelpers","../../../chunks/tslib.es6","../../2d/engine/imagery/enums","./BlendModeTechniqueConfiguration","../../../chunks/RasterColorizer.glsl","../webgl-engine/core/shaderLibrary/terrain/TileBlendInput","../../../chunks/BlendLayers.glsl","../webgl-engine/core/shaderTechnique/ReloadableShaderModule","../webgl-engine/core/shaderTechnique/ShaderTechnique","../webgl-engine/core/shaderTechnique/ShaderTechniqueConfiguration","../webgl-engine/lib/DefaultVertexAttributeLocations","../webgl-engine/lib/Program","../../webgl/enums","../../webgl/renderState"],(function(e,r,t,o,i,n,a,l,u,s,c,d,p,h,g,y){"use strict";let T=function(e){function r(){return e.apply(this,arguments)||this}t._inheritsLoose(r,e);var o=r.prototype;return o.initializeProgram=function(e){const t=r.shader.get().build(this.configuration);return new h.Program(e.rctx,t,p.Default3D)},o.initializePipeline=function(){return y.makePipelineState({blending:y.simpleBlendingParams(g.BlendFactor.ONE,g.BlendFactor.ONE_MINUS_SRC_ALPHA),colorWrite:y.defaultColorWriteParams})},r}(c.ShaderTechnique);T.shader=new s.ReloadableShaderModule(a.RasterColorizer,(()=>new Promise(((r,t)=>e(["../webgl-engine/core/shaderLibrary/raster/RasterColorizer.glsl"],r,t)))));let b=function(e){function r(){var r;return(r=e.apply(this,arguments)||this).colorizerType=i.RasterColorizerType.Stretch,r.stretchType=i.RasterColorizerStretchType.Noop,r.tileBlendInput=l.TileBlendInput.LayerOnly,r.baseOpacityMode=u.BaseOpacityMode.One,r.applyColormap=!0,r}return t._inheritsLoose(r,e),r}(n.BlendModeTechniqueConfiguration);o.__decorate([d.parameter({count:i.RasterColorizerType.COUNT})],b.prototype,"colorizerType",void 0),o.__decorate([d.parameter({count:i.RasterColorizerStretchType.COUNT})],b.prototype,"stretchType",void 0),o.__decorate([d.parameter({count:l.TileBlendInput.COUNT})],b.prototype,"tileBlendInput",void 0),o.__decorate([d.parameter({count:u.BaseOpacityMode.COUNT})],b.prototype,"baseOpacityMode",void 0),o.__decorate([d.parameter()],b.prototype,"applyColormap",void 0),r.RasterColorizerTechnique=T,r.RasterColorizerTechniqueConfiguration=b,Object.defineProperties(r,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
