#include <proc_table_gles.h>
Public Types | |
using | Resolver = std::function< void *(const char *function_name)> |
Public Member Functions | |
ProcTableGLES (Resolver resolver) | |
ProcTableGLES (ProcTableGLES &&other)=default | |
~ProcTableGLES () | |
FOR_EACH_IMPELLER_PROC (IMPELLER_PROC) | |
FOR_EACH_IMPELLER_ES_ONLY_PROC (IMPELLER_PROC) | |
FOR_EACH_IMPELLER_DESKTOP_ONLY_PROC (IMPELLER_PROC) | |
FOR_EACH_IMPELLER_GLES3_PROC (IMPELLER_PROC) | |
FOR_EACH_IMPELLER_EXT_PROC (IMPELLER_PROC) | |
bool | IsValid () const |
void | ShaderSourceMapping (GLuint shader, const fml::Mapping &mapping, const std::vector< Scalar > &defines={}) const |
Set the source for the attached [shader]. More... | |
const DescriptionGLES * | GetDescription () const |
const std::shared_ptr< const CapabilitiesGLES > & | GetCapabilities () const |
std::string | DescribeCurrentFramebuffer () const |
std::string | GetProgramInfoLogString (GLuint program) const |
bool | IsCurrentFramebufferComplete () const |
bool | SetDebugLabel (DebugResourceType type, GLint name, const std::string &label) const |
void | PushDebugGroup (const std::string &string) const |
void | PopDebugGroup () const |
std::optional< std::string > | ComputeShaderWithDefines (const fml::Mapping &mapping, const std::vector< Scalar > &defines) const |
Definition at line 229 of file proc_table_gles.h.
using impeller::ProcTableGLES::Resolver = std::function<void*(const char* function_name)> |
Definition at line 231 of file proc_table_gles.h.
|
explicit |
Definition at line 74 of file proc_table_gles.cc.
References FOR_EACH_IMPELLER_DESKTOP_ONLY_PROC(), FOR_EACH_IMPELLER_ES_ONLY_PROC(), FOR_EACH_IMPELLER_EXT_PROC(), FOR_EACH_IMPELLER_GLES3_PROC(), FOR_EACH_IMPELLER_PROC(), IMPELLER_PROC, VALIDATION_LOG, and impeller::WrappedResolver().
|
default |
|
default |
std::optional< std::string > impeller::ProcTableGLES::ComputeShaderWithDefines | ( | const fml::Mapping & | mapping, |
const std::vector< Scalar > & | defines | ||
) | const |
Definition at line 175 of file proc_table_gles.cc.
References VALIDATION_LOG.
Referenced by ShaderSourceMapping().
std::string impeller::ProcTableGLES::DescribeCurrentFramebuffer | ( | ) | const |
Definition at line 268 of file proc_table_gles.cc.
References impeller::DescribeFramebufferAttachment(), impeller::FramebufferStatusToString(), and IsCurrentFramebufferComplete().
impeller::ProcTableGLES::FOR_EACH_IMPELLER_DESKTOP_ONLY_PROC | ( | IMPELLER_PROC | ) |
Referenced by ProcTableGLES().
impeller::ProcTableGLES::FOR_EACH_IMPELLER_ES_ONLY_PROC | ( | IMPELLER_PROC | ) |
Referenced by ProcTableGLES().
impeller::ProcTableGLES::FOR_EACH_IMPELLER_EXT_PROC | ( | IMPELLER_PROC | ) |
Referenced by ProcTableGLES().
impeller::ProcTableGLES::FOR_EACH_IMPELLER_GLES3_PROC | ( | IMPELLER_PROC | ) |
Referenced by ProcTableGLES().
impeller::ProcTableGLES::FOR_EACH_IMPELLER_PROC | ( | IMPELLER_PROC | ) |
Referenced by ProcTableGLES().
const std::shared_ptr< const CapabilitiesGLES > & impeller::ProcTableGLES::GetCapabilities | ( | ) | const |
Definition at line 203 of file proc_table_gles.cc.
Referenced by impeller::SamplerGLES::ConfigureBoundTexture(), and impeller::BufferBindingsGLES::ReadUniformsBindings().
const DescriptionGLES * impeller::ProcTableGLES::GetDescription | ( | ) | const |
Definition at line 199 of file proc_table_gles.cc.
Referenced by impeller::CapabilitiesGLES::CapabilitiesGLES(), and impeller::GPUTracerGLES::GPUTracerGLES().
std::string impeller::ProcTableGLES::GetProgramInfoLogString | ( | GLuint | program | ) | const |
Definition at line 401 of file proc_table_gles.cc.
References impeller::Allocation::GetBuffer(), and impeller::Allocation::Truncate().
bool impeller::ProcTableGLES::IsCurrentFramebufferComplete | ( | ) | const |
bool impeller::ProcTableGLES::IsValid | ( | ) | const |
Definition at line 147 of file proc_table_gles.cc.
void impeller::ProcTableGLES::PopDebugGroup | ( | ) | const |
Definition at line 391 of file proc_table_gles.cc.
void impeller::ProcTableGLES::PushDebugGroup | ( | const std::string & | string | ) | const |
Definition at line 374 of file proc_table_gles.cc.
Referenced by impeller::EncodeCommandsInReactor().
bool impeller::ProcTableGLES::SetDebugLabel | ( | DebugResourceType | type, |
GLint | name, | ||
const std::string & | label | ||
) | const |
Definition at line 348 of file proc_table_gles.cc.
References impeller::ResourceIsLive(), and impeller::ToDebugIdentifier().
void impeller::ProcTableGLES::ShaderSourceMapping | ( | GLuint | shader, |
const fml::Mapping & | mapping, | ||
const std::vector< Scalar > & | defines = {} |
||
) | const |
Set the source for the attached [shader].
Optionally, [defines] may contain a string value that will be append to the shader source after the version marker. This can be used to support static specialization. For example, setting "#define Foo 1".
Definition at line 151 of file proc_table_gles.cc.
References ComputeShaderWithDefines(), and VALIDATION_LOG.