![]() |
Flutter Engine
The Flutter Engine
|
#include <context_gles.h>
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) |
| std::shared_ptr< GPUTracerGLES > | GetGPUTracer () const |
Public Member Functions inherited from impeller::Context | |
| virtual | ~Context () |
| Destroys an Impeller context. More... | |
| virtual BackendType | GetBackendType () const =0 |
| Get the graphics backend of an Impeller context. More... | |
| virtual std::string | DescribeGpuModel () const =0 |
| virtual bool | IsValid () const =0 |
| Determines if a context is valid. If the caller ever receives an invalid context, they must discard it and construct a new context. There is no recovery mechanism to repair a bad context. More... | |
| virtual const std::shared_ptr< const Capabilities > & | GetCapabilities () const =0 |
Get the capabilities of Impeller context. All optionally supported feature of the platform, client-rendering API, and device can be queried using the Capabilities. More... | |
| virtual bool | UpdateOffscreenLayerPixelFormat (PixelFormat format) |
| virtual std::shared_ptr< Allocator > | GetResourceAllocator () const =0 |
| Returns the allocator used to create textures and buffers on the device. More... | |
| virtual std::shared_ptr< ShaderLibrary > | GetShaderLibrary () const =0 |
| Returns the library of shaders used to specify the programmable stages of a pipeline. More... | |
| virtual std::shared_ptr< SamplerLibrary > | GetSamplerLibrary () const =0 |
| Returns the library of combined image samplers used in shaders. More... | |
| virtual std::shared_ptr< PipelineLibrary > | GetPipelineLibrary () const =0 |
| Returns the library of pipelines used by render or compute commands. More... | |
| virtual std::shared_ptr< CommandBuffer > | CreateCommandBuffer () const =0 |
| Create a new command buffer. Command buffers can be used to encode graphics, blit, or compute commands to be submitted to the device. More... | |
| virtual std::shared_ptr< CommandQueue > | GetCommandQueue () const =0 |
| Return the graphics queue for submitting command buffers. More... | |
| virtual void | Shutdown ()=0 |
| Force all pending asynchronous work to finish. This is achieved by deleting all owned concurrent message loops. More... | |
| virtual void | StoreTaskForGPU (const std::function< void()> &task) |
| virtual void | InitializeCommonlyUsedShadersIfNeeded () const |
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, bool enable_gpu_tracing) |
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 class | BackendType { kMetal , kOpenGLES , kVulkan } |
Static Public Attributes inherited from impeller::Context | |
| static constexpr int32_t | kMaxTasksAwaitingGPU = 10 |
Protected Member Functions inherited from impeller::Context | |
| Context () | |
Protected Attributes inherited from impeller::Context | |
| std::vector< std::function< void()> > | per_frame_task_ |
Definition at line 22 of file context_gles.h.
|
overridedefault |
| std::optional< ReactorGLES::WorkerID > impeller::ContextGLES::AddReactorWorker | ( | const std::shared_ptr< ReactorGLES::Worker > & | worker | ) |
Definition at line 85 of file context_gles.cc.
|
static |
Definition at line 16 of file context_gles.cc.
|
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()`.
Context. Implements impeller::Context.
Definition at line 77 of file context_gles.cc.
|
inline |
Definition at line 44 of file context_gles.h.
| const ReactorGLES::Ref & impeller::ContextGLES::GetReactor | ( | ) | const |
Definition at line 81 of file context_gles.cc.
| bool impeller::ContextGLES::RemoveReactorWorker | ( | ReactorGLES::WorkerID | id | ) |
Definition at line 93 of file context_gles.cc.