13 static std::atomic<uint32_t> nextID{0};
16 return nextID.fetch_add(1, std::memory_order_relaxed);
20 std::string_view variantName,
22 std::initializer_list<Uniform> uniforms,
30 , fPrimitiveType(primitiveType)
31 , fDepthStencilSettings(depthStencilSettings)
33 , fVertexAttrs(vertexAttrs.
begin(), vertexAttrs.
end())
34 , fInstanceAttrs(instanceAttrs.
begin(), instanceAttrs.
end())
35 , fVaryings(varyings.
begin(), varyings.
end())
40 fVertexStride += v.sizeAlign4();
43 fInstanceStride +=
i.sizeAlign4();
45 if (variantName.size() > 0) {
SkSpan< const Attribute > instanceAttributes() const
SkSpan< const Attribute > vertexAttributes() const
RenderStep(std::string_view className, std::string_view variantName, SkEnumBitMask< Flags > flags, std::initializer_list< Uniform > uniforms, PrimitiveType primitiveType, DepthStencilSettings depthStencilSettings, SkSpan< const Attribute > vertexAttrs, SkSpan< const Attribute > instanceAttrs, SkSpan< const Varying > varyings={})
static const char * begin(const StringSlice &s)
FlutterSemanticsFlag flags
static uint32_t next_id()