| Flutter Impeller |

Public Member Functions | List of all members
impeller::interop::SurfaceMTL Class Referencefinal

`#include <surface_mtl.h>`

Inheritance diagram for impeller::interop::SurfaceMTL:

## Public Member Functions
| SurfaceMTL (Context &context, void *metal_drawable)
| SurfaceMTL (Context &context, std::shared_ptr< impeller::Surface > surface)
| ~SurfaceMTL ()
| SurfaceMTL (const SurfaceMTL &)=delete
SurfaceMTL & | operator= (const SurfaceMTL &)=delete
Public Member Functions inherited from impeller::interop::Surface
| ~Surface () override
| Surface (const Surface &)=delete
Surface & | operator= (const Surface &)=delete
bool | IsValid () const
bool | DrawDisplayList (const DisplayList &dl) const
bool | Present () const
Public Member Functions inherited from impeller::interop::ObjectBase
| ObjectBase ()=default
virtual | ~ObjectBase ()=default
| ObjectBase (const ObjectBase &)=delete
| ObjectBase (ObjectBase &&)=delete
ObjectBase & | operator= (const ObjectBase &)=delete
ObjectBase & | operator= (ObjectBase &&)=delete
void | Retain ()
void | Release ()
uint64_t | GetRefCountForTests () const

## Additional Inherited Members
Public Types inherited from impeller::interop::Object< Surface, IMPELLER_INTERNAL_HANDLE_NAME(ImpellerSurface)>
using | InteropClass = Surface
using | InteropCSibling = IMPELLER_INTERNAL_HANDLE_NAME(ImpellerSurface)
Static Public Member Functions inherited from impeller::interop::ObjectBase
static void | SafeRetain (void *ptr)
static void | SafeRelease (void *ptr)
Protected Member Functions inherited from impeller::interop::Surface
| Surface (Context &context, std::shared_ptr< impeller::Surface > surface)

## Detailed Description

Definition at line 12 of file surface_mtl.h.

## Constructor & Destructor Documentation

## ◆ SurfaceMTL() [1/3]

impeller::interop::SurfaceMTL::SurfaceMTL | ( | Context & | context,
|  | void * | metal_drawable
| ) |  |

Definition at line 12 of file surface_mtl.mm.

13 : SurfaceMTL(context,
14 impeller::SurfaceMTL::MakeFromMetalLayerDrawable(
15 context.GetContext(),
16 (__bridge id<CAMetalDrawable>)metal_drawable,
17 reinterpret_cast<interop::ContextMTL*>(&context)
18 ->GetSwapchainTransients())) {}
impeller::SurfaceMTL::MakeFromMetalLayerDrawable
static std::unique_ptr< SurfaceMTL > MakeFromMetalLayerDrawable(const std::shared_ptr< Context > &context, id< CAMetalDrawable > drawable, const std::shared_ptr< SwapchainTransientsMTL > &transients, std::optional< IRect > clip_rect=std::nullopt)
Definition: surface_mtl.mm:113
impeller::interop::SurfaceMTL::SurfaceMTL
SurfaceMTL(Context &context, void *metal_drawable)
Definition: surface_mtl.mm:12

## ◆ SurfaceMTL() [2/3]

impeller::interop::SurfaceMTL::SurfaceMTL | ( | Context & | context,
|  | std::shared_ptr< impeller::Surface > | surface
| ) |  |

Definition at line 20 of file surface_mtl.mm.

22 : Surface(context, std::move(surface)) {}
impeller::interop::Surface::Surface
Surface(const Surface &)=delete

## ◆ ~SurfaceMTL()

impeller::interop::SurfaceMTL::~SurfaceMTL | ( |  | ) |
| default

## ◆ SurfaceMTL() [3/3]

impeller::interop::SurfaceMTL::SurfaceMTL | ( | const SurfaceMTL & |  | ) |
| delete

## Member Function Documentation

## ◆ operator=()

SurfaceMTL& impeller::interop::SurfaceMTL::operator= | ( | const SurfaceMTL & |  | ) |
| delete

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

- impeller/toolkit/interop/backend/metal/surface_mtl.h
- impeller/toolkit/interop/backend/metal/surface_mtl.mm