/* COPYRIGHT Esri - https://js.arcgis.com/5.1.0/LICENSE.txt */
import{newLayout as e}from"../../support/buffer/InterleavedLayout.js";import{olidEnabled as t}from"../effects/geometry/olidUtils.js";import{TextureBackedBufferLayout as r}from"../lib/TextureBackedBuffer/TextureBackedBufferLayout.js";function o(){const r=e().u32("pathVertexInfo",{integer:!0}).u32("textureElementIndex",{integer:!0});return t()&&r.vec4u8("olidColor"),r.freeze()}function n(e){const t=[{type:"vec3f32",name:"position"},{type:"vec2snorm16",name:"profileRight"},{type:"vec2snorm16",name:"profileUp"}];return 1===e.upVectorAlignment&&t.push({type:"vec2snorm16",name:"pathRotationUp"}),e.hasVVSize&&t.push({type:"f32",name:"sizeFeatureAttribute"}),e.hasVVColor&&t.push({type:"f32",name:"colorFeatureAttribute"}),e.hasVVOpacity&&t.push({type:"f32",name:"opacityFeatureAttribute"}),t.push({type:"f16",name:"pathMaxStretchDistance"},{type:"snorm16",name:"profileRotation"}),new r(t)}export{o as getLayout,n as getTextureLayout};
