8#ifndef skgpu_graphite_compute_VelloComputeSteps_DEFINED
9#define skgpu_graphite_compute_VelloComputeSteps_DEFINED
188template <vello_cpp::ShaderStage S>
203 Flags::kSupportsNativeShader) {}
217 template <
typename T,
typename C>
223#define VELLO_COMPUTE_STEP(stage) \
224 class Vello##stage##Step final : public VelloStep<vello_cpp::ShaderStage::stage> { \
226 Vello##stage##Step(); \
249#undef VELLO_COMPUTE_STEP
270template <vello_cpp::ShaderStage S, SkColorType T, ::rust::Vec<uint8_t> (*MaskLutBuilder)()>
275 return fMaskLut.size();
281 size_t bufferSize)
const override {
283 SkASSERT(fMaskLut.size() == bufferSize);
284 memcpy(
buffer, fMaskLut.data(), fMaskLut.size());
292 ::rust::Vec<uint8_t> fMaskLut;
296 :
public VelloFineStepBase<vello_cpp::ShaderStage::FineArea, kRGBA_8888_SkColorType> {
302 :
public VelloFineStepBase<vello_cpp::ShaderStage::FineAreaR8, kAlpha_8_SkColorType> {
308 kRGBA_8888_SkColorType,
309 vello_cpp::build_mask_lut_16> {
316 kAlpha_8_SkColorType,
317 vello_cpp::build_mask_lut_16> {
323 kRGBA_8888_SkColorType,
324 vello_cpp::build_mask_lut_8> {
331 kAlpha_8_SkColorType,
332 vello_cpp::build_mask_lut_8> {
SkSpan(Container &&) -> SkSpan< std::remove_pointer_t< decltype(std::data(std::declval< Container >()))> >
SkSpan< const ResourceDesc > resources() const
VelloFineAreaAlpha8Step()
VelloFineMsaa16Alpha8Step()
VelloFineMsaa8Alpha8Step()
VelloFineMsaaStepBase(SkSpan< const ComputeStep::ResourceDesc > resources)
size_t calculateBufferSize(int resourceIndex, const ComputeStep::ResourceDesc &) const override
void prepareStorageBuffer(int resourceIndex, const ComputeStep::ResourceDesc &, void *buffer, size_t bufferSize) const override
VelloFineStepBase(SkSpan< const ComputeStep::ResourceDesc > resources)
std::tuple< SkISize, SkColorType > calculateTextureParameters(int index, const ComputeStep::ResourceDesc &) const override
~VelloStep() override=default
VelloStep(SkSpan< const ResourceDesc > resources)
NativeShaderSource nativeShaderSource(NativeShaderFormat format) const override
uint32_t uint32_t * format
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir Path to the cache directory This is different from the persistent_cache_path in embedder which is used for Skia shader cache icu native lib Path to the library file that exports the ICU data vm service The hostname IP address on which the Dart VM Service should be served If not defaults to or::depending on whether ipv6 is specified vm service A custom Dart VM Service port The default is to pick a randomly available open port disable vm Disable the Dart VM Service The Dart VM Service is never available in release mode disable vm service Disable mDNS Dart VM Service publication Bind to the IPv6 localhost address for the Dart VM Service Ignored if vm service host is set endless trace buffer
it will be possible to load the file into Perfetto s trace viewer disable asset Prevents usage of any non test fonts unless they were explicitly Loaded via prefetched default font Indicates whether the embedding started a prefetch of the default font manager before creating the engine run In non interactive keep the shell running after the Dart script has completed enable serial On low power devices with low core running concurrent GC tasks on threads can cause them to contend with the UI thread which could potentially lead to jank This option turns off all concurrent GC activities domain network JSON encoded network policy per domain This overrides the DisallowInsecureConnections switch Embedder can specify whether to allow or disallow insecure connections at a domain level old gen heap size
constexpr int kVelloSlot_DrawBBoxes
constexpr int kVelloSlot_Lines
constexpr int kVelloSlot_LargePathtagScanFirstPassOutput
constexpr int kVelloSlot_BinHeader
constexpr int kVelloSlot_SegmentCounts
constexpr int kVelloSlot_ClipBicyclic
constexpr int kVelloSlot_Scene
constexpr int kVelloSlot_ConfigUniform
VELLO_COMPUTE_STEP(BackdropDyn)
constexpr int kVelloSlot_GradientImage
constexpr int kVelloSlot_ClipInput
skia_private::TArray< ComputeStep::WorkgroupBufferDesc > VelloWorkgroupBuffers(vello_cpp::ShaderStage stage)
constexpr int kVelloSlot_LargePathtagReduceFirstPassOutput
std::string_view VelloStageName(vello_cpp::ShaderStage stage)
constexpr int kVelloSlot_IndirectCount
constexpr int kVelloSlot_DrawReduceOutput
constexpr int kVelloSlot_LargePathtagReduceSecondPassOutput
constexpr int kVelloSlot_TagMonoid
ComputeStep::NativeShaderSource VelloNativeShaderSource(vello_cpp::ShaderStage stage, ComputeStep::NativeShaderFormat format)
constexpr int kVelloSlot_Segments
WorkgroupSize VelloStageLocalSize(vello_cpp::ShaderStage stage)
constexpr int kVelloSlot_InfoBinData
constexpr int kVelloSlot_ClipElement
constexpr int kVelloSlot_PathBBoxes
constexpr int kVelloSlot_Path
constexpr int kVelloSlot_OutputImage
constexpr int kVelloSlot_Tile
constexpr int kVelloSlot_PathtagReduceOutput
constexpr int kVelloSlot_PTCL
constexpr int kVelloSlot_ClipBBoxes
constexpr int kVelloSlot_DrawMonoid
constexpr int kVelloSlot_MaskLUT
constexpr int kVelloSlot_BumpAlloc
constexpr int kVelloSlot_ImageAtlas
std::shared_ptr< const fml::Mapping > data