| Flutter Impeller |

Classes | Namespaces | Macros | Enumerations | Functions
proc_table_gles.h File Reference
`#include <functional>`
`#include <string>`
`#include <string_view>`
`#include "GLES3/gl3.h"`
`#include "flutter/fml/logging.h"`
`#include "flutter/fml/mapping.h"`
`#include "impeller/renderer/backend/gles/capabilities_gles.h"`
`#include "impeller/renderer/backend/gles/description_gles.h"`
`#include "impeller/renderer/backend/gles/gles.h"`

Go to the source code of this file.

## Classes
struct | impeller::AutoErrorCheck
struct | impeller::GLProc< T >
class | impeller::ProcTableGLES

## Namespaces
| impeller

## Macros
#define | IP_ENABLE_GLES_LABELING false
| Enable to allow GLES to push/pop labels for usage in GPU traces. More...
#define | FOR_EACH_IMPELLER_PROC(PROC)
#define | FOR_EACH_IMPELLER_ES_ONLY_PROC(PROC)
#define | FOR_EACH_IMPELLER_DESKTOP_ONLY_PROC(PROC)
#define | FOR_EACH_IMPELLER_GLES3_PROC(PROC)
#define | FOR_EACH_IMPELLER_EXT_PROC(PROC)
#define | IMPELLER_PROC(name) GLProc<decltype(gl##name)> name = {"gl" #name, nullptr};

## Enumerations
enum class | impeller::DebugResourceType { impeller::kTexture , impeller::kBuffer , impeller::kProgram , impeller::kShader , impeller::kRenderBuffer , impeller::kFrameBuffer , impeller::kFence }

## Functions
std::string_view | impeller::GLErrorToString (GLenum value)
bool | impeller::GLErrorIsFatal (GLenum value)
template<class Type >
void | impeller::BuildGLArgumentsStream (std::stringstream &stream, Type arg)
constexpr void | impeller::BuildGLArgumentsStream (std::stringstream &stream)
template<class Type , class... Rest>
void | impeller::BuildGLArgumentsStream (std::stringstream &stream, Type arg, Rest... other_args)
template<class... Type>
std::string | impeller::BuildGLArguments (Type... args)
void() | impeller::glClearDepthf (GLfloat depth)
void() | impeller::glDepthRangef (GLfloat n, GLfloat f)
void() | impeller::glClearDepth (GLdouble depth)
void() | impeller::glDepthRange (GLdouble n, GLdouble f)

## Macro Definition Documentation

## ◆ FOR_EACH_IMPELLER_DESKTOP_ONLY_PROC

#define FOR_EACH_IMPELLER_DESKTOP_ONLY_PROC | ( |  | PROC | ) |

Value:
PROC(ClearDepth); \
PROC(DepthRange);

Definition at line 241 of file proc_table_gles.h.

## ◆ FOR_EACH_IMPELLER_ES_ONLY_PROC

#define FOR_EACH_IMPELLER_ES_ONLY_PROC | ( |  | PROC | ) |

Value:
PROC(ClearDepthf); \
PROC(DepthRangef);

Definition at line 233 of file proc_table_gles.h.

## ◆ FOR_EACH_IMPELLER_EXT_PROC

#define FOR_EACH_IMPELLER_EXT_PROC | ( |  | PROC | ) |

Value:
PROC(DebugMessageControlKHR); \
PROC(DiscardFramebufferEXT); \
PROC(FramebufferTexture2DMultisampleEXT); \
PROC(PushDebugGroupKHR); \
PROC(PopDebugGroupKHR); \
PROC(ObjectLabelKHR); \
PROC(RenderbufferStorageMultisampleEXT); \
PROC(GenQueriesEXT); \
PROC(DeleteQueriesEXT); \
PROC(GetQueryObjectui64vEXT); \
PROC(BeginQueryEXT); \
PROC(EndQueryEXT); \
PROC(GetQueryObjectuivEXT); \
PROC(BlitFramebufferANGLE);

Definition at line 257 of file proc_table_gles.h.

## ◆ FOR_EACH_IMPELLER_GLES3_PROC

#define FOR_EACH_IMPELLER_GLES3_PROC | ( |  | PROC | ) |

Value:
PROC(FenceSync); \
PROC(DeleteSync); \
PROC(GetActiveUniformBlockiv); \
PROC(GetActiveUniformBlockName); \
PROC(GetUniformBlockIndex); \
PROC(UniformBlockBinding); \
PROC(BindBufferRange); \
PROC(WaitSync); \
PROC(RenderbufferStorageMultisample) \
PROC(BlitFramebuffer);

Definition at line 245 of file proc_table_gles.h.

## ◆ FOR_EACH_IMPELLER_PROC

#define FOR_EACH_IMPELLER_PROC | ( |  | PROC | ) |

Definition at line 137 of file proc_table_gles.h.

## ◆ IMPELLER_PROC

#define IMPELLER_PROC | ( |  | name | ) | GLProc<decltype(gl##name)> name = {"gl" #name, nullptr};

Definition at line 291 of file proc_table_gles.h.

## ◆ IP_ENABLE_GLES_LABELING

#define IP_ENABLE_GLES_LABELING false

Enable to allow GLES to push/pop labels for usage in GPU traces.

Definition at line 20 of file proc_table_gles.h.