Flutter Impeller
impeller::ContextGLES Class Referencefinal

#include <context_gles.h>

Inheritance diagram for impeller::ContextGLES:
impeller::Context impeller::BackendCast< ContextGLES, Context >

Public Member Functions

 ~ContextGLES () override
 
BackendType GetBackendType () const override
 Get the graphics backend of an Impeller context. More...
 
const ReactorGLES::RefGetReactor () const
 
std::optional< ReactorGLES::WorkerIDAddReactorWorker (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< ContextGLESCreate (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 ContextGLESCast (Context &base)
 
static const ContextGLESCast (const Context &base)
 
static ContextGLESCast (Context *base)
 
static const ContextGLESCast (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 ( )
overridedefault

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
overridevirtual

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  {
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::Context::BackendType::kOpenGLES
@ kOpenGLES