Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
flutter::IOSContextMetalSkia Class Referencefinal

#include <ios_context_metal_skia.h>

Inheritance diagram for flutter::IOSContextMetalSkia:
flutter::IOSContext

Public Member Functions

 IOSContextMetalSkia ()
 
 ~IOSContextMetalSkia ()
 
fml::scoped_nsobject< FlutterDarwinContextMetalSkiaGetDarwinContext () const
 
IOSRenderingBackend GetBackend () const override
 Get the rendering backend used by this context. More...
 
sk_sp< GrDirectContextGetMainContext () const override
 Accessor for the Skia context associated with IOSSurfaces and the raster thread. More...
 
sk_sp< GrDirectContextGetResourceContext () const
 
- Public Member Functions inherited from flutter::IOSContext
virtual ~IOSContext ()
 Collects the context object. This must happen on the thread on which this object was created. More...
 
virtual IOSRenderingBackend GetBackend () const
 Get the rendering backend used by this context. More...
 
virtual sk_sp< GrDirectContextCreateResourceContext ()=0
 Create a resource context for use on the IO task runner. This resource context is used by Skia to upload texture to asynchronously and collect resources that are no longer needed on the render task runner. More...
 
virtual std::unique_ptr< GLContextResultMakeCurrent ()=0
 When using client rendering APIs whose contexts need to be bound to a specific thread, the engine will call this method to give the on-screen context a chance to bind to the current thread. More...
 
virtual std::unique_ptr< TextureCreateExternalTexture (int64_t texture_id, fml::scoped_nsobject< NSObject< FlutterTexture > > texture)=0
 Creates an external texture proxy of the appropriate client rendering API. More...
 
virtual sk_sp< GrDirectContextGetMainContext () const =0
 Accessor for the Skia context associated with IOSSurfaces and the raster thread. More...
 
virtual std::shared_ptr< impeller::ContextGetImpellerContext () const
 

Additional Inherited Members

- Static Public Member Functions inherited from flutter::IOSContext
static std::unique_ptr< IOSContextCreate (IOSRenderingAPI api, IOSRenderingBackend backend, const std::shared_ptr< const fml::SyncSwitch > &is_gpu_disabled_sync_switch)
 Create an iOS context object capable of creating the on-screen and off-screen GPU context for use by Skia. More...
 
- Protected Member Functions inherited from flutter::IOSContext
 IOSContext ()
 

Detailed Description

Definition at line 21 of file ios_context_metal_skia.h.

Constructor & Destructor Documentation

◆ IOSContextMetalSkia()

flutter::IOSContextMetalSkia::IOSContextMetalSkia ( )
explicit

◆ ~IOSContextMetalSkia()

flutter::IOSContextMetalSkia::~IOSContextMetalSkia ( )
default

Member Function Documentation

◆ GetBackend()

IOSRenderingBackend flutter::IOSContextMetalSkia::GetBackend ( ) const
overridevirtual

Get the rendering backend used by this context.

Returns
The rendering backend.

Reimplemented from flutter::IOSContext.

Definition at line 30 of file ios_context_metal_skia.mm.

◆ GetDarwinContext()

fml::scoped_nsobject< FlutterDarwinContextMetalSkia > flutter::IOSContextMetalSkia::GetDarwinContext ( ) const

Definition at line 26 of file ios_context_metal_skia.mm.

26 {
27 return darwin_context_metal_;
28}

◆ GetMainContext()

sk_sp< GrDirectContext > flutter::IOSContextMetalSkia::GetMainContext ( ) const
overridevirtual

Accessor for the Skia context associated with IOSSurfaces and the raster thread.

There can be any number of resource contexts but this is the one context that will be used by surfaces to draw to the screen from the raster thread.

Returns
nullptr on failure.
Attention
The software context doesn't have a Skia context, so this value will be nullptr.
See also
For contexts which are used for offscreen work like loading textures see IOSContext::CreateResourceContext.

Implements flutter::IOSContext.

Definition at line 34 of file ios_context_metal_skia.mm.

34 {
35 return darwin_context_metal_.get().mainContext;
36}
T get() const __attribute((ns_returns_not_retained))

◆ GetResourceContext()

sk_sp< GrDirectContext > flutter::IOSContextMetalSkia::GetResourceContext ( ) const

Definition at line 38 of file ios_context_metal_skia.mm.

38 {
39 return darwin_context_metal_.get().resourceContext;
40}

The documentation for this class was generated from the following files: