From 6df4e4a52ca0f70e7fdc5166467ab4a868e3bac5 Mon Sep 17 00:00:00 2001 From: Leith Bade Date: Sun, 23 Nov 2014 10:18:13 +1100 Subject: Load program binary extension on Linux --- include/mbgl/platform/gl.hpp | 12 ++++++++++++ include/mbgl/platform/platform.hpp | 3 +++ 2 files changed, 15 insertions(+) (limited to 'include') diff --git a/include/mbgl/platform/gl.hpp b/include/mbgl/platform/gl.hpp index d16478dab9..6a35ab8006 100644 --- a/include/mbgl/platform/gl.hpp +++ b/include/mbgl/platform/gl.hpp @@ -118,6 +118,7 @@ typedef void (* PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei extern PFNGLLABELOBJECTEXTPROC LabelObjectEXT; extern PFNGLGETOBJECTLABELEXTPROC GetObjectLabelEXT; +// GL_ARB_vertex_array_object / GL_OES_vertex_array_object #define GL_VERTEX_ARRAY_BINDING 0x85B5 typedef void (* PFNGLBINDVERTEXARRAYPROC) (GLuint array); typedef void (* PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint* arrays); @@ -128,6 +129,17 @@ extern PFNGLDELETEVERTEXARRAYSPROC DeleteVertexArrays; extern PFNGLGENVERTEXARRAYSPROC GenVertexArrays; extern PFNGLISVERTEXARRAYPROC IsVertexArray; +// GL_ARB_get_program_binary / GL_OES_get_program_binary +#define GL_PROGRAM_BINARY_RETRIEVABLE_HINT 0x8257 +#define GL_PROGRAM_BINARY_LENGTH 0x8741 +#define GL_NUM_PROGRAM_BINARY_FORMATS 0x87FE +#define GL_PROGRAM_BINARY_FORMATS 0x87FF +typedef void (* PFNGLGETPROGRAMBINARYPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary); +typedef void (* PFNGLPROGRAMBINARYPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLsizei length); +typedef void (* PFNGLPROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value); +extern PFNGLGETPROGRAMBINARYPROC GetProgramBinary; +extern PFNGLPROGRAMBINARYPROC ProgramBinary; +extern PFNGLPROGRAMPARAMETERIPROC ProgramParameteri; // Debug group markers, useful for debugging on iOS #if defined(DEBUG) diff --git a/include/mbgl/platform/platform.hpp b/include/mbgl/platform/platform.hpp index b7107bb9cd..9edcc23ccd 100644 --- a/include/mbgl/platform/platform.hpp +++ b/include/mbgl/platform/platform.hpp @@ -20,6 +20,9 @@ std::string lowercase(const std::string &string); // Returns the path to the default cache database on this system. std::string defaultCacheDatabase(); +// Returns the path to the default shader cache on this system. +std::string defaultShaderCache(); + // Shows an alpha image with the specified dimensions in a named window. void show_debug_image(std::string name, const char *data, size_t width, size_t height); -- cgit v1.2.1