3#ifndef SkPathBridge_DEFINED
4#define SkPathBridge_DEFINED
19 virtual void quad_to(
float cx0,
float cy0,
float x,
float y) = 0;
20 virtual void curve_to(
float cx0,
float cy0,
float cx1,
float cy1,
float x,
float y) = 0;
33 size_t i, uint32_t axisTag,
float min,
float def,
float max,
bool hidden) = 0;
34 virtual size_t size()
const = 0;
38struct BridgeColorStops;
40struct FillLinearParams;
41struct FillRadialParams;
42struct FillSweepParams;
56 virtual void fill_solid(uint16_t palette_index,
float alpha) = 0;
57 virtual void fill_linear(
const FillLinearParams& fill_linear_params,
58 BridgeColorStops& stops,
60 virtual void fill_radial(
const FillRadialParams& fill_radial_params,
61 BridgeColorStops& stops,
64 BridgeColorStops& stops,
68 virtual void fill_glyph_solid(uint16_t glyph_id, uint16_t palette_index,
float alpha) = 0;
71 const fontations_ffi::FillRadialParams& fill_radial_params,
72 fontations_ffi::BridgeColorStops& stops,
76 const fontations_ffi::FillLinearParams& fill_linear_params,
77 fontations_ffi::BridgeColorStops& stops,
81 const fontations_ffi::FillSweepParams& fill_sweep_params,
82 fontations_ffi::BridgeColorStops& stops,
85 virtual void push_layer(uint8_t colrV1CompositeMode) = 0;
virtual size_t size() const =0
virtual bool populate_axis(size_t i, uint32_t axisTag, float min, float def, float max, bool hidden)=0
virtual ~AxisWrapper()=default
virtual void push_layer(uint8_t colrV1CompositeMode)=0
virtual ~ColorPainterWrapper()=default
virtual void push_clip_glyph(uint16_t glyph_id)=0
virtual void fill_linear(const FillLinearParams &fill_linear_params, BridgeColorStops &stops, uint8_t extend_mode)=0
virtual void fill_glyph_radial(uint16_t glyph_id, const fontations_ffi::Transform &transform, const fontations_ffi::FillRadialParams &fill_radial_params, fontations_ffi::BridgeColorStops &stops, uint8_t)=0
virtual void fill_glyph_linear(uint16_t glyph_id, const fontations_ffi::Transform &transform, const fontations_ffi::FillLinearParams &fill_linear_params, fontations_ffi::BridgeColorStops &stops, uint8_t)=0
virtual void fill_sweep(const FillSweepParams &, BridgeColorStops &stops, uint8_t extend_mode)=0
virtual void pop_transform()=0
virtual void push_transform(const Transform &transform)=0
virtual void fill_radial(const FillRadialParams &fill_radial_params, BridgeColorStops &stops, uint8_t extend_mode)=0
virtual void fill_glyph_solid(uint16_t glyph_id, uint16_t palette_index, float alpha)=0
virtual void push_clip_rectangle(float x_min, float y_min, float x_max, float y_max)=0
virtual void fill_glyph_sweep(uint16_t glyph_id, const fontations_ffi::Transform &transform, const fontations_ffi::FillSweepParams &fill_sweep_params, fontations_ffi::BridgeColorStops &stops, uint8_t)=0
virtual void fill_solid(uint16_t palette_index, float alpha)=0
virtual void pop_clip()=0
virtual void pop_layer()=0
virtual void line_to(float x, float y)=0
virtual void curve_to(float cx0, float cy0, float cx1, float cy1, float x, float y)=0
virtual ~PathWrapper()=default
virtual void quad_to(float cx0, float cy0, float x, float y)=0
virtual void move_to(float x, float y)=0
static float max(float r, float g, float b)
static float min(float r, float g, float b)
const uint32_t extend_mode[]
skgpu::graphite::Transform Transform
static SkColor4f transform(SkColor4f c, SkColorSpace *src, SkColorSpace *dst)