Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Attributes | List of all members
SkRasterPipelineStage Struct Reference

#include <SkRasterPipeline.h>

Public Attributes

void(* fn )()
 
void * ctx
 

Detailed Description

SkRasterPipeline provides a cheap way to chain together a pixel processing pipeline.

It's particularly designed for situations where the potential pipeline is extremely combinatoric: {N dst formats} x {M source formats} x {K mask formats} x {C transfer modes} ... No one wants to write specialized routines for all those combinations, and if we did, we'd end up bloating our code size dramatically. SkRasterPipeline stages can be chained together at runtime, so we can scale this problem linearly rather than combinatorically.

Each stage is represented by a function conforming to a common interface and by an arbitrary context pointer. The stage function arguments and calling convention are designed to maximize the amount of data we can pass along the pipeline cheaply, and vary depending on CPU feature detection.

Definition at line 53 of file SkRasterPipeline.h.

Member Data Documentation

◆ ctx

void* SkRasterPipelineStage::ctx

Definition at line 64 of file SkRasterPipeline.h.

◆ fn

void(* SkRasterPipelineStage::fn) ()

Definition at line 58 of file SkRasterPipeline.h.


The documentation for this struct was generated from the following file: