Android-cuttlefish cvd tool
Namespaces | Macros | Functions | Variables
gles.cpp File Reference
#include "cuttlefish/host/graphics_detector/gles.h"
#include <iostream>
#include <vector>
Include dependency graph for gles.cpp:

Namespaces

namespace  gfxstream
 
namespace  gfxstream::anonymous_namespace{gles.cpp}
 

Macros

#define LOAD_GLES_FUNCTION_POINTER(return_type, function_name, signature, args)
 
#define LOAD_GLES_FUNCTION_POINTER_FROM_EGL(return_type, function_name, signature, args)
 

Functions

static void GL_APIENTRY gfxstream::anonymous_namespace{gles.cpp}::GlDebugCallback (GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *message, const void *)
 

Variables

constexpr const char gfxstream::anonymous_namespace{gles.cpp}::kGles2Lib [] = "libGLESv2.so"
 

Macro Definition Documentation

◆ LOAD_GLES_FUNCTION_POINTER

#define LOAD_GLES_FUNCTION_POINTER (   return_type,
  function_name,
  signature,
  args 
)
Value:
gles.function_name = reinterpret_cast<return_type(*) signature>( \
gles.lib_.GetSymbol(#function_name)); \
if (gles.function_name == nullptr) { \
gles.function_name = reinterpret_cast<return_type(*) signature>( \
gles.lib_.GetSymbol(#function_name)); \
} \
if (gles.function_name == nullptr) { \
gles.function_name = reinterpret_cast<return_type(*) signature>( \
gles.lib_.GetSymbol(#function_name "OES")); \
} \
if (gles.function_name == nullptr) { \
gles.function_name = reinterpret_cast<return_type(*) signature>( \
gles.lib_.GetSymbol(#function_name "EXT")); \
} \
if (gles.function_name == nullptr) { \
gles.function_name = reinterpret_cast<return_type(*) signature>( \
gles.lib_.GetSymbol(#function_name "ARB")); \
}

◆ LOAD_GLES_FUNCTION_POINTER_FROM_EGL

#define LOAD_GLES_FUNCTION_POINTER_FROM_EGL (   return_type,
  function_name,
  signature,
  args 
)
Value:
gles.function_name = reinterpret_cast<return_type(*) signature>( \
egl->eglGetProcAddress(#function_name));