Flutter Impeller
impeller::interop Namespace Reference

Namespaces

 testing
 

Classes

class  ColorFilter
 
class  ColorSource
 
class  Context
 
class  DisplayList
 
class  DisplayListBuilder
 
class  ImageFilter
 
class  MaskFilter
 
class  Object
 
class  ObjectBase
 
class  Paint
 
class  Paragraph
 
class  ParagraphBuilder
 
class  ParagraphStyle
 
class  Path
 
class  PathBuilder
 
class  ScopedObject
 
class  Surface
 
class  Texture
 
class  TypographyContext
 

Enumerations

enum  AdoptTag { AdoptTag::kAdopted }
 

Functions

constexpr std::optional< SkRect > ToSkiaType (const ImpellerRect *rect)
 
constexpr SkPoint ToSkiaType (const Point &point)
 
constexpr SkRect ToSkiaType (const Rect &rect)
 
constexpr SkPathFillType ToSkiaType (FillType type)
 
constexpr SkIRect ToSkiaType (IRect rect)
 
template<class SkiaType , class OtherType >
std::vector< SkiaType > ToSkiaType (const std::vector< OtherType > &other_vec)
 
constexpr flutter::DlColor ToDisplayListType (Color color)
 
constexpr SkMatrix ToSkMatrix (const Matrix &matrix)
 
template<class DlType , class OtherType >
std::vector< DlType > ToDisplayListType (const std::vector< OtherType > &other_vec)
 
constexpr flutter::DlImageSampling ToDisplayListType (ImpellerTextureSampling sampling)
 
constexpr flutter::DlBlurStyle ToDisplayListType (ImpellerBlurStyle style)
 
constexpr flutter::DlBlendMode ToDisplayListType (BlendMode mode)
 
SkRRect ToSkiaType (const Rect &rect, const impeller::PathBuilder::RoundingRadii &radii)
 
constexpr Matrix ToImpellerType (const ImpellerMatrix &m)
 
constexpr void FromImpellerType (const Matrix &from, ImpellerMatrix &to)
 
constexpr Size ToImpellerType (const ImpellerSize &size)
 
constexpr Point ToImpellerType (const ImpellerPoint &point)
 
constexpr Rect ToImpellerType (const ImpellerRect &rect)
 
constexpr flutter::DlTileMode ToDisplayListType (ImpellerTileMode mode)
 
constexpr impeller::PathBuilder::RoundingRadii ToImpellerType (const ImpellerRoundingRadii &radii)
 
constexpr FillType ToImpellerType (ImpellerFillType type)
 
constexpr flutter::DlCanvas::ClipOp ToImpellerType (ImpellerClipOperation op)
 
constexpr Color ToImpellerType (const ImpellerColor &color)
 
constexpr BlendMode ToImpellerType (ImpellerBlendMode mode)
 
constexpr flutter::DlDrawStyle ToDisplayListType (ImpellerDrawStyle style)
 
constexpr flutter::DlStrokeCap ToDisplayListType (ImpellerStrokeCap cap)
 
constexpr flutter::DlStrokeJoin ToDisplayListType (ImpellerStrokeJoin join)
 
constexpr PixelFormat ToImpellerType (ImpellerPixelFormat format)
 
constexpr ISize ToImpellerType (const ImpellerISize &size)
 
constexpr flutter::DlColorSpace ToDisplayListType (ImpellerColorSpace color_space)
 
constexpr flutter::DlColor ToDisplayListType (ImpellerColor color)
 
constexpr txt::FontWeight ToTxtType (ImpellerFontWeight weight)
 
constexpr txt::FontStyle ToTxtType (ImpellerFontStyle style)
 
constexpr txt::TextAlign ToTxtType (ImpellerTextAlignment align)
 
constexpr txt::TextDirection ToTxtType (ImpellerTextDirection direction)
 
 DEFINE_PEER_GETTER (ColorFilter, ImpellerColorFilter)
 
 DEFINE_PEER_GETTER (ColorSource, ImpellerColorSource)
 
 DEFINE_PEER_GETTER (Context, ImpellerContext)
 
 DEFINE_PEER_GETTER (DisplayList, ImpellerDisplayList)
 
 DEFINE_PEER_GETTER (DisplayListBuilder, ImpellerDisplayListBuilder)
 
 DEFINE_PEER_GETTER (ImageFilter, ImpellerImageFilter)
 
 DEFINE_PEER_GETTER (MaskFilter, ImpellerMaskFilter)
 
 DEFINE_PEER_GETTER (Paint, ImpellerPaint)
 
 DEFINE_PEER_GETTER (Paragraph, ImpellerParagraph)
 
 DEFINE_PEER_GETTER (ParagraphBuilder, ImpellerParagraphBuilder)
 
 DEFINE_PEER_GETTER (ParagraphStyle, ImpellerParagraphStyle)
 
 DEFINE_PEER_GETTER (Path, ImpellerPath)
 
 DEFINE_PEER_GETTER (PathBuilder, ImpellerPathBuilder)
 
 DEFINE_PEER_GETTER (Surface, ImpellerSurface)
 
 DEFINE_PEER_GETTER (Texture, ImpellerTexture)
 
 DEFINE_PEER_GETTER (TypographyContext, ImpellerTypographyContext)
 
static std::string GetVersionAsString (uint32_t version)
 
IMPELLER_EXTERN_C uint32_t ImpellerGetVersion ()
 
IMPELLER_EXTERN_C ImpellerContext ImpellerContextCreateOpenGLESNew (uint32_t version, ImpellerProcAddressCallback gl_proc_address_callback, void *gl_proc_address_callback_user_data)
 
IMPELLER_EXTERN_C void ImpellerContextRetain (ImpellerContext context)
 
IMPELLER_EXTERN_C void ImpellerContextRelease (ImpellerContext context)
 
IMPELLER_EXTERN_C ImpellerDisplayListBuilder ImpellerDisplayListBuilderNew (const ImpellerRect *cull_rect)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderRetain (ImpellerDisplayListBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderRelease (ImpellerDisplayListBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderSave (ImpellerDisplayListBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderSaveLayer (ImpellerDisplayListBuilder builder, const ImpellerRect *bounds, ImpellerPaint paint, ImpellerImageFilter backdrop)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderRestore (ImpellerDisplayListBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderScale (ImpellerDisplayListBuilder builder, float x_scale, float y_scale)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderRotate (ImpellerDisplayListBuilder builder, float angle_degrees)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderTranslate (ImpellerDisplayListBuilder builder, float x_translation, float y_translation)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderSetTransform (ImpellerDisplayListBuilder builder, const ImpellerMatrix *transform)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderGetTransform (ImpellerDisplayListBuilder builder, ImpellerMatrix *out_transform)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderResetTransform (ImpellerDisplayListBuilder builder)
 
IMPELLER_EXTERN_C uint32_t ImpellerDisplayListBuilderGetSaveCount (ImpellerDisplayListBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderRestoreToCount (ImpellerDisplayListBuilder builder, uint32_t count)
 
IMPELLER_EXTERN_C void ImpellerPathRetain (ImpellerPath path)
 
IMPELLER_EXTERN_C void ImpellerPathRelease (ImpellerPath path)
 
IMPELLER_EXTERN_C ImpellerPathBuilder ImpellerPathBuilderNew ()
 
IMPELLER_EXTERN_C void ImpellerPathBuilderRetain (ImpellerPathBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderRelease (ImpellerPathBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderMoveTo (ImpellerPathBuilder builder, const ImpellerPoint *location)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderLineTo (ImpellerPathBuilder builder, const ImpellerPoint *location)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderQuadraticCurveTo (ImpellerPathBuilder builder, const ImpellerPoint *control_point, const ImpellerPoint *end_point)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderCubicCurveTo (ImpellerPathBuilder builder, const ImpellerPoint *control_point_1, const ImpellerPoint *control_point_2, const ImpellerPoint *end_point)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderAddRect (ImpellerPathBuilder builder, const ImpellerRect *rect)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderAddArc (ImpellerPathBuilder builder, const ImpellerRect *oval_bounds, float start_angle_degrees, float end_angle_degrees)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderAddOval (ImpellerPathBuilder builder, const ImpellerRect *oval_bounds)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderAddRoundedRect (ImpellerPathBuilder builder, const ImpellerRect *rect, const ImpellerRoundingRadii *rounding_radii)
 
IMPELLER_EXTERN_C void ImpellerPathBuilderClose (ImpellerPathBuilder builder)
 
IMPELLER_EXTERN_C ImpellerPath ImpellerPathBuilderCopyPathNew (ImpellerPathBuilder builder, ImpellerFillType fill)
 
IMPELLER_EXTERN_C ImpellerPath ImpellerPathBuilderTakePathNew (ImpellerPathBuilder builder, ImpellerFillType fill)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderClipRect (ImpellerDisplayListBuilder builder, const ImpellerRect *rect, ImpellerClipOperation op)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderClipOval (ImpellerDisplayListBuilder builder, const ImpellerRect *oval_bounds, ImpellerClipOperation op)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderClipRoundedRect (ImpellerDisplayListBuilder builder, const ImpellerRect *rect, const ImpellerRoundingRadii *radii, ImpellerClipOperation op)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderClipPath (ImpellerDisplayListBuilder builder, ImpellerPath path, ImpellerClipOperation op)
 
IMPELLER_EXTERN_C ImpellerPaint ImpellerPaintNew ()
 
IMPELLER_EXTERN_C void ImpellerPaintRetain (ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerPaintRelease (ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerPaintSetColor (ImpellerPaint paint, const ImpellerColor *color)
 
IMPELLER_EXTERN_C void ImpellerPaintSetBlendMode (ImpellerPaint paint, ImpellerBlendMode mode)
 
IMPELLER_EXTERN_C void ImpellerPaintSetDrawStyle (ImpellerPaint paint, ImpellerDrawStyle style)
 
IMPELLER_EXTERN_C void ImpellerPaintSetStrokeCap (ImpellerPaint paint, ImpellerStrokeCap cap)
 
IMPELLER_EXTERN_C void ImpellerPaintSetStrokeJoin (ImpellerPaint paint, ImpellerStrokeJoin join)
 
IMPELLER_EXTERN_C void ImpellerPaintSetStrokeWidth (ImpellerPaint paint, float width)
 
IMPELLER_EXTERN_C void ImpellerPaintSetStrokeMiter (ImpellerPaint paint, float miter)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawPaint (ImpellerDisplayListBuilder builder, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawLine (ImpellerDisplayListBuilder builder, const ImpellerPoint *from, const ImpellerPoint *to, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawDashedLine (ImpellerDisplayListBuilder builder, const ImpellerPoint *from, const ImpellerPoint *to, float on_length, float off_length, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawRect (ImpellerDisplayListBuilder builder, const ImpellerRect *rect, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawOval (ImpellerDisplayListBuilder builder, const ImpellerRect *oval_bounds, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawRoundedRect (ImpellerDisplayListBuilder builder, const ImpellerRect *rect, const ImpellerRoundingRadii *radii, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawRoundedRectDifference (ImpellerDisplayListBuilder builder, const ImpellerRect *outer_rect, const ImpellerRoundingRadii *outer_radii, const ImpellerRect *inner_rect, const ImpellerRoundingRadii *inner_radii, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawPath (ImpellerDisplayListBuilder builder, ImpellerPath path, ImpellerPaint paint)
 
IMPELLER_EXTERN_C ImpellerTexture ImpellerTextureCreateWithContentsNew (ImpellerContext context, const ImpellerTextureDescriptor *descriptor, const ImpellerMapping *contents, void *contents_on_release_user_data)
 
IMPELLER_EXTERN_C ImpellerTexture ImpellerTextureCreateWithOpenGLTextureHandleNew (ImpellerContext context, const ImpellerTextureDescriptor *descriptor, uint64_t external_gl_handle)
 
IMPELLER_EXTERN_C void ImpellerTextureRetain (ImpellerTexture texture)
 
IMPELLER_EXTERN_C void ImpellerTextureRelease (ImpellerTexture texture)
 
IMPELLER_EXTERN_C uint64_t ImpellerTextureGetOpenGLHandle (ImpellerTexture texture)
 
IMPELLER_EXTERN_C void ImpellerDisplayListRetain (ImpellerDisplayList display_list)
 
IMPELLER_EXTERN_C void ImpellerDisplayListRelease (ImpellerDisplayList display_list)
 
IMPELLER_EXTERN_C ImpellerDisplayList ImpellerDisplayListBuilderCreateDisplayListNew (ImpellerDisplayListBuilder builder)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawDisplayList (ImpellerDisplayListBuilder builder, ImpellerDisplayList display_list, float opacity)
 
IMPELLER_EXTERN_C ImpellerSurface ImpellerSurfaceCreateWrappedFBONew (ImpellerContext context, uint64_t fbo, ImpellerPixelFormat format, const ImpellerISize *size)
 
IMPELLER_EXTERN_C void ImpellerSurfaceRetain (ImpellerSurface surface)
 
IMPELLER_EXTERN_C void ImpellerSurfaceRelease (ImpellerSurface surface)
 
IMPELLER_EXTERN_C bool ImpellerSurfaceDrawDisplayList (ImpellerSurface surface, ImpellerDisplayList display_list)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawTexture (ImpellerDisplayListBuilder builder, ImpellerTexture texture, const ImpellerPoint *point, ImpellerTextureSampling sampling, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawTextureRect (ImpellerDisplayListBuilder builder, ImpellerTexture texture, const ImpellerRect *src_rect, const ImpellerRect *dst_rect, ImpellerTextureSampling sampling, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerColorSourceRetain (ImpellerColorSource color_source)
 
IMPELLER_EXTERN_C void ImpellerColorSourceRelease (ImpellerColorSource color_source)
 
static std::pair< std::vector< flutter::DlColor >, std::vector< Scalar > > ParseColorsAndStops (uint32_t stop_count, const ImpellerColor *colors, const float *stops)
 
IMPELLER_EXTERN_C ImpellerColorSource ImpellerColorSourceCreateLinearGradientNew (const ImpellerPoint *start_point, const ImpellerPoint *end_point, uint32_t stop_count, const ImpellerColor *colors, const float *stops, ImpellerTileMode tile_mode, const ImpellerMatrix *transformation)
 
IMPELLER_EXTERN_C ImpellerColorSource ImpellerColorSourceCreateRadialGradientNew (const ImpellerPoint *center, float radius, uint32_t stop_count, const ImpellerColor *colors, const float *stops, ImpellerTileMode tile_mode, const ImpellerMatrix *transformation)
 
IMPELLER_EXTERN_C ImpellerColorSource ImpellerColorSourceCreateConicalGradientNew (const ImpellerPoint *start_center, float start_radius, const ImpellerPoint *end_center, float end_radius, uint32_t stop_count, const ImpellerColor *colors, const float *stops, ImpellerTileMode tile_mode, const ImpellerMatrix *transformation)
 
IMPELLER_EXTERN_C ImpellerColorSource ImpellerColorSourceCreateSweepGradientNew (const ImpellerPoint *center, float start, float end, uint32_t stop_count, const ImpellerColor *colors, const float *stops, ImpellerTileMode tile_mode, const ImpellerMatrix *transformation)
 
IMPELLER_EXTERN_C void ImpellerColorFilterRetain (ImpellerColorFilter color_filter)
 
IMPELLER_EXTERN_C void ImpellerColorFilterRelease (ImpellerColorFilter color_filter)
 
IMPELLER_EXTERN_C ImpellerColorFilter ImpellerColorFilterCreateBlendNew (const ImpellerColor *color, ImpellerBlendMode blend_mode)
 
IMPELLER_EXTERN_C ImpellerColorFilter ImpellerColorFilterCreateColorMatrixNew (const ImpellerColorMatrix *color_matrix)
 
IMPELLER_EXTERN_C void ImpellerMaskFilterRetain (ImpellerMaskFilter mask_filter)
 
IMPELLER_EXTERN_C void ImpellerMaskFilterRelease (ImpellerMaskFilter mask_filter)
 
IMPELLER_EXTERN_C ImpellerMaskFilter ImpellerMaskFilterCreateBlurNew (ImpellerBlurStyle style, float sigma)
 
IMPELLER_EXTERN_C void ImpellerImageFilterRetain (ImpellerImageFilter image_filter)
 
IMPELLER_EXTERN_C void ImpellerImageFilterRelease (ImpellerImageFilter image_filter)
 
IMPELLER_EXTERN_C ImpellerImageFilter ImpellerImageFilterCreateBlurNew (float x_sigma, float y_sigma, ImpellerTileMode tile_mode)
 
IMPELLER_EXTERN_C ImpellerImageFilter ImpellerImageFilterCreateDilateNew (float x_radius, float y_radius)
 
IMPELLER_EXTERN_C ImpellerImageFilter ImpellerImageFilterCreateErodeNew (float x_radius, float y_radius)
 
IMPELLER_EXTERN_C ImpellerImageFilter ImpellerImageFilterCreateMatrixNew (const ImpellerMatrix *matrix, ImpellerTextureSampling sampling)
 
IMPELLER_EXTERN_C ImpellerImageFilter ImpellerImageFilterCreateComposeNew (ImpellerImageFilter outer, ImpellerImageFilter inner)
 
void ImpellerPaintSetColorFilter (ImpellerPaint paint, ImpellerColorFilter color_filter)
 
void ImpellerPaintSetColorSource (ImpellerPaint paint, ImpellerColorSource color_source)
 
void ImpellerPaintSetImageFilter (ImpellerPaint paint, ImpellerImageFilter image_filter)
 
void ImpellerPaintSetMaskFilter (ImpellerPaint paint, ImpellerMaskFilter mask_filter)
 
IMPELLER_EXTERN_C ImpellerParagraphStyle ImpellerParagraphStyleNew ()
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleRetain (ImpellerParagraphStyle paragraph_style)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleRelease (ImpellerParagraphStyle paragraph_style)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetForeground (ImpellerParagraphStyle paragraph_style, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetBackground (ImpellerParagraphStyle paragraph_style, ImpellerPaint paint)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetFontWeight (ImpellerParagraphStyle paragraph_style, ImpellerFontWeight weight)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetFontStyle (ImpellerParagraphStyle paragraph_style, ImpellerFontStyle style)
 
static std::string ReadString (const char *string)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetFontFamily (ImpellerParagraphStyle paragraph_style, const char *family_name)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetFontSize (ImpellerParagraphStyle paragraph_style, float size)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetHeight (ImpellerParagraphStyle paragraph_style, float height)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetTextAlignment (ImpellerParagraphStyle paragraph_style, ImpellerTextAlignment align)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetTextDirection (ImpellerParagraphStyle paragraph_style, ImpellerTextDirection direction)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetMaxLines (ImpellerParagraphStyle paragraph_style, uint32_t max_lines)
 
IMPELLER_EXTERN_C void ImpellerParagraphStyleSetLocale (ImpellerParagraphStyle paragraph_style, const char *locale)
 
IMPELLER_EXTERN_C void ImpellerDisplayListBuilderDrawParagraph (ImpellerDisplayListBuilder builder, ImpellerParagraph paragraph, const ImpellerPoint *point)
 
IMPELLER_EXTERN_C ImpellerParagraphBuilder ImpellerParagraphBuilderNew (ImpellerTypographyContext context)
 
IMPELLER_EXTERN_C void ImpellerParagraphBuilderRetain (ImpellerParagraphBuilder paragraph_builder)
 
IMPELLER_EXTERN_C void ImpellerParagraphBuilderRelease (ImpellerParagraphBuilder paragraph_builder)
 
IMPELLER_EXTERN_C void ImpellerParagraphBuilderPushStyle (ImpellerParagraphBuilder paragraph_builder, ImpellerParagraphStyle style)
 
IMPELLER_EXTERN_C void ImpellerParagraphBuilderPopStyle (ImpellerParagraphBuilder paragraph_builder)
 
IMPELLER_EXTERN_C void ImpellerParagraphBuilderAddText (ImpellerParagraphBuilder paragraph_builder, const uint8_t *data, uint32_t length)
 
IMPELLER_EXTERN_C ImpellerParagraph ImpellerParagraphBuilderBuildParagraphNew (ImpellerParagraphBuilder paragraph_builder, float width)
 
IMPELLER_EXTERN_C void ImpellerParagraphRetain (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C void ImpellerParagraphRelease (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C float ImpellerParagraphGetMaxWidth (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C float ImpellerParagraphGetHeight (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C float ImpellerParagraphGetLongestLineWidth (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C float ImpellerParagraphGetMinIntrinsicWidth (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C float ImpellerParagraphGetMaxIntrinsicWidth (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C float ImpellerParagraphGetIdeographicBaseline (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C float ImpellerParagraphGetAlphabeticBaseline (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C uint32_t ImpellerParagraphGetLineCount (ImpellerParagraph paragraph)
 
IMPELLER_EXTERN_C ImpellerTypographyContext ImpellerTypographyContextNew ()
 
IMPELLER_EXTERN_C void ImpellerTypographyContextRetain (ImpellerTypographyContext context)
 
IMPELLER_EXTERN_C void ImpellerTypographyContextRelease (ImpellerTypographyContext context)
 
template<typename Object >
ScopedObject< ObjectRef (Object *object)
 
template<typename Object >
ScopedObject< ObjectAdopt (Object *object)
 
template<typename Object >
ScopedObject< ObjectAdopt (typename Object::InteropCSibling *object)
 
template<typename Object , typename... CtorArgs>
ScopedObject< ObjectCreate (CtorArgs &&... args)
 

Enumeration Type Documentation

◆ AdoptTag

Enumerator
kAdopted 

Definition at line 62 of file object.h.

62  {
63  kAdopted,
64 };

Function Documentation

◆ Adopt() [1/2]

template<typename Object >
ScopedObject<Object> impeller::interop::Adopt ( Object object)

Definition at line 150 of file object.h.

150  {
151  return ScopedObject<Object>{object, AdoptTag::kAdopted};
152 }

References kAdopted.

Referenced by Adopt(), and impeller::interop::testing::TEST().

◆ Adopt() [2/2]

template<typename Object >
ScopedObject<Object> impeller::interop::Adopt ( typename Object::InteropCSibling object)

Definition at line 155 of file object.h.

155  {
156  return Adopt(reinterpret_cast<Object*>(object));
157 }

References Adopt().

◆ Create()

template<typename Object , typename... CtorArgs>
ScopedObject<Object> impeller::interop::Create ( CtorArgs &&...  args)

Definition at line 160 of file object.h.

160  {
161  return ScopedObject<Object>{new Object(std::forward<CtorArgs>(args)...),
162  AdoptTag::kAdopted};
163 }

References kAdopted.

Referenced by impeller::Pool< T >::Grab(), impeller::android::ProcTable::ProcTable(), and impeller::testing::TEST_P().

◆ DEFINE_PEER_GETTER() [1/16]

impeller::interop::DEFINE_PEER_GETTER ( ColorFilter  ,
ImpellerColorFilter   
)

◆ DEFINE_PEER_GETTER() [2/16]

impeller::interop::DEFINE_PEER_GETTER ( ColorSource  ,
ImpellerColorSource   
)

◆ DEFINE_PEER_GETTER() [3/16]

impeller::interop::DEFINE_PEER_GETTER ( Context  ,
ImpellerContext   
)

◆ DEFINE_PEER_GETTER() [4/16]

impeller::interop::DEFINE_PEER_GETTER ( DisplayList  ,
ImpellerDisplayList   
)

◆ DEFINE_PEER_GETTER() [5/16]

impeller::interop::DEFINE_PEER_GETTER ( DisplayListBuilder  ,
ImpellerDisplayListBuilder   
)

◆ DEFINE_PEER_GETTER() [6/16]

impeller::interop::DEFINE_PEER_GETTER ( ImageFilter  ,
ImpellerImageFilter   
)

◆ DEFINE_PEER_GETTER() [7/16]

impeller::interop::DEFINE_PEER_GETTER ( MaskFilter  ,
ImpellerMaskFilter   
)

◆ DEFINE_PEER_GETTER() [8/16]

impeller::interop::DEFINE_PEER_GETTER ( Paint  ,
ImpellerPaint   
)

◆ DEFINE_PEER_GETTER() [9/16]

impeller::interop::DEFINE_PEER_GETTER ( Paragraph  ,
ImpellerParagraph   
)

◆ DEFINE_PEER_GETTER() [10/16]

impeller::interop::DEFINE_PEER_GETTER ( ParagraphBuilder  ,
ImpellerParagraphBuilder   
)

◆ DEFINE_PEER_GETTER() [11/16]

impeller::interop::DEFINE_PEER_GETTER ( ParagraphStyle  ,
ImpellerParagraphStyle   
)

◆ DEFINE_PEER_GETTER() [12/16]

impeller::interop::DEFINE_PEER_GETTER ( Path  ,
ImpellerPath   
)

◆ DEFINE_PEER_GETTER() [13/16]

impeller::interop::DEFINE_PEER_GETTER ( PathBuilder  ,
ImpellerPathBuilder   
)

◆ DEFINE_PEER_GETTER() [14/16]

impeller::interop::DEFINE_PEER_GETTER ( Surface  ,
ImpellerSurface   
)

◆ DEFINE_PEER_GETTER() [15/16]

impeller::interop::DEFINE_PEER_GETTER ( Texture  ,
ImpellerTexture   
)

◆ DEFINE_PEER_GETTER() [16/16]

impeller::interop::DEFINE_PEER_GETTER ( TypographyContext  ,
ImpellerTypographyContext   
)

◆ FromImpellerType()

constexpr void impeller::interop::FromImpellerType ( const Matrix from,
ImpellerMatrix to 
)
constexpr

Definition at line 206 of file formats.h.

206  {
207  to.m[0] = from.m[0];
208  to.m[1] = from.m[1];
209  to.m[2] = from.m[2];
210  to.m[3] = from.m[3];
211  to.m[4] = from.m[4];
212  to.m[5] = from.m[5];
213  to.m[6] = from.m[6];
214  to.m[7] = from.m[7];
215  to.m[8] = from.m[8];
216  to.m[9] = from.m[9];
217  to.m[10] = from.m[10];
218  to.m[11] = from.m[11];
219  to.m[12] = from.m[12];
220  to.m[13] = from.m[13];
221  to.m[14] = from.m[14];
222  to.m[15] = from.m[15];
223 }

References impeller::Matrix::m, and ImpellerMatrix::m.

Referenced by ImpellerDisplayListBuilderGetTransform().

◆ GetVersionAsString()

static std::string impeller::interop::GetVersionAsString ( uint32_t  version)
static

Definition at line 58 of file impeller.cc.

58  {
59  std::stringstream stream;
60  stream << IMPELLER_VERSION_GET_VARIANT(version) << "."
61  << IMPELLER_VERSION_GET_MAJOR(version) << "."
62  << IMPELLER_VERSION_GET_MINOR(version) << "."
63  << IMPELLER_VERSION_GET_PATCH(version);
64  return stream.str();
65 }

References IMPELLER_VERSION_GET_MAJOR, IMPELLER_VERSION_GET_MINOR, IMPELLER_VERSION_GET_PATCH, and IMPELLER_VERSION_GET_VARIANT.

Referenced by ImpellerContextCreateOpenGLESNew().

◆ ImpellerColorFilterCreateBlendNew()

IMPELLER_EXTERN_C ImpellerColorFilter impeller::interop::ImpellerColorFilterCreateBlendNew ( const ImpellerColor color,
ImpellerBlendMode  blend_mode 
)

Definition at line 792 of file impeller.cc.

794  {
795  return ColorFilter::MakeBlend(ToImpellerType(*color),
796  ToImpellerType(blend_mode))
797  .Leak();
798 }

References color, impeller::interop::ColorFilter::MakeBlend(), and ToImpellerType().

◆ ImpellerColorFilterCreateColorMatrixNew()

IMPELLER_EXTERN_C ImpellerColorFilter impeller::interop::ImpellerColorFilterCreateColorMatrixNew ( const ImpellerColorMatrix color_matrix)

Definition at line 801 of file impeller.cc.

802  {
803  return ColorFilter::MakeMatrix(color_matrix->m).Leak();
804 }

References ImpellerColorMatrix::m, and impeller::interop::ColorFilter::MakeMatrix().

◆ ImpellerColorFilterRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerColorFilterRelease ( ImpellerColorFilter  color_filter)

Definition at line 787 of file impeller.cc.

787  {
788  ObjectBase::SafeRelease(color_filter);
789 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerColorFilterRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerColorFilterRetain ( ImpellerColorFilter  color_filter)

Definition at line 782 of file impeller.cc.

782  {
783  ObjectBase::SafeRetain(color_filter);
784 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerColorSourceCreateConicalGradientNew()

IMPELLER_EXTERN_C ImpellerColorSource impeller::interop::ImpellerColorSourceCreateConicalGradientNew ( const ImpellerPoint start_center,
float  start_radius,
const ImpellerPoint end_center,
float  end_radius,
uint32_t  stop_count,
const ImpellerColor colors,
const float *  stops,
ImpellerTileMode  tile_mode,
const ImpellerMatrix transformation 
)

Definition at line 732 of file impeller.cc.

741  {
742  const auto colors_and_stops = ParseColorsAndStops(stop_count, colors, stops);
743  return ColorSource::MakeConicalGradient(
744  ToImpellerType(*start_center), //
745  start_radius, //
746  ToImpellerType(*end_center), //
747  end_radius, //
748  colors_and_stops.first, //
749  colors_and_stops.second, //
750  ToDisplayListType(tile_mode), //
751  transformation == nullptr ? Matrix{}
752  : ToImpellerType(*transformation) //
753  )
754  .Leak();
755 }

References impeller::interop::ColorSource::MakeConicalGradient(), ParseColorsAndStops(), ToDisplayListType(), and ToImpellerType().

◆ ImpellerColorSourceCreateLinearGradientNew()

IMPELLER_EXTERN_C ImpellerColorSource impeller::interop::ImpellerColorSourceCreateLinearGradientNew ( const ImpellerPoint start_point,
const ImpellerPoint end_point,
uint32_t  stop_count,
const ImpellerColor colors,
const float *  stops,
ImpellerTileMode  tile_mode,
const ImpellerMatrix transformation 
)

Definition at line 688 of file impeller.cc.

695  {
696  const auto colors_and_stops = ParseColorsAndStops(stop_count, colors, stops);
697  return ColorSource::MakeLinearGradient(
698  ToImpellerType(*start_point), //
699  ToImpellerType(*end_point), //
700  colors_and_stops.first, //
701  colors_and_stops.second, //
702  ToDisplayListType(tile_mode), //
703  transformation == nullptr ? Matrix{}
704  : ToImpellerType(*transformation) //
705  )
706  .Leak();
707 }

References impeller::interop::ColorSource::MakeLinearGradient(), ParseColorsAndStops(), ToDisplayListType(), and ToImpellerType().

◆ ImpellerColorSourceCreateRadialGradientNew()

IMPELLER_EXTERN_C ImpellerColorSource impeller::interop::ImpellerColorSourceCreateRadialGradientNew ( const ImpellerPoint center,
float  radius,
uint32_t  stop_count,
const ImpellerColor colors,
const float *  stops,
ImpellerTileMode  tile_mode,
const ImpellerMatrix transformation 
)

Definition at line 710 of file impeller.cc.

717  {
718  const auto colors_and_stops = ParseColorsAndStops(stop_count, colors, stops);
719  return ColorSource::MakeRadialGradient(
720  ToImpellerType(*center), //
721  radius, //
722  colors_and_stops.first, //
723  colors_and_stops.second, //
724  ToDisplayListType(tile_mode), //
725  transformation == nullptr ? Matrix{}
726  : ToImpellerType(*transformation) //
727  )
728  .Leak();
729 }

References impeller::interop::ColorSource::MakeRadialGradient(), ParseColorsAndStops(), ToDisplayListType(), and ToImpellerType().

◆ ImpellerColorSourceCreateSweepGradientNew()

IMPELLER_EXTERN_C ImpellerColorSource impeller::interop::ImpellerColorSourceCreateSweepGradientNew ( const ImpellerPoint center,
float  start,
float  end,
uint32_t  stop_count,
const ImpellerColor colors,
const float *  stops,
ImpellerTileMode  tile_mode,
const ImpellerMatrix transformation 
)

Definition at line 758 of file impeller.cc.

766  {
767  const auto colors_and_stops = ParseColorsAndStops(stop_count, colors, stops);
768  return ColorSource::MakeSweepGradient(
769  ToImpellerType(*center), //
770  start, //
771  end, //
772  colors_and_stops.first, //
773  colors_and_stops.second, //
774  ToDisplayListType(tile_mode), //
775  transformation == nullptr ? Matrix{}
776  : ToImpellerType(*transformation) //
777  )
778  .Leak();
779 }

References impeller::interop::ColorSource::MakeSweepGradient(), ParseColorsAndStops(), ToDisplayListType(), and ToImpellerType().

◆ ImpellerColorSourceRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerColorSourceRelease ( ImpellerColorSource  color_source)

Definition at line 666 of file impeller.cc.

666  {
667  ObjectBase::SafeRelease(color_source);
668 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerColorSourceRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerColorSourceRetain ( ImpellerColorSource  color_source)

Definition at line 661 of file impeller.cc.

661  {
662  ObjectBase::SafeRetain(color_source);
663 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerContextCreateOpenGLESNew()

IMPELLER_EXTERN_C ImpellerContext impeller::interop::ImpellerContextCreateOpenGLESNew ( uint32_t  version,
ImpellerProcAddressCallback  gl_proc_address_callback,
void *  gl_proc_address_callback_user_data 
)

Definition at line 73 of file impeller.cc.

76  {
77  if (version != IMPELLER_VERSION) {
78  VALIDATION_LOG << "This version of Impeller ("
80  << "doesn't match the version the user expects ("
81  << GetVersionAsString(version) << ").";
82  return nullptr;
83  }
84  auto context = Context::CreateOpenGLES(
85  [gl_proc_address_callback,
86  gl_proc_address_callback_user_data](const char* proc_name) -> void* {
87  return gl_proc_address_callback(proc_name,
88  gl_proc_address_callback_user_data);
89  });
90  if (!context || !context->IsValid()) {
91  VALIDATION_LOG << "Could not create valid context.";
92  return nullptr;
93  }
94  return context.Leak();
95 }

References impeller::interop::Context::CreateOpenGLES(), GetVersionAsString(), IMPELLER_VERSION, ImpellerGetVersion(), and VALIDATION_LOG.

Referenced by impeller::interop::testing::PlaygroundTest::CreateContext().

◆ ImpellerContextRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerContextRelease ( ImpellerContext  context)

Definition at line 103 of file impeller.cc.

103  {
104  ObjectBase::SafeRelease(context);
105 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerContextRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerContextRetain ( ImpellerContext  context)

Definition at line 98 of file impeller.cc.

98  {
99  ObjectBase::SafeRetain(context);
100 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerDisplayListBuilderClipOval()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderClipOval ( ImpellerDisplayListBuilder  builder,
const ImpellerRect oval_bounds,
ImpellerClipOperation  op 
)

Definition at line 307 of file impeller.cc.

309  {
310  GetPeer(builder)->ClipOval(ToImpellerType(*oval_bounds), ToImpellerType(op));
311 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderClipPath()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderClipPath ( ImpellerDisplayListBuilder  builder,
ImpellerPath  path,
ImpellerClipOperation  op 
)

Definition at line 326 of file impeller.cc.

328  {
329  GetPeer(builder)->ClipPath(*GetPeer(path), ToImpellerType(op));
330 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderClipRect()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderClipRect ( ImpellerDisplayListBuilder  builder,
const ImpellerRect rect,
ImpellerClipOperation  op 
)

Definition at line 300 of file impeller.cc.

302  {
303  GetPeer(builder)->ClipRect(ToImpellerType(*rect), ToImpellerType(op));
304 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderClipRoundedRect()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderClipRoundedRect ( ImpellerDisplayListBuilder  builder,
const ImpellerRect rect,
const ImpellerRoundingRadii radii,
ImpellerClipOperation  op 
)

Definition at line 314 of file impeller.cc.

318  {
319  GetPeer(builder)->ClipRoundedRect(ToImpellerType(*rect), //
320  ToImpellerType(*radii), //
321  ToImpellerType(op) //
322  );
323 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderCreateDisplayListNew()

IMPELLER_EXTERN_C ImpellerDisplayList impeller::interop::ImpellerDisplayListBuilderCreateDisplayListNew ( ImpellerDisplayListBuilder  builder)

Definition at line 586 of file impeller.cc.

587  {
588  auto dl = GetPeer(builder)->Build();
589  if (!dl->IsValid()) {
590  return nullptr;
591  }
592  return dl.Leak();
593 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderDrawDashedLine()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawDashedLine ( ImpellerDisplayListBuilder  builder,
const ImpellerPoint from,
const ImpellerPoint to,
float  on_length,
float  off_length,
ImpellerPaint  paint 
)

Definition at line 400 of file impeller.cc.

406  {
407  GetPeer(builder)->DrawDashedLine(ToImpellerType(*from), //
408  ToImpellerType(*to), //
409  on_length, //
410  off_length, //
411  *GetPeer(paint) //
412  );
413 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderDrawDisplayList()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawDisplayList ( ImpellerDisplayListBuilder  builder,
ImpellerDisplayList  display_list,
float  opacity 
)

Definition at line 596 of file impeller.cc.

599  {
600  GetPeer(builder)->DrawDisplayList(*GetPeer(display_list), opacity);
601 }

◆ ImpellerDisplayListBuilderDrawLine()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawLine ( ImpellerDisplayListBuilder  builder,
const ImpellerPoint from,
const ImpellerPoint to,
ImpellerPaint  paint 
)

Definition at line 389 of file impeller.cc.

392  {
393  GetPeer(builder)->DrawLine(ToImpellerType(*from), //
394  ToImpellerType(*to), //
395  *GetPeer(paint) //
396  );
397 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderDrawOval()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawOval ( ImpellerDisplayListBuilder  builder,
const ImpellerRect oval_bounds,
ImpellerPaint  paint 
)

Definition at line 423 of file impeller.cc.

425  {
426  GetPeer(builder)->DrawOval(ToImpellerType(*oval_bounds), *GetPeer(paint));
427 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderDrawPaint()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawPaint ( ImpellerDisplayListBuilder  builder,
ImpellerPaint  paint 
)

Definition at line 383 of file impeller.cc.

384  {
385  GetPeer(builder)->DrawPaint(*GetPeer(paint));
386 }

◆ ImpellerDisplayListBuilderDrawParagraph()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawParagraph ( ImpellerDisplayListBuilder  builder,
ImpellerParagraph  paragraph,
const ImpellerPoint point 
)

Definition at line 979 of file impeller.cc.

981  {
982  GetPeer(builder)->DrawParagraph(*GetPeer(paragraph), ToImpellerType(*point));
983 }

References ToImpellerType().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderDrawPath()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawPath ( ImpellerDisplayListBuilder  builder,
ImpellerPath  path,
ImpellerPaint  paint 
)

Definition at line 458 of file impeller.cc.

460  {
461  GetPeer(builder)->DrawPath(*GetPeer(path), *GetPeer(paint));
462 }

◆ ImpellerDisplayListBuilderDrawRect()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawRect ( ImpellerDisplayListBuilder  builder,
const ImpellerRect rect,
ImpellerPaint  paint 
)

Definition at line 416 of file impeller.cc.

418  {
419  GetPeer(builder)->DrawRect(ToImpellerType(*rect), *GetPeer(paint));
420 }

References ToImpellerType().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderDrawRoundedRect()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawRoundedRect ( ImpellerDisplayListBuilder  builder,
const ImpellerRect rect,
const ImpellerRoundingRadii radii,
ImpellerPaint  paint 
)

Definition at line 430 of file impeller.cc.

434  {
435  GetPeer(builder)->DrawRoundedRect(ToImpellerType(*rect), //
436  ToImpellerType(*radii), //
437  *GetPeer(paint) //
438  );
439 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderDrawRoundedRectDifference()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawRoundedRectDifference ( ImpellerDisplayListBuilder  builder,
const ImpellerRect outer_rect,
const ImpellerRoundingRadii outer_radii,
const ImpellerRect inner_rect,
const ImpellerRoundingRadii inner_radii,
ImpellerPaint  paint 
)

Definition at line 442 of file impeller.cc.

448  {
449  GetPeer(builder)->DrawRoundedRectDifference(ToImpellerType(*outer_rect), //
450  ToImpellerType(*outer_radii), //
451  ToImpellerType(*inner_rect), //
452  ToImpellerType(*inner_radii), //
453  *GetPeer(paint) //
454  );
455 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderDrawTexture()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawTexture ( ImpellerDisplayListBuilder  builder,
ImpellerTexture  texture,
const ImpellerPoint point,
ImpellerTextureSampling  sampling,
ImpellerPaint  paint 
)

Definition at line 632 of file impeller.cc.

636  {
637  GetPeer(builder)->DrawTexture(*GetPeer(texture), //
638  ToImpellerType(*point), //
639  ToDisplayListType(sampling), //
640  GetPeer(paint) //
641  );
642 }

References ToDisplayListType(), and ToImpellerType().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderDrawTextureRect()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderDrawTextureRect ( ImpellerDisplayListBuilder  builder,
ImpellerTexture  texture,
const ImpellerRect src_rect,
const ImpellerRect dst_rect,
ImpellerTextureSampling  sampling,
ImpellerPaint  paint 
)

Definition at line 645 of file impeller.cc.

651  {
652  GetPeer(builder)->DrawTextureRect(*GetPeer(texture), //
653  ToImpellerType(*src_rect), //
654  ToImpellerType(*dst_rect), //
655  ToDisplayListType(sampling), //
656  GetPeer(paint) //
657  );
658 }

References ToDisplayListType(), and ToImpellerType().

◆ ImpellerDisplayListBuilderGetSaveCount()

IMPELLER_EXTERN_C uint32_t impeller::interop::ImpellerDisplayListBuilderGetSaveCount ( ImpellerDisplayListBuilder  builder)

Definition at line 183 of file impeller.cc.

184  {
185  return GetPeer(builder)->GetSaveCount();
186 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderGetTransform()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderGetTransform ( ImpellerDisplayListBuilder  builder,
ImpellerMatrix out_transform 
)

Definition at line 171 of file impeller.cc.

172  {
173  FromImpellerType(GetPeer(builder)->GetTransform(), *out_transform);
174 }

References FromImpellerType().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderNew()

IMPELLER_EXTERN_C ImpellerDisplayListBuilder impeller::interop::ImpellerDisplayListBuilderNew ( const ImpellerRect cull_rect)

Definition at line 108 of file impeller.cc.

109  {
110  return Create<DisplayListBuilder>(cull_rect).Leak();
111 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderRelease ( ImpellerDisplayListBuilder  builder)

Definition at line 119 of file impeller.cc.

119  {
120  ObjectBase::SafeRelease(builder);
121 }

References impeller::interop::ObjectBase::SafeRelease().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderResetTransform()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderResetTransform ( ImpellerDisplayListBuilder  builder)

Definition at line 177 of file impeller.cc.

178  {
179  GetPeer(builder)->ResetTransform();
180 }

◆ ImpellerDisplayListBuilderRestore()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderRestore ( ImpellerDisplayListBuilder  builder)

Definition at line 140 of file impeller.cc.

140  {
141  GetPeer(builder)->Restore();
142 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderRestoreToCount()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderRestoreToCount ( ImpellerDisplayListBuilder  builder,
uint32_t  count 
)

Definition at line 189 of file impeller.cc.

191  {
192  GetPeer(builder)->RestoreToCount(count);
193 }

◆ ImpellerDisplayListBuilderRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderRetain ( ImpellerDisplayListBuilder  builder)

Definition at line 114 of file impeller.cc.

114  {
115  ObjectBase::SafeRetain(builder);
116 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerDisplayListBuilderRotate()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderRotate ( ImpellerDisplayListBuilder  builder,
float  angle_degrees 
)

Definition at line 152 of file impeller.cc.

153  {
154  GetPeer(builder)->Rotate(Degrees{angle_degrees});
155 }

◆ ImpellerDisplayListBuilderSave()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderSave ( ImpellerDisplayListBuilder  builder)

Definition at line 124 of file impeller.cc.

124  {
125  GetPeer(builder)->Save();
126 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListBuilderSaveLayer()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderSaveLayer ( ImpellerDisplayListBuilder  builder,
const ImpellerRect bounds,
ImpellerPaint  paint,
ImpellerImageFilter  backdrop 
)

Definition at line 129 of file impeller.cc.

132  {
133  GetPeer(builder)->SaveLayer(ToImpellerType(*bounds), //
134  GetPeer(paint), //
135  GetPeer(backdrop) //
136  );
137 }

References ToImpellerType().

◆ ImpellerDisplayListBuilderScale()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderScale ( ImpellerDisplayListBuilder  builder,
float  x_scale,
float  y_scale 
)

Definition at line 145 of file impeller.cc.

147  {
148  GetPeer(builder)->Scale(Size{x_scale, y_scale});
149 }

◆ ImpellerDisplayListBuilderSetTransform()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderSetTransform ( ImpellerDisplayListBuilder  builder,
const ImpellerMatrix transform 
)

Definition at line 165 of file impeller.cc.

166  {
167  GetPeer(builder)->SetTransform(ToImpellerType(*transform));
168 }

References ToImpellerType(), and transform.

◆ ImpellerDisplayListBuilderTranslate()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderTranslate ( ImpellerDisplayListBuilder  builder,
float  x_translation,
float  y_translation 
)

Definition at line 158 of file impeller.cc.

160  {
161  GetPeer(builder)->Translate(Point{x_translation, y_translation});
162 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerDisplayListRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListRelease ( ImpellerDisplayList  display_list)

Definition at line 581 of file impeller.cc.

581  {
582  ObjectBase::SafeRelease(display_list);
583 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerDisplayListRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListRetain ( ImpellerDisplayList  display_list)

Definition at line 576 of file impeller.cc.

576  {
577  ObjectBase::SafeRetain(display_list);
578 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerGetVersion()

IMPELLER_EXTERN_C uint32_t impeller::interop::ImpellerGetVersion ( )

Definition at line 68 of file impeller.cc.

68  {
69  return IMPELLER_VERSION;
70 }

References IMPELLER_VERSION.

Referenced by impeller::interop::testing::PlaygroundTest::CreateContext(), and ImpellerContextCreateOpenGLESNew().

◆ ImpellerImageFilterCreateBlurNew()

IMPELLER_EXTERN_C ImpellerImageFilter impeller::interop::ImpellerImageFilterCreateBlurNew ( float  x_sigma,
float  y_sigma,
ImpellerTileMode  tile_mode 
)

Definition at line 833 of file impeller.cc.

836  {
837  return ImageFilter::MakeBlur(x_sigma, y_sigma, ToDisplayListType(tile_mode))
838  .Leak();
839 }

References impeller::interop::ImageFilter::MakeBlur(), and ToDisplayListType().

◆ ImpellerImageFilterCreateComposeNew()

IMPELLER_EXTERN_C ImpellerImageFilter impeller::interop::ImpellerImageFilterCreateComposeNew ( ImpellerImageFilter  outer,
ImpellerImageFilter  inner 
)

Definition at line 863 of file impeller.cc.

865  {
866  return ImageFilter::MakeCompose(*GetPeer(outer), *GetPeer(inner)).Leak();
867 }

References impeller::interop::ImageFilter::MakeCompose().

◆ ImpellerImageFilterCreateDilateNew()

IMPELLER_EXTERN_C ImpellerImageFilter impeller::interop::ImpellerImageFilterCreateDilateNew ( float  x_radius,
float  y_radius 
)

Definition at line 842 of file impeller.cc.

843  {
844  return ImageFilter::MakeDilate(x_radius, y_radius).Leak();
845 }

References impeller::interop::ImageFilter::MakeDilate().

◆ ImpellerImageFilterCreateErodeNew()

IMPELLER_EXTERN_C ImpellerImageFilter impeller::interop::ImpellerImageFilterCreateErodeNew ( float  x_radius,
float  y_radius 
)

Definition at line 848 of file impeller.cc.

849  {
850  return ImageFilter::MakeErode(x_radius, y_radius).Leak();
851 }

References impeller::interop::ImageFilter::MakeErode().

◆ ImpellerImageFilterCreateMatrixNew()

IMPELLER_EXTERN_C ImpellerImageFilter impeller::interop::ImpellerImageFilterCreateMatrixNew ( const ImpellerMatrix matrix,
ImpellerTextureSampling  sampling 
)

Definition at line 854 of file impeller.cc.

856  {
857  return ImageFilter::MakeMatrix(ToImpellerType(*matrix),
858  ToDisplayListType(sampling))
859  .Leak();
860 }

References impeller::interop::ImageFilter::MakeMatrix(), ToDisplayListType(), and ToImpellerType().

◆ ImpellerImageFilterRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerImageFilterRelease ( ImpellerImageFilter  image_filter)

Definition at line 828 of file impeller.cc.

828  {
829  ObjectBase::SafeRelease(image_filter);
830 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerImageFilterRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerImageFilterRetain ( ImpellerImageFilter  image_filter)

Definition at line 823 of file impeller.cc.

823  {
824  ObjectBase::SafeRetain(image_filter);
825 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerMaskFilterCreateBlurNew()

IMPELLER_EXTERN_C ImpellerMaskFilter impeller::interop::ImpellerMaskFilterCreateBlurNew ( ImpellerBlurStyle  style,
float  sigma 
)

Definition at line 817 of file impeller.cc.

818  {
819  return MaskFilter::MakeBlur(ToDisplayListType(style), sigma).Leak();
820 }

References impeller::interop::MaskFilter::MakeBlur(), and ToDisplayListType().

◆ ImpellerMaskFilterRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerMaskFilterRelease ( ImpellerMaskFilter  mask_filter)

Definition at line 812 of file impeller.cc.

812  {
813  ObjectBase::SafeRelease(mask_filter);
814 }

References mask_filter, and impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerMaskFilterRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerMaskFilterRetain ( ImpellerMaskFilter  mask_filter)

Definition at line 807 of file impeller.cc.

807  {
808  ObjectBase::SafeRetain(mask_filter);
809 }

References mask_filter, and impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerPaintNew()

IMPELLER_EXTERN_C ImpellerPaint impeller::interop::ImpellerPaintNew ( )

Definition at line 333 of file impeller.cc.

333  {
334  return Create<Paint>().Leak();
335 }

Referenced by main(), and impeller::interop::testing::TEST_P().

◆ ImpellerPaintRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintRelease ( ImpellerPaint  paint)

Definition at line 343 of file impeller.cc.

343  {
344  ObjectBase::SafeRelease(paint);
345 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerPaintRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintRetain ( ImpellerPaint  paint)

Definition at line 338 of file impeller.cc.

338  {
339  ObjectBase::SafeRetain(paint);
340 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerPaintSetBlendMode()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintSetBlendMode ( ImpellerPaint  paint,
ImpellerBlendMode  mode 
)

Definition at line 353 of file impeller.cc.

353  {
354  GetPeer(paint)->SetBlendMode(ToImpellerType(mode));
355 }

References ToImpellerType().

◆ ImpellerPaintSetColor()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintSetColor ( ImpellerPaint  paint,
const ImpellerColor color 
)

Definition at line 348 of file impeller.cc.

348  {
349  GetPeer(paint)->SetColor(ToDisplayListType(*color));
350 }

References color, and ToDisplayListType().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerPaintSetColorFilter()

void impeller::interop::ImpellerPaintSetColorFilter ( ImpellerPaint  paint,
ImpellerColorFilter  color_filter 
)

Definition at line 869 of file impeller.cc.

870  {
871  GetPeer(paint)->SetColorFilter(*GetPeer(color_filter));
872 }

◆ ImpellerPaintSetColorSource()

void impeller::interop::ImpellerPaintSetColorSource ( ImpellerPaint  paint,
ImpellerColorSource  color_source 
)

Definition at line 874 of file impeller.cc.

875  {
876  GetPeer(paint)->SetColorSource(*GetPeer(color_source));
877 }

◆ ImpellerPaintSetDrawStyle()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintSetDrawStyle ( ImpellerPaint  paint,
ImpellerDrawStyle  style 
)

Definition at line 358 of file impeller.cc.

358  {
359  GetPeer(paint)->SetDrawStyle(ToDisplayListType(style));
360 }

References ToDisplayListType().

◆ ImpellerPaintSetImageFilter()

void impeller::interop::ImpellerPaintSetImageFilter ( ImpellerPaint  paint,
ImpellerImageFilter  image_filter 
)

Definition at line 879 of file impeller.cc.

880  {
881  GetPeer(paint)->SetImageFilter(*GetPeer(image_filter));
882 }

◆ ImpellerPaintSetMaskFilter()

void impeller::interop::ImpellerPaintSetMaskFilter ( ImpellerPaint  paint,
ImpellerMaskFilter  mask_filter 
)

Definition at line 884 of file impeller.cc.

885  {
886  GetPeer(paint)->SetMaskFilter(*GetPeer(mask_filter));
887 }

References mask_filter.

◆ ImpellerPaintSetStrokeCap()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintSetStrokeCap ( ImpellerPaint  paint,
ImpellerStrokeCap  cap 
)

Definition at line 363 of file impeller.cc.

363  {
364  GetPeer(paint)->SetStrokeCap(ToDisplayListType(cap));
365 }

References ToDisplayListType().

◆ ImpellerPaintSetStrokeJoin()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintSetStrokeJoin ( ImpellerPaint  paint,
ImpellerStrokeJoin  join 
)

Definition at line 368 of file impeller.cc.

368  {
369  GetPeer(paint)->SetStrokeJoin(ToDisplayListType(join));
370 }

References ToDisplayListType().

◆ ImpellerPaintSetStrokeMiter()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintSetStrokeMiter ( ImpellerPaint  paint,
float  miter 
)

Definition at line 378 of file impeller.cc.

378  {
379  GetPeer(paint)->SetStrokeMiter(miter);
380 }

◆ ImpellerPaintSetStrokeWidth()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPaintSetStrokeWidth ( ImpellerPaint  paint,
float  width 
)

Definition at line 373 of file impeller.cc.

373  {
374  GetPeer(paint)->SetStrokeWidth(width);
375 }

◆ ImpellerParagraphBuilderAddText()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphBuilderAddText ( ImpellerParagraphBuilder  paragraph_builder,
const uint8_t *  data,
uint32_t  length 
)

Definition at line 1021 of file impeller.cc.

1023  {
1024  if (data == nullptr) {
1025  length = 0;
1026  }
1027  if (length == 0) {
1028  return;
1029  }
1030  GetPeer(paragraph_builder)->AddText(data, length);
1031 }

References data.

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphBuilderBuildParagraphNew()

IMPELLER_EXTERN_C ImpellerParagraph impeller::interop::ImpellerParagraphBuilderBuildParagraphNew ( ImpellerParagraphBuilder  paragraph_builder,
float  width 
)

Definition at line 1033 of file impeller.cc.

1035  {
1036  return GetPeer(paragraph_builder)->Build(width).Leak();
1037 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphBuilderNew()

IMPELLER_EXTERN_C ImpellerParagraphBuilder impeller::interop::ImpellerParagraphBuilderNew ( ImpellerTypographyContext  context)

Definition at line 985 of file impeller.cc.

986  {
987  auto builder = Create<ParagraphBuilder>(*GetPeer(context));
988  if (!builder->IsValid()) {
989  VALIDATION_LOG << "Could not create valid paragraph builder.";
990  return nullptr;
991  }
992  return builder.Leak();
993 }

References VALIDATION_LOG.

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphBuilderPopStyle()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphBuilderPopStyle ( ImpellerParagraphBuilder  paragraph_builder)

Definition at line 1015 of file impeller.cc.

1016  {
1017  GetPeer(paragraph_builder)->PopStyle();
1018 }

◆ ImpellerParagraphBuilderPushStyle()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphBuilderPushStyle ( ImpellerParagraphBuilder  paragraph_builder,
ImpellerParagraphStyle  style 
)

Definition at line 1008 of file impeller.cc.

1010  {
1011  GetPeer(paragraph_builder)->PushStyle(*GetPeer(style));
1012 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphBuilderRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphBuilderRelease ( ImpellerParagraphBuilder  paragraph_builder)

Definition at line 1002 of file impeller.cc.

1003  {
1004  ObjectBase::SafeRelease(paragraph_builder);
1005 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerParagraphBuilderRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphBuilderRetain ( ImpellerParagraphBuilder  paragraph_builder)

Definition at line 996 of file impeller.cc.

997  {
998  ObjectBase::SafeRetain(paragraph_builder);
999 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerParagraphGetAlphabeticBaseline()

IMPELLER_EXTERN_C float impeller::interop::ImpellerParagraphGetAlphabeticBaseline ( ImpellerParagraph  paragraph)

Definition at line 1080 of file impeller.cc.

1080  {
1081  return GetPeer(paragraph)->GetAlphabeticBaseline();
1082 }

◆ ImpellerParagraphGetHeight()

IMPELLER_EXTERN_C float impeller::interop::ImpellerParagraphGetHeight ( ImpellerParagraph  paragraph)

Definition at line 1055 of file impeller.cc.

1055  {
1056  return GetPeer(paragraph)->GetHeight();
1057 }

◆ ImpellerParagraphGetIdeographicBaseline()

IMPELLER_EXTERN_C float impeller::interop::ImpellerParagraphGetIdeographicBaseline ( ImpellerParagraph  paragraph)

Definition at line 1075 of file impeller.cc.

1075  {
1076  return GetPeer(paragraph)->GetIdeographicBaseline();
1077 }

◆ ImpellerParagraphGetLineCount()

IMPELLER_EXTERN_C uint32_t impeller::interop::ImpellerParagraphGetLineCount ( ImpellerParagraph  paragraph)

Definition at line 1085 of file impeller.cc.

1085  {
1086  return GetPeer(paragraph)->GetLineCount();
1087 }

◆ ImpellerParagraphGetLongestLineWidth()

IMPELLER_EXTERN_C float impeller::interop::ImpellerParagraphGetLongestLineWidth ( ImpellerParagraph  paragraph)

Definition at line 1060 of file impeller.cc.

1060  {
1061  return GetPeer(paragraph)->GetLongestLineWidth();
1062 }

◆ ImpellerParagraphGetMaxIntrinsicWidth()

IMPELLER_EXTERN_C float impeller::interop::ImpellerParagraphGetMaxIntrinsicWidth ( ImpellerParagraph  paragraph)

Definition at line 1070 of file impeller.cc.

1070  {
1071  return GetPeer(paragraph)->GetMaxIntrinsicWidth();
1072 }

◆ ImpellerParagraphGetMaxWidth()

IMPELLER_EXTERN_C float impeller::interop::ImpellerParagraphGetMaxWidth ( ImpellerParagraph  paragraph)

Definition at line 1050 of file impeller.cc.

1050  {
1051  return GetPeer(paragraph)->GetMaxWidth();
1052 }

◆ ImpellerParagraphGetMinIntrinsicWidth()

IMPELLER_EXTERN_C float impeller::interop::ImpellerParagraphGetMinIntrinsicWidth ( ImpellerParagraph  paragraph)

Definition at line 1065 of file impeller.cc.

1065  {
1066  return GetPeer(paragraph)->GetMinIntrinsicWidth();
1067 }

◆ ImpellerParagraphRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphRelease ( ImpellerParagraph  paragraph)

Definition at line 1045 of file impeller.cc.

1045  {
1046  ObjectBase::SafeRelease(paragraph);
1047 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerParagraphRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphRetain ( ImpellerParagraph  paragraph)

Definition at line 1040 of file impeller.cc.

1040  {
1041  ObjectBase::SafeRetain(paragraph);
1042 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerParagraphStyleNew()

IMPELLER_EXTERN_C ImpellerParagraphStyle impeller::interop::ImpellerParagraphStyleNew ( )

Definition at line 889 of file impeller.cc.

889  {
890  return Create<ParagraphStyle>().Leak();
891 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphStyleRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleRelease ( ImpellerParagraphStyle  paragraph_style)

Definition at line 899 of file impeller.cc.

899  {
900  ObjectBase::SafeRelease(paragraph_style);
901 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerParagraphStyleRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleRetain ( ImpellerParagraphStyle  paragraph_style)

Definition at line 894 of file impeller.cc.

894  {
895  ObjectBase::SafeRetain(paragraph_style);
896 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerParagraphStyleSetBackground()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetBackground ( ImpellerParagraphStyle  paragraph_style,
ImpellerPaint  paint 
)

Definition at line 909 of file impeller.cc.

911  {
912  GetPeer(paragraph_style)->SetBackground(Ref(GetPeer(paint)));
913 }

References Ref().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphStyleSetFontFamily()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetFontFamily ( ImpellerParagraphStyle  paragraph_style,
const char *  family_name 
)

Definition at line 935 of file impeller.cc.

936  {
937  GetPeer(paragraph_style)->SetFontFamily(ReadString(family_name));
938 }

References ReadString().

◆ ImpellerParagraphStyleSetFontSize()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetFontSize ( ImpellerParagraphStyle  paragraph_style,
float  size 
)

Definition at line 941 of file impeller.cc.

942  {
943  GetPeer(paragraph_style)->SetFontSize(size);
944 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphStyleSetFontStyle()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetFontStyle ( ImpellerParagraphStyle  paragraph_style,
ImpellerFontStyle  style 
)

Definition at line 922 of file impeller.cc.

923  {
924  GetPeer(paragraph_style)->SetFontStyle(ToTxtType(style));
925 }

References ToTxtType().

◆ ImpellerParagraphStyleSetFontWeight()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetFontWeight ( ImpellerParagraphStyle  paragraph_style,
ImpellerFontWeight  weight 
)

Definition at line 916 of file impeller.cc.

917  {
918  GetPeer(paragraph_style)->SetFontWeight(ToTxtType(weight));
919 }

References ToTxtType().

◆ ImpellerParagraphStyleSetForeground()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetForeground ( ImpellerParagraphStyle  paragraph_style,
ImpellerPaint  paint 
)

Definition at line 904 of file impeller.cc.

905  {
906  GetPeer(paragraph_style)->SetForeground(Ref(GetPeer(paint)));
907 }

References Ref().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerParagraphStyleSetHeight()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetHeight ( ImpellerParagraphStyle  paragraph_style,
float  height 
)

Definition at line 947 of file impeller.cc.

948  {
949  GetPeer(paragraph_style)->SetHeight(height);
950 }

◆ ImpellerParagraphStyleSetLocale()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetLocale ( ImpellerParagraphStyle  paragraph_style,
const char *  locale 
)

Definition at line 973 of file impeller.cc.

974  {
975  GetPeer(paragraph_style)->SetLocale(ReadString(locale));
976 }

References ReadString().

◆ ImpellerParagraphStyleSetMaxLines()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetMaxLines ( ImpellerParagraphStyle  paragraph_style,
uint32_t  max_lines 
)

Definition at line 967 of file impeller.cc.

968  {
969  GetPeer(paragraph_style)->SetMaxLines(max_lines);
970 }

◆ ImpellerParagraphStyleSetTextAlignment()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetTextAlignment ( ImpellerParagraphStyle  paragraph_style,
ImpellerTextAlignment  align 
)

Definition at line 953 of file impeller.cc.

955  {
956  GetPeer(paragraph_style)->SetTextAlignment(ToTxtType(align));
957 }

References ToTxtType().

◆ ImpellerParagraphStyleSetTextDirection()

IMPELLER_EXTERN_C void impeller::interop::ImpellerParagraphStyleSetTextDirection ( ImpellerParagraphStyle  paragraph_style,
ImpellerTextDirection  direction 
)

Definition at line 960 of file impeller.cc.

962  {
963  GetPeer(paragraph_style)->SetTextDirection(ToTxtType(direction));
964 }

References ToTxtType().

◆ ImpellerPathBuilderAddArc()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderAddArc ( ImpellerPathBuilder  builder,
const ImpellerRect oval_bounds,
float  start_angle_degrees,
float  end_angle_degrees 
)

Definition at line 257 of file impeller.cc.

260  {
261  GetPeer(builder)->AddArc(ToImpellerType(*oval_bounds), //
262  Degrees{start_angle_degrees}, //
263  Degrees{end_angle_degrees} //
264  );
265 }

References ToImpellerType().

◆ ImpellerPathBuilderAddOval()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderAddOval ( ImpellerPathBuilder  builder,
const ImpellerRect oval_bounds 
)

Definition at line 268 of file impeller.cc.

269  {
270  GetPeer(builder)->AddOval(ToImpellerType(*oval_bounds));
271 }

References ToImpellerType().

◆ ImpellerPathBuilderAddRect()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderAddRect ( ImpellerPathBuilder  builder,
const ImpellerRect rect 
)

Definition at line 251 of file impeller.cc.

252  {
253  GetPeer(builder)->AddRect(ToImpellerType(*rect));
254 }

References ToImpellerType().

◆ ImpellerPathBuilderAddRoundedRect()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderAddRoundedRect ( ImpellerPathBuilder  builder,
const ImpellerRect rect,
const ImpellerRoundingRadii rounding_radii 
)

Definition at line 274 of file impeller.cc.

277  {
278  GetPeer(builder)->AddRoundedRect(ToImpellerType(*rect),
279  ToImpellerType(*rounding_radii));
280 }

References ToImpellerType().

◆ ImpellerPathBuilderClose()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderClose ( ImpellerPathBuilder  builder)

Definition at line 283 of file impeller.cc.

283  {
284  GetPeer(builder)->Close();
285 }

◆ ImpellerPathBuilderCopyPathNew()

IMPELLER_EXTERN_C ImpellerPath impeller::interop::ImpellerPathBuilderCopyPathNew ( ImpellerPathBuilder  builder,
ImpellerFillType  fill 
)

Definition at line 288 of file impeller.cc.

289  {
290  return GetPeer(builder)->CopyPath(ToImpellerType(fill)).Leak();
291 }

References ToImpellerType().

◆ ImpellerPathBuilderCubicCurveTo()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderCubicCurveTo ( ImpellerPathBuilder  builder,
const ImpellerPoint control_point_1,
const ImpellerPoint control_point_2,
const ImpellerPoint end_point 
)

Definition at line 241 of file impeller.cc.

244  {
245  GetPeer(builder)->CubicCurveTo(ToImpellerType(*control_point_1), //
246  ToImpellerType(*control_point_2), //
247  ToImpellerType(*end_point) //
248  );
249 }

References ToImpellerType().

◆ ImpellerPathBuilderLineTo()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderLineTo ( ImpellerPathBuilder  builder,
const ImpellerPoint location 
)

Definition at line 227 of file impeller.cc.

228  {
229  GetPeer(builder)->LineTo(ToImpellerType(*location));
230 }

References ToImpellerType().

◆ ImpellerPathBuilderMoveTo()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderMoveTo ( ImpellerPathBuilder  builder,
const ImpellerPoint location 
)

Definition at line 221 of file impeller.cc.

222  {
223  GetPeer(builder)->MoveTo(ToImpellerType(*location));
224 }

References ToImpellerType().

◆ ImpellerPathBuilderNew()

IMPELLER_EXTERN_C ImpellerPathBuilder impeller::interop::ImpellerPathBuilderNew ( )

Definition at line 206 of file impeller.cc.

206  {
207  return Create<PathBuilder>().Leak();
208 }

◆ ImpellerPathBuilderQuadraticCurveTo()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderQuadraticCurveTo ( ImpellerPathBuilder  builder,
const ImpellerPoint control_point,
const ImpellerPoint end_point 
)

Definition at line 233 of file impeller.cc.

235  {
236  GetPeer(builder)->QuadraticCurveTo(ToImpellerType(*control_point),
237  ToImpellerType(*end_point));
238 }

References ToImpellerType().

◆ ImpellerPathBuilderRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderRelease ( ImpellerPathBuilder  builder)

Definition at line 216 of file impeller.cc.

216  {
217  ObjectBase::SafeRelease(builder);
218 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerPathBuilderRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathBuilderRetain ( ImpellerPathBuilder  builder)

Definition at line 211 of file impeller.cc.

211  {
212  ObjectBase::SafeRetain(builder);
213 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerPathBuilderTakePathNew()

IMPELLER_EXTERN_C ImpellerPath impeller::interop::ImpellerPathBuilderTakePathNew ( ImpellerPathBuilder  builder,
ImpellerFillType  fill 
)

Definition at line 293 of file impeller.cc.

295  {
296  return GetPeer(builder)->TakePath(ToImpellerType(fill)).Leak();
297 }

References ToImpellerType().

◆ ImpellerPathRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathRelease ( ImpellerPath  path)

Definition at line 201 of file impeller.cc.

201  {
202  ObjectBase::SafeRelease(path);
203 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerPathRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerPathRetain ( ImpellerPath  path)

Definition at line 196 of file impeller.cc.

196  {
197  ObjectBase::SafeRetain(path);
198 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerSurfaceCreateWrappedFBONew()

IMPELLER_EXTERN_C ImpellerSurface impeller::interop::ImpellerSurfaceCreateWrappedFBONew ( ImpellerContext  context,
uint64_t  fbo,
ImpellerPixelFormat  format,
const ImpellerISize size 
)

Definition at line 604 of file impeller.cc.

607  {
608  return Surface::WrapFBO(*GetPeer(context), //
609  fbo, //
610  ToImpellerType(format), //
611  ToImpellerType(*size)) //
612  .Leak();
613 }

References ToImpellerType(), and impeller::interop::Surface::WrapFBO().

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerSurfaceDrawDisplayList()

IMPELLER_EXTERN_C bool impeller::interop::ImpellerSurfaceDrawDisplayList ( ImpellerSurface  surface,
ImpellerDisplayList  display_list 
)

Definition at line 626 of file impeller.cc.

627  {
628  return GetPeer(surface)->DrawDisplayList(*GetPeer(display_list));
629 }

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerSurfaceRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerSurfaceRelease ( ImpellerSurface  surface)

Definition at line 621 of file impeller.cc.

621  {
622  ObjectBase::SafeRelease(surface);
623 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerSurfaceRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerSurfaceRetain ( ImpellerSurface  surface)

Definition at line 616 of file impeller.cc.

616  {
617  ObjectBase::SafeRetain(surface);
618 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerTextureCreateWithContentsNew()

IMPELLER_EXTERN_C ImpellerTexture impeller::interop::ImpellerTextureCreateWithContentsNew ( ImpellerContext  context,
const ImpellerTextureDescriptor descriptor,
const ImpellerMapping contents,
void *  contents_on_release_user_data 
)

Definition at line 465 of file impeller.cc.

469  {
470  TextureDescriptor desc;
471  desc.storage_mode = StorageMode::kDevicePrivate;
472  desc.type = TextureType::kTexture2D;
473  desc.format = ToImpellerType(descriptor->pixel_format);
474  desc.size = ToImpellerType(descriptor->size);
475  desc.mip_count = std::min(descriptor->mip_count, 1u);
476  desc.usage = TextureUsage::kShaderRead;
477  desc.compression_type = CompressionType::kLossless;
478  auto texture = Create<Texture>(*GetPeer(context), desc);
479  if (!texture->IsValid()) {
480  VALIDATION_LOG << "Could not create texture.";
481  return nullptr;
482  }
483  // Depending on whether the de-allocation can be delayed, it may be possible
484  // to avoid a data copy.
485  if (contents->on_release) {
486  // Avoids data copy.
487  auto wrapped_contents = std::make_shared<fml::NonOwnedMapping>(
488  contents->data, // data ptr
489  contents->length, // data length
490  [contents, contents_on_release_user_data](auto, auto) {
491  contents->on_release(contents_on_release_user_data);
492  } // release callback
493  );
494  if (!texture->SetContents(std::move(wrapped_contents))) {
495  VALIDATION_LOG << "Could not set texture contents.";
496  return nullptr;
497  }
498  } else {
499  // May copy.
500  if (!texture->SetContents(contents->data, contents->length)) {
501  VALIDATION_LOG << "Could not set texture contents.";
502  return nullptr;
503  }
504  }
505  return texture.Leak();
506 }

References impeller::TextureDescriptor::compression_type, ImpellerMapping::data, impeller::TextureDescriptor::format, impeller::kDevicePrivate, impeller::kLossless, impeller::kShaderRead, impeller::kTexture2D, ImpellerMapping::length, impeller::TextureDescriptor::mip_count, ImpellerTextureDescriptor::mip_count, ImpellerMapping::on_release, ImpellerTextureDescriptor::pixel_format, impeller::TextureDescriptor::size, ImpellerTextureDescriptor::size, impeller::TextureDescriptor::storage_mode, ToImpellerType(), impeller::TextureDescriptor::type, impeller::TextureDescriptor::usage, and VALIDATION_LOG.

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerTextureCreateWithOpenGLTextureHandleNew()

IMPELLER_EXTERN_C ImpellerTexture impeller::interop::ImpellerTextureCreateWithOpenGLTextureHandleNew ( ImpellerContext  context,
const ImpellerTextureDescriptor descriptor,
uint64_t  external_gl_handle 
)

Definition at line 509 of file impeller.cc.

512  {
513  auto impeller_context = GetPeer(context)->GetContext();
514  if (impeller_context->GetBackendType() !=
516  VALIDATION_LOG << "Context is not OpenGL.";
517  return nullptr;
518  }
519 
520  const auto& impeller_context_gl = ContextGLES::Cast(*impeller_context);
521  const auto& reactor = impeller_context_gl.GetReactor();
522 
523  auto wrapped_external_gl_handle =
524  reactor->CreateHandle(HandleType::kTexture, external_gl_handle);
525  if (wrapped_external_gl_handle.IsDead()) {
526  VALIDATION_LOG << "Could not wrap external handle.";
527  return nullptr;
528  }
529 
530  TextureDescriptor desc;
531  desc.storage_mode = StorageMode::kDevicePrivate;
532  desc.type = TextureType::kTexture2D;
533  desc.format = ToImpellerType(descriptor->pixel_format);
534  desc.size = ToImpellerType(descriptor->size);
535  desc.mip_count = std::min(descriptor->mip_count, 1u);
536  desc.usage = TextureUsage::kShaderRead;
537  desc.compression_type = CompressionType::kLossless;
538  auto texture = std::make_shared<TextureGLES>(reactor, //
539  desc, //
540  wrapped_external_gl_handle //
541  );
542  if (!texture || !texture->IsValid()) {
543  VALIDATION_LOG << "Could not wrap external texture.";
544  return nullptr;
545  }
546  texture->SetCoordinateSystem(TextureCoordinateSystem::kUploadFromHost);
547  return Create<Texture>(impeller::Context::BackendType::kOpenGLES,
548  std::move(texture))
549  .Leak();
550 }

References impeller::BackendCast< ContextGLES, Context >::Cast(), impeller::TextureDescriptor::compression_type, impeller::TextureDescriptor::format, impeller::kDevicePrivate, impeller::kLossless, impeller::Context::kOpenGLES, impeller::kShaderRead, impeller::kTexture, impeller::kTexture2D, impeller::kUploadFromHost, impeller::TextureDescriptor::mip_count, ImpellerTextureDescriptor::mip_count, ImpellerTextureDescriptor::pixel_format, impeller::TextureDescriptor::size, ImpellerTextureDescriptor::size, impeller::TextureDescriptor::storage_mode, ToImpellerType(), impeller::TextureDescriptor::type, impeller::TextureDescriptor::usage, and VALIDATION_LOG.

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerTextureGetOpenGLHandle()

IMPELLER_EXTERN_C uint64_t impeller::interop::ImpellerTextureGetOpenGLHandle ( ImpellerTexture  texture)

Definition at line 563 of file impeller.cc.

563  {
564  auto interop_texture = GetPeer(texture);
565  if (interop_texture->GetBackendType() !=
567  VALIDATION_LOG << "Can only fetch the texture handle of an OpenGL texture.";
568  return 0u;
569  }
570  return TextureGLES::Cast(*interop_texture->GetTexture())
571  .GetGLHandle()
572  .value_or(0u);
573 }

References impeller::BackendCast< TextureGLES, Texture >::Cast(), impeller::TextureGLES::GetGLHandle(), impeller::Context::kOpenGLES, and VALIDATION_LOG.

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerTextureRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerTextureRelease ( ImpellerTexture  texture)

Definition at line 558 of file impeller.cc.

558  {
559  ObjectBase::SafeRelease(texture);
560 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerTextureRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerTextureRetain ( ImpellerTexture  texture)

Definition at line 553 of file impeller.cc.

553  {
554  ObjectBase::SafeRetain(texture);
555 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ImpellerTypographyContextNew()

IMPELLER_EXTERN_C ImpellerTypographyContext impeller::interop::ImpellerTypographyContextNew ( )

Definition at line 1089 of file impeller.cc.

1089  {
1090  auto context = Create<TypographyContext>();
1091  if (!context->IsValid()) {
1092  VALIDATION_LOG << "Could not create typography context.";
1093  return nullptr;
1094  }
1095  return Create<TypographyContext>().Leak();
1096 }

References VALIDATION_LOG.

Referenced by impeller::interop::testing::TEST_P().

◆ ImpellerTypographyContextRelease()

IMPELLER_EXTERN_C void impeller::interop::ImpellerTypographyContextRelease ( ImpellerTypographyContext  context)

Definition at line 1104 of file impeller.cc.

1104  {
1105  ObjectBase::SafeRelease(context);
1106 }

References impeller::interop::ObjectBase::SafeRelease().

◆ ImpellerTypographyContextRetain()

IMPELLER_EXTERN_C void impeller::interop::ImpellerTypographyContextRetain ( ImpellerTypographyContext  context)

Definition at line 1099 of file impeller.cc.

1099  {
1100  ObjectBase::SafeRetain(context);
1101 }

References impeller::interop::ObjectBase::SafeRetain().

◆ ParseColorsAndStops()

static std::pair<std::vector<flutter::DlColor>, std::vector<Scalar> > impeller::interop::ParseColorsAndStops ( uint32_t  stop_count,
const ImpellerColor colors,
const float *  stops 
)
static

Definition at line 671 of file impeller.cc.

673  {
674  if (stop_count == 0) {
675  return {};
676  }
677  std::pair<std::vector<flutter::DlColor>, std::vector<Scalar>> result;
678  result.first.reserve(stop_count);
679  result.second.reserve(stop_count);
680  for (size_t i = 0; i < stop_count; i++) {
681  result.first.emplace_back(ToDisplayListType(colors[i]));
682  result.second.emplace_back(stops[i]);
683  }
684  return result;
685 }

References ToDisplayListType().

Referenced by ImpellerColorSourceCreateConicalGradientNew(), ImpellerColorSourceCreateLinearGradientNew(), ImpellerColorSourceCreateRadialGradientNew(), and ImpellerColorSourceCreateSweepGradientNew().

◆ ReadString()

static std::string impeller::interop::ReadString ( const char *  string)
static

Definition at line 927 of file impeller.cc.

927  {
928  if (string == nullptr) {
929  return "";
930  }
931  return std::string{string};
932 }

Referenced by ImpellerParagraphStyleSetFontFamily(), and ImpellerParagraphStyleSetLocale().

◆ Ref()

template<typename Object >
ScopedObject<Object> impeller::interop::Ref ( Object object)

Definition at line 145 of file object.h.

145  {
146  return ScopedObject<Object>{object};
147 }

Referenced by ImpellerParagraphStyleSetBackground(), ImpellerParagraphStyleSetForeground(), and impeller::interop::testing::TEST().

◆ ToDisplayListType() [1/11]

constexpr flutter::DlBlendMode impeller::interop::ToDisplayListType ( BlendMode  mode)
constexpr

Definition at line 120 of file formats.h.

120  {
121  using Mode = flutter::DlBlendMode;
122  switch (mode) {
123  case BlendMode::kClear:
124  return Mode::kClear;
125  case BlendMode::kSource:
126  return Mode::kSrc;
127  case BlendMode::kDestination:
128  return Mode::kDst;
129  case BlendMode::kSourceOver:
130  return Mode::kSrcOver;
131  case BlendMode::kDestinationOver:
132  return Mode::kDstOver;
133  case BlendMode::kSourceIn:
134  return Mode::kSrcIn;
135  case BlendMode::kDestinationIn:
136  return Mode::kDstIn;
137  case BlendMode::kSourceOut:
138  return Mode::kSrcOut;
139  case BlendMode::kDestinationOut:
140  return Mode::kDstOut;
141  case BlendMode::kSourceATop:
142  return Mode::kSrcATop;
143  case BlendMode::kDestinationATop:
144  return Mode::kDstATop;
145  case BlendMode::kXor:
146  return Mode::kXor;
147  case BlendMode::kPlus:
148  return Mode::kPlus;
149  case BlendMode::kModulate:
150  return Mode::kModulate;
151  case BlendMode::kScreen:
152  return Mode::kScreen;
153  case BlendMode::kOverlay:
154  return Mode::kOverlay;
155  case BlendMode::kDarken:
156  return Mode::kDarken;
157  case BlendMode::kLighten:
158  return Mode::kLighten;
159  case BlendMode::kColorDodge:
160  return Mode::kColorDodge;
161  case BlendMode::kColorBurn:
162  return Mode::kColorBurn;
163  case BlendMode::kHardLight:
164  return Mode::kHardLight;
165  case BlendMode::kSoftLight:
166  return Mode::kSoftLight;
167  case BlendMode::kDifference:
168  return Mode::kDifference;
169  case BlendMode::kExclusion:
170  return Mode::kExclusion;
171  case BlendMode::kMultiply:
172  return Mode::kMultiply;
173  case BlendMode::kHue:
174  return Mode::kHue;
175  case BlendMode::kSaturation:
176  return Mode::kSaturation;
177  case BlendMode::kColor:
178  return Mode::kColor;
179  case BlendMode::kLuminosity:
180  return Mode::kLuminosity;
181  }
182  return Mode::kSrcOver;
183 }

References impeller::kClear, impeller::kColor, impeller::kColorBurn, impeller::kColorDodge, impeller::kDarken, impeller::kDestination, impeller::kDestinationATop, impeller::kDestinationIn, impeller::kDestinationOut, impeller::kDestinationOver, impeller::kDifference, impeller::kExclusion, impeller::kHardLight, impeller::kHue, impeller::kLighten, impeller::kLuminosity, impeller::kModulate, impeller::kMultiply, impeller::kOverlay, impeller::kPlus, impeller::kSaturation, impeller::kScreen, impeller::kSoftLight, impeller::kSource, impeller::kSourceATop, impeller::kSourceIn, impeller::kSourceOut, impeller::kSourceOver, and impeller::kXor.

◆ ToDisplayListType() [2/11]

◆ ToDisplayListType() [3/11]

template<class DlType , class OtherType >
std::vector<DlType> impeller::interop::ToDisplayListType ( const std::vector< OtherType > &  other_vec)

Definition at line 86 of file formats.h.

86  {
87  std::vector<DlType> dl_vec;
88  dl_vec.reserve(other_vec.size());
89  for (const auto& other : other_vec) {
90  dl_vec.emplace_back(ToDisplayListType(other));
91  }
92  return dl_vec;
93 }

References ToDisplayListType().

◆ ToDisplayListType() [4/11]

constexpr flutter::DlBlurStyle impeller::interop::ToDisplayListType ( ImpellerBlurStyle  style)
constexpr

Definition at line 106 of file formats.h.

106  {
107  switch (style) {
109  return flutter::DlBlurStyle::kNormal;
111  return flutter::DlBlurStyle::kSolid;
113  return flutter::DlBlurStyle::kOuter;
115  return flutter::DlBlurStyle::kInner;
116  }
117  return flutter::DlBlurStyle::kNormal;
118 }

References kImpellerBlurStyleInner, kImpellerBlurStyleNormal, kImpellerBlurStyleOuter, and kImpellerBlurStyleSolid.

◆ ToDisplayListType() [5/11]

constexpr flutter::DlColor impeller::interop::ToDisplayListType ( ImpellerColor  color)
constexpr

Definition at line 415 of file formats.h.

415  {
416  return flutter::DlColor(color.alpha, //
417  color.red, //
418  color.green, //
419  color.blue, //
420  ToDisplayListType(color.color_space) //
421  );
422 }

References color, and ToDisplayListType().

◆ ToDisplayListType() [6/11]

constexpr flutter::DlColorSpace impeller::interop::ToDisplayListType ( ImpellerColorSpace  color_space)
constexpr

Definition at line 402 of file formats.h.

403  {
404  switch (color_space) {
406  return flutter::DlColorSpace::kSRGB;
408  return flutter::DlColorSpace::kExtendedSRGB;
410  return flutter::DlColorSpace::kDisplayP3;
411  }
412  return flutter::DlColorSpace::kSRGB;
413 }

References kImpellerColorSpaceDisplayP3, kImpellerColorSpaceExtendedSRGB, and kImpellerColorSpaceSRGB.

◆ ToDisplayListType() [7/11]

constexpr flutter::DlDrawStyle impeller::interop::ToDisplayListType ( ImpellerDrawStyle  style)
constexpr

Definition at line 354 of file formats.h.

354  {
355  switch (style) {
357  return flutter::DlDrawStyle::kFill;
359  return flutter::DlDrawStyle::kStroke;
361  return flutter::DlDrawStyle::kStrokeAndFill;
362  }
363  return flutter::DlDrawStyle::kFill;
364 }

References kImpellerDrawStyleFill, kImpellerDrawStyleStroke, and kImpellerDrawStyleStrokeAndFill.

◆ ToDisplayListType() [8/11]

constexpr flutter::DlStrokeCap impeller::interop::ToDisplayListType ( ImpellerStrokeCap  cap)
constexpr

Definition at line 366 of file formats.h.

366  {
367  switch (cap) {
369  return flutter::DlStrokeCap::kButt;
371  return flutter::DlStrokeCap::kRound;
373  return flutter::DlStrokeCap::kSquare;
374  }
375  return flutter::DlStrokeCap::kButt;
376 }

References kImpellerStrokeCapButt, kImpellerStrokeCapRound, and kImpellerStrokeCapSquare.

◆ ToDisplayListType() [9/11]

constexpr flutter::DlStrokeJoin impeller::interop::ToDisplayListType ( ImpellerStrokeJoin  join)
constexpr

Definition at line 378 of file formats.h.

378  {
379  switch (join) {
381  return flutter::DlStrokeJoin::kMiter;
383  return flutter::DlStrokeJoin::kRound;
385  return flutter::DlStrokeJoin::kBevel;
386  }
387  return flutter::DlStrokeJoin::kMiter;
388 }

References kImpellerStrokeJoinBevel, kImpellerStrokeJoinMiter, and kImpellerStrokeJoinRound.

◆ ToDisplayListType() [10/11]

constexpr flutter::DlImageSampling impeller::interop::ToDisplayListType ( ImpellerTextureSampling  sampling)
constexpr

Definition at line 95 of file formats.h.

96  {
97  switch (sampling) {
99  return flutter::DlImageSampling::kNearestNeighbor;
101  return flutter::DlImageSampling::kLinear;
102  }
103  return flutter::DlImageSampling::kLinear;
104 }

References kImpellerTextureSamplingLinear, and kImpellerTextureSamplingNearestNeighbor.

◆ ToDisplayListType() [11/11]

constexpr flutter::DlTileMode impeller::interop::ToDisplayListType ( ImpellerTileMode  mode)
constexpr

Definition at line 237 of file formats.h.

237  {
238  switch (mode) {
240  return flutter::DlTileMode::kClamp;
242  return flutter::DlTileMode::kRepeat;
244  return flutter::DlTileMode::kMirror;
246  return flutter::DlTileMode::kDecal;
247  }
248  return flutter::DlTileMode::kClamp;
249 }

References kImpellerTileModeClamp, kImpellerTileModeDecal, kImpellerTileModeMirror, and kImpellerTileModeRepeat.

◆ ToImpellerType() [1/11]

constexpr Color impeller::interop::ToImpellerType ( const ImpellerColor color)
constexpr

Definition at line 281 of file formats.h.

281  {
282  Color result;
283  result.red = color.red;
284  result.green = color.green;
285  result.blue = color.blue;
286  result.alpha = color.alpha;
287  return result;
288 }

References impeller::Color::alpha, impeller::Color::blue, color, impeller::Color::green, and impeller::Color::red.

◆ ToImpellerType() [2/11]

constexpr ISize impeller::interop::ToImpellerType ( const ImpellerISize size)
constexpr

Definition at line 398 of file formats.h.

398  {
399  return ISize::MakeWH(size.width, size.height);
400 }

References ImpellerISize::height, impeller::TSize< T >::MakeWH(), and ImpellerISize::width.

◆ ToImpellerType() [3/11]

constexpr Matrix impeller::interop::ToImpellerType ( const ImpellerMatrix m)
constexpr

Definition at line 198 of file formats.h.

198  {
199  return Matrix(m.m[0], m.m[1], m.m[2], m.m[3], //
200  m.m[4], m.m[5], m.m[6], m.m[7], //
201  m.m[8], m.m[9], m.m[10], m.m[11], //
202  m.m[12], m.m[13], m.m[14], m.m[15] //
203  );
204 }

References ImpellerMatrix::m.

Referenced by ImpellerColorFilterCreateBlendNew(), ImpellerColorSourceCreateConicalGradientNew(), ImpellerColorSourceCreateLinearGradientNew(), ImpellerColorSourceCreateRadialGradientNew(), ImpellerColorSourceCreateSweepGradientNew(), ImpellerDisplayListBuilderClipOval(), ImpellerDisplayListBuilderClipPath(), ImpellerDisplayListBuilderClipRect(), ImpellerDisplayListBuilderClipRoundedRect(), ImpellerDisplayListBuilderDrawDashedLine(), ImpellerDisplayListBuilderDrawLine(), ImpellerDisplayListBuilderDrawOval(), ImpellerDisplayListBuilderDrawParagraph(), ImpellerDisplayListBuilderDrawRect(), ImpellerDisplayListBuilderDrawRoundedRect(), ImpellerDisplayListBuilderDrawRoundedRectDifference(), ImpellerDisplayListBuilderDrawTexture(), ImpellerDisplayListBuilderDrawTextureRect(), ImpellerDisplayListBuilderSaveLayer(), ImpellerDisplayListBuilderSetTransform(), ImpellerImageFilterCreateMatrixNew(), ImpellerPaintSetBlendMode(), ImpellerPathBuilderAddArc(), ImpellerPathBuilderAddOval(), ImpellerPathBuilderAddRect(), ImpellerPathBuilderAddRoundedRect(), ImpellerPathBuilderCopyPathNew(), ImpellerPathBuilderCubicCurveTo(), ImpellerPathBuilderLineTo(), ImpellerPathBuilderMoveTo(), ImpellerPathBuilderQuadraticCurveTo(), ImpellerPathBuilderTakePathNew(), ImpellerSurfaceCreateWrappedFBONew(), ImpellerTextureCreateWithContentsNew(), ImpellerTextureCreateWithOpenGLTextureHandleNew(), impeller::interop::testing::TEST_P(), and ToImpellerType().

◆ ToImpellerType() [4/11]

constexpr Point impeller::interop::ToImpellerType ( const ImpellerPoint point)
constexpr

Definition at line 229 of file formats.h.

229  {
230  return Point{point.x, point.y};
231 }

References ImpellerPoint::x, and ImpellerPoint::y.

◆ ToImpellerType() [5/11]

constexpr Rect impeller::interop::ToImpellerType ( const ImpellerRect rect)
constexpr

Definition at line 233 of file formats.h.

233  {
234  return Rect::MakeXYWH(rect.x, rect.y, rect.width, rect.height);
235 }

References ImpellerRect::height, impeller::TRect< Scalar >::MakeXYWH(), ImpellerRect::width, ImpellerRect::x, and ImpellerRect::y.

◆ ToImpellerType() [6/11]

constexpr impeller::PathBuilder::RoundingRadii impeller::interop::ToImpellerType ( const ImpellerRoundingRadii radii)
constexpr

Definition at line 251 of file formats.h.

252  {
253  auto result = impeller::PathBuilder::RoundingRadii{};
254  result.top_left = ToImpellerType(radii.top_left);
255  result.bottom_left = ToImpellerType(radii.bottom_left);
256  result.top_right = ToImpellerType(radii.top_right);
257  result.bottom_right = ToImpellerType(radii.bottom_right);
258  return result;
259 }

References ImpellerRoundingRadii::bottom_left, ImpellerRoundingRadii::bottom_right, ToImpellerType(), impeller::PathBuilder::RoundingRadii::top_left, ImpellerRoundingRadii::top_left, and ImpellerRoundingRadii::top_right.

◆ ToImpellerType() [7/11]

constexpr Size impeller::interop::ToImpellerType ( const ImpellerSize size)
constexpr

Definition at line 225 of file formats.h.

225  {
226  return Size{size.width, size.height};
227 }

References ImpellerSize::height, and ImpellerSize::width.

◆ ToImpellerType() [8/11]

constexpr BlendMode impeller::interop::ToImpellerType ( ImpellerBlendMode  mode)
constexpr

Definition at line 290 of file formats.h.

290  {
291  switch (mode) {
293  return BlendMode::kClear;
295  return BlendMode::kSource;
297  return BlendMode::kDestination;
299  return BlendMode::kSourceOver;
301  return BlendMode::kDestinationOver;
303  return BlendMode::kSourceIn;
305  return BlendMode::kDestinationIn;
307  return BlendMode::kSourceOut;
309  return BlendMode::kDestinationOut;
311  return BlendMode::kSourceATop;
313  return BlendMode::kDestinationATop;
315  return BlendMode::kXor;
317  return BlendMode::kPlus;
319  return BlendMode::kModulate;
321  return BlendMode::kScreen;
323  return BlendMode::kOverlay;
325  return BlendMode::kDarken;
327  return BlendMode::kLighten;
329  return BlendMode::kColorDodge;
331  return BlendMode::kColorBurn;
333  return BlendMode::kHardLight;
335  return BlendMode::kSoftLight;
337  return BlendMode::kDifference;
339  return BlendMode::kExclusion;
341  return BlendMode::kMultiply;
343  return BlendMode::kHue;
345  return BlendMode::kSaturation;
347  return BlendMode::kColor;
349  return BlendMode::kLuminosity;
350  }
351  return BlendMode::kSourceOver;
352 }

References impeller::kClear, impeller::kColor, impeller::kColorBurn, impeller::kColorDodge, impeller::kDarken, impeller::kDestination, impeller::kDestinationATop, impeller::kDestinationIn, impeller::kDestinationOut, impeller::kDestinationOver, impeller::kDifference, impeller::kExclusion, impeller::kHardLight, impeller::kHue, kImpellerBlendModeClear, kImpellerBlendModeColor, kImpellerBlendModeColorBurn, kImpellerBlendModeColorDodge, kImpellerBlendModeDarken, kImpellerBlendModeDestination, kImpellerBlendModeDestinationATop, kImpellerBlendModeDestinationIn, kImpellerBlendModeDestinationOut, kImpellerBlendModeDestinationOver, kImpellerBlendModeDifference, kImpellerBlendModeExclusion, kImpellerBlendModeHardLight, kImpellerBlendModeHue, kImpellerBlendModeLighten, kImpellerBlendModeLuminosity, kImpellerBlendModeModulate, kImpellerBlendModeMultiply, kImpellerBlendModeOverlay, kImpellerBlendModePlus, kImpellerBlendModeSaturation, kImpellerBlendModeScreen, kImpellerBlendModeSoftLight, kImpellerBlendModeSource, kImpellerBlendModeSourceATop, kImpellerBlendModeSourceIn, kImpellerBlendModeSourceOut, kImpellerBlendModeSourceOver, kImpellerBlendModeXor, impeller::kLighten, impeller::kLuminosity, impeller::kModulate, impeller::kMultiply, impeller::kOverlay, impeller::kPlus, impeller::kSaturation, impeller::kScreen, impeller::kSoftLight, impeller::kSource, impeller::kSourceATop, impeller::kSourceIn, impeller::kSourceOut, impeller::kSourceOver, and impeller::kXor.

◆ ToImpellerType() [9/11]

constexpr flutter::DlCanvas::ClipOp impeller::interop::ToImpellerType ( ImpellerClipOperation  op)
constexpr

Definition at line 271 of file formats.h.

271  {
272  switch (op) {
274  return flutter::DlCanvas::ClipOp::kDifference;
276  return flutter::DlCanvas::ClipOp::kIntersect;
277  }
278  return flutter::DlCanvas::ClipOp::kDifference;
279 }

References kImpellerClipOperationDifference, and kImpellerClipOperationIntersect.

◆ ToImpellerType() [10/11]

constexpr FillType impeller::interop::ToImpellerType ( ImpellerFillType  type)
constexpr

Definition at line 261 of file formats.h.

261  {
262  switch (type) {
264  return FillType::kNonZero;
266  return FillType::kOdd;
267  }
268  return FillType::kNonZero;
269 }

References kImpellerFillTypeNonZero, kImpellerFillTypeOdd, impeller::kNonZero, impeller::kOdd, and type.

◆ ToImpellerType() [11/11]

constexpr PixelFormat impeller::interop::ToImpellerType ( ImpellerPixelFormat  format)
constexpr

Definition at line 390 of file formats.h.

390  {
391  switch (format) {
393  return PixelFormat::kR8G8B8A8UNormInt;
394  }
395  return PixelFormat::kR8G8B8A8UNormInt;
396 }

References kImpellerPixelFormatRGBA8888, and impeller::kR8G8B8A8UNormInt.

◆ ToSkiaType() [1/7]

constexpr std::optional<SkRect> impeller::interop::ToSkiaType ( const ImpellerRect rect)
constexpr

Definition at line 26 of file formats.h.

26  {
27  if (!rect) {
28  return std::nullopt;
29  }
30  return SkRect::MakeXYWH(rect->x, rect->y, rect->width, rect->height);
31 }

References ImpellerRect::height, ImpellerRect::width, ImpellerRect::x, and ImpellerRect::y.

Referenced by impeller::interop::PathBuilder::AddArc(), impeller::interop::PathBuilder::AddOval(), impeller::interop::PathBuilder::AddRect(), impeller::interop::PathBuilder::AddRoundedRect(), impeller::interop::DisplayListBuilder::ClipOval(), impeller::interop::DisplayListBuilder::ClipRect(), impeller::interop::DisplayListBuilder::ClipRoundedRect(), impeller::interop::PathBuilder::CopyPath(), impeller::interop::PathBuilder::CubicCurveTo(), impeller::interop::DisplayListBuilder::DrawLine(), impeller::interop::DisplayListBuilder::DrawOval(), impeller::interop::DisplayListBuilder::DrawRect(), impeller::interop::DisplayListBuilder::DrawRoundedRect(), impeller::interop::DisplayListBuilder::DrawRoundedRectDifference(), impeller::interop::DisplayListBuilder::DrawTexture(), impeller::interop::DisplayListBuilder::DrawTextureRect(), impeller::interop::PathBuilder::LineTo(), impeller::interop::ColorSource::MakeConicalGradient(), impeller::interop::ColorSource::MakeLinearGradient(), impeller::interop::ColorSource::MakeRadialGradient(), impeller::interop::ColorSource::MakeSweepGradient(), impeller::interop::PathBuilder::MoveTo(), impeller::interop::PathBuilder::QuadraticCurveTo(), impeller::interop::DisplayListBuilder::SaveLayer(), impeller::interop::PathBuilder::TakePath(), and ToSkiaType().

◆ ToSkiaType() [2/7]

constexpr SkPoint impeller::interop::ToSkiaType ( const Point point)
constexpr

Definition at line 33 of file formats.h.

33  {
34  return SkPoint::Make(point.x, point.y);
35 }

References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.

◆ ToSkiaType() [3/7]

constexpr SkRect impeller::interop::ToSkiaType ( const Rect rect)
constexpr

Definition at line 37 of file formats.h.

37  {
38  return SkRect::MakeXYWH(rect.GetX(), //
39  rect.GetY(), //
40  rect.GetWidth(), //
41  rect.GetHeight() //
42  );
43 }

References impeller::TRect< T >::GetHeight(), impeller::TRect< T >::GetWidth(), impeller::TRect< T >::GetX(), and impeller::TRect< T >::GetY().

◆ ToSkiaType() [4/7]

SkRRect impeller::interop::ToSkiaType ( const Rect rect,
const impeller::PathBuilder::RoundingRadii radii 
)
inline

Definition at line 185 of file formats.h.

186  {
187  using Corner = SkRRect::Corner;
188  SkVector sk_radii[4];
189  sk_radii[Corner::kUpperLeft_Corner] = ToSkiaType(radii.top_left);
190  sk_radii[Corner::kUpperRight_Corner] = ToSkiaType(radii.top_right);
191  sk_radii[Corner::kLowerRight_Corner] = ToSkiaType(radii.bottom_right);
192  sk_radii[Corner::kLowerLeft_Corner] = ToSkiaType(radii.bottom_left);
193  SkRRect result;
194  result.setRectRadii(ToSkiaType(rect), sk_radii);
195  return result;
196 }

References impeller::PathBuilder::RoundingRadii::bottom_left, impeller::PathBuilder::RoundingRadii::bottom_right, impeller::PathBuilder::RoundingRadii::top_left, impeller::PathBuilder::RoundingRadii::top_right, and ToSkiaType().

◆ ToSkiaType() [5/7]

template<class SkiaType , class OtherType >
std::vector<SkiaType> impeller::interop::ToSkiaType ( const std::vector< OtherType > &  other_vec)

Definition at line 64 of file formats.h.

64  {
65  std::vector<SkiaType> skia_vec;
66  skia_vec.reserve(other_vec.size());
67  for (const auto& other : other_vec) {
68  skia_vec.emplace_back(ToSkiaType(other));
69  }
70  return skia_vec;
71 }

References ToSkiaType().

◆ ToSkiaType() [6/7]

constexpr SkPathFillType impeller::interop::ToSkiaType ( FillType  type)
constexpr

Definition at line 45 of file formats.h.

45  {
46  switch (type) {
47  case FillType::kNonZero:
48  return SkPathFillType::kWinding;
49  case FillType::kOdd:
50  return SkPathFillType::kEvenOdd;
51  }
52  return SkPathFillType::kWinding;
53 }

References impeller::kNonZero, impeller::kOdd, and type.

◆ ToSkiaType() [7/7]

constexpr SkIRect impeller::interop::ToSkiaType ( IRect  rect)
constexpr

Definition at line 55 of file formats.h.

55  {
56  return SkIRect::MakeXYWH(rect.GetX(), //
57  rect.GetY(), //
58  rect.GetWidth(), //
59  rect.GetHeight() //
60  );
61 }

References impeller::TRect< T >::GetHeight(), impeller::TRect< T >::GetWidth(), impeller::TRect< T >::GetX(), and impeller::TRect< T >::GetY().

◆ ToSkMatrix()

constexpr SkMatrix impeller::interop::ToSkMatrix ( const Matrix matrix)
constexpr

◆ ToTxtType() [1/4]

constexpr txt::FontStyle impeller::interop::ToTxtType ( ImpellerFontStyle  style)
constexpr

Definition at line 448 of file formats.h.

448  {
449  switch (style) {
451  return txt::FontStyle::normal;
453  return txt::FontStyle::italic;
454  }
455  return txt::FontStyle::normal;
456 }

References kImpellerFontStyleItalic, and kImpellerFontStyleNormal.

◆ ToTxtType() [2/4]

constexpr txt::FontWeight impeller::interop::ToTxtType ( ImpellerFontWeight  weight)
constexpr

Definition at line 424 of file formats.h.

424  {
425  switch (weight) {
427  return txt::FontWeight::w100;
429  return txt::FontWeight::w200;
431  return txt::FontWeight::w300;
433  return txt::FontWeight::w400;
435  return txt::FontWeight::w500;
437  return txt::FontWeight::w600;
439  return txt::FontWeight::w700;
441  return txt::FontWeight::w800;
443  return txt::FontWeight::w900;
444  }
445  return txt::FontWeight::w400;
446 }

References kImpellerFontWeight100, kImpellerFontWeight200, kImpellerFontWeight300, kImpellerFontWeight400, kImpellerFontWeight500, kImpellerFontWeight600, kImpellerFontWeight700, kImpellerFontWeight800, and kImpellerFontWeight900.

Referenced by ImpellerParagraphStyleSetFontStyle(), ImpellerParagraphStyleSetFontWeight(), ImpellerParagraphStyleSetTextAlignment(), and ImpellerParagraphStyleSetTextDirection().

◆ ToTxtType() [3/4]

constexpr txt::TextAlign impeller::interop::ToTxtType ( ImpellerTextAlignment  align)
constexpr

Definition at line 458 of file formats.h.

458  {
459  switch (align) {
461  return txt::TextAlign::left;
463  return txt::TextAlign::right;
465  return txt::TextAlign::center;
467  return txt::TextAlign::justify;
469  return txt::TextAlign::start;
471  return txt::TextAlign::end;
472  }
473  return txt::TextAlign::left;
474 }

References kImpellerTextAlignmentCenter, kImpellerTextAlignmentEnd, kImpellerTextAlignmentJustify, kImpellerTextAlignmentLeft, kImpellerTextAlignmentRight, and kImpellerTextAlignmentStart.

◆ ToTxtType() [4/4]

constexpr txt::TextDirection impeller::interop::ToTxtType ( ImpellerTextDirection  direction)
constexpr

Definition at line 476 of file formats.h.

476  {
477  switch (direction) {
479  return txt::TextDirection::rtl;
481  return txt::TextDirection::ltr;
482  }
483  return txt::TextDirection::ltr;
484 }

References kImpellerTextDirectionLTR, and kImpellerTextDirectionRTL.

kImpellerBlendModeColorBurn
@ kImpellerBlendModeColorBurn
Definition: impeller.h:141
ImpellerISize::height
int64_t height
Definition: impeller.h:253
impeller::interop::ToDisplayListType
constexpr flutter::DlColor ToDisplayListType(ImpellerColor color)
Definition: formats.h:415
impeller::interop::ToDisplayListType
constexpr flutter::DlColor ToDisplayListType(Color color)
Definition: formats.h:73
kImpellerStrokeCapSquare
@ kImpellerStrokeCapSquare
Definition: impeller.h:162
kImpellerBlendModeExclusion
@ kImpellerBlendModeExclusion
Definition: impeller.h:145
kImpellerTextAlignmentLeft
@ kImpellerTextAlignmentLeft
Definition: impeller.h:218
kImpellerBlendModeColor
@ kImpellerBlendModeColor
Definition: impeller.h:149
ImpellerMapping::length
uint64_t length
Definition: impeller.h:287
kImpellerTextAlignmentRight
@ kImpellerTextAlignmentRight
Definition: impeller.h:219
ImpellerMatrix::m
float m[16]
Definition: impeller.h:257
ImpellerRoundingRadii::top_right
ImpellerPoint top_right
Definition: impeller.h:267
kImpellerStrokeJoinRound
@ kImpellerStrokeJoinRound
Definition: impeller.h:167
ImpellerPoint::y
float y
Definition: impeller.h:243
kImpellerBlendModeDestinationOver
@ kImpellerBlendModeDestinationOver
Definition: impeller.h:126
kImpellerTextAlignmentEnd
@ kImpellerTextAlignmentEnd
Definition: impeller.h:223
ImpellerTextureDescriptor::mip_count
uint32_t mip_count
Definition: impeller.h:282
impeller::interop::FromImpellerType
constexpr void FromImpellerType(const Matrix &from, ImpellerMatrix &to)
Definition: formats.h:206
kImpellerBlendModeDestinationOut
@ kImpellerBlendModeDestinationOut
Definition: impeller.h:130
kImpellerBlendModeHardLight
@ kImpellerBlendModeHardLight
Definition: impeller.h:142
ImpellerMapping::on_release
ImpellerCallback IMPELLER_NULLABLE on_release
Definition: impeller.h:288
data
std::shared_ptr< const fml::Mapping > data
Definition: texture_gles.cc:63
impeller::interop::ParseColorsAndStops
static std::pair< std::vector< flutter::DlColor >, std::vector< Scalar > > ParseColorsAndStops(uint32_t stop_count, const ImpellerColor *colors, const float *stops)
Definition: impeller.cc:671
kImpellerFontStyleNormal
@ kImpellerFontStyleNormal
Definition: impeller.h:213
kImpellerBlendModeDifference
@ kImpellerBlendModeDifference
Definition: impeller.h:144
kImpellerTextAlignmentStart
@ kImpellerTextAlignmentStart
Definition: impeller.h:222
kImpellerColorSpaceDisplayP3
@ kImpellerColorSpaceDisplayP3
Definition: impeller.h:197
kImpellerFontWeight900
@ kImpellerFontWeight900
Definition: impeller.h:209
kImpellerBlurStyleOuter
@ kImpellerBlurStyleOuter
Definition: impeller.h:190
kImpellerFontWeight600
@ kImpellerFontWeight600
Definition: impeller.h:206
impeller::interop::ToSkiaType
SkRRect ToSkiaType(const Rect &rect, const impeller::PathBuilder::RoundingRadii &radii)
Definition: formats.h:185
impeller::Size
TSize< Scalar > Size
Definition: size.h:137
kImpellerTileModeDecal
@ kImpellerTileModeDecal
Definition: impeller.h:184
ImpellerSize::height
float height
Definition: impeller.h:248
kImpellerFontWeight300
@ kImpellerFontWeight300
Definition: impeller.h:203
kImpellerBlurStyleInner
@ kImpellerBlurStyleInner
Definition: impeller.h:191
impeller::PathBuilder::RoundingRadii::bottom_right
Point bottom_right
Definition: path_builder.h:109
ImpellerColorMatrix::m
float m[20]
Definition: impeller.h:261
kImpellerBlurStyleSolid
@ kImpellerBlurStyleSolid
Definition: impeller.h:189
kImpellerBlendModeSoftLight
@ kImpellerBlendModeSoftLight
Definition: impeller.h:143
impeller::PathBuilder::RoundingRadii
Definition: path_builder.h:105
kImpellerBlendModeHue
@ kImpellerBlendModeHue
Definition: impeller.h:147
kImpellerBlendModeSourceOver
@ kImpellerBlendModeSourceOver
Definition: impeller.h:125
impeller::Point
TPoint< Scalar > Point
Definition: point.h:327
kImpellerFillTypeOdd
@ kImpellerFillTypeOdd
Definition: impeller.h:113
kImpellerClipOperationDifference
@ kImpellerClipOperationDifference
Definition: impeller.h:117
impeller::interop::ToTxtType
constexpr txt::FontWeight ToTxtType(ImpellerFontWeight weight)
Definition: formats.h:424
kImpellerTextDirectionRTL
@ kImpellerTextDirectionRTL
Definition: impeller.h:227
impeller::Context::BackendType::kOpenGLES
@ kOpenGLES
transform
Matrix transform
Definition: gaussian_blur_filter_contents.cc:213
kImpellerBlendModePlus
@ kImpellerBlendModePlus
Definition: impeller.h:134
kImpellerPixelFormatRGBA8888
@ kImpellerPixelFormatRGBA8888
Definition: impeller.h:172
kImpellerClipOperationIntersect
@ kImpellerClipOperationIntersect
Definition: impeller.h:118
impeller::interop::Ref
ScopedObject< Object > Ref(Object *object)
Definition: object.h:145
kImpellerBlendModeOverlay
@ kImpellerBlendModeOverlay
Definition: impeller.h:137
kImpellerBlendModeSourceATop
@ kImpellerBlendModeSourceATop
Definition: impeller.h:131
IMPELLER_VERSION_GET_VARIANT
#define IMPELLER_VERSION_GET_VARIANT(version)
Definition: impeller.h:67
type
GLenum type
Definition: blit_command_gles.cc:127
kImpellerBlendModeSourceOut
@ kImpellerBlendModeSourceOut
Definition: impeller.h:129
kImpellerDrawStyleStroke
@ kImpellerDrawStyleStroke
Definition: impeller.h:155
kImpellerFontWeight100
@ kImpellerFontWeight100
Definition: impeller.h:201
impeller::PathBuilder::RoundingRadii::top_left
Point top_left
Definition: path_builder.h:106
kImpellerFontWeight700
@ kImpellerFontWeight700
Definition: impeller.h:207
kImpellerBlendModeSource
@ kImpellerBlendModeSource
Definition: impeller.h:123
kImpellerBlendModeDestinationATop
@ kImpellerBlendModeDestinationATop
Definition: impeller.h:132
kImpellerBlendModeMultiply
@ kImpellerBlendModeMultiply
Definition: impeller.h:146
kImpellerTextAlignmentJustify
@ kImpellerTextAlignmentJustify
Definition: impeller.h:221
ImpellerRect::width
float width
Definition: impeller.h:237
ImpellerPoint::x
float x
Definition: impeller.h:242
kImpellerFontWeight500
@ kImpellerFontWeight500
Definition: impeller.h:205
kImpellerBlendModeDarken
@ kImpellerBlendModeDarken
Definition: impeller.h:138
kImpellerStrokeJoinBevel
@ kImpellerStrokeJoinBevel
Definition: impeller.h:168
ImpellerSize::width
float width
Definition: impeller.h:247
ImpellerRoundingRadii::bottom_left
ImpellerPoint bottom_left
Definition: impeller.h:266
impeller::interop::AdoptTag::kAdopted
@ kAdopted
impeller::interop::ToImpellerType
constexpr Matrix ToImpellerType(const ImpellerMatrix &m)
Definition: formats.h:198
kImpellerTileModeMirror
@ kImpellerTileModeMirror
Definition: impeller.h:183
kImpellerBlendModeDestination
@ kImpellerBlendModeDestination
Definition: impeller.h:124
IMPELLER_VERSION_GET_PATCH
#define IMPELLER_VERSION_GET_PATCH(version)
Definition: impeller.h:72
ImpellerRoundingRadii::top_left
ImpellerPoint top_left
Definition: impeller.h:265
kImpellerBlendModeDestinationIn
@ kImpellerBlendModeDestinationIn
Definition: impeller.h:128
IMPELLER_VERSION
#define IMPELLER_VERSION
Definition: impeller.h:63
kImpellerFontWeight800
@ kImpellerFontWeight800
Definition: impeller.h:208
ImpellerRect::y
float y
Definition: impeller.h:236
IMPELLER_VERSION_GET_MINOR
#define IMPELLER_VERSION_GET_MINOR(version)
Definition: impeller.h:70
ImpellerTextureDescriptor::pixel_format
ImpellerPixelFormat pixel_format
Definition: impeller.h:280
VALIDATION_LOG
#define VALIDATION_LOG
Definition: validation.h:91
kImpellerBlendModeScreen
@ kImpellerBlendModeScreen
Definition: impeller.h:136
kImpellerStrokeCapRound
@ kImpellerStrokeCapRound
Definition: impeller.h:161
kImpellerBlendModeLighten
@ kImpellerBlendModeLighten
Definition: impeller.h:139
kImpellerTileModeClamp
@ kImpellerTileModeClamp
Definition: impeller.h:181
kImpellerBlendModeModulate
@ kImpellerBlendModeModulate
Definition: impeller.h:135
mask_filter
std::shared_ptr< DlMaskFilter > mask_filter
Definition: dl_golden_blur_unittests.cc:25
impeller::PathBuilder::RoundingRadii::top_right
Point top_right
Definition: path_builder.h:108
ImpellerRect::height
float height
Definition: impeller.h:238
kImpellerBlendModeClear
@ kImpellerBlendModeClear
Definition: impeller.h:122
kImpellerFontWeight200
@ kImpellerFontWeight200
Definition: impeller.h:202
kImpellerFontStyleItalic
@ kImpellerFontStyleItalic
Definition: impeller.h:214
kImpellerStrokeJoinMiter
@ kImpellerStrokeJoinMiter
Definition: impeller.h:166
kImpellerTextureSamplingLinear
@ kImpellerTextureSamplingLinear
Definition: impeller.h:177
kImpellerFillTypeNonZero
@ kImpellerFillTypeNonZero
Definition: impeller.h:112
impeller::PathBuilder::RoundingRadii::bottom_left
Point bottom_left
Definition: path_builder.h:107
impeller::interop::ReadString
static std::string ReadString(const char *string)
Definition: impeller.cc:927
kImpellerTileModeRepeat
@ kImpellerTileModeRepeat
Definition: impeller.h:182
color
DlColor color
Definition: dl_golden_blur_unittests.cc:24
kImpellerColorSpaceExtendedSRGB
@ kImpellerColorSpaceExtendedSRGB
Definition: impeller.h:196
kImpellerBlendModeXor
@ kImpellerBlendModeXor
Definition: impeller.h:133
kImpellerFontWeight400
@ kImpellerFontWeight400
Definition: impeller.h:204
ImpellerRect::x
float x
Definition: impeller.h:235
ImpellerMapping::data
const uint8_t *IMPELLER_NONNULL data
Definition: impeller.h:286
ImpellerISize::width
int64_t width
Definition: impeller.h:252
kImpellerBlendModeColorDodge
@ kImpellerBlendModeColorDodge
Definition: impeller.h:140
kImpellerBlendModeSourceIn
@ kImpellerBlendModeSourceIn
Definition: impeller.h:127
impeller::interop::Adopt
ScopedObject< Object > Adopt(typename Object::InteropCSibling *object)
Definition: object.h:155
kImpellerStrokeCapButt
@ kImpellerStrokeCapButt
Definition: impeller.h:160
impeller::interop::GetVersionAsString
static std::string GetVersionAsString(uint32_t version)
Definition: impeller.cc:58
kImpellerBlendModeLuminosity
@ kImpellerBlendModeLuminosity
Definition: impeller.h:150
kImpellerTextAlignmentCenter
@ kImpellerTextAlignmentCenter
Definition: impeller.h:220
kImpellerDrawStyleFill
@ kImpellerDrawStyleFill
Definition: impeller.h:154
kImpellerBlurStyleNormal
@ kImpellerBlurStyleNormal
Definition: impeller.h:188
kImpellerColorSpaceSRGB
@ kImpellerColorSpaceSRGB
Definition: impeller.h:195
IMPELLER_VERSION_GET_MAJOR
#define IMPELLER_VERSION_GET_MAJOR(version)
Definition: impeller.h:68
ImpellerTextureDescriptor::size
ImpellerISize size
Definition: impeller.h:281
kImpellerBlendModeSaturation
@ kImpellerBlendModeSaturation
Definition: impeller.h:148
impeller::interop::ToImpellerType
constexpr ISize ToImpellerType(const ImpellerISize &size)
Definition: formats.h:398
kImpellerTextDirectionLTR
@ kImpellerTextDirectionLTR
Definition: impeller.h:228
ImpellerRoundingRadii::bottom_right
ImpellerPoint bottom_right
Definition: impeller.h:268
kImpellerTextureSamplingNearestNeighbor
@ kImpellerTextureSamplingNearestNeighbor
Definition: impeller.h:176
kImpellerDrawStyleStrokeAndFill
@ kImpellerDrawStyleStrokeAndFill
Definition: impeller.h:156
ImpellerGetVersion
IMPELLER_EXPORT uint32_t ImpellerGetVersion()
Definition: impeller.cc:68