| Flutter Impeller |

Public Member Functions | Static Public Member Functions | List of all members
impeller::ContextGLES Class Referencefinal

`#include <context_gles.h>`

Inheritance diagram for impeller::ContextGLES:

## Public Member Functions
| ~ContextGLES () override
BackendType | GetBackendType () const override
| Get the graphics backend of an Impeller context. More...
const ReactorGLES::Ref & | GetReactor () const
std::optional< ReactorGLES::WorkerID > | AddReactorWorker (const std::shared_ptr< ReactorGLES::Worker > &worker)
bool | RemoveReactorWorker (ReactorGLES::WorkerID id)
Public Member Functions inherited from impeller::Context
virtual | ~Context ()
| Destroys an Impeller context. More...
virtual bool | UpdateOffscreenLayerPixelFormat (PixelFormat format)
virtual void | SetSyncPresentation (bool value)
| Force the Vulkan presentation (submitKHR) to be performed on the raster task runner. More...
Pool< HostBuffer > & | GetHostBufferPool () const
| Accessor for a pool of HostBuffers. More...

## Static Public Member Functions
static std::shared_ptr< ContextGLES > | Create (std::unique_ptr< ProcTableGLES > gl, const std::vector< std::shared_ptr< fml::Mapping >> &shader_libraries)
Static Public Member Functions inherited from impeller::BackendCast< ContextGLES, Context >
static ContextGLES & | Cast (Context &base)
static const ContextGLES & | Cast (const Context &base)
static ContextGLES * | Cast (Context *base)
static const ContextGLES * | Cast (const Context *base)

## Additional Inherited Members
Public Types inherited from impeller::Context
enum | BackendType { BackendType::kMetal, BackendType::kOpenGLES, BackendType::kVulkan }
Public Attributes inherited from impeller::Context
CaptureContext | capture
Protected Member Functions inherited from impeller::Context
| Context ()

## Detailed Description

Definition at line 20 of file context_gles.h.

## Constructor & Destructor Documentation

## ◆ ~ContextGLES()

impeller::ContextGLES::~ContextGLES | ( |  | ) |
| override default

## Member Function Documentation

## ◆ AddReactorWorker()

std::optional< ReactorGLES::WorkerID > impeller::ContextGLES::AddReactorWorker | ( | const std::shared_ptr< ReactorGLES::Worker > & | worker | ) |

Definition at line 96 of file context_gles.cc.

97 {
98 if (!IsValid()) {
99 return std::nullopt;
100 }
101 return reactor_->AddWorker(worker);
102 }

## ◆ Create()

std::shared_ptr< ContextGLES > impeller::ContextGLES::Create | ( | std::unique_ptr< ProcTableGLES > | gl,
|  | const std::vector< std::shared_ptr< fml::Mapping >> & | shader_libraries
| ) |  |
| static

Definition at line 12 of file context_gles.cc.

14 {
15 return std::shared_ptr<ContextGLES>(
16 new ContextGLES(std::move(gl), shader_libraries));
17 }

## ◆ GetBackendType()

Context::BackendType impeller::ContextGLES::GetBackendType | ( |  | ) | const
| override virtual

Get the graphics backend of an Impeller context.

            This is useful for cases where a renderer needs to track and
            lookup backend-specific resources, like shaders or uniform
            layout information.

            It's not recommended to use this as a substitute for
            per-backend capability checking. Instead, check for specific
            capabilities via `GetCapabilities()`.

Returns
  The graphics backend of the `Context`.

Implements impeller::Context.

Definition at line 88 of file context_gles.cc.

88 {
89 return Context::BackendType::kOpenGLES;
90 }

References impeller::Context::kOpenGLES.

## ◆ GetReactor()

const ReactorGLES::Ref & impeller::ContextGLES::GetReactor | ( |  | ) | const

Definition at line 92 of file context_gles.cc.

92 {
93 return reactor_;
94 }

## ◆ RemoveReactorWorker()

bool impeller::ContextGLES::RemoveReactorWorker | ( | ReactorGLES::WorkerID | id | ) |

Definition at line 104 of file context_gles.cc.

104 {
105 if (!IsValid()) {
106 return false;
107 }
108 return reactor_->RemoveWorker(id);
109 }

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

- impeller/renderer/backend/gles/context_gles.h
- impeller/renderer/backend/gles/context_gles.cc

impeller::Context::BackendType::kOpenGLES
@ kOpenGLES