diff --git a/Makefile b/Makefile index 8d5a00d..9b21cdf 100644 --- a/Makefile +++ b/Makefile @@ -14,7 +14,14 @@ REGAL_DEST ?= /usr BINDIR ?= $(REGAL_DEST)/bin LIBDIR ?= $(REGAL_DEST)/lib +# To build in debug mode: +# - use MODE=debug on gmake command-line +# +# To build using ccache (http://ccache.samba.org/) +# - use CCACHE=ccache on gmake command-line +# # To disable stripping of binaries either: +# - use MODE=debug on gmake command-line # - use STRIP= on gmake command-line # - edit this makefile to set STRIP to the empty string # @@ -23,6 +30,7 @@ LIBDIR ?= $(REGAL_DEST)/lib # # To specify additional compiler flags: # - use CFLAGS= on gmake command-line +# AR ?= ar INSTALL ?= install @@ -30,6 +38,12 @@ STRIP ?= strip RM ?= rm -f LN ?= ln -sf +# Release mode is the default + +ifeq ($(MODE),) +MODE := release +endif + ifeq ($(MODE),debug) OPT = $(CFLAGS.DEBUG) STRIP := @@ -41,7 +55,7 @@ endif INCLUDE = -Iinclude -override CFLAGS := $(CFLAGS) $(OPT) $(WARN) $(INCLUDE) $(CFLAGS.EXTRA) +override CFLAGS := $(OPT) $(CFLAGS) $(WARN) $(INCLUDE) $(CFLAGS.EXTRA) all: regal.lib glew.lib glu.lib glut.lib regal.bin @@ -96,7 +110,7 @@ zlib.lib: lib/$(ZLIB.STATIC) tmp/$(SYSTEM)/zlib/static/%.o: src/zlib/src/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(ZLIB.CFLAGS) $(PICFLAG) -o $@ -c $< + $(CCACHE) $(CC) $(ZLIB.CFLAGS) $(CFLAGS) $(PICFLAG) -o $@ -c $< lib/$(ZLIB.STATIC): lib $(ZLIB.OBJS) $(CCACHE) $(AR) cr $@ $(ZLIB.OBJS) @@ -146,7 +160,7 @@ libpng.lib: zlib.lib lib/$(LIBPNG.STATIC) tmp/$(SYSTEM)/libpng/static/%.o: src/libpng/src/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(LIBPNG.CFLAGS) $(PICFLAG) -o $@ -c $< + $(CCACHE) $(CC) $(LIBPNG.CFLAGS) $(CFLAGS) $(PICFLAG) -o $@ -c $< lib/$(LIBPNG.STATIC): lib $(LIBPNG.OBJS) $(CCACHE) $(AR) cr $@ $(LIBPNG.OBJS) @@ -290,27 +304,27 @@ endif tmp/$(SYSTEM)/regal/static/%.o: src/regal/%.cpp $(LIB.DEPS) @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(LIB.CFLAGS) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< + $(CCACHE) $(CC) $(LIB.CFLAGS) $(CFLAGS) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< tmp/$(SYSTEM)/regal/shared/%.o: src/regal/%.cpp $(LIB.DEPS) @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(LIB.CFLAGS) $(PICFLAG) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< + $(CCACHE) $(CC) $(LIB.CFLAGS) $(CFLAGS) $(PICFLAG) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< tmp/$(SYSTEM)/regal/static/%.o: src/mongoose/%.c $(LIB.DEPS) @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(LIB.CFLAGS) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< + $(CCACHE) $(CC) $(LIB.CFLAGS) $(CFLAGS) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< tmp/$(SYSTEM)/regal/shared/%.o: src/mongoose/%.c $(LIB.DEPS) @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(LIB.CFLAGS) $(PICFLAG) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< + $(CCACHE) $(CC) $(LIB.CFLAGS) $(CFLAGS) $(PICFLAG) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< tmp/$(SYSTEM)/regal/static/%.o: src/md5/src/%.c $(LIB.DEPS) @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(LIB.CFLAGS) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< + $(CCACHE) $(CC) $(LIB.CFLAGS) $(CFLAGS) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< tmp/$(SYSTEM)/regal/shared/%.o: src/md5/src/%.c $(LIB.DEPS) @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(LIB.CFLAGS) $(PICFLAG) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< + $(CCACHE) $(CC) $(LIB.CFLAGS) $(CFLAGS) $(PICFLAG) $(CFLAGS.SO) $(LIB.INCLUDE) -o $@ -c $< # # RegalGLEW @@ -329,7 +343,7 @@ glew.lib: lib/$(GLEW.SHARED) tmp/$(SYSTEM)/glew/shared/%.o: src/glew/src/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(PICFLAG) $(GLEW.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(PICFLAG) $(GLEW.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< lib/$(GLEW.SHARED): lib $(GLEW.OBJS) lib/$(LIB.SHARED) $(CCACHE) $(LD) $(LDFLAGS.EXTRA) $(LDFLAGS.DYNAMIC) -o $@ $(GLEW.OBJS) $(LIB.LDFLAGS) $(GLEW.LIBS) -lpthread @@ -354,7 +368,7 @@ endif tmp/$(SYSTEM)/glewinfo/static/%.o: src/glew/src/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(GLEWINFO.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(GLEWINFO.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< bin/glewinfo: bin $(GLEWINFO.OBJS) lib/$(LIB.SHARED) lib/$(GLEW.SHARED) $(CCACHE) $(LD) $(LDFLAGS.EXTRA) -o $@ $(GLEWINFO.OBJS) $(LIB.LDFLAGS) $(GLEWINFO.LIBS) @@ -478,23 +492,23 @@ glu.lib: lib/$(GLU.SHARED) tmp/$(SYSTEM)/glu/shared/%.o: src/glu/libtess/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< tmp/$(SYSTEM)/glu/shared/%.o: src/glu/libutil/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< tmp/$(SYSTEM)/glu/shared/%.o: src/glu/libnurbs/interface/%.cc @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< tmp/$(SYSTEM)/glu/shared/%.o: src/glu/libnurbs/internals/%.cc @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< tmp/$(SYSTEM)/glu/shared/%.o: src/glu/libnurbs/nurbtess/%.cc @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(PICFLAG) $(GLU.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< lib/$(GLU.SHARED): lib $(GLU.OBJS) $(CCACHE) $(LD) $(LDFLAGS.EXTRA) $(LDFLAGS.DYNAMIC) $(GLU.LIBS) $(LIB.LDFLAGS) -o $@ $(GLU.OBJS) @@ -586,7 +600,7 @@ glut.lib: lib/$(GLUT.SHARED) tmp/$(SYSTEM)/glut/shared/%.o: src/glut/src/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(PICFLAG) $(GLUT.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(GLUT.CFLAGS) $(CFLAGS) $(PICFLAG) $(CFLAGS.SO) -o $@ -c $< lib/$(GLUT.SHARED): lib $(GLUT.OBJS) lib/$(GLU.SHARED) lib/$(LIB.SHARED) $(CCACHE) $(LD) $(LDFLAGS.EXTRA) $(LDFLAGS.DYNAMIC) -o $@ $(GLUT.OBJS) $(GLUT.LIBS) @@ -623,11 +637,11 @@ DREAMTORUS.LIBS += -lm -lpthread tmp/$(SYSTEM)/dreamtorus/static/%.o: examples/dreamtorus/src/%.cpp @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(DREAMTORUS.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(DREAMTORUS.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< tmp/$(SYSTEM)/dreamtorus/static/%.o: examples/dreamtorus/glut/code/%.cpp @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(DREAMTORUS.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(DREAMTORUS.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< bin/dreamtorus: bin $(DREAMTORUS.OBJS) lib/$(LIB.SHARED) $(CCACHE) $(LD) $(LDFLAGS.EXTRA) -o $@ $(DREAMTORUS.OBJS) $(LIB.LDFLAGS) $(DREAMTORUS.LIBS) @@ -645,7 +659,7 @@ NACL.LIBS += -lpng -lz -lm -lpthread -lppapi -lppapi_gles2 -lstdc++ tmp/$(SYSTEM)/nacl/static/%.o: examples/nacl/%.cpp @mkdir -p $(dir $@) - $(CC) $(CFLAGS) $(NACL.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CC) $(NACL.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< bin/nacl$(BIN_EXTENSION): bin lib/$(LIB.STATIC) $(NACL.OBJS) $(CC) $(CFLAGS) -o $@ $(NACL.OBJS) $(NACL.LIBS) @@ -683,7 +697,7 @@ TIGER.LIBS += -lm -lpthread tmp/$(SYSTEM)/tiger/static/%.o: examples/tiger/%.c @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(TIGER.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(TIGER.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< bin/tiger: bin $(TIGER.OBJS) lib/$(GLEW.SHARED) lib/$(LIB.SHARED) $(CCACHE) $(LD) $(LDFLAGS.EXTRA) -o $@ $(TIGER.OBJS) $(TIGER.LIBS) @@ -721,7 +735,7 @@ GTEST.STATIC := libgtest.a tmp/$(SYSTEM)/gtest/static/%.o: src/googletest/src/%.cc @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(GTEST.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(GTEST.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< lib/$(GTEST.STATIC): lib $(GTEST.OBJS) $(CCACHE) $(AR) cr $@ $(GTEST.OBJS) @@ -736,6 +750,7 @@ endif REGALTESTS.SRCS += tests/test_main.cpp REGALTESTS.SRCS += tests/testRegalTexC.cpp REGALTESTS.SRCS += tests/testRegalPixelConversions.cpp +REGALTESTS.SRCS += tests/testStringList.cpp REGALTESTS.SRCS.NAMES := $(notdir $(REGALTESTS.SRCS)) REGALTESTS.OBJS := $(addprefix tmp/$(SYSTEM)/regal_tests/static/,$(REGALTESTS.SRCS.NAMES)) REGALTESTS.OBJS := $(REGALTESTS.OBJS:.cpp=.o) @@ -744,7 +759,7 @@ REGALTESTS.LIBS := -Llib -lgtest -lRegal -lm -ldl tmp/$(SYSTEM)/regal_tests/static/%.o: tests/%.cpp @mkdir -p $(dir $@) - $(CCACHE) $(CC) $(CFLAGS) $(REGALTESTS.CFLAGS) $(CFLAGS.SO) -o $@ -c $< + $(CCACHE) $(CC) $(LIB.CFLAGS) $(REGALTESTS.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $< bin/RegalTests: bin $(REGALTESTS.OBJS) lib/$(GTEST.STATIC) lib/$(LIB.STATIC) $(CCACHE) $(LD) $(LDFLAGS.EXTRA) -o $@ $(REGALTESTS.OBJS) $(LIB.LDFLAGS) $(REGALTESTS.LIBS) diff --git a/build/win32/vs2010/Regal/Regal.vcxproj b/build/win32/vs2010/Regal/Regal.vcxproj index 9ee8a16..384650f 100755 --- a/build/win32/vs2010/Regal/Regal.vcxproj +++ b/build/win32/vs2010/Regal/Regal.vcxproj @@ -276,6 +276,8 @@ + + @@ -289,6 +291,8 @@ + + diff --git a/build/win32/vs2010/Regal/Regallib.vcxproj b/build/win32/vs2010/Regal/Regallib.vcxproj index a047192..728a5d6 100644 --- a/build/win32/vs2010/Regal/Regallib.vcxproj +++ b/build/win32/vs2010/Regal/Regallib.vcxproj @@ -276,6 +276,8 @@ + + @@ -289,6 +291,8 @@ + + diff --git a/build/win32/vs2010/Regal/Regalm.vcxproj b/build/win32/vs2010/Regal/Regalm.vcxproj index 0f52833..314b376 100644 --- a/build/win32/vs2010/Regal/Regalm.vcxproj +++ b/build/win32/vs2010/Regal/Regalm.vcxproj @@ -276,6 +276,8 @@ + + @@ -289,6 +291,8 @@ + + diff --git a/build/win32/vs2010/Regal/Regalmlib.vcxproj b/build/win32/vs2010/Regal/Regalmlib.vcxproj index 25a94da..704e98b 100644 --- a/build/win32/vs2010/Regal/Regalmlib.vcxproj +++ b/build/win32/vs2010/Regal/Regalmlib.vcxproj @@ -276,6 +276,8 @@ + + @@ -289,6 +291,8 @@ + + diff --git a/include/GL/Regal.h b/include/GL/Regal.h index 8808064..47ea975 100644 --- a/include/GL/Regal.h +++ b/include/GL/Regal.h @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/scripts/ApiRegal.py b/scripts/ApiRegal.py index ca48f77..fdebf5e 100755 --- a/scripts/ApiRegal.py +++ b/scripts/ApiRegal.py @@ -88,7 +88,8 @@ def logParameter(function, parameter): elif n=='data' and (function.name=='glBufferSubData' or function.name=='glBufferSubDataARB'): return 'boost::print::raw(data,Logging::rawLimit(data ? size : 0))' elif t in [ 'void *', 'const void *', 'GLvoid *', 'const GLvoid *', 'GLubyte *', 'const GLubyte *'] or \ - t in [ 'XID', 'Pixmap', 'Font', 'Display *', 'GLXDrawble', 'GLXPixmap', 'GLXContext', 'GLXVideoDeviceNV', 'GLXWindow', 'GLXPbuffer', 'GLXFBConfigID'] or \ + t in [ 'int *', 'const int *', 'GLint *', 'const GLint *' ] or \ + t in [ 'XID', 'XVisualInfo *', 'Pixmap', 'Font', 'Display *', 'GLXDrawble', 'GLXPixmap', 'GLXContext', 'GLXVideoDeviceNV', 'GLXWindow', 'GLXPbuffer', 'GLXFBConfigID'] or \ t in [ 'EGLNativeWindowType', 'EGLNativePixmapType', 'EGLNativeDisplayType', 'EGLConfig', 'EGLContext', 'EGLDisplay', 'EGLSurface', 'EGLClientBuffer', 'EGLSyncKHR', 'EGLImageKHR', 'EGLStreamKHR', 'EGLSyncNV']: return 'boost::print::optional(%s,Logging::pointers)'%n diff --git a/scripts/regal/RegalToken.py b/scripts/regal/RegalToken.py index 88d4a13..c490164 100755 --- a/scripts/regal/RegalToken.py +++ b/scripts/regal/RegalToken.py @@ -19,6 +19,9 @@ REGAL_GLOBAL_BEGIN #include "RegalToken.h" #include +#include + +using namespace ::boost::print; REGAL_GLOBAL_END @@ -41,7 +44,7 @@ namespace Token { { const GLbitfield other = v & ~(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); - boost::print::string_list tmp; + string_list tmp; if (v & GL_COLOR_BUFFER_BIT) { if (tmp.size()) tmp += " | "; tmp += "GL_COLOR_BUFFER_BIT"; } if (v & GL_DEPTH_BUFFER_BIT) { if (tmp.size()) tmp += " | "; tmp += "GL_DEPTH_BUFFER_BIT"; } if (v & GL_STENCIL_BUFFER_BIT) { if (tmp.size()) tmp += " | "; tmp += "GL_STENCIL_BUFFER_BIT"; } @@ -50,6 +53,142 @@ namespace Token { return tmp.str(); } + std::string GLTexParameterToString(GLenum pname, const GLfloat param) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(param)); + + default: + return print_string(param); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLint param) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(param)); + + default: + return print_string(param); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLfloat *params) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(params[0])); + + case GL_TEXTURE_SWIZZLE_RGBA: + return print_string( + GLenumToString(static_cast(params[0])), " ", + GLenumToString(static_cast(params[1])), " ", + GLenumToString(static_cast(params[2])), " ", + GLenumToString(static_cast(params[3]))); + + default: + return print_string(params[0]); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLint *params) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(params[0])); + + case GL_TEXTURE_SWIZZLE_RGBA: + return print_string( + GLenumToString(static_cast(params[0])), " ", + GLenumToString(static_cast(params[1])), " ", + GLenumToString(static_cast(params[2])), " ", + GLenumToString(static_cast(params[3]))); + + default: + return print_string(params[0]); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLuint *params) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(params[0])); + + case GL_TEXTURE_SWIZZLE_RGBA: + return print_string( + GLenumToString(static_cast(params[0])), " ", + GLenumToString(static_cast(params[1])), " ", + GLenumToString(static_cast(params[2])), " ", + GLenumToString(static_cast(params[3]))); + + default: + return print_string(params[0]); + } + } + ${CODE} } @@ -307,6 +446,12 @@ namespace Token { std::string GLclearToString (GLbitfield v); + std::string GLTexParameterToString(GLenum pname, const GLfloat param ); + std::string GLTexParameterToString(GLenum pname, const GLint param ); + std::string GLTexParameterToString(GLenum pname, const GLfloat *params); + std::string GLTexParameterToString(GLenum pname, const GLint *params); + std::string GLTexParameterToString(GLenum pname, const GLuint *params); + #if REGAL_SYS_GLX const char * GLXenumToString (int v); #endif diff --git a/src/boost/boost/print/string_list.hpp b/src/boost/boost/print/string_list.hpp index bcb0476..dea398e 100644 --- a/src/boost/boost/print/string_list.hpp +++ b/src/boost/boost/print/string_list.hpp @@ -46,24 +46,26 @@ public: string_list(); string_list(const string_list &other); string_list(const T &input, const char_type delim = ' '); - string_list(const size_t count, const char_type * const *string, const int *length = NULL); + string_list(const size_t count, const char_type * const *string, const int *length = NULL, const typename string_list::char_type delim = 0); ~string_list(); string_list &operator=(const string_list &other); void clear(); - void push_front (const char *string); - void push_front (const T &string); - void push_front_swap( T &string); - void push_front (const string_list &other ); + void push_front (const typename string_list::char_type *string); + void push_front (const typename string_list::char_type *string, const size_t n); + void push_front (const T &string); + void push_front_swap( T &string); + void push_front (const string_list &other ); - void push_back (const char *string); - void push_back (const T &string); - void push_back_swap ( T &string); - void push_back (const string_list &other ); + void push_back (const typename string_list::char_type *string); + void push_back (const typename string_list::char_type *string, const size_t n); + void push_back (const T &string); + void push_back_swap ( T &string); + void push_back (const string_list &other ); - void push_back(const size_t count, const char_type * const *string, const int *length = NULL); + void push_back(const size_t count, const char_type * const *string, const int *length = NULL, const typename string_list::char_type delim = 0); void insert(const size_type i, const value_type &x); void insert(const size_type i, const string_list &other); @@ -88,7 +90,10 @@ public: } void sort(); - void split(const T &input, const char_type delim = ' '); + + void split(const T &input, const char_type delim = ' '); + void split(const typename string_list::char_type *input, const char_type delim = ' '); + void split(const typename string_list::char_type *input, const size_t n, const char_type delim = ' '); T join(const char_type *delim = NULL) const; T join(const T &delim ) const; @@ -115,7 +120,6 @@ public: { if (T::length()) { - _list._count += T::length(); _list._list.push_front(T()); _list._list.front().swap(*this); } @@ -138,7 +142,6 @@ public: { if (T::length()) { - _list._count += T::length(); _list._list.push_back(T()); _list._list.back().swap(*this); } @@ -153,11 +156,11 @@ public: static const char_type endl = '\n'; + friend struct string_list::PushFront; friend struct string_list::PushBack; private: ::std::deque _list; - ::std::size_t _count; }; namespace detail { @@ -206,42 +209,51 @@ join(const C &container, const T &delim) } -template string_list::string_list() : _count(0) { } -template string_list::string_list(const string_list &other) : _list(other._list), _count(other._count) { } +template string_list::string_list() { } +template string_list::string_list(const string_list &other) : _list(other._list) { } template string_list::string_list(const T &input, const char_type delim) -: _count(0) { split(input,delim); } -template string_list::string_list(const size_t count, const char_type * const *string, const int *length) -: _count(0) +template string_list::string_list(const size_t count, const char_type * const *string, const int *length, const typename string_list::char_type delim) { - push_back(count,string,length); + push_back(count,string,length,delim); } -template string_list::~string_list() { _list.clear(); _count = 0; } +template string_list::~string_list() { _list.clear(); } template string_list & string_list::operator=(const string_list &other) { if (this!=&other) - { _list = other._list; - _count = other._count; - } return *this; } -template void string_list::clear() { _list.clear(); _count = 0; } +template void string_list::clear() { _list.clear(); } -template void string_list::push_front(const typename string_list::char_type *string) +template void +string_list::push_front(const typename string_list::char_type *string) { PushFront(*this).assign(string ? string : T(NULL)); } +template void +string_list::push_front(const typename string_list::char_type *string, const size_t n) +{ + if (string && n) + { + PushFront(*this).assign(string,n); + } + else + { + PushBack(*this); + } +} + template void string_list::push_front(const T &string) { PushFront(*this).assign(string); @@ -260,11 +272,25 @@ template void string_list::push_front(const string_list &other) } } -template void string_list::push_back(const typename string_list::char_type *string) +template void +string_list::push_back(const typename string_list::char_type *string) { PushBack(*this).assign(string ? string : T(NULL)); } +template void +string_list::push_back(const typename string_list::char_type *string, const size_t n) +{ + if (string && n) + { + PushBack(*this).assign(string,n); + } + else + { + PushBack(*this); + } +} + template void string_list::push_back(const T &string) { PushBack(*this).assign(string); @@ -283,24 +309,34 @@ template void string_list::push_back(const string_list &other) } } -template void string_list::push_back(const size_t count, const char_type * const *string, const int *length) +template void string_list::push_back(const size_t count, const char_type * const *string, const int *length, const typename string_list::char_type delim) { - for (size_t i=0; i=0) - { - PushBack(*this).assign(string[i] ? T(string[i],length[i]) : T()); - } - else - { - PushBack(*this).assign(string[i] ? T(string[i]) : T()); - } + if (delim) + { + for (size_t i=0; i=0) + split(string[i],length[i], delim); + else + split(string[i], delim); + } + else + { + for (size_t i=0; i=0) + { + PushBack(*this).assign(string[i] ? T(string[i],length[i]) : T()); + } + else + { + PushBack(*this).assign(string[i] ? T(string[i]) : T()); + } + } } template void string_list::insert(const size_type i, const value_type &x) { if (i>=0 && i<=_list.size()) { - _count += x.length(); _list.push_back(x); // Append to the end const size_type m = _list.size()-i-1; @@ -319,8 +355,6 @@ template void string_list::insert(const size_type i, const string if (this!=&other && i>=0 && i<=_list.size() && n>0) { - _count += other.count(); - const size_type m = _list.size()-i; for (size_type k=0; k void string_list::insert(const size_type i, const size_t { if (i>=0 && i<=_list.size() && n>0) { - _count += x.length()*n; - const size_type m = _list.size()-i; for (size_type k=0; k void string_list::sort() i->swap(*j); } -template void string_list::split(const T &input, const typename string_list::char_type delim) +template void +string_list::split(const T &input, const typename string_list::char_type delim) { // Skip past any delims at the beginning of the string typename T::size_type start = input.find_first_not_of( delim, 0 ); @@ -402,8 +435,8 @@ template void string_list::split(const T &input, const typename s { end = input.find(delim, start); - _list.push_back(input.substr(start,end - start)); - _count += (end - start); + std::string tmp = input.substr(start,end - start); + PushBack(*this).swap(tmp); // Last token if there were no trailing delims if (end==T::npos) @@ -418,6 +451,78 @@ template void string_list::split(const T &input, const typename s } } +template void +string_list::split(const typename string_list::char_type *input, const char_type delim) +{ + // input was a null string + if (!input || !(*input)) + return; + + // Skip past any delims at the beginning of the string + + const typename string_list::char_type *i = input; + while (*i && (*i)==delim) + ++i; + + for (;;) + { + const typename string_list::char_type *j = i; + while (*j && (*j)!=delim) + ++j; + + PushBack(*this).assign(i,j-i); + + // Last token if there were no trailing delims + if (!(*j)) + break; + + // Skip past any extra delims + i = j+1; + while (*i && (*i)==delim) + ++i; + + // We had trailing delims and we're now at the end of the string + if (!(*i)) + break; + } +} + +template void +string_list::split(const typename string_list::char_type *input, const size_t n, const char_type delim) +{ + // input was a null string + if (!input || !(*input) || !n) + return; + + // Skip past any delims at the beginning of the string + + size_t i = 0; + while (i T string_list::join(const typename string_list::char_type *delim) const { return boost::print::detail::join(_list,delim ? T(delim) : T()); @@ -434,7 +539,15 @@ template T string_list::str() const } template typename string_list::size_type string_list::size() const { return _list.size(); } -template typename string_list::size_type string_list::count() const { return _count; } + +template typename string_list::size_type +string_list::count() const +{ + typename string_list::size_type tmp = 0; + for (typename ::std::deque::const_iterator i=_list.begin(); i!=_list.end(); ++i) + tmp += i->length(); + return tmp; +} template typename string_list::const_iterator string_list::begin() const { return _list.begin(); } template typename string_list::const_iterator string_list::end() const { return _list.end(); } diff --git a/src/regal/Regal.cpp b/src/regal/Regal.cpp index 359998b..bdb03b9 100644 --- a/src/regal/Regal.cpp +++ b/src/regal/Regal.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* @@ -4232,7 +4232,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glPointParameteriv(GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glPointParameteriv","(", toString(pname), ", ", params, ")"); + App("glPointParameteriv","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -5825,7 +5825,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glClearBufferiv","(", toString(buffer), ", ", drawbuffer, ", ", value, ")"); + App("glClearBufferiv","(", toString(buffer), ", ", drawbuffer, ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -5995,7 +5995,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glTexParameterIiv(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glTexParameterIiv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glTexParameterIiv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -6873,7 +6873,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glMultiDrawElementArrayAPPLE(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glMultiDrawElementArrayAPPLE","(", toString(mode), ", ", first, ", ", count, ", ", primcount, ")"); + App("glMultiDrawElementArrayAPPLE","(", toString(mode), ", ", boost::print::optional(first,Logging::pointers), ", ", count, ", ", primcount, ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -6883,7 +6883,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glMultiDrawRangeElementArrayAPPLE(GLenum mode, GLuint start, GLuint end, const GLint *first, const GLsizei *count, GLsizei primcount) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glMultiDrawRangeElementArrayAPPLE","(", toString(mode), ", ", start, ", ", end, ", ", first, ", ", count, ", ", primcount, ")"); + App("glMultiDrawRangeElementArrayAPPLE","(", toString(mode), ", ", start, ", ", end, ", ", boost::print::optional(first,Logging::pointers), ", ", count, ", ", primcount, ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -7125,7 +7125,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetSyncivAPPLE(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetSyncivAPPLE","(", sync, ", ", toString(pname), ", ", bufSize, ", ", length, ", ", values, ")"); + App("glGetSyncivAPPLE","(", sync, ", ", toString(pname), ", ", bufSize, ", ", length, ", ", boost::print::optional(values,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -7735,7 +7735,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetFramebufferParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glGetFramebufferParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -7745,7 +7745,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetNamedFramebufferParameterivEXT(GLuint framebuffer, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetNamedFramebufferParameterivEXT","(", framebuffer, ", ", toString(pname), ", ", params, ")"); + App("glGetNamedFramebufferParameterivEXT","(", framebuffer, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -8255,7 +8255,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glColorTableParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glColorTableParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -8315,7 +8315,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glConvolutionParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glConvolutionParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -8559,7 +8559,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetInternalformativ","(", toString(target), ", ", toString(internalformat), ", ", toString(pname), ", ", bufSize, ", ", params, ")"); + App("glGetInternalformativ","(", toString(target), ", ", toString(internalformat), ", ", toString(pname), ", ", bufSize, ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -9199,7 +9199,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetProgramInterfaceiv","(", program, ", ", toString(programInterface), ", ", toString(pname), ", ", params, ")"); + App("glGetProgramInterfaceiv","(", program, ", ", toString(programInterface), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -9249,7 +9249,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetProgramResourceiv","(", program, ", ", toString(programInterface), ", ", index, ", ", propCount, ", ", props, ", ", bufSize, ", ", length, ", ", params, ")"); + App("glGetProgramResourceiv","(", program, ", ", toString(programInterface), ", ", index, ", ", propCount, ", ", props, ", ", bufSize, ", ", length, ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -10241,7 +10241,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetActiveAtomicCounterBufferiv","(", program, ", ", bufferIndex, ", ", toString(pname), ", ", params, ")"); + App("glGetActiveAtomicCounterBufferiv","(", program, ", ", bufferIndex, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -10485,7 +10485,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glUniform1ivARB(GLint location, GLsizei count, const GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glUniform1ivARB","(", location, ", ", count, ", ", value, ")"); + App("glUniform1ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -10525,7 +10525,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glUniform2ivARB(GLint location, GLsizei count, const GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glUniform2ivARB","(", location, ", ", count, ", ", value, ")"); + App("glUniform2ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -10565,7 +10565,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glUniform3ivARB(GLint location, GLsizei count, const GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glUniform3ivARB","(", location, ", ", count, ", ", value, ")"); + App("glUniform3ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -10605,7 +10605,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glUniform4ivARB(GLint location, GLsizei count, const GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glUniform4ivARB","(", location, ", ", count, ", ", value, ")"); + App("glUniform4ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -11749,7 +11749,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glWeightivARB(GLint size, GLint *weights) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glWeightivARB","(", size, ", ", weights, ")"); + App("glWeightivARB","(", size, ", ", boost::print::optional(weights,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -13287,7 +13287,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glTexBumpParameterivATI(GLenum pname, GLint *param) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glTexBumpParameterivATI","(", toString(pname), ", ", param, ")"); + App("glTexBumpParameterivATI","(", toString(pname), ", ", boost::print::optional(param,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -14287,7 +14287,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glConvolutionParameterivEXT(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glConvolutionParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glConvolutionParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -15823,7 +15823,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glMultiTexEnvivEXT(GLenum texunit, GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glMultiTexEnvivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glMultiTexEnvivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -15883,7 +15883,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glMultiTexGenivEXT(GLenum texunit, GLenum coord, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glMultiTexGenivEXT","(", toString(texunit), ", ", toString(coord), ", ", toString(pname), ", ", params, ")"); + App("glMultiTexGenivEXT","(", toString(texunit), ", ", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -15923,7 +15923,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glMultiTexParameterIivEXT(GLenum texunit, GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glMultiTexParameterIivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glMultiTexParameterIivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -16823,7 +16823,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glTextureParameterIivEXT(GLuint texture, GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glTextureParameterIivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glTextureParameterIivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -17245,7 +17245,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glFragmentLightModelivEXT(GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glFragmentLightModelivEXT","(", toString(pname), ", ", params, ")"); + App("glFragmentLightModelivEXT","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -17285,7 +17285,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glFragmentLightivEXT(GLenum light, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", params, ")"); + App("glFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -17325,7 +17325,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glFragmentMaterialivEXT(GLenum face, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", params, ")"); + App("glFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -17345,7 +17345,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetFragmentLightivEXT(GLenum light, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", params, ")"); + App("glGetFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -17365,7 +17365,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetFragmentMaterialivEXT(GLenum face, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", params, ")"); + App("glGetFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -18215,7 +18215,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glDrawBuffersIndexedEXT(GLint n, const GLenum *location, const GLint *indices) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glDrawBuffersIndexedEXT","(", n, ", ", location, ", ", indices, ")"); + App("glDrawBuffersIndexedEXT","(", n, ", ", location, ", ", boost::print::optional(indices,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -18225,7 +18225,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetIntegeri_vEXT(GLenum target, GLuint index, GLint *data) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetIntegeri_vEXT","(", toString(target), ", ", index, ", ", data, ")"); + App("glGetIntegeri_vEXT","(", toString(target), ", ", index, ", ", boost::print::optional(data,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -18297,7 +18297,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetQueryivEXT(GLenum target, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetQueryivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glGetQueryivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -18371,7 +18371,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetPixelTransformParameterivEXT(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetPixelTransformParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glGetPixelTransformParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -18479,7 +18479,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetnUniformivEXT(GLuint program, GLint location, GLsizei bufSize, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetnUniformivEXT","(", program, ", ", location, ", ", bufSize, ", ", params, ")"); + App("glGetnUniformivEXT","(", program, ", ", location, ", ", bufSize, ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -18881,7 +18881,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glTexParameterIivEXT(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glTexParameterIivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glTexParameterIivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -19667,7 +19667,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glVariantivEXT(GLuint id, const GLint *addr) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glVariantivEXT","(", id, ", ", addr, ")"); + App("glVariantivEXT","(", id, ", ", boost::print::optional(addr,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -19855,7 +19855,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glImageTransformParameterivHP(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glImageTransformParameterivHP","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glImageTransformParameterivHP","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -19867,7 +19867,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glMultiModeDrawArraysIBM(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glMultiModeDrawArraysIBM","(", mode, ", ", first, ", ", count, ", ", primcount, ", ", modestride, ")"); + App("glMultiModeDrawArraysIBM","(", mode, ", ", boost::print::optional(first,Logging::pointers), ", ", count, ", ", primcount, ", ", modestride, ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -20811,7 +20811,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glMapParameterivNV(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glMapParameterivNV","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glMapParameterivNV","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -22153,7 +22153,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetPathColorGenivNV(GLenum color, GLenum pname, GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetPathColorGenivNV","(", toString(color), ", ", toString(pname), ", ", value, ")"); + App("glGetPathColorGenivNV","(", toString(color), ", ", toString(pname), ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -22233,7 +22233,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetPathParameterivNV(GLuint name, GLenum param, GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetPathParameterivNV","(", name, ", ", toString(param), ", ", value, ")"); + App("glGetPathParameterivNV","(", name, ", ", toString(param), ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -22263,7 +22263,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetPathTexGenivNV(GLenum texCoordSet, GLenum pname, GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetPathTexGenivNV","(", toString(texCoordSet), ", ", toString(pname), ", ", value, ")"); + App("glGetPathTexGenivNV","(", toString(texCoordSet), ", ", toString(pname), ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -22423,7 +22423,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glPathParameterivNV(GLuint path, GLenum pname, const GLint *value) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glPathParameterivNV","(", path, ", ", toString(pname), ", ", value, ")"); + App("glPathParameterivNV","(", path, ", ", toString(pname), ", ", boost::print::optional(value,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -22597,7 +22597,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glPointParameterivNV(GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glPointParameterivNV","(", toString(pname), ", ", params, ")"); + App("glPointParameterivNV","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -22755,7 +22755,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glCombinerParameterivNV(GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glCombinerParameterivNV","(", toString(pname), ", ", params, ")"); + App("glCombinerParameterivNV","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -23165,7 +23165,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glTransformFeedbackAttribsNV(GLuint count, const GLint *attribs, GLenum bufferMode) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glTransformFeedbackAttribsNV","(", count, ", ", attribs, ", ", toString(bufferMode), ")"); + App("glTransformFeedbackAttribsNV","(", count, ", ", boost::print::optional(attribs,Logging::pointers), ", ", toString(bufferMode), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -24449,7 +24449,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glVideoCaptureStreamParameterivNV(GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glVideoCaptureStreamParameterivNV","(", video_capture_slot, ", ", stream, ", ", toString(pname), ", ", params, ")"); + App("glVideoCaptureStreamParameterivNV","(", video_capture_slot, ", ", stream, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -24597,7 +24597,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetFramebufferAttachmentParameterivOES","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", params, ")"); + App("glGetFramebufferAttachmentParameterivOES","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -24607,7 +24607,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetRenderbufferParameterivOES","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glGetRenderbufferParameterivOES","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -24869,7 +24869,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetTexGenivOES(GLenum coord, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", params, ")"); + App("glGetTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -24919,7 +24919,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glTexGenivOES(GLenum coord, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", params, ")"); + App("glTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25047,7 +25047,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glGetDriverControlsQCOM(GLint *num, GLsizei size, GLuint *driverControls) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glGetDriverControlsQCOM","(", num, ", ", size, ", ", driverControls, ")"); + App("glGetDriverControlsQCOM","(", boost::print::optional(num,Logging::pointers), ", ", size, ", ", driverControls, ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25069,7 +25069,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetBuffersQCOM(GLuint *buffers, GLint maxBuffers, GLint *numBuffers) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetBuffersQCOM","(", buffers, ", ", maxBuffers, ", ", numBuffers, ")"); + App("glExtGetBuffersQCOM","(", buffers, ", ", maxBuffers, ", ", boost::print::optional(numBuffers,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25079,7 +25079,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetFramebuffersQCOM(GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetFramebuffersQCOM","(", framebuffers, ", ", maxFramebuffers, ", ", numFramebuffers, ")"); + App("glExtGetFramebuffersQCOM","(", framebuffers, ", ", maxFramebuffers, ", ", boost::print::optional(numFramebuffers,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25089,7 +25089,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetRenderbuffersQCOM(GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetRenderbuffersQCOM","(", renderbuffers, ", ", maxRenderbuffers, ", ", numRenderbuffers, ")"); + App("glExtGetRenderbuffersQCOM","(", renderbuffers, ", ", maxRenderbuffers, ", ", boost::print::optional(numRenderbuffers,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25099,7 +25099,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetTexLevelParameterivQCOM(GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetTexLevelParameterivQCOM","(", texture, ", ", toString(face), ", ", level, ", ", toString(pname), ", ", params, ")"); + App("glExtGetTexLevelParameterivQCOM","(", texture, ", ", toString(face), ", ", level, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25119,7 +25119,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetTexturesQCOM(GLuint *textures, GLint maxTextures, GLint *numTextures) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetTexturesQCOM","(", textures, ", ", maxTextures, ", ", numTextures, ")"); + App("glExtGetTexturesQCOM","(", textures, ", ", maxTextures, ", ", boost::print::optional(numTextures,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25141,7 +25141,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetProgramBinarySourceQCOM(GLuint program, GLenum shadertype, GLchar *source, GLint *length) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetProgramBinarySourceQCOM","(", program, ", ", toString(shadertype), ", ", boost::print::quote(source,'"'), ", ", length, ")"); + App("glExtGetProgramBinarySourceQCOM","(", program, ", ", toString(shadertype), ", ", boost::print::quote(source,'"'), ", ", boost::print::optional(length,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25151,7 +25151,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetProgramsQCOM(GLuint *programs, GLint maxPrograms, GLint *numPrograms) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetProgramsQCOM","(", programs, ", ", maxPrograms, ", ", numPrograms, ")"); + App("glExtGetProgramsQCOM","(", programs, ", ", maxPrograms, ", ", boost::print::optional(numPrograms,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25161,7 +25161,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glExtGetShadersQCOM(GLuint *shaders, GLint maxShaders, GLint *numShaders) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glExtGetShadersQCOM","(", shaders, ", ", maxShaders, ", ", numShaders, ")"); + App("glExtGetShadersQCOM","(", shaders, ", ", maxShaders, ", ", boost::print::optional(numShaders,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -25764,7 +25764,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glPixelTexGenParameterivSGIS(GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glPixelTexGenParameterivSGIS","(", toString(pname), ", ", params, ")"); + App("glPixelTexGenParameterivSGIS","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -26002,7 +26002,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glFragmentLightModelivSGIX(GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glFragmentLightModelivSGIX","(", toString(pname), ", ", params, ")"); + App("glFragmentLightModelivSGIX","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -26042,7 +26042,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glFragmentLightivSGIX(GLenum light, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glFragmentLightivSGIX","(", toString(light), ", ", toString(pname), ", ", params, ")"); + App("glFragmentLightivSGIX","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -26082,7 +26082,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glFragmentMaterialivSGIX(GLenum face, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glFragmentMaterialivSGIX","(", toString(face), ", ", toString(pname), ", ", params, ")"); + App("glFragmentMaterialivSGIX","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -26280,7 +26280,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glListParameterivSGIX(GLuint list, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glListParameterivSGIX","(", list, ", ", toString(pname), ", ", params, ")"); + App("glListParameterivSGIX","(", list, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -26388,7 +26388,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glSpriteParameterivSGIX(GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glSpriteParameterivSGIX","(", toString(pname), ", ", params, ")"); + App("glSpriteParameterivSGIX","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -26422,7 +26422,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glColorTableParameterivSGI(GLenum target, GLenum pname, const GLint *params) { RegalContext *_context = REGAL_GET_CONTEXT(); - App("glColorTableParameterivSGI","(", toString(target), ", ", toString(pname), ", ", params, ")"); + App("glColorTableParameterivSGI","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); if (!_context) return; DispatchTable *_next = &_context->dispatcher.front(); RegalAssert(_next); @@ -27152,7 +27152,7 @@ extern "C" { REGAL_DECL HGLRC REGAL_CALL wglCreateAssociatedContextAttribsAMD(UINT id, HGLRC hShareContext, const int *attribList) { - App("wglCreateAssociatedContextAttribsAMD","(", id, ", ", hShareContext, ", ", attribList, ")"); + App("wglCreateAssociatedContextAttribsAMD","(", id, ", ", hShareContext, ", ", boost::print::optional(attribList,Logging::pointers), ")"); if (!dispatchTableGlobal.wglCreateAssociatedContextAttribsAMD) { GetProcAddress( dispatchTableGlobal.wglCreateAssociatedContextAttribsAMD, "wglCreateAssociatedContextAttribsAMD" ); @@ -27163,7 +27163,7 @@ extern "C" { HGLRC ret = (HGLRC )0; if (dispatchTableGlobal.wglCreateAssociatedContextAttribsAMD) { - Driver("wglCreateAssociatedContextAttribsAMD","(", id, ", ", hShareContext, ", ", attribList, ")"); + Driver("wglCreateAssociatedContextAttribsAMD","(", id, ", ", hShareContext, ", ", boost::print::optional(attribList,Logging::pointers), ")"); ret = dispatchTableGlobal.wglCreateAssociatedContextAttribsAMD(id, hShareContext, attribList); } else @@ -27385,7 +27385,7 @@ extern "C" { REGAL_DECL HGLRC REGAL_CALL wglCreateContextAttribsARB(HDC hDC, HGLRC hShareContext, const int *piAttribList) { - App("wglCreateContextAttribsARB","(", hDC, ", ", hShareContext, ", ", piAttribList, ")"); + App("wglCreateContextAttribsARB","(", hDC, ", ", hShareContext, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); if (!dispatchTableGlobal.wglCreateContextAttribsARB) { GetProcAddress( dispatchTableGlobal.wglCreateContextAttribsARB, "wglCreateContextAttribsARB" ); @@ -27396,7 +27396,7 @@ extern "C" { HGLRC ret = (HGLRC )0; if (dispatchTableGlobal.wglCreateContextAttribsARB) { - Driver("wglCreateContextAttribsARB","(", hDC, ", ", hShareContext, ", ", piAttribList, ")"); + Driver("wglCreateContextAttribsARB","(", hDC, ", ", hShareContext, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); ret = dispatchTableGlobal.wglCreateContextAttribsARB(hDC, hShareContext, piAttribList); } else @@ -27475,7 +27475,7 @@ extern "C" { REGAL_DECL HPBUFFERARB REGAL_CALL wglCreatePbufferARB(HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList) { - App("wglCreatePbufferARB","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", piAttribList, ")"); + App("wglCreatePbufferARB","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); if (!dispatchTableGlobal.wglCreatePbufferARB) { GetProcAddress( dispatchTableGlobal.wglCreatePbufferARB, "wglCreatePbufferARB" ); @@ -27486,7 +27486,7 @@ extern "C" { HPBUFFERARB ret = (HPBUFFERARB )0; if (dispatchTableGlobal.wglCreatePbufferARB) { - Driver("wglCreatePbufferARB","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", piAttribList, ")"); + Driver("wglCreatePbufferARB","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); ret = dispatchTableGlobal.wglCreatePbufferARB(hDC, iPixelFormat, iWidth, iHeight, piAttribList); } else @@ -27582,7 +27582,7 @@ extern "C" { REGAL_DECL BOOL REGAL_CALL wglChoosePixelFormatARB(HDC hDC, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats) { - App("wglChoosePixelFormatARB","(", hDC, ", ", piAttribIList, ", ", pfAttribFList, ", ", nMaxFormats, ")"); + App("wglChoosePixelFormatARB","(", hDC, ", ", boost::print::optional(piAttribIList,Logging::pointers), ", ", pfAttribFList, ", ", nMaxFormats, ")"); if (!dispatchTableGlobal.wglChoosePixelFormatARB) { GetProcAddress( dispatchTableGlobal.wglChoosePixelFormatARB, "wglChoosePixelFormatARB" ); @@ -27593,7 +27593,7 @@ extern "C" { BOOL ret = (BOOL )0; if (dispatchTableGlobal.wglChoosePixelFormatARB) { - Driver("wglChoosePixelFormatARB","(", hDC, ", ", piAttribIList, ", ", pfAttribFList, ", ", nMaxFormats, ")"); + Driver("wglChoosePixelFormatARB","(", hDC, ", ", boost::print::optional(piAttribIList,Logging::pointers), ", ", pfAttribFList, ", ", nMaxFormats, ")"); ret = dispatchTableGlobal.wglChoosePixelFormatARB(hDC, piAttribIList, pfAttribFList, nMaxFormats, piFormats, nNumFormats); } else @@ -27689,7 +27689,7 @@ extern "C" { REGAL_DECL BOOL REGAL_CALL wglSetPbufferAttribARB(HPBUFFERARB hPbuffer, const int *piAttribList) { - App("wglSetPbufferAttribARB","(", hPbuffer, ", ", piAttribList, ")"); + App("wglSetPbufferAttribARB","(", hPbuffer, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); if (!dispatchTableGlobal.wglSetPbufferAttribARB) { GetProcAddress( dispatchTableGlobal.wglSetPbufferAttribARB, "wglSetPbufferAttribARB" ); @@ -27700,7 +27700,7 @@ extern "C" { BOOL ret = (BOOL )0; if (dispatchTableGlobal.wglSetPbufferAttribARB) { - Driver("wglSetPbufferAttribARB","(", hPbuffer, ", ", piAttribList, ")"); + Driver("wglSetPbufferAttribARB","(", hPbuffer, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); ret = dispatchTableGlobal.wglSetPbufferAttribARB(hPbuffer, piAttribList); } else @@ -27863,7 +27863,7 @@ extern "C" { REGAL_DECL HPBUFFEREXT REGAL_CALL wglCreatePbufferEXT(HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList) { - App("wglCreatePbufferEXT","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", piAttribList, ")"); + App("wglCreatePbufferEXT","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); if (!dispatchTableGlobal.wglCreatePbufferEXT) { GetProcAddress( dispatchTableGlobal.wglCreatePbufferEXT, "wglCreatePbufferEXT" ); @@ -27874,7 +27874,7 @@ extern "C" { HPBUFFEREXT ret = (HPBUFFEREXT )0; if (dispatchTableGlobal.wglCreatePbufferEXT) { - Driver("wglCreatePbufferEXT","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", piAttribList, ")"); + Driver("wglCreatePbufferEXT","(", hDC, ", ", iPixelFormat, ", ", iWidth, ", ", iHeight, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); ret = dispatchTableGlobal.wglCreatePbufferEXT(hDC, iPixelFormat, iWidth, iHeight, piAttribList); } else @@ -27970,7 +27970,7 @@ extern "C" { REGAL_DECL BOOL REGAL_CALL wglChoosePixelFormatEXT(HDC hDC, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats) { - App("wglChoosePixelFormatEXT","(", hDC, ", ", piAttribIList, ", ", pfAttribFList, ", ", nMaxFormats, ")"); + App("wglChoosePixelFormatEXT","(", hDC, ", ", boost::print::optional(piAttribIList,Logging::pointers), ", ", pfAttribFList, ", ", nMaxFormats, ")"); if (!dispatchTableGlobal.wglChoosePixelFormatEXT) { GetProcAddress( dispatchTableGlobal.wglChoosePixelFormatEXT, "wglChoosePixelFormatEXT" ); @@ -27981,7 +27981,7 @@ extern "C" { BOOL ret = (BOOL )0; if (dispatchTableGlobal.wglChoosePixelFormatEXT) { - Driver("wglChoosePixelFormatEXT","(", hDC, ", ", piAttribIList, ", ", pfAttribFList, ", ", nMaxFormats, ")"); + Driver("wglChoosePixelFormatEXT","(", hDC, ", ", boost::print::optional(piAttribIList,Logging::pointers), ", ", pfAttribFList, ", ", nMaxFormats, ")"); ret = dispatchTableGlobal.wglChoosePixelFormatEXT(hDC, piAttribIList, pfAttribFList, nMaxFormats, piFormats, nNumFormats); } else @@ -28210,7 +28210,7 @@ extern "C" { REGAL_DECL BOOL REGAL_CALL wglSetDigitalVideoParametersI3D(HDC hDC, int iAttribute, const int *piValue) { - App("wglSetDigitalVideoParametersI3D","(", hDC, ", ", iAttribute, ", ", piValue, ")"); + App("wglSetDigitalVideoParametersI3D","(", hDC, ", ", iAttribute, ", ", boost::print::optional(piValue,Logging::pointers), ")"); if (!dispatchTableGlobal.wglSetDigitalVideoParametersI3D) { GetProcAddress( dispatchTableGlobal.wglSetDigitalVideoParametersI3D, "wglSetDigitalVideoParametersI3D" ); @@ -28221,7 +28221,7 @@ extern "C" { BOOL ret = (BOOL )0; if (dispatchTableGlobal.wglSetDigitalVideoParametersI3D) { - Driver("wglSetDigitalVideoParametersI3D","(", hDC, ", ", iAttribute, ", ", piValue, ")"); + Driver("wglSetDigitalVideoParametersI3D","(", hDC, ", ", iAttribute, ", ", boost::print::optional(piValue,Logging::pointers), ")"); ret = dispatchTableGlobal.wglSetDigitalVideoParametersI3D(hDC, iAttribute, piValue); } else @@ -28296,7 +28296,7 @@ extern "C" { REGAL_DECL BOOL REGAL_CALL wglSetGammaTableParametersI3D(HDC hDC, int iAttribute, const int *piValue) { - App("wglSetGammaTableParametersI3D","(", hDC, ", ", iAttribute, ", ", piValue, ")"); + App("wglSetGammaTableParametersI3D","(", hDC, ", ", iAttribute, ", ", boost::print::optional(piValue,Logging::pointers), ")"); if (!dispatchTableGlobal.wglSetGammaTableParametersI3D) { GetProcAddress( dispatchTableGlobal.wglSetGammaTableParametersI3D, "wglSetGammaTableParametersI3D" ); @@ -28307,7 +28307,7 @@ extern "C" { BOOL ret = (BOOL )0; if (dispatchTableGlobal.wglSetGammaTableParametersI3D) { - Driver("wglSetGammaTableParametersI3D","(", hDC, ", ", iAttribute, ", ", piValue, ")"); + Driver("wglSetGammaTableParametersI3D","(", hDC, ", ", iAttribute, ", ", boost::print::optional(piValue,Logging::pointers), ")"); ret = dispatchTableGlobal.wglSetGammaTableParametersI3D(hDC, iAttribute, piValue); } else @@ -29131,7 +29131,7 @@ extern "C" { REGAL_DECL BOOL REGAL_CALL wglBindVideoDeviceNV(HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList) { - App("wglBindVideoDeviceNV","(", hDC, ", ", uVideoSlot, ", ", hVideoDevice, ", ", piAttribList, ")"); + App("wglBindVideoDeviceNV","(", hDC, ", ", uVideoSlot, ", ", hVideoDevice, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); if (!dispatchTableGlobal.wglBindVideoDeviceNV) { GetProcAddress( dispatchTableGlobal.wglBindVideoDeviceNV, "wglBindVideoDeviceNV" ); @@ -29142,7 +29142,7 @@ extern "C" { BOOL ret = (BOOL )0; if (dispatchTableGlobal.wglBindVideoDeviceNV) { - Driver("wglBindVideoDeviceNV","(", hDC, ", ", uVideoSlot, ", ", hVideoDevice, ", ", piAttribList, ")"); + Driver("wglBindVideoDeviceNV","(", hDC, ", ", uVideoSlot, ", ", hVideoDevice, ", ", boost::print::optional(piAttribList,Logging::pointers), ")"); ret = dispatchTableGlobal.wglBindVideoDeviceNV(hDC, uVideoSlot, hVideoDevice, piAttribList); } else @@ -30166,7 +30166,7 @@ extern "C" { REGAL_DECL XVisualInfo *REGAL_CALL glXChooseVisual(Display *dpy, int screen, int *attribList) { - App("glXChooseVisual","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", attribList, ")"); + App("glXChooseVisual","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(attribList,Logging::pointers), ")"); if (!dispatchTableGlobal.glXChooseVisual) { GetProcAddress( dispatchTableGlobal.glXChooseVisual, "glXChooseVisual" ); @@ -30177,7 +30177,7 @@ extern "C" { XVisualInfo * ret = NULL; if (dispatchTableGlobal.glXChooseVisual) { - Driver("glXChooseVisual","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", attribList, ")"); + Driver("glXChooseVisual","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(attribList,Logging::pointers), ")"); ret = dispatchTableGlobal.glXChooseVisual(dpy, screen, attribList); } else @@ -30206,7 +30206,7 @@ extern "C" { REGAL_DECL GLXContext REGAL_CALL glXCreateContext(Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct) { - App("glXCreateContext","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ", ", boost::print::optional(shareList,Logging::pointers), ", ", direct, ")"); + App("glXCreateContext","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ", ", boost::print::optional(shareList,Logging::pointers), ", ", direct, ")"); if (!dispatchTableGlobal.glXCreateContext) { GetProcAddress( dispatchTableGlobal.glXCreateContext, "glXCreateContext" ); @@ -30217,7 +30217,7 @@ extern "C" { GLXContext ret = (GLXContext )0; if (dispatchTableGlobal.glXCreateContext) { - Driver("glXCreateContext","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ", ", boost::print::optional(shareList,Logging::pointers), ", ", direct, ")"); + Driver("glXCreateContext","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ", ", boost::print::optional(shareList,Logging::pointers), ", ", direct, ")"); ret = dispatchTableGlobal.glXCreateContext(dpy, vis, shareList, direct); } else @@ -30227,7 +30227,7 @@ extern "C" { REGAL_DECL GLXPixmap REGAL_CALL glXCreateGLXPixmap(Display *dpy, XVisualInfo *vis, Pixmap pixmap) { - App("glXCreateGLXPixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ", ", boost::print::optional(pixmap,Logging::pointers), ")"); + App("glXCreateGLXPixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ", ", boost::print::optional(pixmap,Logging::pointers), ")"); if (!dispatchTableGlobal.glXCreateGLXPixmap) { GetProcAddress( dispatchTableGlobal.glXCreateGLXPixmap, "glXCreateGLXPixmap" ); @@ -30238,7 +30238,7 @@ extern "C" { GLXPixmap ret = (GLXPixmap )0; if (dispatchTableGlobal.glXCreateGLXPixmap) { - Driver("glXCreateGLXPixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ", ", boost::print::optional(pixmap,Logging::pointers), ")"); + Driver("glXCreateGLXPixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ", ", boost::print::optional(pixmap,Logging::pointers), ")"); ret = dispatchTableGlobal.glXCreateGLXPixmap(dpy, vis, pixmap); } else @@ -30287,7 +30287,7 @@ extern "C" { REGAL_DECL int REGAL_CALL glXGetConfig(Display *dpy, XVisualInfo *vis, int attrib, int *value) { - App("glXGetConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ", ", attrib, ")"); + App("glXGetConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ", ", attrib, ")"); if (!dispatchTableGlobal.glXGetConfig) { GetProcAddress( dispatchTableGlobal.glXGetConfig, "glXGetConfig" ); @@ -30298,7 +30298,7 @@ extern "C" { int ret = (int )0; if (dispatchTableGlobal.glXGetConfig) { - Driver("glXGetConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ", ", attrib, ")"); + Driver("glXGetConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ", ", attrib, ")"); ret = dispatchTableGlobal.glXGetConfig(dpy, vis, attrib, value); } else @@ -30604,7 +30604,7 @@ extern "C" { REGAL_DECL GLXFBConfig *REGAL_CALL glXChooseFBConfig(Display *dpy, int screen, const int *attrib_list, int *nelements) { - App("glXChooseFBConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", attrib_list, ")"); + App("glXChooseFBConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXChooseFBConfig) { GetProcAddress( dispatchTableGlobal.glXChooseFBConfig, "glXChooseFBConfig" ); @@ -30615,7 +30615,7 @@ extern "C" { GLXFBConfig * ret = NULL; if (dispatchTableGlobal.glXChooseFBConfig) { - Driver("glXChooseFBConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", attrib_list, ")"); + Driver("glXChooseFBConfig","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); ret = dispatchTableGlobal.glXChooseFBConfig(dpy, screen, attrib_list, nelements); } else @@ -30646,7 +30646,7 @@ extern "C" { REGAL_DECL GLXPbuffer REGAL_CALL glXCreatePbuffer(Display *dpy, GLXFBConfig config, const int *attrib_list) { - App("glXCreatePbuffer","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", attrib_list, ")"); + App("glXCreatePbuffer","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXCreatePbuffer) { GetProcAddress( dispatchTableGlobal.glXCreatePbuffer, "glXCreatePbuffer" ); @@ -30657,7 +30657,7 @@ extern "C" { GLXPbuffer ret = (GLXPbuffer )0; if (dispatchTableGlobal.glXCreatePbuffer) { - Driver("glXCreatePbuffer","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", attrib_list, ")"); + Driver("glXCreatePbuffer","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); ret = dispatchTableGlobal.glXCreatePbuffer(dpy, config, attrib_list); } else @@ -30667,7 +30667,7 @@ extern "C" { REGAL_DECL GLXPixmap REGAL_CALL glXCreatePixmap(Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list) { - App("glXCreatePixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(pixmap,Logging::pointers), ", ", attrib_list, ")"); + App("glXCreatePixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(pixmap,Logging::pointers), ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXCreatePixmap) { GetProcAddress( dispatchTableGlobal.glXCreatePixmap, "glXCreatePixmap" ); @@ -30678,7 +30678,7 @@ extern "C" { GLXPixmap ret = (GLXPixmap )0; if (dispatchTableGlobal.glXCreatePixmap) { - Driver("glXCreatePixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(pixmap,Logging::pointers), ", ", attrib_list, ")"); + Driver("glXCreatePixmap","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(pixmap,Logging::pointers), ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); ret = dispatchTableGlobal.glXCreatePixmap(dpy, config, pixmap, attrib_list); } else @@ -30688,7 +30688,7 @@ extern "C" { REGAL_DECL GLXWindow REGAL_CALL glXCreateWindow(Display *dpy, GLXFBConfig config, Window win, const int *attrib_list) { - App("glXCreateWindow","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", win, ", ", attrib_list, ")"); + App("glXCreateWindow","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", win, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXCreateWindow) { GetProcAddress( dispatchTableGlobal.glXCreateWindow, "glXCreateWindow" ); @@ -30699,7 +30699,7 @@ extern "C" { GLXWindow ret = (GLXWindow )0; if (dispatchTableGlobal.glXCreateWindow) { - Driver("glXCreateWindow","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", win, ", ", attrib_list, ")"); + Driver("glXCreateWindow","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", win, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); ret = dispatchTableGlobal.glXCreateWindow(dpy, config, win, attrib_list); } else @@ -31020,7 +31020,7 @@ extern "C" { REGAL_DECL GLXContext REGAL_CALL glXCreateAssociatedContextAttribsAMD(unsigned int id, GLXContext share_context, const int *attribList) { - App("glXCreateAssociatedContextAttribsAMD","(", id, ", ", boost::print::optional(share_context,Logging::pointers), ", ", attribList, ")"); + App("glXCreateAssociatedContextAttribsAMD","(", id, ", ", boost::print::optional(share_context,Logging::pointers), ", ", boost::print::optional(attribList,Logging::pointers), ")"); if (!dispatchTableGlobal.glXCreateAssociatedContextAttribsAMD) { GetProcAddress( dispatchTableGlobal.glXCreateAssociatedContextAttribsAMD, "glXCreateAssociatedContextAttribsAMD" ); @@ -31031,7 +31031,7 @@ extern "C" { GLXContext ret = (GLXContext )0; if (dispatchTableGlobal.glXCreateAssociatedContextAttribsAMD) { - Driver("glXCreateAssociatedContextAttribsAMD","(", id, ", ", boost::print::optional(share_context,Logging::pointers), ", ", attribList, ")"); + Driver("glXCreateAssociatedContextAttribsAMD","(", id, ", ", boost::print::optional(share_context,Logging::pointers), ", ", boost::print::optional(attribList,Logging::pointers), ")"); ret = dispatchTableGlobal.glXCreateAssociatedContextAttribsAMD(id, share_context, attribList); } else @@ -31169,7 +31169,7 @@ extern "C" { REGAL_DECL GLXContext REGAL_CALL glXCreateContextAttribsARB(Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list) { - App("glXCreateContextAttribsARB","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(share_context,Logging::pointers), ", ", direct, ", ", attrib_list, ")"); + App("glXCreateContextAttribsARB","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(share_context,Logging::pointers), ", ", direct, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXCreateContextAttribsARB) { GetProcAddress( dispatchTableGlobal.glXCreateContextAttribsARB, "glXCreateContextAttribsARB" ); @@ -31180,7 +31180,7 @@ extern "C" { GLXContext ret = (GLXContext )0; if (dispatchTableGlobal.glXCreateContextAttribsARB) { - Driver("glXCreateContextAttribsARB","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(share_context,Logging::pointers), ", ", direct, ", ", attrib_list, ")"); + Driver("glXCreateContextAttribsARB","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", boost::print::optional(share_context,Logging::pointers), ", ", direct, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); ret = dispatchTableGlobal.glXCreateContextAttribsARB(dpy, config, share_context, direct, attrib_list); } else @@ -31240,7 +31240,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glXDrawableAttribATI(Display *dpy, GLXDrawable draw, const int *attrib_list) { - App("glXDrawableAttribATI","(", boost::print::optional(dpy,Logging::pointers), ", ", draw, ", ", attrib_list, ")"); + App("glXDrawableAttribATI","(", boost::print::optional(dpy,Logging::pointers), ", ", draw, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXDrawableAttribATI) { GetProcAddress( dispatchTableGlobal.glXDrawableAttribATI, "glXDrawableAttribATI" ); @@ -31250,7 +31250,7 @@ extern "C" { } if (dispatchTableGlobal.glXDrawableAttribATI) { - Driver("glXDrawableAttribATI","(", boost::print::optional(dpy,Logging::pointers), ", ", draw, ", ", attrib_list, ")"); + Driver("glXDrawableAttribATI","(", boost::print::optional(dpy,Logging::pointers), ", ", draw, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); dispatchTableGlobal.glXDrawableAttribATI(dpy, draw, attrib_list); } else @@ -31385,7 +31385,7 @@ extern "C" { REGAL_DECL void REGAL_CALL glXBindTexImageEXT(Display *display, GLXDrawable drawable, int buffer, const int *attrib_list) { - App("glXBindTexImageEXT","(", boost::print::optional(display,Logging::pointers), ", ", drawable, ", ", buffer, ", ", attrib_list, ")"); + App("glXBindTexImageEXT","(", boost::print::optional(display,Logging::pointers), ", ", drawable, ", ", buffer, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXBindTexImageEXT) { GetProcAddress( dispatchTableGlobal.glXBindTexImageEXT, "glXBindTexImageEXT" ); @@ -31395,7 +31395,7 @@ extern "C" { } if (dispatchTableGlobal.glXBindTexImageEXT) { - Driver("glXBindTexImageEXT","(", boost::print::optional(display,Logging::pointers), ", ", drawable, ", ", buffer, ", ", attrib_list, ")"); + Driver("glXBindTexImageEXT","(", boost::print::optional(display,Logging::pointers), ", ", drawable, ", ", buffer, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); dispatchTableGlobal.glXBindTexImageEXT(display, drawable, buffer, attrib_list); } else @@ -31469,7 +31469,7 @@ extern "C" { REGAL_DECL GLXPixmap REGAL_CALL glXCreateGLXPixmapMESA(Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap) { - App("glXCreateGLXPixmapMESA","(", boost::print::optional(dpy,Logging::pointers), ", ", visual, ", ", boost::print::optional(pixmap,Logging::pointers), ", ", cmap, ")"); + App("glXCreateGLXPixmapMESA","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(visual,Logging::pointers), ", ", boost::print::optional(pixmap,Logging::pointers), ", ", cmap, ")"); if (!dispatchTableGlobal.glXCreateGLXPixmapMESA) { GetProcAddress( dispatchTableGlobal.glXCreateGLXPixmapMESA, "glXCreateGLXPixmapMESA" ); @@ -31480,7 +31480,7 @@ extern "C" { GLXPixmap ret = (GLXPixmap )0; if (dispatchTableGlobal.glXCreateGLXPixmapMESA) { - Driver("glXCreateGLXPixmapMESA","(", boost::print::optional(dpy,Logging::pointers), ", ", visual, ", ", boost::print::optional(pixmap,Logging::pointers), ", ", cmap, ")"); + Driver("glXCreateGLXPixmapMESA","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(visual,Logging::pointers), ", ", boost::print::optional(pixmap,Logging::pointers), ", ", cmap, ")"); ret = dispatchTableGlobal.glXCreateGLXPixmapMESA(dpy, visual, pixmap, cmap); } else @@ -31603,7 +31603,7 @@ extern "C" { REGAL_DECL int REGAL_CALL glXBindVideoDeviceNV(Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list) { - App("glXBindVideoDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", video_slot, ", ", video_device, ", ", attrib_list, ")"); + App("glXBindVideoDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", video_slot, ", ", video_device, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXBindVideoDeviceNV) { GetProcAddress( dispatchTableGlobal.glXBindVideoDeviceNV, "glXBindVideoDeviceNV" ); @@ -31614,7 +31614,7 @@ extern "C" { int ret = (int )0; if (dispatchTableGlobal.glXBindVideoDeviceNV) { - Driver("glXBindVideoDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", video_slot, ", ", video_device, ", ", attrib_list, ")"); + Driver("glXBindVideoDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", video_slot, ", ", video_device, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); ret = dispatchTableGlobal.glXBindVideoDeviceNV(dpy, video_slot, video_device, attrib_list); } else @@ -31838,7 +31838,7 @@ extern "C" { REGAL_DECL GLXVideoCaptureDeviceNV *REGAL_CALL glXEnumerateVideoCaptureDevicesNV(Display *dpy, int screen, int *nelements) { - App("glXEnumerateVideoCaptureDevicesNV","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", nelements, ")"); + App("glXEnumerateVideoCaptureDevicesNV","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(nelements,Logging::pointers), ")"); if (!dispatchTableGlobal.glXEnumerateVideoCaptureDevicesNV) { GetProcAddress( dispatchTableGlobal.glXEnumerateVideoCaptureDevicesNV, "glXEnumerateVideoCaptureDevicesNV" ); @@ -31849,7 +31849,7 @@ extern "C" { GLXVideoCaptureDeviceNV * ret = NULL; if (dispatchTableGlobal.glXEnumerateVideoCaptureDevicesNV) { - Driver("glXEnumerateVideoCaptureDevicesNV","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", nelements, ")"); + Driver("glXEnumerateVideoCaptureDevicesNV","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(nelements,Logging::pointers), ")"); ret = dispatchTableGlobal.glXEnumerateVideoCaptureDevicesNV(dpy, screen, nelements); } else @@ -31878,7 +31878,7 @@ extern "C" { REGAL_DECL int REGAL_CALL glXQueryVideoCaptureDeviceNV(Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value) { - App("glXQueryVideoCaptureDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", device, ", ", attribute, ", ", value, ")"); + App("glXQueryVideoCaptureDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", device, ", ", attribute, ", ", boost::print::optional(value,Logging::pointers), ")"); if (!dispatchTableGlobal.glXQueryVideoCaptureDeviceNV) { GetProcAddress( dispatchTableGlobal.glXQueryVideoCaptureDeviceNV, "glXQueryVideoCaptureDeviceNV" ); @@ -31889,7 +31889,7 @@ extern "C" { int ret = (int )0; if (dispatchTableGlobal.glXQueryVideoCaptureDeviceNV) { - Driver("glXQueryVideoCaptureDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", device, ", ", attribute, ", ", value, ")"); + Driver("glXQueryVideoCaptureDeviceNV","(", boost::print::optional(dpy,Logging::pointers), ", ", device, ", ", attribute, ", ", boost::print::optional(value,Logging::pointers), ")"); ret = dispatchTableGlobal.glXQueryVideoCaptureDeviceNV(dpy, device, attribute, value); } else @@ -32155,7 +32155,7 @@ extern "C" { REGAL_DECL GLXFBConfigSGIX *REGAL_CALL glXChooseFBConfigSGIX(Display *dpy, int screen, const int *attrib_list, int *nelements) { - App("glXChooseFBConfigSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", attrib_list, ", ", nelements, ")"); + App("glXChooseFBConfigSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(attrib_list,Logging::pointers), ", ", boost::print::optional(nelements,Logging::pointers), ")"); if (!dispatchTableGlobal.glXChooseFBConfigSGIX) { GetProcAddress( dispatchTableGlobal.glXChooseFBConfigSGIX, "glXChooseFBConfigSGIX" ); @@ -32166,7 +32166,7 @@ extern "C" { GLXFBConfigSGIX * ret = NULL; if (dispatchTableGlobal.glXChooseFBConfigSGIX) { - Driver("glXChooseFBConfigSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", attrib_list, ", ", nelements, ")"); + Driver("glXChooseFBConfigSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", screen, ", ", boost::print::optional(attrib_list,Logging::pointers), ", ", boost::print::optional(nelements,Logging::pointers), ")"); ret = dispatchTableGlobal.glXChooseFBConfigSGIX(dpy, screen, attrib_list, nelements); } else @@ -32239,7 +32239,7 @@ extern "C" { REGAL_DECL GLXFBConfigSGIX REGAL_CALL glXGetFBConfigFromVisualSGIX(Display *dpy, XVisualInfo *vis) { - App("glXGetFBConfigFromVisualSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ")"); + App("glXGetFBConfigFromVisualSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ")"); if (!dispatchTableGlobal.glXGetFBConfigFromVisualSGIX) { GetProcAddress( dispatchTableGlobal.glXGetFBConfigFromVisualSGIX, "glXGetFBConfigFromVisualSGIX" ); @@ -32250,7 +32250,7 @@ extern "C" { GLXFBConfigSGIX ret = (GLXFBConfigSGIX )0; if (dispatchTableGlobal.glXGetFBConfigFromVisualSGIX) { - Driver("glXGetFBConfigFromVisualSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", vis, ")"); + Driver("glXGetFBConfigFromVisualSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", boost::print::optional(vis,Logging::pointers), ")"); ret = dispatchTableGlobal.glXGetFBConfigFromVisualSGIX(dpy, vis); } else @@ -32283,7 +32283,7 @@ extern "C" { REGAL_DECL GLXPbuffer REGAL_CALL glXCreateGLXPbufferSGIX(Display *dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list) { - App("glXCreateGLXPbufferSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", width, ", ", height, ", ", attrib_list, ")"); + App("glXCreateGLXPbufferSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", width, ", ", height, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); if (!dispatchTableGlobal.glXCreateGLXPbufferSGIX) { GetProcAddress( dispatchTableGlobal.glXCreateGLXPbufferSGIX, "glXCreateGLXPbufferSGIX" ); @@ -32294,7 +32294,7 @@ extern "C" { GLXPbuffer ret = (GLXPbuffer )0; if (dispatchTableGlobal.glXCreateGLXPbufferSGIX) { - Driver("glXCreateGLXPbufferSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", width, ", ", height, ", ", attrib_list, ")"); + Driver("glXCreateGLXPbufferSGIX","(", boost::print::optional(dpy,Logging::pointers), ", ", config, ", ", width, ", ", height, ", ", boost::print::optional(attrib_list,Logging::pointers), ")"); ret = dispatchTableGlobal.glXCreateGLXPbufferSGIX(dpy, config, width, height, attrib_list); } else @@ -33061,7 +33061,7 @@ extern "C" { REGAL_DECL CGLError REGAL_CALL CGLGetOption(CGLGlobalOption pname, GLint *param) { - App("CGLGetOption","(", pname, ", ", param, ")"); + App("CGLGetOption","(", pname, ", ", boost::print::optional(param,Logging::pointers), ")"); if (!dispatchTableGlobal.CGLGetOption) { GetProcAddress( dispatchTableGlobal.CGLGetOption, "CGLGetOption" ); @@ -33072,7 +33072,7 @@ extern "C" { CGLError ret = (CGLError )0; if (dispatchTableGlobal.CGLGetOption) { - Driver("CGLGetOption","(", pname, ", ", param, ")"); + Driver("CGLGetOption","(", pname, ", ", boost::print::optional(param,Logging::pointers), ")"); ret = dispatchTableGlobal.CGLGetOption(pname, param); } else @@ -33248,7 +33248,7 @@ extern "C" { REGAL_DECL CGLError REGAL_CALL CGLSetParameter(CGLContextObj ctx, CGLContextEnable pname, const GLint *params) { - App("CGLSetParameter","(", ctx, ", ", pname, ", ", params, ")"); + App("CGLSetParameter","(", ctx, ", ", pname, ", ", boost::print::optional(params,Logging::pointers), ")"); if (!dispatchTableGlobal.CGLSetParameter) { GetProcAddress( dispatchTableGlobal.CGLSetParameter, "CGLSetParameter" ); @@ -33259,7 +33259,7 @@ extern "C" { CGLError ret = (CGLError )0; if (dispatchTableGlobal.CGLSetParameter) { - Driver("CGLSetParameter","(", ctx, ", ", pname, ", ", params, ")"); + Driver("CGLSetParameter","(", ctx, ", ", pname, ", ", boost::print::optional(params,Logging::pointers), ")"); ret = dispatchTableGlobal.CGLSetParameter(ctx, pname, params); } else @@ -33313,7 +33313,7 @@ extern "C" { REGAL_DECL CGLError REGAL_CALL CGLDescribePBuffer(CGLPBufferObj pbuffer, GLsizei *width, GLsizei *height, GLenum *target, GLenum *internalFormat, GLint *mipmap) { - App("CGLDescribePBuffer","(", pbuffer, ", ", width, ", ", height, ", ", target, ", ", internalFormat, ", ", mipmap, ")"); + App("CGLDescribePBuffer","(", pbuffer, ", ", width, ", ", height, ", ", target, ", ", internalFormat, ", ", boost::print::optional(mipmap,Logging::pointers), ")"); if (!dispatchTableGlobal.CGLDescribePBuffer) { GetProcAddress( dispatchTableGlobal.CGLDescribePBuffer, "CGLDescribePBuffer" ); @@ -33324,7 +33324,7 @@ extern "C" { CGLError ret = (CGLError )0; if (dispatchTableGlobal.CGLDescribePBuffer) { - Driver("CGLDescribePBuffer","(", pbuffer, ", ", width, ", ", height, ", ", target, ", ", internalFormat, ", ", mipmap, ")"); + Driver("CGLDescribePBuffer","(", pbuffer, ", ", width, ", ", height, ", ", target, ", ", internalFormat, ", ", boost::print::optional(mipmap,Logging::pointers), ")"); ret = dispatchTableGlobal.CGLDescribePBuffer(pbuffer, width, height, target, internalFormat, mipmap); } else @@ -33355,7 +33355,7 @@ extern "C" { REGAL_DECL CGLError REGAL_CALL CGLGetPBuffer(CGLContextObj ctx, CGLPBufferObj *pbuffer, GLenum *face, GLint *level, GLint *screen) { - App("CGLGetPBuffer","(", ctx, ", ", pbuffer, ", ", face, ", ", level, ", ", screen, ")"); + App("CGLGetPBuffer","(", ctx, ", ", pbuffer, ", ", face, ", ", boost::print::optional(level,Logging::pointers), ", ", boost::print::optional(screen,Logging::pointers), ")"); if (!dispatchTableGlobal.CGLGetPBuffer) { GetProcAddress( dispatchTableGlobal.CGLGetPBuffer, "CGLGetPBuffer" ); @@ -33366,7 +33366,7 @@ extern "C" { CGLError ret = (CGLError )0; if (dispatchTableGlobal.CGLGetPBuffer) { - Driver("CGLGetPBuffer","(", ctx, ", ", pbuffer, ", ", face, ", ", level, ", ", screen, ")"); + Driver("CGLGetPBuffer","(", ctx, ", ", pbuffer, ", ", face, ", ", boost::print::optional(level,Logging::pointers), ", ", boost::print::optional(screen,Logging::pointers), ")"); ret = dispatchTableGlobal.CGLGetPBuffer(ctx, pbuffer, face, level, screen); } else @@ -33441,7 +33441,7 @@ extern "C" { REGAL_DECL CGLError REGAL_CALL CGLGetGlobalOption(CGLGlobalOption pname, GLint *params) { - App("CGLGetGlobalOption","(", pname, ", ", params, ")"); + App("CGLGetGlobalOption","(", pname, ", ", boost::print::optional(params,Logging::pointers), ")"); if (!dispatchTableGlobal.CGLGetGlobalOption) { GetProcAddress( dispatchTableGlobal.CGLGetGlobalOption, "CGLGetGlobalOption" ); @@ -33452,7 +33452,7 @@ extern "C" { CGLError ret = (CGLError )0; if (dispatchTableGlobal.CGLGetGlobalOption) { - Driver("CGLGetGlobalOption","(", pname, ", ", params, ")"); + Driver("CGLGetGlobalOption","(", pname, ", ", boost::print::optional(params,Logging::pointers), ")"); ret = dispatchTableGlobal.CGLGetGlobalOption(pname, params); } else @@ -33668,7 +33668,7 @@ extern "C" { REGAL_DECL CGLError REGAL_CALL CGLSetGlobalOption(CGLGlobalOption pname, const GLint *params) { - App("CGLSetGlobalOption","(", pname, ", ", params, ")"); + App("CGLSetGlobalOption","(", pname, ", ", boost::print::optional(params,Logging::pointers), ")"); if (!dispatchTableGlobal.CGLSetGlobalOption) { GetProcAddress( dispatchTableGlobal.CGLSetGlobalOption, "CGLSetGlobalOption" ); @@ -33679,7 +33679,7 @@ extern "C" { CGLError ret = (CGLError )0; if (dispatchTableGlobal.CGLSetGlobalOption) { - Driver("CGLSetGlobalOption","(", pname, ", ", params, ")"); + Driver("CGLSetGlobalOption","(", pname, ", ", boost::print::optional(params,Logging::pointers), ")"); ret = dispatchTableGlobal.CGLSetGlobalOption(pname, params); } else diff --git a/src/regal/RegalConfig.cpp b/src/regal/RegalConfig.cpp index b21c376..2a90374 100644 --- a/src/regal/RegalConfig.cpp +++ b/src/regal/RegalConfig.cpp @@ -80,9 +80,10 @@ bool frameSaveColor = false; bool frameSaveStencil = false; bool frameSaveDepth = false; -bool cache = REGAL_CACHE; -bool cacheShader = false; -bool cacheShaderRead = false; +bool cache = REGAL_CACHE; +bool cacheShader = false; +bool cacheShaderRead = false; +bool cacheShaderWrite = false; std::string cacheDirectory("./"); void Init() @@ -234,6 +235,11 @@ void Init() if (tmp) cacheShader = atoi(tmp)!=0; #endif +#if REGAL_CACHE_SHADER_WRITE + tmp = GetEnv( "REGAL_CACHE_SHADER_WRITE" ); + if (tmp) cacheShaderWrite = atoi(tmp)!=0; +#endif + #if REGAL_CACHE_SHADER_READ tmp = GetEnv( "REGAL_CACHE_SHADER_READ" ); if (tmp) cacheShaderRead = atoi(tmp)!=0; diff --git a/src/regal/RegalConfig.h b/src/regal/RegalConfig.h index 803b4f8..5d003b7 100644 --- a/src/regal/RegalConfig.h +++ b/src/regal/RegalConfig.h @@ -93,6 +93,7 @@ namespace Config extern bool cache; extern bool cacheShader; extern bool cacheShaderRead; + extern bool cacheShaderWrite; extern std::string cacheDirectory; }; diff --git a/src/regal/RegalContext.cpp b/src/regal/RegalContext.cpp index 9aa84b9..1e4acd5 100644 --- a/src/regal/RegalContext.cpp +++ b/src/regal/RegalContext.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalContext.h b/src/regal/RegalContext.h index daa1989..ce3ee71 100644 --- a/src/regal/RegalContext.h +++ b/src/regal/RegalContext.h @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalContextInfo.cpp b/src/regal/RegalContextInfo.cpp index bade3f2..d649055 100644 --- a/src/regal/RegalContextInfo.cpp +++ b/src/regal/RegalContextInfo.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalContextInfo.h b/src/regal/RegalContextInfo.h index 5ab401e..5961b0f 100644 --- a/src/regal/RegalContextInfo.h +++ b/src/regal/RegalContextInfo.h @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatch.h b/src/regal/RegalDispatch.h index 0f9fe8b..edbe7a1 100644 --- a/src/regal/RegalDispatch.h +++ b/src/regal/RegalDispatch.h @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchCode.cpp b/src/regal/RegalDispatchCode.cpp index 7120455..337ec0c 100644 --- a/src/regal/RegalDispatchCode.cpp +++ b/src/regal/RegalDispatchCode.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchDebug.cpp b/src/regal/RegalDispatchDebug.cpp index 7a2f4f0..163cd95 100644 --- a/src/regal/RegalDispatchDebug.cpp +++ b/src/regal/RegalDispatchDebug.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchEmu.cpp b/src/regal/RegalDispatchEmu.cpp index d8bf6ca..d367a9e 100644 --- a/src/regal/RegalDispatchEmu.cpp +++ b/src/regal/RegalDispatchEmu.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchError.cpp b/src/regal/RegalDispatchError.cpp index 7880db4..ad70e92 100644 --- a/src/regal/RegalDispatchError.cpp +++ b/src/regal/RegalDispatchError.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchLoader.cpp b/src/regal/RegalDispatchLoader.cpp index 7251a7a..9d59f7b 100644 --- a/src/regal/RegalDispatchLoader.cpp +++ b/src/regal/RegalDispatchLoader.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchLog.cpp b/src/regal/RegalDispatchLog.cpp index 50ac162..d659e74 100644 --- a/src/regal/RegalDispatchLog.cpp +++ b/src/regal/RegalDispatchLog.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* @@ -963,7 +963,7 @@ static void REGAL_CALL log_glGetIntegerv(GLenum pname, GLint *params) DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetIntegerv)(pname, params); - Driver("glGetIntegerv","(", toString(pname), ", ", params, ")"); + Driver("glGetIntegerv","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetLightfv(GLenum light, GLenum pname, GLfloat *params) @@ -983,7 +983,7 @@ static void REGAL_CALL log_glGetLightiv(GLenum light, GLenum pname, GLint *param DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetLightiv)(light, pname, params); - Driver("glGetLightiv","(", toString(light), ", ", toString(pname), ", ", params, ")"); + Driver("glGetLightiv","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMapdv(GLenum target, GLenum query, GLdouble *v) @@ -1013,7 +1013,7 @@ static void REGAL_CALL log_glGetMapiv(GLenum target, GLenum query, GLint *v) DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMapiv)(target, query, v); - Driver("glGetMapiv","(", toString(target), ", ", toString(query), ", ", v, ")"); + Driver("glGetMapiv","(", toString(target), ", ", toString(query), ", ", boost::print::optional(v,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params) @@ -1033,7 +1033,7 @@ static void REGAL_CALL log_glGetMaterialiv(GLenum face, GLenum pname, GLint *par DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMaterialiv)(face, pname, params); - Driver("glGetMaterialiv","(", toString(face), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMaterialiv","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetPixelMapfv(GLenum map, GLfloat *values) @@ -1104,7 +1104,7 @@ static void REGAL_CALL log_glGetTexEnviv(GLenum target, GLenum pname, GLint *par DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexEnviv)(target, pname, params); - Driver("glGetTexEnviv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTexEnviv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params) @@ -1134,7 +1134,7 @@ static void REGAL_CALL log_glGetTexGeniv(GLenum coord, GLenum pname, GLint *para DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexGeniv)(coord, pname, params); - Driver("glGetTexGeniv","(", toString(coord), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTexGeniv","(", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels) @@ -1164,7 +1164,7 @@ static void REGAL_CALL log_glGetTexLevelParameteriv(GLenum target, GLint level, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexLevelParameteriv)(target, level, pname, params); - Driver("glGetTexLevelParameteriv","(", toString(target), ", ", level, ", ", toString(pname), ", ", params, ")"); + Driver("glGetTexLevelParameteriv","(", toString(target), ", ", level, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params) @@ -1184,7 +1184,7 @@ static void REGAL_CALL log_glGetTexParameteriv(GLenum target, GLenum pname, GLin DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexParameteriv)(target, pname, params); - Driver("glGetTexParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTexParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glHint(GLenum target, GLenum mode) @@ -4077,7 +4077,7 @@ static void REGAL_CALL log_glPointParameteriv(GLenum pname, const GLint *params) DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glPointParameteriv)(pname, params); - Driver("glPointParameteriv","(", toString(pname), ", ", params, ")"); + Driver("glPointParameteriv","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue) @@ -4509,7 +4509,7 @@ static void REGAL_CALL log_glGetBufferParameteriv(GLenum target, GLenum pname, G DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetBufferParameteriv)(target, pname, params); - Driver("glGetBufferParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetBufferParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetBufferPointerv(GLenum target, GLenum pname, GLvoid **params) @@ -4539,7 +4539,7 @@ static void REGAL_CALL log_glGetQueryObjectiv(GLuint id, GLenum pname, GLint *pa DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetQueryObjectiv)(id, pname, params); - Driver("glGetQueryObjectiv","(", id, ", ", toString(pname), ", ", params, ")"); + Driver("glGetQueryObjectiv","(", id, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params) @@ -4559,7 +4559,7 @@ static void REGAL_CALL log_glGetQueryiv(GLenum target, GLenum pname, GLint *para DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetQueryiv)(target, pname, params); - Driver("glGetQueryiv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetQueryiv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsBuffer(GLuint buffer) @@ -4849,7 +4849,7 @@ static void REGAL_CALL log_glGetUniformiv(GLuint program, GLint location, GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetUniformiv)(program, location, params); - Driver("glGetUniformiv","(", program, ", ", location, ", ", params, ")"); + Driver("glGetUniformiv","(", program, ", ", location, ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid **pointer) @@ -5681,7 +5681,7 @@ static void REGAL_CALL log_glClearBufferiv(GLenum buffer, GLint drawbuffer, cons DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glClearBufferiv)(buffer, drawbuffer, value); - Driver("glClearBufferiv","(", toString(buffer), ", ", drawbuffer, ", ", value, ")"); + Driver("glClearBufferiv","(", toString(buffer), ", ", drawbuffer, ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value) @@ -5783,7 +5783,7 @@ static void REGAL_CALL log_glGetTexParameterIiv(GLenum target, GLenum pname, GLi DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexParameterIiv)(target, pname, params); - Driver("glGetTexParameterIiv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTexParameterIiv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params) @@ -5854,7 +5854,7 @@ static void REGAL_CALL log_glTexParameterIiv(GLenum target, GLenum pname, const DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glTexParameterIiv)(target, pname, params); - Driver("glTexParameterIiv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glTexParameterIiv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params) @@ -6734,7 +6734,7 @@ static void REGAL_CALL log_glMultiDrawElementArrayAPPLE(GLenum mode, const GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glMultiDrawElementArrayAPPLE)(mode, first, count, primcount); - Driver("glMultiDrawElementArrayAPPLE","(", toString(mode), ", ", first, ", ", count, ", ", primcount, ")"); + Driver("glMultiDrawElementArrayAPPLE","(", toString(mode), ", ", boost::print::optional(first,Logging::pointers), ", ", count, ", ", primcount, ")"); } static void REGAL_CALL log_glMultiDrawRangeElementArrayAPPLE(GLenum mode, GLuint start, GLuint end, const GLint *first, const GLsizei *count, GLsizei primcount) @@ -6744,7 +6744,7 @@ static void REGAL_CALL log_glMultiDrawRangeElementArrayAPPLE(GLenum mode, GLuint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glMultiDrawRangeElementArrayAPPLE)(mode, start, end, first, count, primcount); - Driver("glMultiDrawRangeElementArrayAPPLE","(", toString(mode), ", ", start, ", ", end, ", ", first, ", ", count, ", ", primcount, ")"); + Driver("glMultiDrawRangeElementArrayAPPLE","(", toString(mode), ", ", start, ", ", end, ", ", boost::print::optional(first,Logging::pointers), ", ", count, ", ", primcount, ")"); } // GL_APPLE_fence @@ -6917,7 +6917,7 @@ static void REGAL_CALL log_glGetObjectParameterivAPPLE(GLenum objectType, GLuint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetObjectParameterivAPPLE)(objectType, name, pname, params); - Driver("glGetObjectParameterivAPPLE","(", toString(objectType), ", ", name, ", ", toString(pname), ", ", params, ")"); + Driver("glGetObjectParameterivAPPLE","(", toString(objectType), ", ", name, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLenum REGAL_CALL log_glObjectPurgeableAPPLE(GLenum objectType, GLuint name, GLenum option) @@ -6993,7 +6993,7 @@ static void REGAL_CALL log_glGetSyncivAPPLE(GLsync sync, GLenum pname, GLsizei b DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetSyncivAPPLE)(sync, pname, bufSize, length, values); - Driver("glGetSyncivAPPLE","(", sync, ", ", toString(pname), ", ", bufSize, ", ", length, ", ", values, ")"); + Driver("glGetSyncivAPPLE","(", sync, ", ", toString(pname), ", ", bufSize, ", ", length, ", ", boost::print::optional(values,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsSyncAPPLE(GLsync sync) @@ -7609,7 +7609,7 @@ static void REGAL_CALL log_glGetFramebufferParameteriv(GLenum target, GLenum pna DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFramebufferParameteriv)(target, pname, params); - Driver("glGetFramebufferParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFramebufferParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetNamedFramebufferParameterivEXT(GLuint framebuffer, GLenum pname, GLint *params) @@ -7619,7 +7619,7 @@ static void REGAL_CALL log_glGetNamedFramebufferParameterivEXT(GLuint framebuffe DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetNamedFramebufferParameterivEXT)(framebuffer, pname, params); - Driver("glGetNamedFramebufferParameterivEXT","(", framebuffer, ", ", toString(pname), ", ", params, ")"); + Driver("glGetNamedFramebufferParameterivEXT","(", framebuffer, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glNamedFramebufferParameteriEXT(GLuint framebuffer, GLenum pname, GLint param) @@ -7782,7 +7782,7 @@ static void REGAL_CALL log_glGetFramebufferAttachmentParameteriv(GLenum target, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFramebufferAttachmentParameteriv)(target, attachment, pname, params); - Driver("glGetFramebufferAttachmentParameteriv","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFramebufferAttachmentParameteriv","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params) @@ -7792,7 +7792,7 @@ static void REGAL_CALL log_glGetRenderbufferParameteriv(GLenum target, GLenum pn DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetRenderbufferParameteriv)(target, pname, params); - Driver("glGetRenderbufferParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetRenderbufferParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsFramebuffer(GLuint framebuffer) @@ -8132,7 +8132,7 @@ static void REGAL_CALL log_glColorTableParameteriv(GLenum target, GLenum pname, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glColorTableParameteriv)(target, pname, params); - Driver("glColorTableParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glColorTableParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image) @@ -8192,7 +8192,7 @@ static void REGAL_CALL log_glConvolutionParameteriv(GLenum target, GLenum pname, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glConvolutionParameteriv)(target, pname, params); - Driver("glConvolutionParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glConvolutionParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width) @@ -8262,7 +8262,7 @@ static void REGAL_CALL log_glGetColorTableParameteriv(GLenum target, GLenum pnam DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetColorTableParameteriv)(target, pname, params); - Driver("glGetColorTableParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetColorTableParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image) @@ -8292,7 +8292,7 @@ static void REGAL_CALL log_glGetConvolutionParameteriv(GLenum target, GLenum pna DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetConvolutionParameteriv)(target, pname, params); - Driver("glGetConvolutionParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetConvolutionParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values) @@ -8322,7 +8322,7 @@ static void REGAL_CALL log_glGetHistogramParameteriv(GLenum target, GLenum pname DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetHistogramParameteriv)(target, pname, params); - Driver("glGetHistogramParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetHistogramParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values) @@ -8352,7 +8352,7 @@ static void REGAL_CALL log_glGetMinmaxParameteriv(GLenum target, GLenum pname, G DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMinmaxParameteriv)(target, pname, params); - Driver("glGetMinmaxParameteriv","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMinmaxParameteriv","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span) @@ -8436,7 +8436,7 @@ static void REGAL_CALL log_glGetInternalformativ(GLenum target, GLenum internalf DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetInternalformativ)(target, internalformat, pname, bufSize, params); - Driver("glGetInternalformativ","(", toString(target), ", ", toString(internalformat), ", ", toString(pname), ", ", bufSize, ", ", params, ")"); + Driver("glGetInternalformativ","(", toString(target), ", ", toString(internalformat), ", ", toString(pname), ", ", bufSize, ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_ARB_internalformat_query2 @@ -9013,7 +9013,7 @@ static void REGAL_CALL log_glGetQueryObjectivARB(GLuint id, GLenum pname, GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetQueryObjectivARB)(id, pname, params); - Driver("glGetQueryObjectivARB","(", id, ", ", toString(pname), ", ", params, ")"); + Driver("glGetQueryObjectivARB","(", id, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetQueryObjectuivARB(GLuint id, GLenum pname, GLuint *params) @@ -9033,7 +9033,7 @@ static void REGAL_CALL log_glGetQueryivARB(GLenum target, GLenum pname, GLint *p DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetQueryivARB)(target, pname, params); - Driver("glGetQueryivARB","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetQueryivARB","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsQueryARB(GLuint id) @@ -9078,7 +9078,7 @@ static void REGAL_CALL log_glGetProgramInterfaceiv(GLuint program, GLenum progra DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetProgramInterfaceiv)(program, programInterface, pname, params); - Driver("glGetProgramInterfaceiv","(", program, ", ", toString(programInterface), ", ", toString(pname), ", ", params, ")"); + Driver("glGetProgramInterfaceiv","(", program, ", ", toString(programInterface), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLuint REGAL_CALL log_glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name) @@ -9131,7 +9131,7 @@ static void REGAL_CALL log_glGetProgramResourceiv(GLuint program, GLenum program DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetProgramResourceiv)(program, programInterface, index, propCount, props, bufSize, length, params); - Driver("glGetProgramResourceiv","(", program, ", ", toString(programInterface), ", ", index, ", ", propCount, ", ", props, ", ", bufSize, ", ", length, ", ", params, ")"); + Driver("glGetProgramResourceiv","(", program, ", ", toString(programInterface), ", ", index, ", ", propCount, ", ", props, ", ", bufSize, ", ", length, ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_ARB_provoking_vertex @@ -9226,7 +9226,7 @@ static void REGAL_CALL log_glGetnMapivARB(GLenum target, GLenum query, GLsizei b DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetnMapivARB)(target, query, bufSize, v); - Driver("glGetnMapivARB","(", toString(target), ", ", toString(query), ", ", bufSize, ", ", v, ")"); + Driver("glGetnMapivARB","(", toString(target), ", ", toString(query), ", ", bufSize, ", ", boost::print::optional(v,Logging::pointers), ")"); } static void REGAL_CALL log_glGetnMinmaxARB(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values) @@ -9326,7 +9326,7 @@ static void REGAL_CALL log_glGetnUniformivARB(GLuint program, GLint location, GL DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetnUniformivARB)(program, location, bufSize, params); - Driver("glGetnUniformivARB","(", program, ", ", location, ", ", bufSize, ", ", params, ")"); + Driver("glGetnUniformivARB","(", program, ", ", location, ", ", bufSize, ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetnUniformuivARB(GLuint program, GLint location, GLsizei bufSize, GLuint *params) @@ -9584,7 +9584,7 @@ static void REGAL_CALL log_glGetProgramPipelineiv(GLuint pipeline, GLenum pname, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetProgramPipelineiv)(pipeline, pname, params); - Driver("glGetProgramPipelineiv","(", pipeline, ", ", toString(pname), ", ", params, ")"); + Driver("glGetProgramPipelineiv","(", pipeline, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsProgramPipeline(GLuint pipeline) @@ -10127,7 +10127,7 @@ static void REGAL_CALL log_glGetActiveAtomicCounterBufferiv(GLuint program, GLui DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetActiveAtomicCounterBufferiv)(program, bufferIndex, pname, params); - Driver("glGetActiveAtomicCounterBufferiv","(", program, ", ", bufferIndex, ", ", toString(pname), ", ", params, ")"); + Driver("glGetActiveAtomicCounterBufferiv","(", program, ", ", bufferIndex, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_ARB_shader_image_load_store @@ -10274,7 +10274,7 @@ static void REGAL_CALL log_glGetObjectParameterivARB(GLhandleARB obj, GLenum pna DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetObjectParameterivARB)(obj, pname, params); - Driver("glGetObjectParameterivARB","(", obj, ", ", toString(pname), ", ", params, ")"); + Driver("glGetObjectParameterivARB","(", obj, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetShaderSourceARB(GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source) @@ -10315,7 +10315,7 @@ static void REGAL_CALL log_glGetUniformivARB(GLhandleARB programObj, GLint locat DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetUniformivARB)(programObj, location, params); - Driver("glGetUniformivARB","(", programObj, ", ", location, ", ", params, ")"); + Driver("glGetUniformivARB","(", programObj, ", ", location, ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glLinkProgramARB(GLhandleARB programObj) @@ -10375,7 +10375,7 @@ static void REGAL_CALL log_glUniform1ivARB(GLint location, GLsizei count, const DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glUniform1ivARB)(location, count, value); - Driver("glUniform1ivARB","(", location, ", ", count, ", ", value, ")"); + Driver("glUniform1ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glUniform2fARB(GLint location, GLfloat v0, GLfloat v1) @@ -10415,7 +10415,7 @@ static void REGAL_CALL log_glUniform2ivARB(GLint location, GLsizei count, const DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glUniform2ivARB)(location, count, value); - Driver("glUniform2ivARB","(", location, ", ", count, ", ", value, ")"); + Driver("glUniform2ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glUniform3fARB(GLint location, GLfloat v0, GLfloat v1, GLfloat v2) @@ -10455,7 +10455,7 @@ static void REGAL_CALL log_glUniform3ivARB(GLint location, GLsizei count, const DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glUniform3ivARB)(location, count, value); - Driver("glUniform3ivARB","(", location, ", ", count, ", ", value, ")"); + Driver("glUniform3ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glUniform4fARB(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) @@ -10495,7 +10495,7 @@ static void REGAL_CALL log_glUniform4ivARB(GLint location, GLsizei count, const DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glUniform4ivARB)(location, count, value); - Driver("glUniform4ivARB","(", location, ", ", count, ", ", value, ")"); + Driver("glUniform4ivARB","(", location, ", ", count, ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glUniformMatrix2fvARB(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) @@ -10589,7 +10589,7 @@ static void REGAL_CALL log_glGetActiveSubroutineUniformiv(GLuint program, GLenum DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetActiveSubroutineUniformiv)(program, shaderType, index, pname, values); - Driver("glGetActiveSubroutineUniformiv","(", program, ", ", toString(shaderType), ", ", index, ", ", toString(pname), ", ", values, ")"); + Driver("glGetActiveSubroutineUniformiv","(", program, ", ", toString(shaderType), ", ", index, ", ", toString(pname), ", ", boost::print::optional(values,Logging::pointers), ")"); } static void REGAL_CALL log_glGetProgramStageiv(GLuint program, GLenum shaderType, GLenum pname, GLint *values) @@ -11212,7 +11212,7 @@ static void REGAL_CALL log_glGetQueryIndexediv(GLenum target, GLuint index, GLen DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetQueryIndexediv)(target, index, pname, params); - Driver("glGetQueryIndexediv","(", toString(target), ", ", index, ", ", toString(pname), ", ", params, ")"); + Driver("glGetQueryIndexediv","(", toString(target), ", ", index, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_ARB_transform_feedback_instanced @@ -11318,7 +11318,7 @@ static void REGAL_CALL log_glGetActiveUniformBlockiv(GLuint program, GLuint unif DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetActiveUniformBlockiv)(program, uniformBlockIndex, pname, params); - Driver("glGetActiveUniformBlockiv","(", program, ", ", uniformBlockIndex, ", ", toString(pname), ", ", params, ")"); + Driver("glGetActiveUniformBlockiv","(", program, ", ", uniformBlockIndex, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName) @@ -11338,7 +11338,7 @@ static void REGAL_CALL log_glGetActiveUniformsiv(GLuint program, GLsizei uniform DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetActiveUniformsiv)(program, uniformCount, uniformIndices, pname, params); - Driver("glGetActiveUniformsiv","(", program, ", ", uniformCount, ", ", uniformIndices, ", ", toString(pname), ", ", params, ")"); + Driver("glGetActiveUniformsiv","(", program, ", ", uniformCount, ", ", uniformIndices, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetIntegeri_v(GLenum target, GLuint index, GLint *data) @@ -11348,7 +11348,7 @@ static void REGAL_CALL log_glGetIntegeri_v(GLenum target, GLuint index, GLint *d DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetIntegeri_v)(target, index, data); - Driver("glGetIntegeri_v","(", toString(target), ", ", index, ", ", data, ")"); + Driver("glGetIntegeri_v","(", toString(target), ", ", index, ", ", boost::print::optional(data,Logging::pointers), ")"); } static GLuint REGAL_CALL log_glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName) @@ -11648,7 +11648,7 @@ static void REGAL_CALL log_glWeightivARB(GLint size, GLint *weights) DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glWeightivARB)(size, weights); - Driver("glWeightivARB","(", size, ", ", weights, ")"); + Driver("glWeightivARB","(", size, ", ", boost::print::optional(weights,Logging::pointers), ")"); } static void REGAL_CALL log_glWeightsvARB(GLint size, GLshort *weights) @@ -11750,7 +11750,7 @@ static void REGAL_CALL log_glGetBufferParameterivARB(GLenum target, GLenum pname DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetBufferParameterivARB)(target, pname, params); - Driver("glGetBufferParameterivARB","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetBufferParameterivARB","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetBufferPointervARB(GLenum target, GLenum pname, GLvoid **params) @@ -13171,7 +13171,7 @@ static void REGAL_CALL log_glGetTexBumpParameterivATI(GLenum pname, GLint *param DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexBumpParameterivATI)(pname, param); - Driver("glGetTexBumpParameterivATI","(", toString(pname), ", ", param, ")"); + Driver("glGetTexBumpParameterivATI","(", toString(pname), ", ", boost::print::optional(param,Logging::pointers), ")"); } static void REGAL_CALL log_glTexBumpParameterfvATI(GLenum pname, GLfloat *param) @@ -13191,7 +13191,7 @@ static void REGAL_CALL log_glTexBumpParameterivATI(GLenum pname, GLint *param) DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glTexBumpParameterivATI)(pname, param); - Driver("glTexBumpParameterivATI","(", toString(pname), ", ", param, ")"); + Driver("glTexBumpParameterivATI","(", toString(pname), ", ", boost::print::optional(param,Logging::pointers), ")"); } // GL_ATI_fragment_shader @@ -13547,7 +13547,7 @@ static void REGAL_CALL log_glGetVertexAttribArrayObjectivATI(GLuint index, GLenu DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetVertexAttribArrayObjectivATI)(index, pname, params); - Driver("glGetVertexAttribArrayObjectivATI","(", index, ", ", toString(pname), ", ", params, ")"); + Driver("glGetVertexAttribArrayObjectivATI","(", index, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glVertexAttribArrayObjectATI(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset) @@ -14197,7 +14197,7 @@ static void REGAL_CALL log_glConvolutionParameterivEXT(GLenum target, GLenum pna DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glConvolutionParameterivEXT)(target, pname, params); - Driver("glConvolutionParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glConvolutionParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glCopyConvolutionFilter1DEXT(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width) @@ -14247,7 +14247,7 @@ static void REGAL_CALL log_glGetConvolutionParameterivEXT(GLenum target, GLenum DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetConvolutionParameterivEXT)(target, pname, params); - Driver("glGetConvolutionParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetConvolutionParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetSeparableFilterEXT(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span) @@ -15092,7 +15092,7 @@ static void REGAL_CALL log_glGetFramebufferParameterivEXT(GLuint framebuffer, GL DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFramebufferParameterivEXT)(framebuffer, pname, params); - Driver("glGetFramebufferParameterivEXT","(", framebuffer, ", ", toString(pname), ", ", params, ")"); + Driver("glGetFramebufferParameterivEXT","(", framebuffer, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMultiTexEnvfvEXT(GLenum texunit, GLenum target, GLenum pname, GLfloat *params) @@ -15112,7 +15112,7 @@ static void REGAL_CALL log_glGetMultiTexEnvivEXT(GLenum texunit, GLenum target, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMultiTexEnvivEXT)(texunit, target, pname, params); - Driver("glGetMultiTexEnvivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMultiTexEnvivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMultiTexGendvEXT(GLenum texunit, GLenum coord, GLenum pname, GLdouble *params) @@ -15142,7 +15142,7 @@ static void REGAL_CALL log_glGetMultiTexGenivEXT(GLenum texunit, GLenum coord, G DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMultiTexGenivEXT)(texunit, coord, pname, params); - Driver("glGetMultiTexGenivEXT","(", toString(texunit), ", ", toString(coord), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMultiTexGenivEXT","(", toString(texunit), ", ", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMultiTexImageEXT(GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels) @@ -15172,7 +15172,7 @@ static void REGAL_CALL log_glGetMultiTexLevelParameterivEXT(GLenum texunit, GLen DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMultiTexLevelParameterivEXT)(texunit, target, level, pname, params); - Driver("glGetMultiTexLevelParameterivEXT","(", toString(texunit), ", ", toString(target), ", ", level, ", ", toString(pname), ", ", params, ")"); + Driver("glGetMultiTexLevelParameterivEXT","(", toString(texunit), ", ", toString(target), ", ", level, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMultiTexParameterIivEXT(GLenum texunit, GLenum target, GLenum pname, GLint *params) @@ -15182,7 +15182,7 @@ static void REGAL_CALL log_glGetMultiTexParameterIivEXT(GLenum texunit, GLenum t DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMultiTexParameterIivEXT)(texunit, target, pname, params); - Driver("glGetMultiTexParameterIivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMultiTexParameterIivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMultiTexParameterIuivEXT(GLenum texunit, GLenum target, GLenum pname, GLuint *params) @@ -15212,7 +15212,7 @@ static void REGAL_CALL log_glGetMultiTexParameterivEXT(GLenum texunit, GLenum ta DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMultiTexParameterivEXT)(texunit, target, pname, params); - Driver("glGetMultiTexParameterivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMultiTexParameterivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetNamedBufferParameterivEXT(GLuint buffer, GLenum pname, GLint *params) @@ -15222,7 +15222,7 @@ static void REGAL_CALL log_glGetNamedBufferParameterivEXT(GLuint buffer, GLenum DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetNamedBufferParameterivEXT)(buffer, pname, params); - Driver("glGetNamedBufferParameterivEXT","(", buffer, ", ", toString(pname), ", ", params, ")"); + Driver("glGetNamedBufferParameterivEXT","(", buffer, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetNamedBufferPointervEXT(GLuint buffer, GLenum pname, GLvoid **params) @@ -15252,7 +15252,7 @@ static void REGAL_CALL log_glGetNamedFramebufferAttachmentParameterivEXT(GLuint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetNamedFramebufferAttachmentParameterivEXT)(framebuffer, attachment, pname, params); - Driver("glGetNamedFramebufferAttachmentParameterivEXT","(", framebuffer, ", ", toString(attachment), ", ", toString(pname), ", ", params, ")"); + Driver("glGetNamedFramebufferAttachmentParameterivEXT","(", framebuffer, ", ", toString(attachment), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetNamedProgramLocalParameterIivEXT(GLuint program, GLenum target, GLuint index, GLint *params) @@ -15322,7 +15322,7 @@ static void REGAL_CALL log_glGetNamedRenderbufferParameterivEXT(GLuint renderbuf DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetNamedRenderbufferParameterivEXT)(renderbuffer, pname, params); - Driver("glGetNamedRenderbufferParameterivEXT","(", renderbuffer, ", ", toString(pname), ", ", params, ")"); + Driver("glGetNamedRenderbufferParameterivEXT","(", renderbuffer, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetPointerIndexedvEXT(GLenum target, GLuint index, GLvoid **data) @@ -15372,7 +15372,7 @@ static void REGAL_CALL log_glGetTextureLevelParameterivEXT(GLuint texture, GLenu DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTextureLevelParameterivEXT)(texture, target, level, pname, params); - Driver("glGetTextureLevelParameterivEXT","(", texture, ", ", toString(target), ", ", level, ", ", toString(pname), ", ", params, ")"); + Driver("glGetTextureLevelParameterivEXT","(", texture, ", ", toString(target), ", ", level, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTextureParameterIivEXT(GLuint texture, GLenum target, GLenum pname, GLint *params) @@ -15382,7 +15382,7 @@ static void REGAL_CALL log_glGetTextureParameterIivEXT(GLuint texture, GLenum ta DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTextureParameterIivEXT)(texture, target, pname, params); - Driver("glGetTextureParameterIivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTextureParameterIivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTextureParameterIuivEXT(GLuint texture, GLenum target, GLenum pname, GLuint *params) @@ -15412,7 +15412,7 @@ static void REGAL_CALL log_glGetTextureParameterivEXT(GLuint texture, GLenum tar DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTextureParameterivEXT)(texture, target, pname, params); - Driver("glGetTextureParameterivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTextureParameterivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVertexArrayIntegeri_vEXT(GLuint vaobj, GLuint index, GLenum pname, GLint *param) @@ -15422,7 +15422,7 @@ static void REGAL_CALL log_glGetVertexArrayIntegeri_vEXT(GLuint vaobj, GLuint in DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetVertexArrayIntegeri_vEXT)(vaobj, index, pname, param); - Driver("glGetVertexArrayIntegeri_vEXT","(", vaobj, ", ", index, ", ", toString(pname), ", ", param, ")"); + Driver("glGetVertexArrayIntegeri_vEXT","(", vaobj, ", ", index, ", ", toString(pname), ", ", boost::print::optional(param,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVertexArrayIntegervEXT(GLuint vaobj, GLenum pname, GLint *param) @@ -15432,7 +15432,7 @@ static void REGAL_CALL log_glGetVertexArrayIntegervEXT(GLuint vaobj, GLenum pnam DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetVertexArrayIntegervEXT)(vaobj, pname, param); - Driver("glGetVertexArrayIntegervEXT","(", vaobj, ", ", toString(pname), ", ", param, ")"); + Driver("glGetVertexArrayIntegervEXT","(", vaobj, ", ", toString(pname), ", ", boost::print::optional(param,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVertexArrayPointeri_vEXT(GLuint vaobj, GLuint index, GLenum pname, GLvoid **param) @@ -15724,7 +15724,7 @@ static void REGAL_CALL log_glMultiTexEnvivEXT(GLenum texunit, GLenum target, GLe DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glMultiTexEnvivEXT)(texunit, target, pname, params); - Driver("glMultiTexEnvivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glMultiTexEnvivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glMultiTexGendEXT(GLenum texunit, GLenum coord, GLenum pname, GLdouble param) @@ -15784,7 +15784,7 @@ static void REGAL_CALL log_glMultiTexGenivEXT(GLenum texunit, GLenum coord, GLen DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glMultiTexGenivEXT)(texunit, coord, pname, params); - Driver("glMultiTexGenivEXT","(", toString(texunit), ", ", toString(coord), ", ", toString(pname), ", ", params, ")"); + Driver("glMultiTexGenivEXT","(", toString(texunit), ", ", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glMultiTexImage1DEXT(GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels) @@ -15824,7 +15824,7 @@ static void REGAL_CALL log_glMultiTexParameterIivEXT(GLenum texunit, GLenum targ DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glMultiTexParameterIivEXT)(texunit, target, pname, params); - Driver("glMultiTexParameterIivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glMultiTexParameterIivEXT","(", toString(texunit), ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glMultiTexParameterIuivEXT(GLenum texunit, GLenum target, GLenum pname, const GLuint *params) @@ -16724,7 +16724,7 @@ static void REGAL_CALL log_glTextureParameterIivEXT(GLuint texture, GLenum targe DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glTextureParameterIivEXT)(texture, target, pname, params); - Driver("glTextureParameterIivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glTextureParameterIivEXT","(", texture, ", ", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glTextureParameterIuivEXT(GLuint texture, GLenum target, GLenum pname, const GLuint *params) @@ -16999,7 +16999,7 @@ static void REGAL_CALL log_glGetIntegerIndexedvEXT(GLenum value, GLuint index, G DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetIntegerIndexedvEXT)(value, index, data); - Driver("glGetIntegerIndexedvEXT","(", toString(value), ", ", index, ", ", data, ")"); + Driver("glGetIntegerIndexedvEXT","(", toString(value), ", ", index, ", ", boost::print::optional(data,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsEnabledIndexedEXT(GLenum target, GLuint index) @@ -17148,7 +17148,7 @@ static void REGAL_CALL log_glFragmentLightModelivEXT(GLenum pname, GLint *params DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glFragmentLightModelivEXT)(pname, params); - Driver("glFragmentLightModelivEXT","(", toString(pname), ", ", params, ")"); + Driver("glFragmentLightModelivEXT","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glFragmentLightfEXT(GLenum light, GLenum pname, GLfloat param) @@ -17188,7 +17188,7 @@ static void REGAL_CALL log_glFragmentLightivEXT(GLenum light, GLenum pname, GLin DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glFragmentLightivEXT)(light, pname, params); - Driver("glFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", params, ")"); + Driver("glFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glFragmentMaterialfEXT(GLenum face, GLenum pname, const GLfloat param) @@ -17228,7 +17228,7 @@ static void REGAL_CALL log_glFragmentMaterialivEXT(GLenum face, GLenum pname, co DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glFragmentMaterialivEXT)(face, pname, params); - Driver("glFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", params, ")"); + Driver("glFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetFragmentLightfvEXT(GLenum light, GLenum pname, GLfloat *params) @@ -17248,7 +17248,7 @@ static void REGAL_CALL log_glGetFragmentLightivEXT(GLenum light, GLenum pname, G DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFragmentLightivEXT)(light, pname, params); - Driver("glGetFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFragmentLightivEXT","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetFragmentMaterialfvEXT(GLenum face, GLenum pname, const GLfloat *params) @@ -17268,7 +17268,7 @@ static void REGAL_CALL log_glGetFragmentMaterialivEXT(GLenum face, GLenum pname, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFragmentMaterialivEXT)(face, pname, params); - Driver("glGetFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFragmentMaterialivEXT","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glLightEnviEXT(GLenum pname, GLint param) @@ -17435,7 +17435,7 @@ static void REGAL_CALL log_glGetFramebufferAttachmentParameterivEXT(GLenum targe DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFramebufferAttachmentParameterivEXT)(target, attachment, pname, params); - Driver("glGetFramebufferAttachmentParameterivEXT","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFramebufferAttachmentParameterivEXT","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint *params) @@ -17445,7 +17445,7 @@ static void REGAL_CALL log_glGetRenderbufferParameterivEXT(GLenum target, GLenum DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetRenderbufferParameterivEXT)(target, pname, params); - Driver("glGetRenderbufferParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetRenderbufferParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsFramebufferEXT(GLuint framebuffer) @@ -17906,7 +17906,7 @@ static void REGAL_CALL log_glGetHistogramParameterivEXT(GLenum target, GLenum pn DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetHistogramParameterivEXT)(target, pname, params); - Driver("glGetHistogramParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetHistogramParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMinmaxEXT(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values) @@ -17936,7 +17936,7 @@ static void REGAL_CALL log_glGetMinmaxParameterivEXT(GLenum target, GLenum pname DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMinmaxParameterivEXT)(target, pname, params); - Driver("glGetMinmaxParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMinmaxParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glHistogramEXT(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink) @@ -18123,7 +18123,7 @@ static void REGAL_CALL log_glDrawBuffersIndexedEXT(GLint n, const GLenum *locati DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glDrawBuffersIndexedEXT)(n, location, indices); - Driver("glDrawBuffersIndexedEXT","(", n, ", ", location, ", ", indices, ")"); + Driver("glDrawBuffersIndexedEXT","(", n, ", ", location, ", ", boost::print::optional(indices,Logging::pointers), ")"); } static void REGAL_CALL log_glGetIntegeri_vEXT(GLenum target, GLuint index, GLint *data) @@ -18133,7 +18133,7 @@ static void REGAL_CALL log_glGetIntegeri_vEXT(GLenum target, GLuint index, GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetIntegeri_vEXT)(target, index, data); - Driver("glGetIntegeri_vEXT","(", toString(target), ", ", index, ", ", data, ")"); + Driver("glGetIntegeri_vEXT","(", toString(target), ", ", index, ", ", boost::print::optional(data,Logging::pointers), ")"); } static void REGAL_CALL log_glReadBufferIndexedEXT(GLenum src, GLint index) @@ -18205,7 +18205,7 @@ static void REGAL_CALL log_glGetQueryivEXT(GLenum target, GLenum pname, GLint *p DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetQueryivEXT)(target, pname, params); - Driver("glGetQueryivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetQueryivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsQueryEXT(GLuint id) @@ -18258,7 +18258,7 @@ static void REGAL_CALL log_glGetColorTableParameterivEXT(GLenum target, GLenum p DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetColorTableParameterivEXT)(target, pname, params); - Driver("glGetColorTableParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetColorTableParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_EXT_pixel_transform @@ -18280,7 +18280,7 @@ static void REGAL_CALL log_glGetPixelTransformParameterivEXT(GLenum target, GLen DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetPixelTransformParameterivEXT)(target, pname, params); - Driver("glGetPixelTransformParameterivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetPixelTransformParameterivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glPixelTransformParameterfEXT(GLenum target, GLenum pname, const GLfloat param) @@ -18388,7 +18388,7 @@ static void REGAL_CALL log_glGetnUniformivEXT(GLuint program, GLint location, GL DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetnUniformivEXT)(program, location, bufSize, params); - Driver("glGetnUniformivEXT","(", program, ", ", location, ", ", bufSize, ", ", params, ")"); + Driver("glGetnUniformivEXT","(", program, ", ", location, ", ", bufSize, ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glReadnPixelsEXT(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data) @@ -18771,7 +18771,7 @@ static void REGAL_CALL log_glGetTexParameterIivEXT(GLenum target, GLenum pname, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexParameterIivEXT)(target, pname, params); - Driver("glGetTexParameterIivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTexParameterIivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTexParameterIuivEXT(GLenum target, GLenum pname, GLuint *params) @@ -18791,7 +18791,7 @@ static void REGAL_CALL log_glTexParameterIivEXT(GLenum target, GLenum pname, con DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glTexParameterIivEXT)(target, pname, params); - Driver("glTexParameterIivEXT","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glTexParameterIivEXT","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glTexParameterIuivEXT(GLenum target, GLenum pname, const GLuint *params) @@ -19386,7 +19386,7 @@ static void REGAL_CALL log_glGetInvariantIntegervEXT(GLuint id, GLenum value, GL DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetInvariantIntegervEXT)(id, value, data); - Driver("glGetInvariantIntegervEXT","(", id, ", ", toString(value), ", ", data, ")"); + Driver("glGetInvariantIntegervEXT","(", id, ", ", toString(value), ", ", boost::print::optional(data,Logging::pointers), ")"); } static void REGAL_CALL log_glGetLocalConstantBooleanvEXT(GLuint id, GLenum value, GLboolean *data) @@ -19416,7 +19416,7 @@ static void REGAL_CALL log_glGetLocalConstantIntegervEXT(GLuint id, GLenum value DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetLocalConstantIntegervEXT)(id, value, data); - Driver("glGetLocalConstantIntegervEXT","(", id, ", ", toString(value), ", ", data, ")"); + Driver("glGetLocalConstantIntegervEXT","(", id, ", ", toString(value), ", ", boost::print::optional(data,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVariantBooleanvEXT(GLuint id, GLenum value, GLboolean *data) @@ -19446,7 +19446,7 @@ static void REGAL_CALL log_glGetVariantIntegervEXT(GLuint id, GLenum value, GLin DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetVariantIntegervEXT)(id, value, data); - Driver("glGetVariantIntegervEXT","(", id, ", ", toString(value), ", ", data, ")"); + Driver("glGetVariantIntegervEXT","(", id, ", ", toString(value), ", ", boost::print::optional(data,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVariantPointervEXT(GLuint id, GLenum value, GLvoid **data) @@ -19587,7 +19587,7 @@ static void REGAL_CALL log_glVariantivEXT(GLuint id, const GLint *addr) DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glVariantivEXT)(id, addr); - Driver("glVariantivEXT","(", id, ", ", addr, ")"); + Driver("glVariantivEXT","(", id, ", ", boost::print::optional(addr,Logging::pointers), ")"); } static void REGAL_CALL log_glVariantsvEXT(GLuint id, const GLshort *addr) @@ -19728,7 +19728,7 @@ static void REGAL_CALL log_glGetImageTransformParameterivHP(GLenum target, GLenu DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetImageTransformParameterivHP)(target, pname, params); - Driver("glGetImageTransformParameterivHP","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetImageTransformParameterivHP","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glImageTransformParameterfHP(GLenum target, GLenum pname, GLfloat param) @@ -19768,7 +19768,7 @@ static void REGAL_CALL log_glImageTransformParameterivHP(GLenum target, GLenum p DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glImageTransformParameterivHP)(target, pname, params); - Driver("glImageTransformParameterivHP","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glImageTransformParameterivHP","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_IBM_multimode_draw_arrays @@ -19780,7 +19780,7 @@ static void REGAL_CALL log_glMultiModeDrawArraysIBM(const GLenum *mode, const GL DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glMultiModeDrawArraysIBM)(mode, first, count, primcount, modestride); - Driver("glMultiModeDrawArraysIBM","(", mode, ", ", first, ", ", count, ", ", primcount, ", ", modestride, ")"); + Driver("glMultiModeDrawArraysIBM","(", mode, ", ", boost::print::optional(first,Logging::pointers), ", ", count, ", ", primcount, ", ", modestride, ")"); } static void REGAL_CALL log_glMultiModeDrawElementsIBM(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride) @@ -20672,7 +20672,7 @@ static void REGAL_CALL log_glGetMapAttribParameterivNV(GLenum target, GLuint ind DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMapAttribParameterivNV)(target, index, pname, params); - Driver("glGetMapAttribParameterivNV","(", toString(target), ", ", index, ", ", toString(pname), ", ", params, ")"); + Driver("glGetMapAttribParameterivNV","(", toString(target), ", ", index, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetMapControlPointsNV(GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid *points) @@ -20702,7 +20702,7 @@ static void REGAL_CALL log_glGetMapParameterivNV(GLenum target, GLenum pname, GL DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetMapParameterivNV)(target, pname, params); - Driver("glGetMapParameterivNV","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetMapParameterivNV","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glMapControlPointsNV(GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points) @@ -20732,7 +20732,7 @@ static void REGAL_CALL log_glMapParameterivNV(GLenum target, GLenum pname, const DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glMapParameterivNV)(target, pname, params); - Driver("glMapParameterivNV","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glMapParameterivNV","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_NV_explicit_multisample @@ -20806,7 +20806,7 @@ static void REGAL_CALL log_glGetFenceivNV(GLuint fence, GLenum pname, GLint *par DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFenceivNV)(fence, pname, params); - Driver("glGetFenceivNV","(", fence, ", ", toString(pname), ", ", params, ")"); + Driver("glGetFenceivNV","(", fence, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsFenceNV(GLuint fence) @@ -21932,7 +21932,7 @@ static void REGAL_CALL log_glGetOcclusionQueryivNV(GLuint id, GLenum pname, GLin DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetOcclusionQueryivNV)(id, pname, params); - Driver("glGetOcclusionQueryivNV","(", id, ", ", toString(pname), ", ", params, ")"); + Driver("glGetOcclusionQueryivNV","(", id, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetOcclusionQueryuivNV(GLuint id, GLenum pname, GLuint *params) @@ -22078,7 +22078,7 @@ static void REGAL_CALL log_glGetPathColorGenivNV(GLenum color, GLenum pname, GLi DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetPathColorGenivNV)(color, pname, value); - Driver("glGetPathColorGenivNV","(", toString(color), ", ", toString(pname), ", ", value, ")"); + Driver("glGetPathColorGenivNV","(", toString(color), ", ", toString(pname), ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glGetPathCommandsNV(GLuint name, GLubyte *commands) @@ -22159,7 +22159,7 @@ static void REGAL_CALL log_glGetPathParameterivNV(GLuint name, GLenum param, GLi DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetPathParameterivNV)(name, param, value); - Driver("glGetPathParameterivNV","(", name, ", ", toString(param), ", ", value, ")"); + Driver("glGetPathParameterivNV","(", name, ", ", toString(param), ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glGetPathSpacingNV(GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const GLvoid *paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat *returnedSpacing) @@ -22189,7 +22189,7 @@ static void REGAL_CALL log_glGetPathTexGenivNV(GLenum texCoordSet, GLenum pname, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetPathTexGenivNV)(texCoordSet, pname, value); - Driver("glGetPathTexGenivNV","(", toString(texCoordSet), ", ", toString(pname), ", ", value, ")"); + Driver("glGetPathTexGenivNV","(", toString(texCoordSet), ", ", toString(pname), ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glInterpolatePathsNV(GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight) @@ -22352,7 +22352,7 @@ static void REGAL_CALL log_glPathParameterivNV(GLuint path, GLenum pname, const DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glPathParameterivNV)(path, pname, value); - Driver("glPathParameterivNV","(", path, ", ", toString(pname), ", ", value, ")"); + Driver("glPathParameterivNV","(", path, ", ", toString(pname), ", ", boost::print::optional(value,Logging::pointers), ")"); } static void REGAL_CALL log_glPathStencilDepthOffsetNV(GLfloat factor, GLfloat units) @@ -22527,7 +22527,7 @@ static void REGAL_CALL log_glPointParameterivNV(GLenum pname, const GLint *param DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glPointParameterivNV)(pname, params); - Driver("glPointParameterivNV","(", toString(pname), ", ", params, ")"); + Driver("glPointParameterivNV","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_NV_present_video @@ -22549,7 +22549,7 @@ static void REGAL_CALL log_glGetVideoivNV(GLuint video_slot, GLenum pname, GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetVideoivNV)(video_slot, pname, params); - Driver("glGetVideoivNV","(", video_slot, ", ", toString(pname), ", ", params, ")"); + Driver("glGetVideoivNV","(", video_slot, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVideoui64vNV(GLuint video_slot, GLenum pname, GLuint64EXT *params) @@ -22685,7 +22685,7 @@ static void REGAL_CALL log_glCombinerParameterivNV(GLenum pname, const GLint *pa DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glCombinerParameterivNV)(pname, params); - Driver("glCombinerParameterivNV","(", toString(pname), ", ", params, ")"); + Driver("glCombinerParameterivNV","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glFinalCombinerInputNV(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) @@ -22715,7 +22715,7 @@ static void REGAL_CALL log_glGetCombinerInputParameterivNV(GLenum stage, GLenum DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetCombinerInputParameterivNV)(stage, portion, variable, pname, params); - Driver("glGetCombinerInputParameterivNV","(", toString(stage), ", ", toString(portion), ", ", toString(variable), ", ", toString(pname), ", ", params, ")"); + Driver("glGetCombinerInputParameterivNV","(", toString(stage), ", ", toString(portion), ", ", toString(variable), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetCombinerOutputParameterfvNV(GLenum stage, GLenum portion, GLenum pname, GLfloat *params) @@ -22735,7 +22735,7 @@ static void REGAL_CALL log_glGetCombinerOutputParameterivNV(GLenum stage, GLenum DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetCombinerOutputParameterivNV)(stage, portion, pname, params); - Driver("glGetCombinerOutputParameterivNV","(", toString(stage), ", ", toString(portion), ", ", toString(pname), ", ", params, ")"); + Driver("glGetCombinerOutputParameterivNV","(", toString(stage), ", ", toString(portion), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetFinalCombinerInputParameterfvNV(GLenum variable, GLenum pname, GLfloat *params) @@ -22755,7 +22755,7 @@ static void REGAL_CALL log_glGetFinalCombinerInputParameterivNV(GLenum variable, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFinalCombinerInputParameterivNV)(variable, pname, params); - Driver("glGetFinalCombinerInputParameterivNV","(", toString(variable), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFinalCombinerInputParameterivNV","(", toString(variable), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_NV_register_combiners2 @@ -23098,7 +23098,7 @@ static void REGAL_CALL log_glTransformFeedbackAttribsNV(GLuint count, const GLin DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glTransformFeedbackAttribsNV)(count, attribs, bufferMode); - Driver("glTransformFeedbackAttribsNV","(", count, ", ", attribs, ", ", toString(bufferMode), ")"); + Driver("glTransformFeedbackAttribsNV","(", count, ", ", boost::print::optional(attribs,Logging::pointers), ", ", toString(bufferMode), ")"); } static void REGAL_CALL log_glTransformFeedbackVaryingsNV(GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode) @@ -24338,7 +24338,7 @@ static void REGAL_CALL log_glGetVideoCaptureStreamivNV(GLuint video_capture_slot DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetVideoCaptureStreamivNV)(video_capture_slot, stream, pname, params); - Driver("glGetVideoCaptureStreamivNV","(", video_capture_slot, ", ", stream, ", ", toString(pname), ", ", params, ")"); + Driver("glGetVideoCaptureStreamivNV","(", video_capture_slot, ", ", stream, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetVideoCaptureivNV(GLuint video_capture_slot, GLenum pname, GLint *params) @@ -24348,7 +24348,7 @@ static void REGAL_CALL log_glGetVideoCaptureivNV(GLuint video_capture_slot, GLen DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetVideoCaptureivNV)(video_capture_slot, pname, params); - Driver("glGetVideoCaptureivNV","(", video_capture_slot, ", ", toString(pname), ", ", params, ")"); + Driver("glGetVideoCaptureivNV","(", video_capture_slot, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLenum REGAL_CALL log_glVideoCaptureNV(GLuint video_capture_slot, GLuint *sequence_num, GLuint64EXT *capture_time) @@ -24389,7 +24389,7 @@ static void REGAL_CALL log_glVideoCaptureStreamParameterivNV(GLuint video_captur DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glVideoCaptureStreamParameterivNV)(video_capture_slot, stream, pname, params); - Driver("glVideoCaptureStreamParameterivNV","(", video_capture_slot, ", ", stream, ", ", toString(pname), ", ", params, ")"); + Driver("glVideoCaptureStreamParameterivNV","(", video_capture_slot, ", ", stream, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_OES_blend_equation_separate @@ -24538,7 +24538,7 @@ static void REGAL_CALL log_glGetFramebufferAttachmentParameterivOES(GLenum targe DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFramebufferAttachmentParameterivOES)(target, attachment, pname, params); - Driver("glGetFramebufferAttachmentParameterivOES","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFramebufferAttachmentParameterivOES","(", toString(target), ", ", toString(attachment), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params) @@ -24548,7 +24548,7 @@ static void REGAL_CALL log_glGetRenderbufferParameterivOES(GLenum target, GLenum DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetRenderbufferParameterivOES)(target, pname, params); - Driver("glGetRenderbufferParameterivOES","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetRenderbufferParameterivOES","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glIsFramebufferOES(GLuint framebuffer) @@ -24814,7 +24814,7 @@ static void REGAL_CALL log_glGetTexGenivOES(GLenum coord, GLenum pname, GLint *p DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetTexGenivOES)(coord, pname, params); - Driver("glGetTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", params, ")"); + Driver("glGetTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params) @@ -24864,7 +24864,7 @@ static void REGAL_CALL log_glTexGenivOES(GLenum coord, GLenum pname, const GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glTexGenivOES)(coord, pname, params); - Driver("glTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", params, ")"); + Driver("glTexGenivOES","(", toString(coord), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glTexGenxOES(GLenum coord, GLenum pname, GLfixed param) @@ -24993,7 +24993,7 @@ static void REGAL_CALL log_glGetDriverControlsQCOM(GLint *num, GLsizei size, GLu DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetDriverControlsQCOM)(num, size, driverControls); - Driver("glGetDriverControlsQCOM","(", num, ", ", size, ", ", driverControls, ")"); + Driver("glGetDriverControlsQCOM","(", boost::print::optional(num,Logging::pointers), ", ", size, ", ", driverControls, ")"); } // GL_QCOM_extended_get @@ -25015,7 +25015,7 @@ static void REGAL_CALL log_glExtGetBuffersQCOM(GLuint *buffers, GLint maxBuffers DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetBuffersQCOM)(buffers, maxBuffers, numBuffers); - Driver("glExtGetBuffersQCOM","(", buffers, ", ", maxBuffers, ", ", numBuffers, ")"); + Driver("glExtGetBuffersQCOM","(", buffers, ", ", maxBuffers, ", ", boost::print::optional(numBuffers,Logging::pointers), ")"); } static void REGAL_CALL log_glExtGetFramebuffersQCOM(GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers) @@ -25025,7 +25025,7 @@ static void REGAL_CALL log_glExtGetFramebuffersQCOM(GLuint *framebuffers, GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetFramebuffersQCOM)(framebuffers, maxFramebuffers, numFramebuffers); - Driver("glExtGetFramebuffersQCOM","(", framebuffers, ", ", maxFramebuffers, ", ", numFramebuffers, ")"); + Driver("glExtGetFramebuffersQCOM","(", framebuffers, ", ", maxFramebuffers, ", ", boost::print::optional(numFramebuffers,Logging::pointers), ")"); } static void REGAL_CALL log_glExtGetRenderbuffersQCOM(GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers) @@ -25035,7 +25035,7 @@ static void REGAL_CALL log_glExtGetRenderbuffersQCOM(GLuint *renderbuffers, GLin DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetRenderbuffersQCOM)(renderbuffers, maxRenderbuffers, numRenderbuffers); - Driver("glExtGetRenderbuffersQCOM","(", renderbuffers, ", ", maxRenderbuffers, ", ", numRenderbuffers, ")"); + Driver("glExtGetRenderbuffersQCOM","(", renderbuffers, ", ", maxRenderbuffers, ", ", boost::print::optional(numRenderbuffers,Logging::pointers), ")"); } static void REGAL_CALL log_glExtGetTexLevelParameterivQCOM(GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params) @@ -25045,7 +25045,7 @@ static void REGAL_CALL log_glExtGetTexLevelParameterivQCOM(GLuint texture, GLenu DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetTexLevelParameterivQCOM)(texture, face, level, pname, params); - Driver("glExtGetTexLevelParameterivQCOM","(", texture, ", ", toString(face), ", ", level, ", ", toString(pname), ", ", params, ")"); + Driver("glExtGetTexLevelParameterivQCOM","(", texture, ", ", toString(face), ", ", level, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glExtGetTexSubImageQCOM(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels) @@ -25065,7 +25065,7 @@ static void REGAL_CALL log_glExtGetTexturesQCOM(GLuint *textures, GLint maxTextu DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetTexturesQCOM)(textures, maxTextures, numTextures); - Driver("glExtGetTexturesQCOM","(", textures, ", ", maxTextures, ", ", numTextures, ")"); + Driver("glExtGetTexturesQCOM","(", textures, ", ", maxTextures, ", ", boost::print::optional(numTextures,Logging::pointers), ")"); } static void REGAL_CALL log_glExtTexObjectStateOverrideiQCOM(GLenum target, GLenum pname, GLint param) @@ -25087,7 +25087,7 @@ static void REGAL_CALL log_glExtGetProgramBinarySourceQCOM(GLuint program, GLenu DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetProgramBinarySourceQCOM)(program, shadertype, source, length); - Driver("glExtGetProgramBinarySourceQCOM","(", program, ", ", toString(shadertype), ", ", boost::print::quote(source,'"'), ", ", length, ")"); + Driver("glExtGetProgramBinarySourceQCOM","(", program, ", ", toString(shadertype), ", ", boost::print::quote(source,'"'), ", ", boost::print::optional(length,Logging::pointers), ")"); } static void REGAL_CALL log_glExtGetProgramsQCOM(GLuint *programs, GLint maxPrograms, GLint *numPrograms) @@ -25097,7 +25097,7 @@ static void REGAL_CALL log_glExtGetProgramsQCOM(GLuint *programs, GLint maxProgr DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetProgramsQCOM)(programs, maxPrograms, numPrograms); - Driver("glExtGetProgramsQCOM","(", programs, ", ", maxPrograms, ", ", numPrograms, ")"); + Driver("glExtGetProgramsQCOM","(", programs, ", ", maxPrograms, ", ", boost::print::optional(numPrograms,Logging::pointers), ")"); } static void REGAL_CALL log_glExtGetShadersQCOM(GLuint *shaders, GLint maxShaders, GLint *numShaders) @@ -25107,7 +25107,7 @@ static void REGAL_CALL log_glExtGetShadersQCOM(GLuint *shaders, GLint maxShaders DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glExtGetShadersQCOM)(shaders, maxShaders, numShaders); - Driver("glExtGetShadersQCOM","(", shaders, ", ", maxShaders, ", ", numShaders, ")"); + Driver("glExtGetShadersQCOM","(", shaders, ", ", maxShaders, ", ", boost::print::optional(numShaders,Logging::pointers), ")"); } static GLboolean REGAL_CALL log_glExtIsProgramBinaryQCOM(GLuint program) @@ -25252,7 +25252,7 @@ static void REGAL_CALL log_glGetPixelTexGenParameterivSGIS(GLenum pname, GLint * DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetPixelTexGenParameterivSGIS)(pname, params); - Driver("glGetPixelTexGenParameterivSGIS","(", toString(pname), ", ", params, ")"); + Driver("glGetPixelTexGenParameterivSGIS","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glPixelTexGenParameterfSGIS(GLenum pname, GLfloat param) @@ -25292,7 +25292,7 @@ static void REGAL_CALL log_glPixelTexGenParameterivSGIS(GLenum pname, const GLin DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glPixelTexGenParameterivSGIS)(pname, params); - Driver("glPixelTexGenParameterivSGIS","(", toString(pname), ", ", params, ")"); + Driver("glPixelTexGenParameterivSGIS","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_SGIS_point_parameters @@ -25534,7 +25534,7 @@ static void REGAL_CALL log_glFragmentLightModelivSGIX(GLenum pname, const GLint DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glFragmentLightModelivSGIX)(pname, params); - Driver("glFragmentLightModelivSGIX","(", toString(pname), ", ", params, ")"); + Driver("glFragmentLightModelivSGIX","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glFragmentLightfSGIX(GLenum light, GLenum pname, GLfloat param) @@ -25574,7 +25574,7 @@ static void REGAL_CALL log_glFragmentLightivSGIX(GLenum light, GLenum pname, con DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glFragmentLightivSGIX)(light, pname, params); - Driver("glFragmentLightivSGIX","(", toString(light), ", ", toString(pname), ", ", params, ")"); + Driver("glFragmentLightivSGIX","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glFragmentMaterialfSGIX(GLenum face, GLenum pname, GLfloat param) @@ -25614,7 +25614,7 @@ static void REGAL_CALL log_glFragmentMaterialivSGIX(GLenum face, GLenum pname, c DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glFragmentMaterialivSGIX)(face, pname, params); - Driver("glFragmentMaterialivSGIX","(", toString(face), ", ", toString(pname), ", ", params, ")"); + Driver("glFragmentMaterialivSGIX","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetFragmentLightfvSGIX(GLenum light, GLenum pname, GLfloat *params) @@ -25634,7 +25634,7 @@ static void REGAL_CALL log_glGetFragmentLightivSGIX(GLenum light, GLenum pname, DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFragmentLightivSGIX)(light, pname, params); - Driver("glGetFragmentLightivSGIX","(", toString(light), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFragmentLightivSGIX","(", toString(light), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetFragmentMaterialfvSGIX(GLenum face, GLenum pname, GLfloat *params) @@ -25654,7 +25654,7 @@ static void REGAL_CALL log_glGetFragmentMaterialivSGIX(GLenum face, GLenum pname DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetFragmentMaterialivSGIX)(face, pname, params); - Driver("glGetFragmentMaterialivSGIX","(", toString(face), ", ", toString(pname), ", ", params, ")"); + Driver("glGetFragmentMaterialivSGIX","(", toString(face), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glLightEnviSGIX(GLenum pname, GLint param) @@ -25711,7 +25711,7 @@ static void REGAL_CALL log_glInstrumentsBufferSGIX(GLsizei size, GLint *buffer) DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glInstrumentsBufferSGIX)(size, buffer); - Driver("glInstrumentsBufferSGIX","(", size, ", ", buffer, ")"); + Driver("glInstrumentsBufferSGIX","(", size, ", ", boost::print::optional(buffer,Logging::pointers), ")"); } static GLint REGAL_CALL log_glPollInstrumentsSGIX(GLint *marker_p) @@ -25774,7 +25774,7 @@ static void REGAL_CALL log_glGetListParameterivSGIX(GLuint list, GLenum pname, G DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetListParameterivSGIX)(list, pname, params); - Driver("glGetListParameterivSGIX","(", list, ", ", toString(pname), ", ", params, ")"); + Driver("glGetListParameterivSGIX","(", list, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glListParameterfSGIX(GLuint list, GLenum pname, GLfloat param) @@ -25814,7 +25814,7 @@ static void REGAL_CALL log_glListParameterivSGIX(GLuint list, GLenum pname, cons DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glListParameterivSGIX)(list, pname, params); - Driver("glListParameterivSGIX","(", list, ", ", toString(pname), ", ", params, ")"); + Driver("glListParameterivSGIX","(", list, ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_SGIX_pixel_texture @@ -25922,7 +25922,7 @@ static void REGAL_CALL log_glSpriteParameterivSGIX(GLenum pname, const GLint *pa DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glSpriteParameterivSGIX)(pname, params); - Driver("glSpriteParameterivSGIX","(", toString(pname), ", ", params, ")"); + Driver("glSpriteParameterivSGIX","(", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } // GL_SGIX_tag_sample_buffer @@ -25956,7 +25956,7 @@ static void REGAL_CALL log_glColorTableParameterivSGI(GLenum target, GLenum pnam DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glColorTableParameterivSGI)(target, pname, params); - Driver("glColorTableParameterivSGI","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glColorTableParameterivSGI","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glColorTableSGI(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table) @@ -25996,7 +25996,7 @@ static void REGAL_CALL log_glGetColorTableParameterivSGI(GLenum target, GLenum p DispatchTable *_next = _context->dispatcher.logging._next; RegalAssert(_next); _next->call(&_next->glGetColorTableParameterivSGI)(target, pname, params); - Driver("glGetColorTableParameterivSGI","(", toString(target), ", ", toString(pname), ", ", params, ")"); + Driver("glGetColorTableParameterivSGI","(", toString(target), ", ", toString(pname), ", ", boost::print::optional(params,Logging::pointers), ")"); } static void REGAL_CALL log_glGetColorTableSGI(GLenum target, GLenum format, GLenum type, GLvoid *table) diff --git a/src/regal/RegalDispatchMissing.cpp b/src/regal/RegalDispatchMissing.cpp index 7f00dad..9a018f0 100644 --- a/src/regal/RegalDispatchMissing.cpp +++ b/src/regal/RegalDispatchMissing.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchPpapi.cpp b/src/regal/RegalDispatchPpapi.cpp index 9343874..86af5cd 100644 --- a/src/regal/RegalDispatchPpapi.cpp +++ b/src/regal/RegalDispatchPpapi.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchStaticEGL.cpp b/src/regal/RegalDispatchStaticEGL.cpp index d10d215..8485cb0 100644 --- a/src/regal/RegalDispatchStaticEGL.cpp +++ b/src/regal/RegalDispatchStaticEGL.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalDispatchStaticES2.cpp b/src/regal/RegalDispatchStaticES2.cpp index 64de069..37cf11a 100644 --- a/src/regal/RegalDispatchStaticES2.cpp +++ b/src/regal/RegalDispatchStaticES2.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalEnum.h b/src/regal/RegalEnum.h index 14cf440..a1d0f4a 100644 --- a/src/regal/RegalEnum.h +++ b/src/regal/RegalEnum.h @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalFrame.cpp b/src/regal/RegalFrame.cpp index d6ec92b..a3ba507 100644 --- a/src/regal/RegalFrame.cpp +++ b/src/regal/RegalFrame.cpp @@ -60,6 +60,7 @@ void Frame::capture(RegalContext &context) if (Logging::frameTime) { Timer::Value elapsed = frameTimer.restart(); + UNUSED_PARAMETER(elapsed); // Unused if info logging disabled at compile-time Info("Frame ",frame,' ',elapsed/1000," msec, ",1000000.0/elapsed," FPS."); } diff --git a/src/regal/RegalInit.cpp b/src/regal/RegalInit.cpp index 55d1ded..df69c88 100644 --- a/src/regal/RegalInit.cpp +++ b/src/regal/RegalInit.cpp @@ -129,13 +129,12 @@ Init::getContext(RegalSystemContext sysCtx) SC2RC::iterator i = sc2rc.find(sysCtx); if (i!=sc2rc.end()) { - Internal("Init::context lookup for ",sysCtx); + Internal("Init::context", "lookup for sysCtx=",sysCtx); return i->second; } else { - Internal("Init::context factory for ",sysCtx); - + Internal("Init::context", "factory for sysCtx=",sysCtx); RegalContext *context = new RegalContext(); RegalAssert(context); sc2rc[sysCtx] = context; @@ -149,43 +148,44 @@ Init::setContext(RegalContext *context) { Thread::Thread thread = Thread::Self(); - Internal("Init::setContext ",thread," to ",context," ",context ? context->info->version : ""); + Internal("Init::setContext","thread=",::boost::print::hex(Thread::threadId())," context=",context," ",context ? context->info->version : ""); - // First do the lookup + // std::map lookup TH2RC::iterator i = th2rc.find(thread); + + // Associate this thread with the Regal context + if (i!=th2rc.end()) { - // Early out if this context and thread are - // already associated. - - if (i->second==context) - { - RegalAssert(!context || context->thread==thread); - return; - } - // If some other context is associated // with this thread, disassociate it. - if (i->second) + if (i->second!=context) { - RegalAssert(i->second->thread==thread); - i->second->thread = 0; + if (i->second) + { + RegalAssert(i->second->thread==thread); + i->second->thread = 0; + } + + i->second = context; } - - i->second = context; - if (context) - context->thread = thread; } else - { - // Associate this thread with the Regal context th2rc[thread] = context; - } if (context) + { + // If some other thread is associated + // with this context, disassociate it. + + th2rc.erase(context->thread); + + // Associate the context with this thread. + context->thread = thread; + } setContextTLS(context); } @@ -244,7 +244,7 @@ TlsInit tlsInit; void Init::setContextTLS(RegalContext *context) { - Internal("Init::setContextTLS ",context); + Internal("Init::setContextTLS","thread=",::boost::print::hex(Thread::threadId())," context=",context); // Without thread local storage, simply set the // current Regal context @@ -342,6 +342,8 @@ Init::makeCurrent(RegalSystemContext sysCtx) { init(); + Internal("Init::makeCurrent","thread=",::boost::print::hex(Thread::threadId())," sysCtx=",sysCtx); + if (sysCtx) { RegalContext *context = getContext(sysCtx); @@ -370,8 +372,6 @@ Init::makeCurrent(RegalSystemContext sysCtx) } setContext(context); - - Internal("Init::makeCurrent ",context," ",context->info->version); return; } diff --git a/src/regal/RegalLog.cpp b/src/regal/RegalLog.cpp index bf6d314..0f29708 100644 --- a/src/regal/RegalLog.cpp +++ b/src/regal/RegalLog.cpp @@ -89,6 +89,7 @@ namespace Logging { int maxBytes = (REGAL_LOG_MAX_BYTES); bool frameTime = false; bool pointers = (REGAL_LOG_POINTERS); + bool thread = false; bool callback = (REGAL_LOG_CALLBACK); bool log = (REGAL_LOG); @@ -161,6 +162,11 @@ namespace Logging { if (p) pointers = atoi(p)!=0; #endif +#if REGAL_LOG_THREAD + const char *t = GetEnv("REGAL_LOG_THREAD"); + if (t) thread = atoi(t)!=0; +#endif + const char *cb = GetEnv("REGAL_LOG_CALLBACK"); if (cb) callback = atoi(cb)!=0; @@ -256,6 +262,10 @@ namespace Logging { #if REGAL_LOG_POINTERS Info("REGAL_LOG_POINTERS ", pointers ? "enabled" : "disabled"); #endif + +#if REGAL_LOG_THREAD + Info("REGAL_LOG_THREAD ", thread ? "enabled" : "disabled"); +#endif } void Cleanup() @@ -299,8 +309,12 @@ namespace Logging { inline string message(const char *prefix, const char *delim, const char *name, const string &str) { static const char *trimSuffix = " ..."; - std::string trimPrefix = print_string(prefix ? prefix : "", delim ? delim : "", string(indent(),' '), name ? name : "", ' '); - return print_string(trim(str.c_str(),'\n',maxLines>0 ? maxLines : ~0,trimPrefix.c_str(),trimSuffix), '\n'); + string_list trimPrefix; + trimPrefix << print_string(prefix ? prefix : "",delim ? delim : ""); + if (thread) + trimPrefix << print_string(hex(Thread::threadId()),delim ? delim : ""); + trimPrefix << print_string(string(indent(),' '),name ? name : "",name ? " " : ""); + return print_string(trim(str.c_str(),'\n',maxLines>0 ? maxLines : ~0,trimPrefix.str().c_str(),trimSuffix), '\n'); } inline string jsonObject(const char *prefix, const char *name, const string &str) @@ -416,7 +430,10 @@ namespace Logging { string m = message(prefix,delim,name,str); // TODO - optional Regal source line numbers. -#if 0 +#if 1 + UNUSED_PARAMETER(file); + UNUSED_PARAMETER(line); +#else m = print_string(file,":",line," ",m); #endif diff --git a/src/regal/RegalLog.h b/src/regal/RegalLog.h index 58e3366..081ee14 100644 --- a/src/regal/RegalLog.h +++ b/src/regal/RegalLog.h @@ -108,6 +108,10 @@ REGAL_NAMESPACE_BEGIN # define REGAL_LOG_POINTERS 1 #endif +#ifndef REGAL_LOG_THREAD +# define REGAL_LOG_THREAD 1 +#endif + #ifndef REGAL_LOG_ONCE # define REGAL_LOG_ONCE 1 #endif @@ -177,6 +181,7 @@ namespace Logging extern bool frameTime; // Per-frame elapsed time to info log extern bool pointers; // Enabled by default, otherwise empty + extern bool thread; // Disabled by default #if REGAL_LOG_ONCE extern bool once; // Warning and error message logged once only @@ -209,9 +214,9 @@ namespace Logging // Internal housekeeping extern bool initialized; - + // - + template T rawLimit(const T size) { return maxBytes<0 ? size : ( size < maxBytes ? size : maxBytes ); } } diff --git a/src/regal/RegalLookup.cpp b/src/regal/RegalLookup.cpp index c6d9eb9..a31fc09 100644 --- a/src/regal/RegalLookup.cpp +++ b/src/regal/RegalLookup.cpp @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalLookup.h b/src/regal/RegalLookup.h index 711ea74..d2d9dbe 100644 --- a/src/regal/RegalLookup.h +++ b/src/regal/RegalLookup.h @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* diff --git a/src/regal/RegalShaderCache.cpp b/src/regal/RegalShaderCache.cpp index e7d9157..ca18808 100644 --- a/src/regal/RegalShaderCache.cpp +++ b/src/regal/RegalShaderCache.cpp @@ -63,11 +63,11 @@ shaderSource(PFNGLSHADERSOURCEPROC proc, GLuint shader, GLsizei count, const GLc for (GLsizei i=0; i +#include + +using namespace ::boost::print; REGAL_GLOBAL_END @@ -70,7 +73,7 @@ namespace Token { { const GLbitfield other = v & ~(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); - boost::print::string_list tmp; + string_list tmp; if (v & GL_COLOR_BUFFER_BIT) { if (tmp.size()) tmp += " | "; tmp += "GL_COLOR_BUFFER_BIT"; } if (v & GL_DEPTH_BUFFER_BIT) { if (tmp.size()) tmp += " | "; tmp += "GL_DEPTH_BUFFER_BIT"; } if (v & GL_STENCIL_BUFFER_BIT) { if (tmp.size()) tmp += " | "; tmp += "GL_STENCIL_BUFFER_BIT"; } @@ -79,6 +82,142 @@ namespace Token { return tmp.str(); } + std::string GLTexParameterToString(GLenum pname, const GLfloat param) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(param)); + + default: + return print_string(param); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLint param) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(param)); + + default: + return print_string(param); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLfloat *params) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(params[0])); + + case GL_TEXTURE_SWIZZLE_RGBA: + return print_string( + GLenumToString(static_cast(params[0])), " ", + GLenumToString(static_cast(params[1])), " ", + GLenumToString(static_cast(params[2])), " ", + GLenumToString(static_cast(params[3]))); + + default: + return print_string(params[0]); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLint *params) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(params[0])); + + case GL_TEXTURE_SWIZZLE_RGBA: + return print_string( + GLenumToString(static_cast(params[0])), " ", + GLenumToString(static_cast(params[1])), " ", + GLenumToString(static_cast(params[2])), " ", + GLenumToString(static_cast(params[3]))); + + default: + return print_string(params[0]); + } + } + + std::string GLTexParameterToString(GLenum pname, const GLuint *params) + { + switch (pname) + { + case GL_DEPTH_STENCIL_TEXTURE_MODE: + case GL_TEXTURE_COMPARE_FUNC: + case GL_TEXTURE_COMPARE_MODE: + case GL_TEXTURE_MIN_FILTER: + case GL_TEXTURE_MAG_FILTER: + case GL_TEXTURE_SWIZZLE_R: + case GL_TEXTURE_SWIZZLE_G: + case GL_TEXTURE_SWIZZLE_B: + case GL_TEXTURE_SWIZZLE_A: + case GL_TEXTURE_WRAP_S: + case GL_TEXTURE_WRAP_T: + case GL_TEXTURE_WRAP_R: + return GLenumToString(static_cast(params[0])); + + case GL_TEXTURE_SWIZZLE_RGBA: + return print_string( + GLenumToString(static_cast(params[0])), " ", + GLenumToString(static_cast(params[1])), " ", + GLenumToString(static_cast(params[2])), " ", + GLenumToString(static_cast(params[3]))); + + default: + return print_string(params[0]); + } + } + const char * GLenumToString( GLenum e ) { switch( e ) { case 0x00000000: return "GL_ZERO"; diff --git a/src/regal/RegalToken.h b/src/regal/RegalToken.h index 51a21f0..6bb370e 100644 --- a/src/regal/RegalToken.h +++ b/src/regal/RegalToken.h @@ -1,5 +1,5 @@ /* NOTE: Do not edit this file, it is generated by a script: - Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal + Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir . */ /* @@ -62,6 +62,12 @@ namespace Token { std::string GLclearToString (GLbitfield v); + std::string GLTexParameterToString(GLenum pname, const GLfloat param ); + std::string GLTexParameterToString(GLenum pname, const GLint param ); + std::string GLTexParameterToString(GLenum pname, const GLfloat *params); + std::string GLTexParameterToString(GLenum pname, const GLint *params); + std::string GLTexParameterToString(GLenum pname, const GLuint *params); + #if REGAL_SYS_GLX const char * GLXenumToString (int v); #endif diff --git a/src/regal/RegalUtil.cpp b/src/regal/RegalUtil.cpp index c733edf..c493e8b 100644 --- a/src/regal/RegalUtil.cpp +++ b/src/regal/RegalUtil.cpp @@ -191,7 +191,7 @@ const char *libraryLocation(const Library &library) if (!ret) { -#if REGAL_SYS_GLX +#if REGAL_SYS_EGL || REGAL_SYS_GLX #if defined(__arm__) return "/usr/lib/libGLESv2.so"; #elif defined(__x86_64__) || defined(__x86_64) @@ -624,6 +624,17 @@ void fileClose(FILE **file) *file = NULL; } +string makePath(const string &dir, const string &filename) +{ + string tmp(dir); + const size_t len = tmp.length(); + const char last = len ? tmp[len-1] : '\0'; + if (len && last!='/' && last!='\\') + tmp += "/"; + tmp += filename; + return tmp; +} + REGAL_NAMESPACE_END diff --git a/src/regal/RegalUtil.h b/src/regal/RegalUtil.h index 8841c52..00ad337 100755 --- a/src/regal/RegalUtil.h +++ b/src/regal/RegalUtil.h @@ -215,10 +215,16 @@ #define REGAL_CACHE_SHADER REGAL_CACHE #endif -// Shader cache readback support by default +// Cache writing supported by default + +#ifndef REGAL_CACHE_SHADER_WRITE +#define REGAL_CACHE_SHADER_WRITE REGAL_CACHE_SHADER +#endif + +// Cache reading supported by default #ifndef REGAL_CACHE_SHADER_READ -#define REGAL_CACHE_SHADER_READ REGAL_CACHE +#define REGAL_CACHE_SHADER_READ REGAL_CACHE_SHADER #endif // @@ -348,6 +354,10 @@ extern bool fileExists(const char *filename); extern FILE *fileOpen (const char *filename, const char *mode); extern void fileClose (FILE **file); +// + +std::string makePath(const std::string &dir, const std::string &filename); + // ToFloat for integer -> float template inline float ToFloat(const bool normalize, const T v ) { diff --git a/tests/testStringList.cpp b/tests/testStringList.cpp new file mode 100644 index 0000000..8386af8 --- /dev/null +++ b/tests/testStringList.cpp @@ -0,0 +1,131 @@ +/* + Copyright (c) 2011-2012 NVIDIA Corporation + Copyright (c) 2011-2012 Cass Everitt + Copyright (c) 2012 Scott Nations + Copyright (c) 2012 Mathias Schott + Copyright (c) 2012 Nigel Stewart + Copyright (c) 2012 Google Inc + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "gtest/gtest.h" + +#include + +#include "boost/print/string_list.hpp" + +namespace { + +typedef ::std::string string; +typedef ::boost::print::string_list< ::std::string > string_list; + +// ==================================== +// boost::print::string_list +// ==================================== + +TEST( StringList, Constructor ) +{ + { + string_list x; + EXPECT_EQ(0u, x.size()); + EXPECT_EQ(0u, x.count()); + } + + // space delimiter + + { + string_list x(string("a b c d e f"),' '); + EXPECT_EQ(6u, x.size()); + EXPECT_EQ(6u, x.count()); + + string_list y(x); + EXPECT_EQ(x.size(), y.size()); + EXPECT_EQ(x.count(), y.count()); +// EXPECT_EQ(x, y); + } + + // . delimiter + + { + string_list x(string("a.b.c.d.e.f"),'.'); + EXPECT_EQ(6u, x.size()); + EXPECT_EQ(6u, x.count()); + } + + // TODO - There ought to be a c-string constructor with delimiter, too + + { + const char *s[5] = { "a", "b", "c", "d", "e" }; + const int l[5] = { 1, 1, 1, -1, -1 }; + string_list x(5,s,l); + EXPECT_EQ(5u, x.size()); + EXPECT_EQ(5u, x.count()); + + EXPECT_EQ(string("abcde"), x.str()); + EXPECT_EQ(string("a b c d e"), x.join(" ")); + } + + { + const char *s[5] = { "A", "B", "C", "D", "E" }; + string_list x(5,s); + EXPECT_EQ(5u, x.size()); + EXPECT_EQ(5u, x.count()); + + EXPECT_EQ(string("ABCDE"), x.str()); + EXPECT_EQ(string("A B C D E"), x.join(" ")); + } + + { + const char *s[5] = { "A\nB\n", "C", "D\nE\n" }; + string_list x(3,s,NULL,'\n'); + EXPECT_EQ(5u, x.size()); + EXPECT_EQ(5u, x.count()); + + EXPECT_EQ(string("ABCDE"), x.str()); + EXPECT_EQ(string("A B C D E"), x.join(" ")); + } +} + +TEST( StringList, Insert ) +{ + { + string_list x(string("a b c d e f"),' '); + EXPECT_EQ(string("a b c d e f"), x.join(" ")); + + x.insert(0,"0"); EXPECT_EQ(string("0 a b c d e f"), x.join(" ")); + x.insert(1,"1"); EXPECT_EQ(string("0 1 a b c d e f"), x.join(" ")); + x.insert(7,"7"); EXPECT_EQ(string("0 1 a b c d e 7 f"), x.join(" ")); + x.insert(9,"9"); EXPECT_EQ(string("0 1 a b c d e 7 f 9"), x.join(" ")); + x.insert(0,3,"x"); EXPECT_EQ(string("x x x 0 1 a b c d e 7 f 9"), x.join(" ")); + x.insert(2,3,"y"); EXPECT_EQ(string("x x y y y x 0 1 a b c d e 7 f 9"), x.join(" ")); + x.insert(6,3,"z"); EXPECT_EQ(string("x x y y y x z z z 0 1 a b c d e 7 f 9"), x.join(" ")); + x.insert(18,3,"-"); EXPECT_EQ(string("x x y y y x z z z 0 1 a b c d e 7 f - - - 9"), x.join(" ")); + x.insert(17,3,"+"); EXPECT_EQ(string("x x y y y x z z z 0 1 a b c d e 7 + + + f - - - 9"), x.join(" ")); + x.insert(16,3,"="); EXPECT_EQ(string("x x y y y x z z z 0 1 a b c d e = = = 7 + + + f - - - 9"), x.join(" ")); + x.insert(14,2,"<"); EXPECT_EQ(string("x x y y y x z z z 0 1 a b c < < d e = = = 7 + + + f - - - 9"), x.join(" ")); + x.insert(14,0,">"); EXPECT_EQ(string("x x y y y x z z z 0 1 a b c < < d e = = = 7 + + + f - - - 9"), x.join(" ")); + } +} + +}