5 #ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_PIPELINE_GLES_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_GLES_PIPELINE_GLES_H_
16 class PipelineLibraryGLES;
19 class RenderPassGLESCommandTest;
23 :
public Pipeline<PipelineDescriptor>,
24 public BackendCast<PipelineGLES, Pipeline<PipelineDescriptor>> {
50 std::shared_ptr<ReactorGLES> reactor_;
51 std::shared_ptr<UniqueHandleGLES> handle_;
52 std::unique_ptr<BufferBindingsGLES> buffer_bindings_;
53 GLint y_flip_uniform_location_ = -1;
54 bool is_valid_ =
false;
57 bool IsValid()
const override;
60 std::weak_ptr<PipelineLibrary> library,
62 std::shared_ptr<UniqueHandleGLES> handle);
Sets up stage bindings for single draw call in the OpenGLES backend.
Represents a handle to an underlying OpenGL object. Unlike OpenGL object handles, these handles can b...
GLint GetYFlipUniformLocation() const
const HandleGLES & GetProgramHandle() const
const std::shared_ptr< UniqueHandleGLES > GetSharedHandle() const
BufferBindingsGLES * GetBufferBindings() const
bool UnbindProgram() const
bool BuildVertexDescriptor(const ProcTableGLES &gl, GLuint program)
Describes the fixed function and programmable aspects of rendering and compute operations performed b...
std::shared_ptr< ReactorGLES > reactor