| Flutter Impeller |

Namespaces | Classes | Enumerations | Functions
impeller::interop Namespace Reference

## Namespaces
| testing

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

## Enumerations
enum class | AdoptTag { kAdopted }

## Functions
constexpr std::optional< SkRect > | ToSkiaType (const ImpellerRect *rect)
constexpr SkPoint | ToSkiaType (const Point &point)
constexpr SkVector | ToSkiaVector (const Size &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 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 Size | ToImpellerSize (const ImpellerPoint &point)
constexpr Rect | ToImpellerType (const ImpellerRect &rect)
constexpr flutter::DlTileMode | ToDisplayListType (ImpellerTileMode mode)
constexpr 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 | ImpellerDisplayListBuilderTransform (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 ImpellerColorSource | ImpellerColorSourceCreateImageNew (ImpellerTexture image, ImpellerTileMode horizontal_tile_mode, ImpellerTileMode vertical_tile_mode, ImpellerTextureSampling sampling, 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)
IMPELLER_EXTERN_C void | ImpellerPaintSetColorFilter (ImpellerPaint paint, ImpellerColorFilter color_filter)
IMPELLER_EXTERN_C void | ImpellerPaintSetColorSource (ImpellerPaint paint, ImpellerColorSource color_source)
IMPELLER_EXTERN_C void | ImpellerPaintSetImageFilter (ImpellerPaint paint, ImpellerImageFilter image_filter)
IMPELLER_EXTERN_C 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)
IMPELLER_EXTERN_C bool | ImpellerTypographyContextRegisterFont (ImpellerTypographyContext context, const ImpellerMapping *contents, void *contents_on_release_user_data, const char *family_name_alias)
template<typename Object >
ScopedObject< Object > | Ref (Object *object)
template<typename Object >
ScopedObject< Object > | Adopt (Object *object)
template<typename Object >
ScopedObject< Object > | Adopt (typename Object::InteropCSibling *object)
template<typename Object , typename... CtorArgs>
ScopedObject< Object > | Create (CtorArgs &&... args)
static sk_sp< SkTypeface > | CreateTypefaceFromFontData (std::unique_ptr< fml::Mapping > font_data)

## Enumeration Type Documentation

## ◆ AdoptTag

enum impeller::interop::AdoptTag
| strong

Enumerator
kAdopted |

Definition at line 62 of file object.h.

62 {
63 kAdopted,
64 };
impeller::interop::AdoptTag::kAdopted
@ kAdopted

## 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 }
impeller::interop::Adopt
ScopedObject< Object > Adopt(typename Object::InteropCSibling *object)
Definition: object.h:155

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().

## ◆ CreateTypefaceFromFontData()

static sk_sp<SkTypeface> impeller::interop::CreateTypefaceFromFontData | ( | std::unique_ptr< fml::Mapping > | font_data | ) |
| static

Definition at line 43 of file typography_context.cc.

44 {
45 if (!font_data) {
46 VALIDATION_LOG << "Invalid font data.";
47 return nullptr;
48 }
49 auto sk_data_context = font_data.release();
50 auto sk_data = SkData::MakeWithProc(
51 sk_data_context->GetMapping(), // data ptr
52 sk_data_context->GetSize(), // data size
53 [](const void*, void* context) {
54 delete reinterpret_cast<decltype(sk_data_context)>(context);
55 }, // release callback
56 sk_data_context // release callback context
57 );
58 auto sk_data_stream = SkMemoryStream::Make(sk_data);
59 auto sk_typeface =
60 txt::GetDefaultFontManager()->makeFromStream(std::move(sk_data_stream));
61 if (!sk_typeface) {
62 VALIDATION_LOG << "Could not create typeface with data.";
63 return nullptr;
64 }
65 return sk_typeface;
66 }
VALIDATION_LOG
#define VALIDATION_LOG
Definition: validation.h:91

References VALIDATION_LOG.

Referenced by impeller::interop::TypographyContext::RegisterFont().

## ◆ 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 209 of file formats.h.

209 {
210 to.m[0] = from.m[0];
211 to.m[1] = from.m[1];
212 to.m[2] = from.m[2];
213 to.m[3] = from.m[3];
214 to.m[4] = from.m[4];
215 to.m[5] = from.m[5];
216 to.m[6] = from.m[6];
217 to.m[7] = from.m[7];
218 to.m[8] = from.m[8];
219 to.m[9] = from.m[9];
220 to.m[10] = from.m[10];
221 to.m[11] = from.m[11];
222 to.m[12] = from.m[12];
223 to.m[13] = from.m[13];
224 to.m[14] = from.m[14];
225 to.m[15] = from.m[15];
226 }
ImpellerMatrix::m
float m[16]
Definition: impeller.h:473

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 }
IMPELLER_VERSION_GET_PATCH
#define IMPELLER_VERSION_GET_PATCH(version)
Definition: impeller.h:133
IMPELLER_VERSION_GET_MAJOR
#define IMPELLER_VERSION_GET_MAJOR(version)
Definition: impeller.h:117
IMPELLER_VERSION_GET_VARIANT
#define IMPELLER_VERSION_GET_VARIANT(version)
Definition: impeller.h:110
IMPELLER_VERSION_GET_MINOR
#define IMPELLER_VERSION_GET_MINOR(version)
Definition: impeller.h:125

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 813 of file impeller.cc.

815 {
816 return ColorFilter::MakeBlend(ToImpellerType(*color),
817 ToImpellerType(blend_mode))
818 .Leak();
819 }
impeller::interop::ToImpellerType
constexpr Matrix ToImpellerType(const ImpellerMatrix &m)
Definition: formats.h:201

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

## ◆ ImpellerColorFilterCreateColorMatrixNew()

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

Definition at line 822 of file impeller.cc.

823 {
824 return ColorFilter::MakeMatrix(color_matrix->m).Leak();
825 }
ImpellerColorMatrix::m
float m[20]
Definition: impeller.h:535

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

## ◆ ImpellerColorFilterRelease()

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

Definition at line 808 of file impeller.cc.

808 {
809 ObjectBase::SafeRelease(color_filter);
810 }

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

## ◆ ImpellerColorFilterRetain()

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

Definition at line 803 of file impeller.cc.

803 {
804 ObjectBase::SafeRetain(color_filter);
805 }

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 735 of file impeller.cc.

744 {
745 const auto colors_and_stops = ParseColorsAndStops(stop_count, colors, stops);
746 return ColorSource::MakeConicalGradient(
747 ToImpellerType(*start_center), //
748 start_radius, //
749 ToImpellerType(*end_center), //
750 end_radius, //
751 colors_and_stops.first, //
752 colors_and_stops.second, //
753 ToDisplayListType(tile_mode), //
754 transformation == nullptr ? Matrix{}
755 : ToImpellerType(*transformation) //
756 )
757 .Leak();
758 }
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:674
impeller::interop::ToDisplayListType
constexpr flutter::DlColor ToDisplayListType(Color color)
Definition: formats.h:77

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

## ◆ ImpellerColorSourceCreateImageNew()

IMPELLER_EXTERN_C ImpellerColorSource impeller::interop::ImpellerColorSourceCreateImageNew | ( | ImpellerTexture | image,
|  | ImpellerTileMode | horizontal_tile_mode,
|  | ImpellerTileMode | vertical_tile_mode,
|  | ImpellerTextureSampling | sampling,
|  | const ImpellerMatrix * | transformation
| ) |  |

Definition at line 785 of file impeller.cc.

790 {
791 return ColorSource::MakeImage(
792 *GetPeer(image), //
793 ToDisplayListType(horizontal_tile_mode), //
794 ToDisplayListType(vertical_tile_mode), //
795 ToDisplayListType(sampling), //
796 transformation == nullptr ? Matrix{}
797 : ToImpellerType(*transformation) //
798 )
799 .Leak();
800 }

References impeller::interop::ColorSource::MakeImage(), 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 691 of file impeller.cc.

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

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 713 of file impeller.cc.

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

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 761 of file impeller.cc.

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

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

## ◆ ImpellerColorSourceRelease()

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

Definition at line 669 of file impeller.cc.

669 {
670 ObjectBase::SafeRelease(color_source);
671 }

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

## ◆ ImpellerColorSourceRetain()

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

Definition at line 664 of file impeller.cc.

664 {
665 ObjectBase::SafeRetain(color_source);
666 }

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 ("
79 << GetVersionAsString(ImpellerGetVersion()) << ") "
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 }
ImpellerGetVersion
IMPELLER_EXPORT uint32_t ImpellerGetVersion()
Get the version of Impeller standalone API. This is the API that will be accepted for validity checks...
IMPELLER_VERSION
#define IMPELLER_VERSION
Definition: impeller.h:101
impeller::interop::GetVersionAsString
static std::string GetVersionAsString(uint32_t version)
Definition: impeller.cc:58

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 314 of file impeller.cc.

316 {
317 GetPeer(builder)->ClipOval(ToImpellerType(*oval_bounds), ToImpellerType(op));
318 }

References ToImpellerType().

## ◆ ImpellerDisplayListBuilderClipPath()

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

Definition at line 333 of file impeller.cc.

335 {
336 GetPeer(builder)->ClipPath(*GetPeer(path), ToImpellerType(op));
337 }

References ToImpellerType().

## ◆ ImpellerDisplayListBuilderClipRect()

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

Definition at line 307 of file impeller.cc.

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

References ToImpellerType().

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

## ◆ ImpellerDisplayListBuilderClipRoundedRect()

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

Definition at line 321 of file impeller.cc.

325 {
326 GetPeer(builder)->ClipRoundedRect(ToImpellerType(*rect), //
327 ToImpellerType(*radii), //
328 ToImpellerType(op) //
329 );
330 }

References ToImpellerType().

## ◆ ImpellerDisplayListBuilderCreateDisplayListNew()

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

Definition at line 589 of file impeller.cc.

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

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 407 of file impeller.cc.

413 {
414 GetPeer(builder)->DrawDashedLine(ToImpellerType(*from), //
415 ToImpellerType(*to), //
416 on_length, //
417 off_length, //
418 *GetPeer(paint) //
419 );
420 }

References ToImpellerType().

## ◆ ImpellerDisplayListBuilderDrawDisplayList()

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

Definition at line 599 of file impeller.cc.

602 {
603 GetPeer(builder)->DrawDisplayList(*GetPeer(display_list), opacity);
604 }

## ◆ ImpellerDisplayListBuilderDrawLine()

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

Definition at line 396 of file impeller.cc.

399 {
400 GetPeer(builder)->DrawLine(ToImpellerType(*from), //
401 ToImpellerType(*to), //
402 *GetPeer(paint) //
403 );
404 }

References ToImpellerType().

## ◆ ImpellerDisplayListBuilderDrawOval()

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

Definition at line 430 of file impeller.cc.

432 {
433 GetPeer(builder)->DrawOval(ToImpellerType(*oval_bounds), *GetPeer(paint));
434 }

References ToImpellerType().

## ◆ ImpellerDisplayListBuilderDrawPaint()

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

Definition at line 390 of file impeller.cc.

391 {
392 GetPeer(builder)->DrawPaint(*GetPeer(paint));
393 }

## ◆ ImpellerDisplayListBuilderDrawParagraph()

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

Definition at line 1005 of file impeller.cc.

1007 {
1008 GetPeer(builder)->DrawParagraph(*GetPeer(paragraph), ToImpellerType(*point));
1009 }

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 465 of file impeller.cc.

467 {
468 GetPeer(builder)->DrawPath(*GetPeer(path), *GetPeer(paint));
469 }

## ◆ ImpellerDisplayListBuilderDrawRect()

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

Definition at line 423 of file impeller.cc.

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

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 437 of file impeller.cc.

441 {
442 GetPeer(builder)->DrawRoundedRect(ToImpellerType(*rect), //
443 ToImpellerType(*radii), //
444 *GetPeer(paint) //
445 );
446 }

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 449 of file impeller.cc.

455 {
456 GetPeer(builder)->DrawRoundedRectDifference(ToImpellerType(*outer_rect), //
457 ToImpellerType(*outer_radii), //
458 ToImpellerType(*inner_rect), //
459 ToImpellerType(*inner_radii), //
460 *GetPeer(paint) //
461 );
462 }

References ToImpellerType().

## ◆ ImpellerDisplayListBuilderDrawTexture()

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

Definition at line 635 of file impeller.cc.

639 {
640 GetPeer(builder)->DrawTexture(*GetPeer(texture), //
641 ToImpellerType(*point), //
642 ToDisplayListType(sampling), //
643 GetPeer(paint) //
644 );
645 }

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 648 of file impeller.cc.

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

References ToDisplayListType(), and ToImpellerType().

## ◆ ImpellerDisplayListBuilderGetSaveCount()

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

Definition at line 189 of file impeller.cc.

190 {
191 return GetPeer(builder)->GetSaveCount();
192 }

## ◆ ImpellerDisplayListBuilderGetTransform()

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

Definition at line 177 of file impeller.cc.

178 {
179 FromImpellerType(GetPeer(builder)->GetTransform(), *out_transform);
180 }
impeller::interop::FromImpellerType
constexpr void FromImpellerType(const Matrix &from, ImpellerMatrix &to)
Definition: formats.h:209

References FromImpellerType().

## ◆ 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().

## ◆ ImpellerDisplayListBuilderResetTransform()

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

Definition at line 183 of file impeller.cc.

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

## ◆ ImpellerDisplayListBuilderRestore()

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

Definition at line 140 of file impeller.cc.

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

## ◆ ImpellerDisplayListBuilderRestoreToCount()

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

Definition at line 195 of file impeller.cc.

197 {
198 GetPeer(builder)->RestoreToCount(count);
199 }

## ◆ 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 }

## ◆ 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 }
impeller::Size
TSize< Scalar > Size
Definition: size.h:171

## ◆ 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 }
transform
Matrix transform
Definition: gaussian_blur_filter_contents.cc:214

References ToImpellerType(), and transform.

## ◆ ImpellerDisplayListBuilderTransform()

IMPELLER_EXTERN_C void impeller::interop::ImpellerDisplayListBuilderTransform | ( | ImpellerDisplayListBuilder | builder,
|  | const ImpellerMatrix * | transform
| ) |  |

Definition at line 171 of file impeller.cc.

172 {
173 GetPeer(builder)->Transform(ToImpellerType(*transform));
174 }

References ToImpellerType(), and transform.

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

## ◆ 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 }
impeller::Point
TPoint< Scalar > Point
Definition: point.h:327

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

## ◆ ImpellerDisplayListRelease()

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

Definition at line 584 of file impeller.cc.

584 {
585 ObjectBase::SafeRelease(display_list);
586 }

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

## ◆ ImpellerDisplayListRetain()

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

Definition at line 579 of file impeller.cc.

579 {
580 ObjectBase::SafeRetain(display_list);
581 }

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 854 of file impeller.cc.

857 {
858 return ImageFilter::MakeBlur(x_sigma, y_sigma, ToDisplayListType(tile_mode))
859 .Leak();
860 }

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

## ◆ ImpellerImageFilterCreateComposeNew()

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

Definition at line 884 of file impeller.cc.

886 {
887 return ImageFilter::MakeCompose(*GetPeer(outer), *GetPeer(inner)).Leak();
888 }

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

## ◆ ImpellerImageFilterCreateDilateNew()

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

Definition at line 863 of file impeller.cc.

864 {
865 return ImageFilter::MakeDilate(x_radius, y_radius).Leak();
866 }

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

## ◆ ImpellerImageFilterCreateErodeNew()

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

Definition at line 869 of file impeller.cc.

870 {
871 return ImageFilter::MakeErode(x_radius, y_radius).Leak();
872 }

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

## ◆ ImpellerImageFilterCreateMatrixNew()

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

Definition at line 875 of file impeller.cc.

877 {
878 return ImageFilter::MakeMatrix(ToImpellerType(*matrix),
879 ToDisplayListType(sampling))
880 .Leak();
881 }

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

## ◆ ImpellerImageFilterRelease()

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

Definition at line 849 of file impeller.cc.

849 {
850 ObjectBase::SafeRelease(image_filter);
851 }

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

## ◆ ImpellerImageFilterRetain()

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

Definition at line 844 of file impeller.cc.

844 {
845 ObjectBase::SafeRetain(image_filter);
846 }

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

## ◆ ImpellerMaskFilterCreateBlurNew()

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

Definition at line 838 of file impeller.cc.

839 {
840 return MaskFilter::MakeBlur(ToDisplayListType(style), sigma).Leak();
841 }

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

## ◆ ImpellerMaskFilterRelease()

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

Definition at line 833 of file impeller.cc.

833 {
834 ObjectBase::SafeRelease(mask_filter);
835 }

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

## ◆ ImpellerMaskFilterRetain()

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

Definition at line 828 of file impeller.cc.

828 {
829 ObjectBase::SafeRetain(mask_filter);
830 }

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

## ◆ ImpellerPaintNew()

IMPELLER_EXTERN_C ImpellerPaint impeller::interop::ImpellerPaintNew | ( |  | ) |

Definition at line 340 of file impeller.cc.

340 {
341 return Create<Paint>().Leak();
342 }

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

## ◆ ImpellerPaintRelease()

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

Definition at line 350 of file impeller.cc.

350 {
351 ObjectBase::SafeRelease(paint);
352 }

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

## ◆ ImpellerPaintRetain()

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

Definition at line 345 of file impeller.cc.

345 {
346 ObjectBase::SafeRetain(paint);
347 }

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

## ◆ ImpellerPaintSetBlendMode()

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

Definition at line 360 of file impeller.cc.

360 {
361 GetPeer(paint)->SetBlendMode(ToImpellerType(mode));
362 }

References ToImpellerType().

## ◆ ImpellerPaintSetColor()

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

Definition at line 355 of file impeller.cc.

355 {
356 GetPeer(paint)->SetColor(ToDisplayListType(*color));
357 }

References ToDisplayListType().

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

## ◆ ImpellerPaintSetColorFilter()

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

Definition at line 891 of file impeller.cc.

892 {
893 GetPeer(paint)->SetColorFilter(*GetPeer(color_filter));
894 }

## ◆ ImpellerPaintSetColorSource()

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

Definition at line 897 of file impeller.cc.

898 {
899 GetPeer(paint)->SetColorSource(*GetPeer(color_source));
900 }

## ◆ ImpellerPaintSetDrawStyle()

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

Definition at line 365 of file impeller.cc.

365 {
366 GetPeer(paint)->SetDrawStyle(ToDisplayListType(style));
367 }

References ToDisplayListType().

## ◆ ImpellerPaintSetImageFilter()

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

Definition at line 903 of file impeller.cc.

904 {
905 GetPeer(paint)->SetImageFilter(*GetPeer(image_filter));
906 }

## ◆ ImpellerPaintSetMaskFilter()

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

Definition at line 909 of file impeller.cc.

910 {
911 GetPeer(paint)->SetMaskFilter(*GetPeer(mask_filter));
912 }

## ◆ ImpellerPaintSetStrokeCap()

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

Definition at line 370 of file impeller.cc.

370 {
371 GetPeer(paint)->SetStrokeCap(ToDisplayListType(cap));
372 }

References ToDisplayListType().

## ◆ ImpellerPaintSetStrokeJoin()

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

Definition at line 375 of file impeller.cc.

375 {
376 GetPeer(paint)->SetStrokeJoin(ToDisplayListType(join));
377 }

References ToDisplayListType().

## ◆ ImpellerPaintSetStrokeMiter()

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

Definition at line 385 of file impeller.cc.

385 {
386 GetPeer(paint)->SetStrokeMiter(miter);
387 }

## ◆ ImpellerPaintSetStrokeWidth()

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

Definition at line 380 of file impeller.cc.

380 {
381 GetPeer(paint)->SetStrokeWidth(width);
382 }

## ◆ ImpellerParagraphBuilderAddText()

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

Definition at line 1049 of file impeller.cc.

1051 {
1052 if (data == nullptr) {
1053 length = 0;
1054 }
1055 if (length == 0) {
1056 return;
1057 }
1058 GetPeer(paragraph_builder)->AddText(data, length);
1059 }
data
std::shared_ptr< const fml::Mapping > data
Definition: texture_gles.cc:64

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 1062 of file impeller.cc.

1064 {
1065 return GetPeer(paragraph_builder)->Build(width).Leak();
1066 }

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

## ◆ ImpellerParagraphBuilderNew()

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

Definition at line 1012 of file impeller.cc.

1013 {
1014 auto builder =
1015 Create<ParagraphBuilder>(Ref<TypographyContext>(GetPeer(context)));
1016 if (!builder->IsValid()) {
1017 VALIDATION_LOG << "Could not create valid paragraph builder.";
1018 return nullptr;
1019 }
1020 return builder.Leak();
1021 }

References VALIDATION_LOG.

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

## ◆ ImpellerParagraphBuilderPopStyle()

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

Definition at line 1043 of file impeller.cc.

1044 {
1045 GetPeer(paragraph_builder)->PopStyle();
1046 }

## ◆ ImpellerParagraphBuilderPushStyle()

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

Definition at line 1036 of file impeller.cc.

1038 {
1039 GetPeer(paragraph_builder)->PushStyle(*GetPeer(style));
1040 }

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

## ◆ ImpellerParagraphBuilderRelease()

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

Definition at line 1030 of file impeller.cc.

1031 {
1032 ObjectBase::SafeRelease(paragraph_builder);
1033 }

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

## ◆ ImpellerParagraphBuilderRetain()

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

Definition at line 1024 of file impeller.cc.

1025 {
1026 ObjectBase::SafeRetain(paragraph_builder);
1027 }

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

## ◆ ImpellerParagraphGetAlphabeticBaseline()

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

Definition at line 1109 of file impeller.cc.

1109 {
1110 return GetPeer(paragraph)->GetAlphabeticBaseline();
1111 }

## ◆ ImpellerParagraphGetHeight()

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

Definition at line 1084 of file impeller.cc.

1084 {
1085 return GetPeer(paragraph)->GetHeight();
1086 }

## ◆ ImpellerParagraphGetIdeographicBaseline()

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

Definition at line 1104 of file impeller.cc.

1104 {
1105 return GetPeer(paragraph)->GetIdeographicBaseline();
1106 }

## ◆ ImpellerParagraphGetLineCount()

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

Definition at line 1114 of file impeller.cc.

1114 {
1115 return GetPeer(paragraph)->GetLineCount();
1116 }

## ◆ ImpellerParagraphGetLongestLineWidth()

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

Definition at line 1089 of file impeller.cc.

1089 {
1090 return GetPeer(paragraph)->GetLongestLineWidth();
1091 }

## ◆ ImpellerParagraphGetMaxIntrinsicWidth()

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

Definition at line 1099 of file impeller.cc.

1099 {
1100 return GetPeer(paragraph)->GetMaxIntrinsicWidth();
1101 }

## ◆ ImpellerParagraphGetMaxWidth()

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

Definition at line 1079 of file impeller.cc.

1079 {
1080 return GetPeer(paragraph)->GetMaxWidth();
1081 }

## ◆ ImpellerParagraphGetMinIntrinsicWidth()

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

Definition at line 1094 of file impeller.cc.

1094 {
1095 return GetPeer(paragraph)->GetMinIntrinsicWidth();
1096 }

## ◆ ImpellerParagraphRelease()

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

Definition at line 1074 of file impeller.cc.

1074 {
1075 ObjectBase::SafeRelease(paragraph);
1076 }

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

## ◆ ImpellerParagraphRetain()

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

Definition at line 1069 of file impeller.cc.

1069 {
1070 ObjectBase::SafeRetain(paragraph);
1071 }

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

## ◆ ImpellerParagraphStyleNew()

IMPELLER_EXTERN_C ImpellerParagraphStyle impeller::interop::ImpellerParagraphStyleNew | ( |  | ) |

Definition at line 915 of file impeller.cc.

915 {
916 return Create<ParagraphStyle>().Leak();
917 }

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

## ◆ ImpellerParagraphStyleRelease()

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

Definition at line 925 of file impeller.cc.

925 {
926 ObjectBase::SafeRelease(paragraph_style);
927 }

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

## ◆ ImpellerParagraphStyleRetain()

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

Definition at line 920 of file impeller.cc.

920 {
921 ObjectBase::SafeRetain(paragraph_style);
922 }

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

## ◆ ImpellerParagraphStyleSetBackground()

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

Definition at line 936 of file impeller.cc.

937 {
938 GetPeer(paragraph_style)->SetBackground(Ref(GetPeer(paint)));
939 }
impeller::interop::Ref
ScopedObject< Object > Ref(Object *object)
Definition: object.h:145

References Ref().

## ◆ ImpellerParagraphStyleSetFontFamily()

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

Definition at line 961 of file impeller.cc.

962 {
963 GetPeer(paragraph_style)->SetFontFamily(ReadString(family_name));
964 }
impeller::interop::ReadString
static std::string ReadString(const char *string)
Definition: impeller.cc:953

References ReadString().

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

## ◆ ImpellerParagraphStyleSetFontSize()

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

Definition at line 967 of file impeller.cc.

968 {
969 GetPeer(paragraph_style)->SetFontSize(size);
970 }

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

## ◆ ImpellerParagraphStyleSetFontStyle()

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

Definition at line 948 of file impeller.cc.

949 {
950 GetPeer(paragraph_style)->SetFontStyle(ToTxtType(style));
951 }
impeller::interop::ToTxtType
constexpr txt::FontWeight ToTxtType(ImpellerFontWeight weight)
Definition: formats.h:430

References ToTxtType().

## ◆ ImpellerParagraphStyleSetFontWeight()

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

Definition at line 942 of file impeller.cc.

943 {
944 GetPeer(paragraph_style)->SetFontWeight(ToTxtType(weight));
945 }

References ToTxtType().

## ◆ ImpellerParagraphStyleSetForeground()

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

Definition at line 930 of file impeller.cc.

931 {
932 GetPeer(paragraph_style)->SetForeground(Ref(GetPeer(paint)));
933 }

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 973 of file impeller.cc.

974 {
975 GetPeer(paragraph_style)->SetHeight(height);
976 }

## ◆ ImpellerParagraphStyleSetLocale()

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

Definition at line 999 of file impeller.cc.

1000 {
1001 GetPeer(paragraph_style)->SetLocale(ReadString(locale));
1002 }

References ReadString().

## ◆ ImpellerParagraphStyleSetMaxLines()

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

Definition at line 993 of file impeller.cc.

994 {
995 GetPeer(paragraph_style)->SetMaxLines(max_lines);
996 }

## ◆ ImpellerParagraphStyleSetTextAlignment()

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

Definition at line 979 of file impeller.cc.

981 {
982 GetPeer(paragraph_style)->SetTextAlignment(ToTxtType(align));
983 }

References ToTxtType().

## ◆ ImpellerParagraphStyleSetTextDirection()

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

Definition at line 986 of file impeller.cc.

988 {
989 GetPeer(paragraph_style)->SetTextDirection(ToTxtType(direction));
990 }

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 264 of file impeller.cc.

267 {
268 GetPeer(builder)->AddArc(ToImpellerType(*oval_bounds), //
269 Degrees{start_angle_degrees}, //
270 Degrees{end_angle_degrees} //
271 );
272 }

References ToImpellerType().

## ◆ ImpellerPathBuilderAddOval()

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

Definition at line 275 of file impeller.cc.

276 {
277 GetPeer(builder)->AddOval(ToImpellerType(*oval_bounds));
278 }

References ToImpellerType().

## ◆ ImpellerPathBuilderAddRect()

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

Definition at line 258 of file impeller.cc.

259 {
260 GetPeer(builder)->AddRect(ToImpellerType(*rect));
261 }

References ToImpellerType().

## ◆ ImpellerPathBuilderAddRoundedRect()

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

Definition at line 281 of file impeller.cc.

284 {
285 GetPeer(builder)->AddRoundedRect(ToImpellerType(*rect),
286 ToImpellerType(*rounding_radii));
287 }

References ToImpellerType().

## ◆ ImpellerPathBuilderClose()

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

Definition at line 290 of file impeller.cc.

290 {
291 GetPeer(builder)->Close();
292 }

## ◆ ImpellerPathBuilderCopyPathNew()

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

Definition at line 295 of file impeller.cc.

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

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 247 of file impeller.cc.

250 {
251 GetPeer(builder)->CubicCurveTo(ToImpellerType(*control_point_1), //
252 ToImpellerType(*control_point_2), //
253 ToImpellerType(*end_point) //
254 );
255 }

References ToImpellerType().

## ◆ ImpellerPathBuilderLineTo()

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

Definition at line 233 of file impeller.cc.

234 {
235 GetPeer(builder)->LineTo(ToImpellerType(*location));
236 }

References ToImpellerType().

## ◆ ImpellerPathBuilderMoveTo()

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

Definition at line 227 of file impeller.cc.

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

References ToImpellerType().

## ◆ ImpellerPathBuilderNew()

IMPELLER_EXTERN_C ImpellerPathBuilder impeller::interop::ImpellerPathBuilderNew | ( |  | ) |

Definition at line 212 of file impeller.cc.

212 {
213 return Create<PathBuilder>().Leak();
214 }

## ◆ ImpellerPathBuilderQuadraticCurveTo()

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

Definition at line 239 of file impeller.cc.

241 {
242 GetPeer(builder)->QuadraticCurveTo(ToImpellerType(*control_point),
243 ToImpellerType(*end_point));
244 }

References ToImpellerType().

## ◆ ImpellerPathBuilderRelease()

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

Definition at line 222 of file impeller.cc.

222 {
223 ObjectBase::SafeRelease(builder);
224 }

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

## ◆ ImpellerPathBuilderRetain()

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

Definition at line 217 of file impeller.cc.

217 {
218 ObjectBase::SafeRetain(builder);
219 }

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

## ◆ ImpellerPathBuilderTakePathNew()

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

Definition at line 301 of file impeller.cc.

302 {
303 return GetPeer(builder)->TakePath(ToImpellerType(fill)).Leak();
304 }

References ToImpellerType().

## ◆ ImpellerPathRelease()

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

Definition at line 207 of file impeller.cc.

207 {
208 ObjectBase::SafeRelease(path);
209 }

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

## ◆ ImpellerPathRetain()

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

Definition at line 202 of file impeller.cc.

202 {
203 ObjectBase::SafeRetain(path);
204 }

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 607 of file impeller.cc.

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

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 629 of file impeller.cc.

630 {
631 return GetPeer(surface)->DrawDisplayList(*GetPeer(display_list));
632 }

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

## ◆ ImpellerSurfaceRelease()

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

Definition at line 624 of file impeller.cc.

624 {
625 ObjectBase::SafeRelease(surface);
626 }

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

## ◆ ImpellerSurfaceRetain()

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

Definition at line 619 of file impeller.cc.

619 {
620 ObjectBase::SafeRetain(surface);
621 }

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 472 of file impeller.cc.

476 {
477 TextureDescriptor desc;
478 desc.storage_mode = StorageMode::kDevicePrivate;
479 desc.type = TextureType::kTexture2D;
480 desc.format = ToImpellerType(descriptor->pixel_format);
481 desc.size = ToImpellerType(descriptor->size);
482 desc.mip_count = std::min(descriptor->mip_count, 1u);
483 desc.usage = TextureUsage::kShaderRead;
484 desc.compression_type = CompressionType::kLossless;
485 auto texture = Create<Texture>(*GetPeer(context), desc);
486 if (!texture->IsValid()) {
487 VALIDATION_LOG << "Could not create texture.";
488 return nullptr;
489 }
490 // Depending on whether the de-allocation can be delayed, it may be possible
491 // to avoid a data copy.
492 if (contents->on_release) {
493 // Avoids data copy.
494 auto wrapped_contents = std::make_shared<fml::NonOwnedMapping>(
495 contents->data, // data ptr
496 contents->length, // data length
497 [on_release = contents->on_release, contents_on_release_user_data](
498 auto, auto) {
499 on_release(contents_on_release_user_data);
500 } // release callback
501 );
502 if (!texture->SetContents(std::move(wrapped_contents))) {
503 VALIDATION_LOG << "Could not set texture contents.";
504 return nullptr;
505 }
506 } else {
507 // May copy.
508 if (!texture->SetContents(contents->data, contents->length)) {
509 VALIDATION_LOG << "Could not set texture contents.";
510 return nullptr;
511 }
512 }
513 return texture.Leak();
514 }
ImpellerMapping::on_release
ImpellerCallback IMPELLER_NULLABLE on_release
Definition: impeller.h:562
ImpellerMapping::length
uint64_t length
Definition: impeller.h:561
ImpellerMapping::data
const uint8_t *IMPELLER_NONNULL data
Definition: impeller.h:560
ImpellerTextureDescriptor::mip_count
uint32_t mip_count
Definition: impeller.h:556
ImpellerTextureDescriptor::pixel_format
ImpellerPixelFormat pixel_format
Definition: impeller.h:554
ImpellerTextureDescriptor::size
ImpellerISize size
Definition: impeller.h:555

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 517 of file impeller.cc.

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

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, VALIDATION_LOG, and impeller::TextureGLES::WrapTexture().

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

## ◆ ImpellerTextureGetOpenGLHandle()

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

Definition at line 566 of file impeller.cc.

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

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 561 of file impeller.cc.

561 {
562 ObjectBase::SafeRelease(texture);
563 }

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

## ◆ ImpellerTextureRetain()

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

Definition at line 556 of file impeller.cc.

556 {
557 ObjectBase::SafeRetain(texture);
558 }

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

## ◆ ImpellerTypographyContextNew()

IMPELLER_EXTERN_C ImpellerTypographyContext impeller::interop::ImpellerTypographyContextNew | ( |  | ) |

Definition at line 1119 of file impeller.cc.

1119 {
1120 auto context = Create<TypographyContext>();
1121 if (!context->IsValid()) {
1122 VALIDATION_LOG << "Could not create typography context.";
1123 return nullptr;
1124 }
1125 return Create<TypographyContext>().Leak();
1126 }

References VALIDATION_LOG.

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

## ◆ ImpellerTypographyContextRegisterFont()

IMPELLER_EXTERN_C bool impeller::interop::ImpellerTypographyContextRegisterFont | ( | ImpellerTypographyContext | context,
|  | const ImpellerMapping * | contents,
|  | void * | contents_on_release_user_data,
|  | const char * | family_name_alias
| ) |  |

Definition at line 1139 of file impeller.cc.

1142 {
1143 auto wrapped_contents = std::make_unique<fml::NonOwnedMapping>(
1144 contents->data, // data ptr
1145 contents->length, // data length
1146 [on_release = contents->on_release, contents_on_release_user_data](auto,
1147 auto) {
1148 on_release(contents_on_release_user_data);
1149 } // release callback
1150 );
1151 return GetPeer(context)->RegisterFont(std::move(wrapped_contents),
1152 family_name_alias);
1153 }

References ImpellerMapping::data, ImpellerMapping::length, and ImpellerMapping::on_release.

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

## ◆ ImpellerTypographyContextRelease()

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

Definition at line 1134 of file impeller.cc.

1134 {
1135 ObjectBase::SafeRelease(context);
1136 }

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

## ◆ ImpellerTypographyContextRetain()

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

Definition at line 1129 of file impeller.cc.

1129 {
1130 ObjectBase::SafeRetain(context);
1131 }

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 674 of file impeller.cc.

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

References ToDisplayListType().

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

## ◆ ReadString()

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

Definition at line 953 of file impeller.cc.

953 {
954 if (string == nullptr) {
955 return "";
956 }
957 return std::string{string};
958 }

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 124 of file formats.h.

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

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]

constexpr flutter::DlColor impeller::interop::ToDisplayListType | ( | Color | color | ) |
| constexpr

Definition at line 77 of file formats.h.

77 {
78 return flutter::DlColor::RGBA(color.red, //
79 color.green, //
80 color.blue, //
81 color.alpha //
82 );
83 }

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

Referenced by ImpellerColorSourceCreateConicalGradientNew(), ImpellerColorSourceCreateImageNew(), ImpellerColorSourceCreateLinearGradientNew(), ImpellerColorSourceCreateRadialGradientNew(), ImpellerColorSourceCreateSweepGradientNew(), ImpellerDisplayListBuilderDrawTexture(), ImpellerDisplayListBuilderDrawTextureRect(), ImpellerImageFilterCreateBlurNew(), ImpellerImageFilterCreateMatrixNew(), ImpellerMaskFilterCreateBlurNew(), ImpellerPaintSetColor(), ImpellerPaintSetDrawStyle(), ImpellerPaintSetStrokeCap(), ImpellerPaintSetStrokeJoin(), impeller::interop::ColorFilter::MakeBlend(), ParseColorsAndStops(), impeller::interop::Paint::SetBlendMode(), and ToDisplayListType().

## ◆ ToDisplayListType() [3/11]

template<class DlType , class OtherType >

std::vector<DlType> impeller::interop::ToDisplayListType | ( | const std::vector< OtherType > & | other_vec | ) |

Definition at line 90 of file formats.h.

90 {
91 std::vector<DlType> dl_vec;
92 dl_vec.reserve(other_vec.size());
93 for (const auto& other : other_vec) {
94 dl_vec.emplace_back(ToDisplayListType(other));
95 }
96 return dl_vec;
97 }
impeller::interop::ToDisplayListType
constexpr flutter::DlColor ToDisplayListType(ImpellerColor color)
Definition: formats.h:421

References ToDisplayListType().

## ◆ ToDisplayListType() [4/11]

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

Definition at line 110 of file formats.h.

110 {
111 switch (style) {
112 case kImpellerBlurStyleNormal:
113 return flutter::DlBlurStyle::kNormal;
114 case kImpellerBlurStyleSolid:
115 return flutter::DlBlurStyle::kSolid;
116 case kImpellerBlurStyleOuter:
117 return flutter::DlBlurStyle::kOuter;
118 case kImpellerBlurStyleInner:
119 return flutter::DlBlurStyle::kInner;
120 }
121 return flutter::DlBlurStyle::kNormal;
122 }
kImpellerBlurStyleNormal
@ kImpellerBlurStyleNormal
Definition: impeller.h:394
kImpellerBlurStyleOuter
@ kImpellerBlurStyleOuter
Definition: impeller.h:396
kImpellerBlurStyleInner
@ kImpellerBlurStyleInner
Definition: impeller.h:397
kImpellerBlurStyleSolid
@ kImpellerBlurStyleSolid
Definition: impeller.h:395

References kImpellerBlurStyleInner, kImpellerBlurStyleNormal, kImpellerBlurStyleOuter, and kImpellerBlurStyleSolid.

## ◆ ToDisplayListType() [5/11]

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

Definition at line 421 of file formats.h.

421 {
422 return flutter::DlColor(color.alpha, //
423 color.red, //
424 color.green, //
425 color.blue, //
426 ToDisplayListType(color.color_space) //
427 );
428 }
ImpellerColor::blue
float blue
Definition: impeller.h:548
ImpellerColor::alpha
float alpha
Definition: impeller.h:549
ImpellerColor::red
float red
Definition: impeller.h:546
ImpellerColor::green
float green
Definition: impeller.h:547
ImpellerColor::color_space
ImpellerColorSpace color_space
Definition: impeller.h:550

References ImpellerColor::alpha, ImpellerColor::blue, ImpellerColor::color_space, ImpellerColor::green, ImpellerColor::red, and ToDisplayListType().

## ◆ ToDisplayListType() [6/11]

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

Definition at line 408 of file formats.h.

409 {
410 switch (color_space) {
411 case kImpellerColorSpaceSRGB:
412 return flutter::DlColorSpace::kSRGB;
413 case kImpellerColorSpaceExtendedSRGB:
414 return flutter::DlColorSpace::kExtendedSRGB;
415 case kImpellerColorSpaceDisplayP3:
416 return flutter::DlColorSpace::kDisplayP3;
417 }
418 return flutter::DlColorSpace::kSRGB;
419 }
kImpellerColorSpaceExtendedSRGB
@ kImpellerColorSpaceExtendedSRGB
Definition: impeller.h:402
kImpellerColorSpaceSRGB
@ kImpellerColorSpaceSRGB
Definition: impeller.h:401
kImpellerColorSpaceDisplayP3
@ kImpellerColorSpaceDisplayP3
Definition: impeller.h:403

References kImpellerColorSpaceDisplayP3, kImpellerColorSpaceExtendedSRGB, and kImpellerColorSpaceSRGB.

## ◆ ToDisplayListType() [7/11]

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

Definition at line 360 of file formats.h.

360 {
361 switch (style) {
362 case kImpellerDrawStyleFill:
363 return flutter::DlDrawStyle::kFill;
364 case kImpellerDrawStyleStroke:
365 return flutter::DlDrawStyle::kStroke;
366 case kImpellerDrawStyleStrokeAndFill:
367 return flutter::DlDrawStyle::kStrokeAndFill;
368 }
369 return flutter::DlDrawStyle::kFill;
370 }
kImpellerDrawStyleStroke
@ kImpellerDrawStyleStroke
Definition: impeller.h:361
kImpellerDrawStyleFill
@ kImpellerDrawStyleFill
Definition: impeller.h:360
kImpellerDrawStyleStrokeAndFill
@ kImpellerDrawStyleStrokeAndFill
Definition: impeller.h:362

References kImpellerDrawStyleFill, kImpellerDrawStyleStroke, and kImpellerDrawStyleStrokeAndFill.

## ◆ ToDisplayListType() [8/11]

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

Definition at line 372 of file formats.h.

372 {
373 switch (cap) {
374 case kImpellerStrokeCapButt:
375 return flutter::DlStrokeCap::kButt;
376 case kImpellerStrokeCapRound:
377 return flutter::DlStrokeCap::kRound;
378 case kImpellerStrokeCapSquare:
379 return flutter::DlStrokeCap::kSquare;
380 }
381 return flutter::DlStrokeCap::kButt;
382 }
kImpellerStrokeCapButt
@ kImpellerStrokeCapButt
Definition: impeller.h:366
kImpellerStrokeCapRound
@ kImpellerStrokeCapRound
Definition: impeller.h:367
kImpellerStrokeCapSquare
@ kImpellerStrokeCapSquare
Definition: impeller.h:368

References kImpellerStrokeCapButt, kImpellerStrokeCapRound, and kImpellerStrokeCapSquare.

## ◆ ToDisplayListType() [9/11]

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

Definition at line 384 of file formats.h.

384 {
385 switch (join) {
386 case kImpellerStrokeJoinMiter:
387 return flutter::DlStrokeJoin::kMiter;
388 case kImpellerStrokeJoinRound:
389 return flutter::DlStrokeJoin::kRound;
390 case kImpellerStrokeJoinBevel:
391 return flutter::DlStrokeJoin::kBevel;
392 }
393 return flutter::DlStrokeJoin::kMiter;
394 }
kImpellerStrokeJoinRound
@ kImpellerStrokeJoinRound
Definition: impeller.h:373
kImpellerStrokeJoinBevel
@ kImpellerStrokeJoinBevel
Definition: impeller.h:374
kImpellerStrokeJoinMiter
@ kImpellerStrokeJoinMiter
Definition: impeller.h:372

References kImpellerStrokeJoinBevel, kImpellerStrokeJoinMiter, and kImpellerStrokeJoinRound.

## ◆ ToDisplayListType() [10/11]

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

Definition at line 99 of file formats.h.

100 {
101 switch (sampling) {
102 case kImpellerTextureSamplingNearestNeighbor:
103 return flutter::DlImageSampling::kNearestNeighbor;
104 case kImpellerTextureSamplingLinear:
105 return flutter::DlImageSampling::kLinear;
106 }
107 return flutter::DlImageSampling::kLinear;
108 }
kImpellerTextureSamplingNearestNeighbor
@ kImpellerTextureSamplingNearestNeighbor
Definition: impeller.h:382
kImpellerTextureSamplingLinear
@ kImpellerTextureSamplingLinear
Definition: impeller.h:383

References kImpellerTextureSamplingLinear, and kImpellerTextureSamplingNearestNeighbor.

## ◆ ToDisplayListType() [11/11]

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

Definition at line 244 of file formats.h.

244 {
245 switch (mode) {
246 case kImpellerTileModeClamp:
247 return flutter::DlTileMode::kClamp;
248 case kImpellerTileModeRepeat:
249 return flutter::DlTileMode::kRepeat;
250 case kImpellerTileModeMirror:
251 return flutter::DlTileMode::kMirror;
252 case kImpellerTileModeDecal:
253 return flutter::DlTileMode::kDecal;
254 }
255 return flutter::DlTileMode::kClamp;
256 }
kImpellerTileModeMirror
@ kImpellerTileModeMirror
Definition: impeller.h:389
kImpellerTileModeClamp
@ kImpellerTileModeClamp
Definition: impeller.h:387
kImpellerTileModeRepeat
@ kImpellerTileModeRepeat
Definition: impeller.h:388
kImpellerTileModeDecal
@ kImpellerTileModeDecal
Definition: impeller.h:390

References kImpellerTileModeClamp, kImpellerTileModeDecal, kImpellerTileModeMirror, and kImpellerTileModeRepeat.

## ◆ ToImpellerSize()

constexpr Size impeller::interop::ToImpellerSize | ( | const ImpellerPoint & | point | ) |
| constexpr

Definition at line 236 of file formats.h.

236 {
237 return Size{point.x, point.y};
238 }
ImpellerPoint::x
float x
Definition: impeller.h:448
ImpellerPoint::y
float y
Definition: impeller.h:449

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

Referenced by ToImpellerType().

## ◆ ToImpellerType() [1/11]

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

Definition at line 287 of file formats.h.

287 {
288 Color result;
289 result.red = color.red;
290 result.green = color.green;
291 result.blue = color.blue;
292 result.alpha = color.alpha;
293 return result;
294 }

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

## ◆ ToImpellerType() [2/11]

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

Definition at line 404 of file formats.h.

404 {
405 return ISize::MakeWH(size.width, size.height);
406 }
ImpellerISize::height
int64_t height
Definition: impeller.h:459
ImpellerISize::width
int64_t width
Definition: impeller.h:458

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 201 of file formats.h.

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

References ImpellerMatrix::m.

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

## ◆ ToImpellerType() [4/11]

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

Definition at line 232 of file formats.h.

232 {
233 return Point{point.x, point.y};
234 }

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

## ◆ ToImpellerType() [5/11]

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

Definition at line 240 of file formats.h.

240 {
241 return Rect::MakeXYWH(rect.x, rect.y, rect.width, rect.height);
242 }
ImpellerRect::x
float x
Definition: impeller.h:441
ImpellerRect::width
float width
Definition: impeller.h:443
ImpellerRect::height
float height
Definition: impeller.h:444
ImpellerRect::y
float y
Definition: impeller.h:442

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

## ◆ ToImpellerType() [6/11]

constexpr RoundingRadii impeller::interop::ToImpellerType | ( | const ImpellerRoundingRadii & | radii | ) |
| constexpr

Definition at line 258 of file formats.h.

258 {
259 auto result = RoundingRadii{};
260 result.top_left = ToImpellerSize(radii.top_left);
261 result.bottom_left = ToImpellerSize(radii.bottom_left);
262 result.top_right = ToImpellerSize(radii.top_right);
263 result.bottom_right = ToImpellerSize(radii.bottom_right);
264 return result;
265 }
impeller::interop::ToImpellerSize
constexpr Size ToImpellerSize(const ImpellerPoint &point)
Definition: formats.h:236
ImpellerRoundingRadii::top_left
ImpellerPoint top_left
Definition: impeller.h:539
ImpellerRoundingRadii::top_right
ImpellerPoint top_right
Definition: impeller.h:541
ImpellerRoundingRadii::bottom_left
ImpellerPoint bottom_left
Definition: impeller.h:540
ImpellerRoundingRadii::bottom_right
ImpellerPoint bottom_right
Definition: impeller.h:542

References ImpellerRoundingRadii::bottom_left, ImpellerRoundingRadii::bottom_right, ToImpellerSize(), impeller::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 228 of file formats.h.

228 {
229 return Size{size.width, size.height};
230 }
ImpellerSize::height
float height
Definition: impeller.h:454
ImpellerSize::width
float width
Definition: impeller.h:453

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

## ◆ ToImpellerType() [8/11]

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

Definition at line 296 of file formats.h.

296 {
297 switch (mode) {
298 case kImpellerBlendModeClear:
299 return BlendMode::kClear;
300 case kImpellerBlendModeSource:
301 return BlendMode::kSource;
302 case kImpellerBlendModeDestination:
303 return BlendMode::kDestination;
304 case kImpellerBlendModeSourceOver:
305 return BlendMode::kSourceOver;
306 case kImpellerBlendModeDestinationOver:
307 return BlendMode::kDestinationOver;
308 case kImpellerBlendModeSourceIn:
309 return BlendMode::kSourceIn;
310 case kImpellerBlendModeDestinationIn:
311 return BlendMode::kDestinationIn;
312 case kImpellerBlendModeSourceOut:
313 return BlendMode::kSourceOut;
314 case kImpellerBlendModeDestinationOut:
315 return BlendMode::kDestinationOut;
316 case kImpellerBlendModeSourceATop:
317 return BlendMode::kSourceATop;
318 case kImpellerBlendModeDestinationATop:
319 return BlendMode::kDestinationATop;
320 case kImpellerBlendModeXor:
321 return BlendMode::kXor;
322 case kImpellerBlendModePlus:
323 return BlendMode::kPlus;
324 case kImpellerBlendModeModulate:
325 return BlendMode::kModulate;
326 case kImpellerBlendModeScreen:
327 return BlendMode::kScreen;
328 case kImpellerBlendModeOverlay:
329 return BlendMode::kOverlay;
330 case kImpellerBlendModeDarken:
331 return BlendMode::kDarken;
332 case kImpellerBlendModeLighten:
333 return BlendMode::kLighten;
334 case kImpellerBlendModeColorDodge:
335 return BlendMode::kColorDodge;
336 case kImpellerBlendModeColorBurn:
337 return BlendMode::kColorBurn;
338 case kImpellerBlendModeHardLight:
339 return BlendMode::kHardLight;
340 case kImpellerBlendModeSoftLight:
341 return BlendMode::kSoftLight;
342 case kImpellerBlendModeDifference:
343 return BlendMode::kDifference;
344 case kImpellerBlendModeExclusion:
345 return BlendMode::kExclusion;
346 case kImpellerBlendModeMultiply:
347 return BlendMode::kMultiply;
348 case kImpellerBlendModeHue:
349 return BlendMode::kHue;
350 case kImpellerBlendModeSaturation:
351 return BlendMode::kSaturation;
352 case kImpellerBlendModeColor:
353 return BlendMode::kColor;
354 case kImpellerBlendModeLuminosity:
355 return BlendMode::kLuminosity;
356 }
357 return BlendMode::kSourceOver;
358 }
kImpellerBlendModeSaturation
@ kImpellerBlendModeSaturation
Definition: impeller.h:354
kImpellerBlendModeSoftLight
@ kImpellerBlendModeSoftLight
Definition: impeller.h:349
kImpellerBlendModeHardLight
@ kImpellerBlendModeHardLight
Definition: impeller.h:348
kImpellerBlendModeLuminosity
@ kImpellerBlendModeLuminosity
Definition: impeller.h:356
kImpellerBlendModeLighten
@ kImpellerBlendModeLighten
Definition: impeller.h:345
kImpellerBlendModeModulate
@ kImpellerBlendModeModulate
Definition: impeller.h:341
kImpellerBlendModeSourceIn
@ kImpellerBlendModeSourceIn
Definition: impeller.h:333
kImpellerBlendModeDifference
@ kImpellerBlendModeDifference
Definition: impeller.h:350
kImpellerBlendModeClear
@ kImpellerBlendModeClear
Definition: impeller.h:328
kImpellerBlendModeColor
@ kImpellerBlendModeColor
Definition: impeller.h:355
kImpellerBlendModeMultiply
@ kImpellerBlendModeMultiply
Definition: impeller.h:352
kImpellerBlendModeSourceATop
@ kImpellerBlendModeSourceATop
Definition: impeller.h:337
kImpellerBlendModeDestinationOut
@ kImpellerBlendModeDestinationOut
Definition: impeller.h:336
kImpellerBlendModeScreen
@ kImpellerBlendModeScreen
Definition: impeller.h:342
kImpellerBlendModeExclusion
@ kImpellerBlendModeExclusion
Definition: impeller.h:351
kImpellerBlendModeColorBurn
@ kImpellerBlendModeColorBurn
Definition: impeller.h:347
kImpellerBlendModeDarken
@ kImpellerBlendModeDarken
Definition: impeller.h:344
kImpellerBlendModePlus
@ kImpellerBlendModePlus
Definition: impeller.h:340
kImpellerBlendModeOverlay
@ kImpellerBlendModeOverlay
Definition: impeller.h:343
kImpellerBlendModeDestinationIn
@ kImpellerBlendModeDestinationIn
Definition: impeller.h:334
kImpellerBlendModeDestinationATop
@ kImpellerBlendModeDestinationATop
Definition: impeller.h:338
kImpellerBlendModeDestination
@ kImpellerBlendModeDestination
Definition: impeller.h:330
kImpellerBlendModeSourceOver
@ kImpellerBlendModeSourceOver
Definition: impeller.h:331
kImpellerBlendModeXor
@ kImpellerBlendModeXor
Definition: impeller.h:339
kImpellerBlendModeColorDodge
@ kImpellerBlendModeColorDodge
Definition: impeller.h:346
kImpellerBlendModeDestinationOver
@ kImpellerBlendModeDestinationOver
Definition: impeller.h:332
kImpellerBlendModeSource
@ kImpellerBlendModeSource
Definition: impeller.h:329
kImpellerBlendModeSourceOut
@ kImpellerBlendModeSourceOut
Definition: impeller.h:335
kImpellerBlendModeHue
@ kImpellerBlendModeHue
Definition: impeller.h:353

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 277 of file formats.h.

277 {
278 switch (op) {
279 case kImpellerClipOperationDifference:
280 return flutter::DlCanvas::ClipOp::kDifference;
281 case kImpellerClipOperationIntersect:
282 return flutter::DlCanvas::ClipOp::kIntersect;
283 }
284 return flutter::DlCanvas::ClipOp::kDifference;
285 }
kImpellerClipOperationIntersect
@ kImpellerClipOperationIntersect
Definition: impeller.h:324
kImpellerClipOperationDifference
@ kImpellerClipOperationDifference
Definition: impeller.h:323

References kImpellerClipOperationDifference, and kImpellerClipOperationIntersect.

## ◆ ToImpellerType() [10/11]

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

Definition at line 267 of file formats.h.

267 {
268 switch (type) {
269 case kImpellerFillTypeNonZero:
270 return FillType::kNonZero;
271 case kImpellerFillTypeOdd:
272 return FillType::kOdd;
273 }
274 return FillType::kNonZero;
275 }
type
GLenum type
Definition: blit_command_gles.cc:151
kImpellerFillTypeOdd
@ kImpellerFillTypeOdd
Definition: impeller.h:319
kImpellerFillTypeNonZero
@ kImpellerFillTypeNonZero
Definition: impeller.h:318

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

## ◆ ToImpellerType() [11/11]

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

Definition at line 396 of file formats.h.

396 {
397 switch (format) {
398 case kImpellerPixelFormatRGBA8888:
399 return PixelFormat::kR8G8B8A8UNormInt;
400 }
401 return PixelFormat::kR8G8B8A8UNormInt;
402 }
kImpellerPixelFormatRGBA8888
@ kImpellerPixelFormatRGBA8888
Definition: impeller.h:378

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::PathBuilder::CopyPath(), impeller::interop::PathBuilder::CubicCurveTo(), impeller::interop::PathBuilder::LineTo(), impeller::interop::PathBuilder::MoveTo(), impeller::interop::PathBuilder::QuadraticCurveTo(), 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 41 of file formats.h.

41 {
42 return SkRect::MakeXYWH(rect.GetX(), //
43 rect.GetY(), //
44 rect.GetWidth(), //
45 rect.GetHeight() //
46 );
47 }

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 RoundingRadii & | radii
| ) |  |
| inline

Definition at line 189 of file formats.h.

189 {
190 using Corner = SkRRect::Corner;
191 SkVector sk_radii[4];
192 sk_radii[Corner::kUpperLeft_Corner] = ToSkiaVector(radii.top_left);
193 sk_radii[Corner::kUpperRight_Corner] = ToSkiaVector(radii.top_right);
194 sk_radii[Corner::kLowerRight_Corner] = ToSkiaVector(radii.bottom_right);
195 sk_radii[Corner::kLowerLeft_Corner] = ToSkiaVector(radii.bottom_left);
196 SkRRect result;
197 result.setRectRadii(ToSkiaType(rect), sk_radii);
198 return result;
199 }
impeller::interop::ToSkiaType
SkRRect ToSkiaType(const Rect &rect, const RoundingRadii &radii)
Definition: formats.h:189
impeller::interop::ToSkiaVector
constexpr SkVector ToSkiaVector(const Size &point)
Definition: formats.h:37

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

## ◆ ToSkiaType() [5/7]

template<class SkiaType , class OtherType >

std::vector<SkiaType> impeller::interop::ToSkiaType | ( | const std::vector< OtherType > & | other_vec | ) |

Definition at line 68 of file formats.h.

68 {
69 std::vector<SkiaType> skia_vec;
70 skia_vec.reserve(other_vec.size());
71 for (const auto& other : other_vec) {
72 skia_vec.emplace_back(ToSkiaType(other));
73 }
74 return skia_vec;
75 }

References ToSkiaType().

## ◆ ToSkiaType() [6/7]

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

Definition at line 49 of file formats.h.

49 {
50 switch (type) {
51 case FillType::kNonZero:
52 return SkPathFillType::kWinding;
53 case FillType::kOdd:
54 return SkPathFillType::kEvenOdd;
55 }
56 return SkPathFillType::kWinding;
57 }

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

## ◆ ToSkiaType() [7/7]

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

Definition at line 59 of file formats.h.

59 {
60 return SkIRect::MakeXYWH(rect.GetX(), //
61 rect.GetY(), //
62 rect.GetWidth(), //
63 rect.GetHeight() //
64 );
65 }

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

## ◆ ToSkiaVector()

constexpr SkVector impeller::interop::ToSkiaVector | ( | const Size & | point | ) |
| constexpr

Definition at line 37 of file formats.h.

37 {
38 return SkVector::Make(point.width, point.height);
39 }

References impeller::TSize< T >::height, and impeller::TSize< T >::width.

Referenced by ToSkiaType().

## ◆ ToSkMatrix()

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

Definition at line 85 of file formats.h.

85 {
86 return SkM44::ColMajor(matrix.m).asM33();
87 }

References impeller::Matrix::m.

## ◆ ToTxtType() [1/4]

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

Definition at line 454 of file formats.h.

454 {
455 switch (style) {
456 case kImpellerFontStyleNormal:
457 return txt::FontStyle::normal;
458 case kImpellerFontStyleItalic:
459 return txt::FontStyle::italic;
460 }
461 return txt::FontStyle::normal;
462 }
kImpellerFontStyleItalic
@ kImpellerFontStyleItalic
Definition: impeller.h:420
kImpellerFontStyleNormal
@ kImpellerFontStyleNormal
Definition: impeller.h:419

References kImpellerFontStyleItalic, and kImpellerFontStyleNormal.

## ◆ ToTxtType() [2/4]

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

Definition at line 430 of file formats.h.

430 {
431 switch (weight) {
432 case kImpellerFontWeight100:
433 return txt::FontWeight::w100;
434 case kImpellerFontWeight200:
435 return txt::FontWeight::w200;
436 case kImpellerFontWeight300:
437 return txt::FontWeight::w300;
438 case kImpellerFontWeight400:
439 return txt::FontWeight::w400;
440 case kImpellerFontWeight500:
441 return txt::FontWeight::w500;
442 case kImpellerFontWeight600:
443 return txt::FontWeight::w600;
444 case kImpellerFontWeight700:
445 return txt::FontWeight::w700;
446 case kImpellerFontWeight800:
447 return txt::FontWeight::w800;
448 case kImpellerFontWeight900:
449 return txt::FontWeight::w900;
450 }
451 return txt::FontWeight::w400;
452 }
kImpellerFontWeight400
@ kImpellerFontWeight400
Definition: impeller.h:410
kImpellerFontWeight500
@ kImpellerFontWeight500
Definition: impeller.h:411
kImpellerFontWeight700
@ kImpellerFontWeight700
Definition: impeller.h:413
kImpellerFontWeight200
@ kImpellerFontWeight200
Definition: impeller.h:408
kImpellerFontWeight300
@ kImpellerFontWeight300
Definition: impeller.h:409
kImpellerFontWeight900
@ kImpellerFontWeight900
Definition: impeller.h:415
kImpellerFontWeight800
@ kImpellerFontWeight800
Definition: impeller.h:414
kImpellerFontWeight600
@ kImpellerFontWeight600
Definition: impeller.h:412
kImpellerFontWeight100
@ kImpellerFontWeight100
Definition: impeller.h:407

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 464 of file formats.h.

464 {
465 switch (align) {
466 case kImpellerTextAlignmentLeft:
467 return txt::TextAlign::left;
468 case kImpellerTextAlignmentRight:
469 return txt::TextAlign::right;
470 case kImpellerTextAlignmentCenter:
471 return txt::TextAlign::center;
472 case kImpellerTextAlignmentJustify:
473 return txt::TextAlign::justify;
474 case kImpellerTextAlignmentStart:
475 return txt::TextAlign::start;
476 case kImpellerTextAlignmentEnd:
477 return txt::TextAlign::end;
478 }
479 return txt::TextAlign::left;
480 }
kImpellerTextAlignmentJustify
@ kImpellerTextAlignmentJustify
Definition: impeller.h:427
kImpellerTextAlignmentLeft
@ kImpellerTextAlignmentLeft
Definition: impeller.h:424
kImpellerTextAlignmentCenter
@ kImpellerTextAlignmentCenter
Definition: impeller.h:426
kImpellerTextAlignmentRight
@ kImpellerTextAlignmentRight
Definition: impeller.h:425
kImpellerTextAlignmentStart
@ kImpellerTextAlignmentStart
Definition: impeller.h:428
kImpellerTextAlignmentEnd
@ kImpellerTextAlignmentEnd
Definition: impeller.h:429

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

## ◆ ToTxtType() [4/4]

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

Definition at line 482 of file formats.h.

482 {
483 switch (direction) {
484 case kImpellerTextDirectionRTL:
485 return txt::TextDirection::rtl;
486 case kImpellerTextDirectionLTR:
487 return txt::TextDirection::ltr;
488 }
489 return txt::TextDirection::ltr;
490 }
kImpellerTextDirectionLTR
@ kImpellerTextDirectionLTR
Definition: impeller.h:434
kImpellerTextDirectionRTL
@ kImpellerTextDirectionRTL
Definition: impeller.h:433

References kImpellerTextDirectionLTR, and kImpellerTextDirectionRTL.