| // GENERATED FILE - DO NOT EDIT. |
| // Generated by generate_entry_points.py using data from gl.xml. |
| // |
| // Copyright 2019 The ANGLE Project Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| // |
| // entry_points_gl_1_0_autogen.cpp: |
| // Defines the GL 1.0 entry points. |
| |
| #include "libGL/entry_points_gl_1_0_autogen.h" |
| |
| #include "libANGLE/Context.h" |
| #include "libANGLE/Context.inl.h" |
| #include "libANGLE/entry_points_utils.h" |
| #include "libANGLE/gl_enum_utils.h" |
| #include "libANGLE/validationEGL.h" |
| #include "libANGLE/validationES.h" |
| #include "libANGLE/validationES1.h" |
| #include "libANGLE/validationES2.h" |
| #include "libANGLE/validationES3.h" |
| #include "libANGLE/validationES31.h" |
| #include "libANGLE/validationES32.h" |
| #include "libANGLE/validationESEXT.h" |
| #include "libANGLE/validationGL1_autogen.h" |
| #include "libGLESv2/global_state.h" |
| |
| namespace gl |
| { |
| void GL_APIENTRY Accum(GLenum op, GLfloat value) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glAccum", "context = %d, GLenum op = %s, GLfloat value = %f", CID(context), |
| GLenumToString(GLenumGroup::AccumOp, op), value); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateAccum(context, op, value)); |
| if (isCallValid) |
| { |
| context->accum(op, value); |
| } |
| ANGLE_CAPTURE(Accum, isCallValid, context, op, value); |
| } |
| } |
| |
| void GL_APIENTRY AlphaFunc(GLenum func, GLfloat ref) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glAlphaFunc", "context = %d, GLenum func = %s, GLfloat ref = %f", CID(context), |
| GLenumToString(GLenumGroup::AlphaFunction, func), ref); |
| |
| if (context) |
| { |
| AlphaTestFunc funcPacked = FromGL<AlphaTestFunc>(func); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateAlphaFunc(context, funcPacked, ref)); |
| if (isCallValid) |
| { |
| context->alphaFunc(funcPacked, ref); |
| } |
| ANGLE_CAPTURE(AlphaFunc, isCallValid, context, funcPacked, ref); |
| } |
| } |
| |
| void GL_APIENTRY Begin(GLenum mode) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glBegin", "context = %d, GLenum mode = %s", CID(context), |
| GLenumToString(GLenumGroup::PrimitiveType, mode)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateBegin(context, mode)); |
| if (isCallValid) |
| { |
| context->begin(mode); |
| } |
| ANGLE_CAPTURE(Begin, isCallValid, context, mode); |
| } |
| } |
| |
| void GL_APIENTRY Bitmap(GLsizei width, |
| GLsizei height, |
| GLfloat xorig, |
| GLfloat yorig, |
| GLfloat xmove, |
| GLfloat ymove, |
| const GLubyte *bitmap) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT( |
| "glBitmap", |
| "context = %d, GLsizei width = %d, GLsizei height = %d, GLfloat xorig = %f, GLfloat yorig " |
| "= %f, GLfloat xmove = %f, GLfloat ymove = %f, const GLubyte *bitmap = 0x%016" PRIxPTR "", |
| CID(context), width, height, xorig, yorig, xmove, ymove, (uintptr_t)bitmap); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || |
| ValidateBitmap(context, width, height, xorig, yorig, xmove, ymove, bitmap)); |
| if (isCallValid) |
| { |
| context->bitmap(width, height, xorig, yorig, xmove, ymove, bitmap); |
| } |
| ANGLE_CAPTURE(Bitmap, isCallValid, context, width, height, xorig, yorig, xmove, ymove, |
| bitmap); |
| } |
| } |
| |
| void GL_APIENTRY BlendFunc(GLenum sfactor, GLenum dfactor) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glBlendFunc", "context = %d, GLenum sfactor = %s, GLenum dfactor = %s", CID(context), |
| GLenumToString(GLenumGroup::BlendingFactor, sfactor), |
| GLenumToString(GLenumGroup::BlendingFactor, dfactor)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateBlendFunc(context, sfactor, dfactor)); |
| if (isCallValid) |
| { |
| context->blendFunc(sfactor, dfactor); |
| } |
| ANGLE_CAPTURE(BlendFunc, isCallValid, context, sfactor, dfactor); |
| } |
| } |
| |
| void GL_APIENTRY CallList(GLuint list) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glCallList", "context = %d, GLuint list = %u", CID(context), list); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateCallList(context, list)); |
| if (isCallValid) |
| { |
| context->callList(list); |
| } |
| ANGLE_CAPTURE(CallList, isCallValid, context, list); |
| } |
| } |
| |
| void GL_APIENTRY CallLists(GLsizei n, GLenum type, const void *lists) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glCallLists", |
| "context = %d, GLsizei n = %d, GLenum type = %s, const void *lists = 0x%016" PRIxPTR "", |
| CID(context), n, GLenumToString(GLenumGroup::ListNameType, type), (uintptr_t)lists); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateCallLists(context, n, type, lists)); |
| if (isCallValid) |
| { |
| context->callLists(n, type, lists); |
| } |
| ANGLE_CAPTURE(CallLists, isCallValid, context, n, type, lists); |
| } |
| } |
| |
| void GL_APIENTRY Clear(GLbitfield mask) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glClear", "context = %d, GLbitfield mask = %s", CID(context), |
| GLbitfieldToString(GLenumGroup::ClearBufferMask, mask).c_str()); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateClear(context, mask)); |
| if (isCallValid) |
| { |
| context->clear(mask); |
| } |
| ANGLE_CAPTURE(Clear, isCallValid, context, mask); |
| } |
| } |
| |
| void GL_APIENTRY ClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT( |
| "glClearAccum", |
| "context = %d, GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateClearAccum(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->clearAccum(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(ClearAccum, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT( |
| "glClearColor", |
| "context = %d, GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateClearColor(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->clearColor(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(ClearColor, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY ClearDepth(GLdouble depth) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glClearDepth", "context = %d, GLdouble depth = %f", CID(context), depth); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateClearDepth(context, depth)); |
| if (isCallValid) |
| { |
| context->clearDepth(depth); |
| } |
| ANGLE_CAPTURE(ClearDepth, isCallValid, context, depth); |
| } |
| } |
| |
| void GL_APIENTRY ClearIndex(GLfloat c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glClearIndex", "context = %d, GLfloat c = %f", CID(context), c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateClearIndex(context, c)); |
| if (isCallValid) |
| { |
| context->clearIndex(c); |
| } |
| ANGLE_CAPTURE(ClearIndex, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY ClearStencil(GLint s) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glClearStencil", "context = %d, GLint s = %d", CID(context), s); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateClearStencil(context, s)); |
| if (isCallValid) |
| { |
| context->clearStencil(s); |
| } |
| ANGLE_CAPTURE(ClearStencil, isCallValid, context, s); |
| } |
| } |
| |
| void GL_APIENTRY ClipPlane(GLenum plane, const GLdouble *equation) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glClipPlane", |
| "context = %d, GLenum plane = %s, const GLdouble *equation = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::ClipPlaneName, plane), (uintptr_t)equation); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateClipPlane(context, plane, equation)); |
| if (isCallValid) |
| { |
| context->clipPlane(plane, equation); |
| } |
| ANGLE_CAPTURE(ClipPlane, isCallValid, context, plane, equation); |
| } |
| } |
| |
| void GL_APIENTRY Color3b(GLbyte red, GLbyte green, GLbyte blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3b", "context = %d, GLbyte red = %d, GLbyte green = %d, GLbyte blue = %d", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3b(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3b(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3b, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3bv(const GLbyte *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3bv", "context = %d, const GLbyte *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3bv(context, v)); |
| if (isCallValid) |
| { |
| context->color3bv(v); |
| } |
| ANGLE_CAPTURE(Color3bv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color3d(GLdouble red, GLdouble green, GLdouble blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3d", "context = %d, GLdouble red = %f, GLdouble green = %f, GLdouble blue = %f", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3d(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3d(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3d, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3dv(const GLdouble *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3dv", "context = %d, const GLdouble *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3dv(context, v)); |
| if (isCallValid) |
| { |
| context->color3dv(v); |
| } |
| ANGLE_CAPTURE(Color3dv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color3f(GLfloat red, GLfloat green, GLfloat blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3f", "context = %d, GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3f(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3f(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3f, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3fv(const GLfloat *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3fv", "context = %d, const GLfloat *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3fv(context, v)); |
| if (isCallValid) |
| { |
| context->color3fv(v); |
| } |
| ANGLE_CAPTURE(Color3fv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color3i(GLint red, GLint green, GLint blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3i", "context = %d, GLint red = %d, GLint green = %d, GLint blue = %d", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3i(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3i(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3i, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3iv(const GLint *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3iv", "context = %d, const GLint *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3iv(context, v)); |
| if (isCallValid) |
| { |
| context->color3iv(v); |
| } |
| ANGLE_CAPTURE(Color3iv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color3s(GLshort red, GLshort green, GLshort blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3s", "context = %d, GLshort red = %d, GLshort green = %d, GLshort blue = %d", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3s(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3s(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3s, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3sv(const GLshort *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3sv", "context = %d, const GLshort *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3sv(context, v)); |
| if (isCallValid) |
| { |
| context->color3sv(v); |
| } |
| ANGLE_CAPTURE(Color3sv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color3ub(GLubyte red, GLubyte green, GLubyte blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3ub", "context = %d, GLubyte red = %d, GLubyte green = %d, GLubyte blue = %d", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3ub(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3ub(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3ub, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3ubv(const GLubyte *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3ubv", "context = %d, const GLubyte *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3ubv(context, v)); |
| if (isCallValid) |
| { |
| context->color3ubv(v); |
| } |
| ANGLE_CAPTURE(Color3ubv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color3ui(GLuint red, GLuint green, GLuint blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3ui", "context = %d, GLuint red = %u, GLuint green = %u, GLuint blue = %u", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3ui(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3ui(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3ui, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3uiv(const GLuint *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3uiv", "context = %d, const GLuint *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3uiv(context, v)); |
| if (isCallValid) |
| { |
| context->color3uiv(v); |
| } |
| ANGLE_CAPTURE(Color3uiv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color3us(GLushort red, GLushort green, GLushort blue) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3us", "context = %d, GLushort red = %u, GLushort green = %u, GLushort blue = %u", |
| CID(context), red, green, blue); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor3us(context, red, green, blue)); |
| if (isCallValid) |
| { |
| context->color3us(red, green, blue); |
| } |
| ANGLE_CAPTURE(Color3us, isCallValid, context, red, green, blue); |
| } |
| } |
| |
| void GL_APIENTRY Color3usv(const GLushort *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor3usv", "context = %d, const GLushort *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor3usv(context, v)); |
| if (isCallValid) |
| { |
| context->color3usv(v); |
| } |
| ANGLE_CAPTURE(Color3usv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4b", |
| "context = %d, GLbyte red = %d, GLbyte green = %d, GLbyte blue = %d, GLbyte alpha = %d", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4b(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4b(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4b, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4bv(const GLbyte *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4bv", "context = %d, const GLbyte *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4bv(context, v)); |
| if (isCallValid) |
| { |
| context->color4bv(v); |
| } |
| ANGLE_CAPTURE(Color4bv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4d", |
| "context = %d, GLdouble red = %f, GLdouble green = %f, GLdouble blue = %f, GLdouble " |
| "alpha = %f", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4d(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4d(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4d, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4dv(const GLdouble *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4dv", "context = %d, const GLdouble *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4dv(context, v)); |
| if (isCallValid) |
| { |
| context->color4dv(v); |
| } |
| ANGLE_CAPTURE(Color4dv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT( |
| "glColor4f", |
| "context = %d, GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4f(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4f(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4f, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4fv(const GLfloat *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4fv", "context = %d, const GLfloat *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4fv(context, v)); |
| if (isCallValid) |
| { |
| context->color4fv(v); |
| } |
| ANGLE_CAPTURE(Color4fv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4i(GLint red, GLint green, GLint blue, GLint alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4i", |
| "context = %d, GLint red = %d, GLint green = %d, GLint blue = %d, GLint alpha = %d", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4i(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4i(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4i, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4iv(const GLint *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4iv", "context = %d, const GLint *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4iv(context, v)); |
| if (isCallValid) |
| { |
| context->color4iv(v); |
| } |
| ANGLE_CAPTURE(Color4iv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4s(GLshort red, GLshort green, GLshort blue, GLshort alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT( |
| "glColor4s", |
| "context = %d, GLshort red = %d, GLshort green = %d, GLshort blue = %d, GLshort alpha = %d", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4s(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4s(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4s, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4sv(const GLshort *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4sv", "context = %d, const GLshort *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4sv(context, v)); |
| if (isCallValid) |
| { |
| context->color4sv(v); |
| } |
| ANGLE_CAPTURE(Color4sv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT( |
| "glColor4ub", |
| "context = %d, GLubyte red = %d, GLubyte green = %d, GLubyte blue = %d, GLubyte alpha = %d", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4ub(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4ub(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4ub, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4ubv(const GLubyte *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4ubv", "context = %d, const GLubyte *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4ubv(context, v)); |
| if (isCallValid) |
| { |
| context->color4ubv(v); |
| } |
| ANGLE_CAPTURE(Color4ubv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4ui", |
| "context = %d, GLuint red = %u, GLuint green = %u, GLuint blue = %u, GLuint alpha = %u", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4ui(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4ui(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4ui, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4uiv(const GLuint *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4uiv", "context = %d, const GLuint *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4uiv(context, v)); |
| if (isCallValid) |
| { |
| context->color4uiv(v); |
| } |
| ANGLE_CAPTURE(Color4uiv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY Color4us(GLushort red, GLushort green, GLushort blue, GLushort alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4us", |
| "context = %d, GLushort red = %u, GLushort green = %u, GLushort blue = %u, GLushort " |
| "alpha = %u", |
| CID(context), red, green, blue, alpha); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColor4us(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->color4us(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(Color4us, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY Color4usv(const GLushort *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColor4usv", "context = %d, const GLushort *v = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateColor4usv(context, v)); |
| if (isCallValid) |
| { |
| context->color4usv(v); |
| } |
| ANGLE_CAPTURE(Color4usv, isCallValid, context, v); |
| } |
| } |
| |
| void GL_APIENTRY ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColorMask", |
| "context = %d, GLboolean red = %s, GLboolean green = %s, GLboolean blue = %s, GLboolean " |
| "alpha = %s", |
| CID(context), GLbooleanToString(red), GLbooleanToString(green), GLbooleanToString(blue), |
| GLbooleanToString(alpha)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColorMask(context, red, green, blue, alpha)); |
| if (isCallValid) |
| { |
| context->colorMask(red, green, blue, alpha); |
| } |
| ANGLE_CAPTURE(ColorMask, isCallValid, context, red, green, blue, alpha); |
| } |
| } |
| |
| void GL_APIENTRY ColorMaterial(GLenum face, GLenum mode) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glColorMaterial", "context = %d, GLenum face = %s, GLenum mode = %s", CID(context), |
| GLenumToString(GLenumGroup::MaterialFace, face), |
| GLenumToString(GLenumGroup::ColorMaterialParameter, mode)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateColorMaterial(context, face, mode)); |
| if (isCallValid) |
| { |
| context->colorMaterial(face, mode); |
| } |
| ANGLE_CAPTURE(ColorMaterial, isCallValid, context, face, mode); |
| } |
| } |
| |
| void GL_APIENTRY CopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glCopyPixels", |
| "context = %d, GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, " |
| "GLenum type = %s", |
| CID(context), x, y, width, height, GLenumToString(GLenumGroup::PixelCopyType, type)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateCopyPixels(context, x, y, width, height, type)); |
| if (isCallValid) |
| { |
| context->copyPixels(x, y, width, height, type); |
| } |
| ANGLE_CAPTURE(CopyPixels, isCallValid, context, x, y, width, height, type); |
| } |
| } |
| |
| void GL_APIENTRY CullFace(GLenum mode) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glCullFace", "context = %d, GLenum mode = %s", CID(context), |
| GLenumToString(GLenumGroup::CullFaceMode, mode)); |
| |
| if (context) |
| { |
| CullFaceMode modePacked = FromGL<CullFaceMode>(mode); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateCullFace(context, modePacked)); |
| if (isCallValid) |
| { |
| context->cullFace(modePacked); |
| } |
| ANGLE_CAPTURE(CullFace, isCallValid, context, modePacked); |
| } |
| } |
| |
| void GL_APIENTRY DeleteLists(GLuint list, GLsizei range) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glDeleteLists", "context = %d, GLuint list = %u, GLsizei range = %d", CID(context), list, |
| range); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateDeleteLists(context, list, range)); |
| if (isCallValid) |
| { |
| context->deleteLists(list, range); |
| } |
| ANGLE_CAPTURE(DeleteLists, isCallValid, context, list, range); |
| } |
| } |
| |
| void GL_APIENTRY DepthFunc(GLenum func) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glDepthFunc", "context = %d, GLenum func = %s", CID(context), |
| GLenumToString(GLenumGroup::DepthFunction, func)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateDepthFunc(context, func)); |
| if (isCallValid) |
| { |
| context->depthFunc(func); |
| } |
| ANGLE_CAPTURE(DepthFunc, isCallValid, context, func); |
| } |
| } |
| |
| void GL_APIENTRY DepthMask(GLboolean flag) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glDepthMask", "context = %d, GLboolean flag = %s", CID(context), |
| GLbooleanToString(flag)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateDepthMask(context, flag)); |
| if (isCallValid) |
| { |
| context->depthMask(flag); |
| } |
| ANGLE_CAPTURE(DepthMask, isCallValid, context, flag); |
| } |
| } |
| |
| void GL_APIENTRY DepthRange(GLdouble n, GLdouble f) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glDepthRange", "context = %d, GLdouble n = %f, GLdouble f = %f", CID(context), n, f); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateDepthRange(context, n, f)); |
| if (isCallValid) |
| { |
| context->depthRange(n, f); |
| } |
| ANGLE_CAPTURE(DepthRange, isCallValid, context, n, f); |
| } |
| } |
| |
| void GL_APIENTRY Disable(GLenum cap) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glDisable", "context = %d, GLenum cap = %s", CID(context), |
| GLenumToString(GLenumGroup::EnableCap, cap)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateDisable(context, cap)); |
| if (isCallValid) |
| { |
| context->disable(cap); |
| } |
| ANGLE_CAPTURE(Disable, isCallValid, context, cap); |
| } |
| } |
| |
| void GL_APIENTRY DrawBuffer(GLenum buf) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glDrawBuffer", "context = %d, GLenum buf = %s", CID(context), |
| GLenumToString(GLenumGroup::DrawBufferMode, buf)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateDrawBuffer(context, buf)); |
| if (isCallValid) |
| { |
| context->drawBuffer(buf); |
| } |
| ANGLE_CAPTURE(DrawBuffer, isCallValid, context, buf); |
| } |
| } |
| |
| void GL_APIENTRY |
| DrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glDrawPixels", |
| "context = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = %s, GLenum type " |
| "= %s, const void *pixels = 0x%016" PRIxPTR "", |
| CID(context), width, height, GLenumToString(GLenumGroup::PixelFormat, format), |
| GLenumToString(GLenumGroup::PixelType, type), (uintptr_t)pixels); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || |
| ValidateDrawPixels(context, width, height, format, type, pixels)); |
| if (isCallValid) |
| { |
| context->drawPixels(width, height, format, type, pixels); |
| } |
| ANGLE_CAPTURE(DrawPixels, isCallValid, context, width, height, format, type, pixels); |
| } |
| } |
| |
| void GL_APIENTRY EdgeFlag(GLboolean flag) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEdgeFlag", "context = %d, GLboolean flag = %s", CID(context), GLbooleanToString(flag)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEdgeFlag(context, flag)); |
| if (isCallValid) |
| { |
| context->edgeFlag(flag); |
| } |
| ANGLE_CAPTURE(EdgeFlag, isCallValid, context, flag); |
| } |
| } |
| |
| void GL_APIENTRY EdgeFlagv(const GLboolean *flag) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEdgeFlagv", "context = %d, const GLboolean *flag = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)flag); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEdgeFlagv(context, flag)); |
| if (isCallValid) |
| { |
| context->edgeFlagv(flag); |
| } |
| ANGLE_CAPTURE(EdgeFlagv, isCallValid, context, flag); |
| } |
| } |
| |
| void GL_APIENTRY Enable(GLenum cap) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEnable", "context = %d, GLenum cap = %s", CID(context), |
| GLenumToString(GLenumGroup::EnableCap, cap)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEnable(context, cap)); |
| if (isCallValid) |
| { |
| context->enable(cap); |
| } |
| ANGLE_CAPTURE(Enable, isCallValid, context, cap); |
| } |
| } |
| |
| void GL_APIENTRY End() |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEnd", "context = %d", CID(context)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEnd(context)); |
| if (isCallValid) |
| { |
| context->end(); |
| } |
| ANGLE_CAPTURE(End, isCallValid, context); |
| } |
| } |
| |
| void GL_APIENTRY EndList() |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEndList", "context = %d", CID(context)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEndList(context)); |
| if (isCallValid) |
| { |
| context->endList(); |
| } |
| ANGLE_CAPTURE(EndList, isCallValid, context); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord1d(GLdouble u) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord1d", "context = %d, GLdouble u = %f", CID(context), u); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord1d(context, u)); |
| if (isCallValid) |
| { |
| context->evalCoord1d(u); |
| } |
| ANGLE_CAPTURE(EvalCoord1d, isCallValid, context, u); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord1dv(const GLdouble *u) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord1dv", "context = %d, const GLdouble *u = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)u); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord1dv(context, u)); |
| if (isCallValid) |
| { |
| context->evalCoord1dv(u); |
| } |
| ANGLE_CAPTURE(EvalCoord1dv, isCallValid, context, u); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord1f(GLfloat u) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord1f", "context = %d, GLfloat u = %f", CID(context), u); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord1f(context, u)); |
| if (isCallValid) |
| { |
| context->evalCoord1f(u); |
| } |
| ANGLE_CAPTURE(EvalCoord1f, isCallValid, context, u); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord1fv(const GLfloat *u) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord1fv", "context = %d, const GLfloat *u = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)u); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord1fv(context, u)); |
| if (isCallValid) |
| { |
| context->evalCoord1fv(u); |
| } |
| ANGLE_CAPTURE(EvalCoord1fv, isCallValid, context, u); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord2d(GLdouble u, GLdouble v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord2d", "context = %d, GLdouble u = %f, GLdouble v = %f", CID(context), u, v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord2d(context, u, v)); |
| if (isCallValid) |
| { |
| context->evalCoord2d(u, v); |
| } |
| ANGLE_CAPTURE(EvalCoord2d, isCallValid, context, u, v); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord2dv(const GLdouble *u) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord2dv", "context = %d, const GLdouble *u = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)u); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord2dv(context, u)); |
| if (isCallValid) |
| { |
| context->evalCoord2dv(u); |
| } |
| ANGLE_CAPTURE(EvalCoord2dv, isCallValid, context, u); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord2f(GLfloat u, GLfloat v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord2f", "context = %d, GLfloat u = %f, GLfloat v = %f", CID(context), u, v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord2f(context, u, v)); |
| if (isCallValid) |
| { |
| context->evalCoord2f(u, v); |
| } |
| ANGLE_CAPTURE(EvalCoord2f, isCallValid, context, u, v); |
| } |
| } |
| |
| void GL_APIENTRY EvalCoord2fv(const GLfloat *u) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalCoord2fv", "context = %d, const GLfloat *u = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)u); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalCoord2fv(context, u)); |
| if (isCallValid) |
| { |
| context->evalCoord2fv(u); |
| } |
| ANGLE_CAPTURE(EvalCoord2fv, isCallValid, context, u); |
| } |
| } |
| |
| void GL_APIENTRY EvalMesh1(GLenum mode, GLint i1, GLint i2) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalMesh1", "context = %d, GLenum mode = %s, GLint i1 = %d, GLint i2 = %d", |
| CID(context), GLenumToString(GLenumGroup::MeshMode1, mode), i1, i2); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalMesh1(context, mode, i1, i2)); |
| if (isCallValid) |
| { |
| context->evalMesh1(mode, i1, i2); |
| } |
| ANGLE_CAPTURE(EvalMesh1, isCallValid, context, mode, i1, i2); |
| } |
| } |
| |
| void GL_APIENTRY EvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalMesh2", |
| "context = %d, GLenum mode = %s, GLint i1 = %d, GLint i2 = %d, GLint j1 = %d, GLint j2 = " |
| "%d", |
| CID(context), GLenumToString(GLenumGroup::MeshMode2, mode), i1, i2, j1, j2); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateEvalMesh2(context, mode, i1, i2, j1, j2)); |
| if (isCallValid) |
| { |
| context->evalMesh2(mode, i1, i2, j1, j2); |
| } |
| ANGLE_CAPTURE(EvalMesh2, isCallValid, context, mode, i1, i2, j1, j2); |
| } |
| } |
| |
| void GL_APIENTRY EvalPoint1(GLint i) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalPoint1", "context = %d, GLint i = %d", CID(context), i); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalPoint1(context, i)); |
| if (isCallValid) |
| { |
| context->evalPoint1(i); |
| } |
| ANGLE_CAPTURE(EvalPoint1, isCallValid, context, i); |
| } |
| } |
| |
| void GL_APIENTRY EvalPoint2(GLint i, GLint j) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glEvalPoint2", "context = %d, GLint i = %d, GLint j = %d", CID(context), i, j); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateEvalPoint2(context, i, j)); |
| if (isCallValid) |
| { |
| context->evalPoint2(i, j); |
| } |
| ANGLE_CAPTURE(EvalPoint2, isCallValid, context, i, j); |
| } |
| } |
| |
| void GL_APIENTRY FeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFeedbackBuffer", |
| "context = %d, GLsizei size = %d, GLenum type = %s, GLfloat *buffer = 0x%016" PRIxPTR "", |
| CID(context), size, GLenumToString(GLenumGroup::FeedbackType, type), (uintptr_t)buffer); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateFeedbackBuffer(context, size, type, buffer)); |
| if (isCallValid) |
| { |
| context->feedbackBuffer(size, type, buffer); |
| } |
| ANGLE_CAPTURE(FeedbackBuffer, isCallValid, context, size, type, buffer); |
| } |
| } |
| |
| void GL_APIENTRY Finish() |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFinish", "context = %d", CID(context)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateFinish(context)); |
| if (isCallValid) |
| { |
| context->finish(); |
| } |
| ANGLE_CAPTURE(Finish, isCallValid, context); |
| } |
| } |
| |
| void GL_APIENTRY Flush() |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFlush", "context = %d", CID(context)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateFlush(context)); |
| if (isCallValid) |
| { |
| context->flush(); |
| } |
| ANGLE_CAPTURE(Flush, isCallValid, context); |
| } |
| } |
| |
| void GL_APIENTRY Fogf(GLenum pname, GLfloat param) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFogf", "context = %d, GLenum pname = %s, GLfloat param = %f", CID(context), |
| GLenumToString(GLenumGroup::FogParameter, pname), param); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateFogf(context, pname, param)); |
| if (isCallValid) |
| { |
| context->fogf(pname, param); |
| } |
| ANGLE_CAPTURE(Fogf, isCallValid, context, pname, param); |
| } |
| } |
| |
| void GL_APIENTRY Fogfv(GLenum pname, const GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFogfv", "context = %d, GLenum pname = %s, const GLfloat *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::FogParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateFogfv(context, pname, params)); |
| if (isCallValid) |
| { |
| context->fogfv(pname, params); |
| } |
| ANGLE_CAPTURE(Fogfv, isCallValid, context, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY Fogi(GLenum pname, GLint param) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFogi", "context = %d, GLenum pname = %s, GLint param = %d", CID(context), |
| GLenumToString(GLenumGroup::FogParameter, pname), param); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateFogi(context, pname, param)); |
| if (isCallValid) |
| { |
| context->fogi(pname, param); |
| } |
| ANGLE_CAPTURE(Fogi, isCallValid, context, pname, param); |
| } |
| } |
| |
| void GL_APIENTRY Fogiv(GLenum pname, const GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFogiv", "context = %d, GLenum pname = %s, const GLint *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::FogParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateFogiv(context, pname, params)); |
| if (isCallValid) |
| { |
| context->fogiv(pname, params); |
| } |
| ANGLE_CAPTURE(Fogiv, isCallValid, context, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY FrontFace(GLenum mode) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFrontFace", "context = %d, GLenum mode = %s", CID(context), |
| GLenumToString(GLenumGroup::FrontFaceDirection, mode)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateFrontFace(context, mode)); |
| if (isCallValid) |
| { |
| context->frontFace(mode); |
| } |
| ANGLE_CAPTURE(FrontFace, isCallValid, context, mode); |
| } |
| } |
| |
| void GL_APIENTRY |
| Frustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glFrustum", |
| "context = %d, GLdouble left = %f, GLdouble right = %f, GLdouble bottom = %f, GLdouble " |
| "top = %f, GLdouble zNear = %f, GLdouble zFar = %f", |
| CID(context), left, right, bottom, top, zNear, zFar); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || |
| ValidateFrustum(context, left, right, bottom, top, zNear, zFar)); |
| if (isCallValid) |
| { |
| context->frustum(left, right, bottom, top, zNear, zFar); |
| } |
| ANGLE_CAPTURE(Frustum, isCallValid, context, left, right, bottom, top, zNear, zFar); |
| } |
| } |
| |
| GLuint GL_APIENTRY GenLists(GLsizei range) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGenLists", "context = %d, GLsizei range = %d", CID(context), range); |
| |
| GLuint returnValue; |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGenLists(context, range)); |
| if (isCallValid) |
| { |
| returnValue = context->genLists(range); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::GenLists, GLuint>(); |
| } |
| ANGLE_CAPTURE(GenLists, isCallValid, context, range, returnValue); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::GenLists, GLuint>(); |
| } |
| return returnValue; |
| } |
| |
| void GL_APIENTRY GetBooleanv(GLenum pname, GLboolean *data) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetBooleanv", "context = %d, GLenum pname = %s, GLboolean *data = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::GetPName, pname), (uintptr_t)data); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGetBooleanv(context, pname, data)); |
| if (isCallValid) |
| { |
| context->getBooleanv(pname, data); |
| } |
| ANGLE_CAPTURE(GetBooleanv, isCallValid, context, pname, data); |
| } |
| } |
| |
| void GL_APIENTRY GetClipPlane(GLenum plane, GLdouble *equation) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetClipPlane", |
| "context = %d, GLenum plane = %s, GLdouble *equation = 0x%016" PRIxPTR "", CID(context), |
| GLenumToString(GLenumGroup::ClipPlaneName, plane), (uintptr_t)equation); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetClipPlane(context, plane, equation)); |
| if (isCallValid) |
| { |
| context->getClipPlane(plane, equation); |
| } |
| ANGLE_CAPTURE(GetClipPlane, isCallValid, context, plane, equation); |
| } |
| } |
| |
| void GL_APIENTRY GetDoublev(GLenum pname, GLdouble *data) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetDoublev", "context = %d, GLenum pname = %s, GLdouble *data = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::GetPName, pname), (uintptr_t)data); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGetDoublev(context, pname, data)); |
| if (isCallValid) |
| { |
| context->getDoublev(pname, data); |
| } |
| ANGLE_CAPTURE(GetDoublev, isCallValid, context, pname, data); |
| } |
| } |
| |
| GLenum GL_APIENTRY GetError() |
| { |
| Context *context = GetGlobalContext(); |
| EVENT("glGetError", "context = %d", CID(context)); |
| |
| GLenum returnValue; |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGetError(context)); |
| if (isCallValid) |
| { |
| returnValue = context->getError(); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::GetError, GLenum>(); |
| } |
| ANGLE_CAPTURE(GetError, isCallValid, context, returnValue); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::GetError, GLenum>(); |
| } |
| return returnValue; |
| } |
| |
| void GL_APIENTRY GetFloatv(GLenum pname, GLfloat *data) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetFloatv", "context = %d, GLenum pname = %s, GLfloat *data = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::GetPName, pname), (uintptr_t)data); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGetFloatv(context, pname, data)); |
| if (isCallValid) |
| { |
| context->getFloatv(pname, data); |
| } |
| ANGLE_CAPTURE(GetFloatv, isCallValid, context, pname, data); |
| } |
| } |
| |
| void GL_APIENTRY GetIntegerv(GLenum pname, GLint *data) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetIntegerv", "context = %d, GLenum pname = %s, GLint *data = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::GetPName, pname), (uintptr_t)data); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGetIntegerv(context, pname, data)); |
| if (isCallValid) |
| { |
| context->getIntegerv(pname, data); |
| } |
| ANGLE_CAPTURE(GetIntegerv, isCallValid, context, pname, data); |
| } |
| } |
| |
| void GL_APIENTRY GetLightfv(GLenum light, GLenum pname, GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetLightfv", |
| "context = %d, GLenum light = %s, GLenum pname = %s, GLfloat *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::LightName, light), |
| GLenumToString(GLenumGroup::LightParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| LightParameter pnamePacked = FromGL<LightParameter>(pname); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetLightfv(context, light, pnamePacked, params)); |
| if (isCallValid) |
| { |
| context->getLightfv(light, pnamePacked, params); |
| } |
| ANGLE_CAPTURE(GetLightfv, isCallValid, context, light, pnamePacked, params); |
| } |
| } |
| |
| void GL_APIENTRY GetLightiv(GLenum light, GLenum pname, GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetLightiv", |
| "context = %d, GLenum light = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::LightName, light), |
| GLenumToString(GLenumGroup::LightParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetLightiv(context, light, pname, params)); |
| if (isCallValid) |
| { |
| context->getLightiv(light, pname, params); |
| } |
| ANGLE_CAPTURE(GetLightiv, isCallValid, context, light, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY GetMapdv(GLenum target, GLenum query, GLdouble *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetMapdv", |
| "context = %d, GLenum target = %s, GLenum query = %s, GLdouble *v = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::MapTarget, target), |
| GLenumToString(GLenumGroup::GetMapQuery, query), (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetMapdv(context, target, query, v)); |
| if (isCallValid) |
| { |
| context->getMapdv(target, query, v); |
| } |
| ANGLE_CAPTURE(GetMapdv, isCallValid, context, target, query, v); |
| } |
| } |
| |
| void GL_APIENTRY GetMapfv(GLenum target, GLenum query, GLfloat *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetMapfv", |
| "context = %d, GLenum target = %s, GLenum query = %s, GLfloat *v = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::MapTarget, target), |
| GLenumToString(GLenumGroup::GetMapQuery, query), (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetMapfv(context, target, query, v)); |
| if (isCallValid) |
| { |
| context->getMapfv(target, query, v); |
| } |
| ANGLE_CAPTURE(GetMapfv, isCallValid, context, target, query, v); |
| } |
| } |
| |
| void GL_APIENTRY GetMapiv(GLenum target, GLenum query, GLint *v) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetMapiv", |
| "context = %d, GLenum target = %s, GLenum query = %s, GLint *v = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::MapTarget, target), |
| GLenumToString(GLenumGroup::GetMapQuery, query), (uintptr_t)v); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetMapiv(context, target, query, v)); |
| if (isCallValid) |
| { |
| context->getMapiv(target, query, v); |
| } |
| ANGLE_CAPTURE(GetMapiv, isCallValid, context, target, query, v); |
| } |
| } |
| |
| void GL_APIENTRY GetMaterialfv(GLenum face, GLenum pname, GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetMaterialfv", |
| "context = %d, GLenum face = %s, GLenum pname = %s, GLfloat *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::MaterialFace, face), |
| GLenumToString(GLenumGroup::MaterialParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| MaterialParameter pnamePacked = FromGL<MaterialParameter>(pname); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || |
| ValidateGetMaterialfv(context, face, pnamePacked, params)); |
| if (isCallValid) |
| { |
| context->getMaterialfv(face, pnamePacked, params); |
| } |
| ANGLE_CAPTURE(GetMaterialfv, isCallValid, context, face, pnamePacked, params); |
| } |
| } |
| |
| void GL_APIENTRY GetMaterialiv(GLenum face, GLenum pname, GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetMaterialiv", |
| "context = %d, GLenum face = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::MaterialFace, face), |
| GLenumToString(GLenumGroup::MaterialParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetMaterialiv(context, face, pname, params)); |
| if (isCallValid) |
| { |
| context->getMaterialiv(face, pname, params); |
| } |
| ANGLE_CAPTURE(GetMaterialiv, isCallValid, context, face, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY GetPixelMapfv(GLenum map, GLfloat *values) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetPixelMapfv", "context = %d, GLenum map = %s, GLfloat *values = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::PixelMap, map), (uintptr_t)values); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetPixelMapfv(context, map, values)); |
| if (isCallValid) |
| { |
| context->getPixelMapfv(map, values); |
| } |
| ANGLE_CAPTURE(GetPixelMapfv, isCallValid, context, map, values); |
| } |
| } |
| |
| void GL_APIENTRY GetPixelMapuiv(GLenum map, GLuint *values) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetPixelMapuiv", "context = %d, GLenum map = %s, GLuint *values = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::PixelMap, map), (uintptr_t)values); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetPixelMapuiv(context, map, values)); |
| if (isCallValid) |
| { |
| context->getPixelMapuiv(map, values); |
| } |
| ANGLE_CAPTURE(GetPixelMapuiv, isCallValid, context, map, values); |
| } |
| } |
| |
| void GL_APIENTRY GetPixelMapusv(GLenum map, GLushort *values) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetPixelMapusv", "context = %d, GLenum map = %s, GLushort *values = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::PixelMap, map), (uintptr_t)values); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetPixelMapusv(context, map, values)); |
| if (isCallValid) |
| { |
| context->getPixelMapusv(map, values); |
| } |
| ANGLE_CAPTURE(GetPixelMapusv, isCallValid, context, map, values); |
| } |
| } |
| |
| void GL_APIENTRY GetPolygonStipple(GLubyte *mask) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetPolygonStipple", "context = %d, GLubyte *mask = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)mask); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGetPolygonStipple(context, mask)); |
| if (isCallValid) |
| { |
| context->getPolygonStipple(mask); |
| } |
| ANGLE_CAPTURE(GetPolygonStipple, isCallValid, context, mask); |
| } |
| } |
| |
| const GLubyte *GL_APIENTRY GetString(GLenum name) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetString", "context = %d, GLenum name = %s", CID(context), |
| GLenumToString(GLenumGroup::StringName, name)); |
| |
| const GLubyte *returnValue; |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateGetString(context, name)); |
| if (isCallValid) |
| { |
| returnValue = context->getString(name); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::GetString, const GLubyte *>(); |
| } |
| ANGLE_CAPTURE(GetString, isCallValid, context, name, returnValue); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::GetString, const GLubyte *>(); |
| } |
| return returnValue; |
| } |
| |
| void GL_APIENTRY GetTexEnvfv(GLenum target, GLenum pname, GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexEnvfv", |
| "context = %d, GLenum target = %s, GLenum pname = %s, GLfloat *params = 0x%016" PRIxPTR |
| "", |
| CID(context), GLenumToString(GLenumGroup::TextureEnvTarget, target), |
| GLenumToString(GLenumGroup::TextureEnvParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| TextureEnvTarget targetPacked = FromGL<TextureEnvTarget>(target); |
| TextureEnvParameter pnamePacked = FromGL<TextureEnvParameter>(pname); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || |
| ValidateGetTexEnvfv(context, targetPacked, pnamePacked, params)); |
| if (isCallValid) |
| { |
| context->getTexEnvfv(targetPacked, pnamePacked, params); |
| } |
| ANGLE_CAPTURE(GetTexEnvfv, isCallValid, context, targetPacked, pnamePacked, params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexEnviv(GLenum target, GLenum pname, GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexEnviv", |
| "context = %d, GLenum target = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::TextureEnvTarget, target), |
| GLenumToString(GLenumGroup::TextureEnvParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| TextureEnvTarget targetPacked = FromGL<TextureEnvTarget>(target); |
| TextureEnvParameter pnamePacked = FromGL<TextureEnvParameter>(pname); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || |
| ValidateGetTexEnviv(context, targetPacked, pnamePacked, params)); |
| if (isCallValid) |
| { |
| context->getTexEnviv(targetPacked, pnamePacked, params); |
| } |
| ANGLE_CAPTURE(GetTexEnviv, isCallValid, context, targetPacked, pnamePacked, params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexGendv(GLenum coord, GLenum pname, GLdouble *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexGendv", |
| "context = %d, GLenum coord = %s, GLenum pname = %s, GLdouble *params = 0x%016" PRIxPTR |
| "", |
| CID(context), GLenumToString(GLenumGroup::TextureCoordName, coord), |
| GLenumToString(GLenumGroup::TextureGenParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetTexGendv(context, coord, pname, params)); |
| if (isCallValid) |
| { |
| context->getTexGendv(coord, pname, params); |
| } |
| ANGLE_CAPTURE(GetTexGendv, isCallValid, context, coord, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexGenfv(GLenum coord, GLenum pname, GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexGenfv", |
| "context = %d, GLenum coord = %s, GLenum pname = %s, GLfloat *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::TextureCoordName, coord), |
| GLenumToString(GLenumGroup::TextureGenParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetTexGenfv(context, coord, pname, params)); |
| if (isCallValid) |
| { |
| context->getTexGenfv(coord, pname, params); |
| } |
| ANGLE_CAPTURE(GetTexGenfv, isCallValid, context, coord, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexGeniv(GLenum coord, GLenum pname, GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexGeniv", |
| "context = %d, GLenum coord = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::TextureCoordName, coord), |
| GLenumToString(GLenumGroup::TextureGenParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateGetTexGeniv(context, coord, pname, params)); |
| if (isCallValid) |
| { |
| context->getTexGeniv(coord, pname, params); |
| } |
| ANGLE_CAPTURE(GetTexGeniv, isCallValid, context, coord, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexImage", |
| "context = %d, GLenum target = %s, GLint level = %d, GLenum format = %s, GLenum type = " |
| "%s, void *pixels = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::TextureTarget, target), level, |
| GLenumToString(GLenumGroup::PixelFormat, format), |
| GLenumToString(GLenumGroup::PixelType, type), (uintptr_t)pixels); |
| |
| if (context) |
| { |
| TextureTarget targetPacked = FromGL<TextureTarget>(target); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || |
| ValidateGetTexImage(context, targetPacked, level, format, type, pixels)); |
| if (isCallValid) |
| { |
| context->getTexImage(targetPacked, level, format, type, pixels); |
| } |
| ANGLE_CAPTURE(GetTexImage, isCallValid, context, targetPacked, level, format, type, pixels); |
| } |
| } |
| |
| void GL_APIENTRY GetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexLevelParameterfv", |
| "context = %d, GLenum target = %s, GLint level = %d, GLenum pname = %s, GLfloat *params " |
| "= 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::TextureTarget, target), level, |
| GLenumToString(GLenumGroup::GetTextureParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| TextureTarget targetPacked = FromGL<TextureTarget>(target); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || |
| ValidateGetTexLevelParameterfv(context, targetPacked, level, pname, params)); |
| if (isCallValid) |
| { |
| context->getTexLevelParameterfv(targetPacked, level, pname, params); |
| } |
| ANGLE_CAPTURE(GetTexLevelParameterfv, isCallValid, context, targetPacked, level, pname, |
| params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexLevelParameteriv", |
| "context = %d, GLenum target = %s, GLint level = %d, GLenum pname = %s, GLint *params = " |
| "0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::TextureTarget, target), level, |
| GLenumToString(GLenumGroup::GetTextureParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| TextureTarget targetPacked = FromGL<TextureTarget>(target); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || |
| ValidateGetTexLevelParameteriv(context, targetPacked, level, pname, params)); |
| if (isCallValid) |
| { |
| context->getTexLevelParameteriv(targetPacked, level, pname, params); |
| } |
| ANGLE_CAPTURE(GetTexLevelParameteriv, isCallValid, context, targetPacked, level, pname, |
| params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexParameterfv", |
| "context = %d, GLenum target = %s, GLenum pname = %s, GLfloat *params = 0x%016" PRIxPTR |
| "", |
| CID(context), GLenumToString(GLenumGroup::TextureTarget, target), |
| GLenumToString(GLenumGroup::GetTextureParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| TextureType targetPacked = FromGL<TextureType>(target); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || |
| ValidateGetTexParameterfv(context, targetPacked, pname, params)); |
| if (isCallValid) |
| { |
| context->getTexParameterfv(targetPacked, pname, params); |
| } |
| ANGLE_CAPTURE(GetTexParameterfv, isCallValid, context, targetPacked, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY GetTexParameteriv(GLenum target, GLenum pname, GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glGetTexParameteriv", |
| "context = %d, GLenum target = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::TextureTarget, target), |
| GLenumToString(GLenumGroup::GetTextureParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| TextureType targetPacked = FromGL<TextureType>(target); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || |
| ValidateGetTexParameteriv(context, targetPacked, pname, params)); |
| if (isCallValid) |
| { |
| context->getTexParameteriv(targetPacked, pname, params); |
| } |
| ANGLE_CAPTURE(GetTexParameteriv, isCallValid, context, targetPacked, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY Hint(GLenum target, GLenum mode) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glHint", "context = %d, GLenum target = %s, GLenum mode = %s", CID(context), |
| GLenumToString(GLenumGroup::HintTarget, target), |
| GLenumToString(GLenumGroup::HintMode, mode)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateHint(context, target, mode)); |
| if (isCallValid) |
| { |
| context->hint(target, mode); |
| } |
| ANGLE_CAPTURE(Hint, isCallValid, context, target, mode); |
| } |
| } |
| |
| void GL_APIENTRY IndexMask(GLuint mask) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexMask", "context = %d, GLuint mask = %u", CID(context), mask); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexMask(context, mask)); |
| if (isCallValid) |
| { |
| context->indexMask(mask); |
| } |
| ANGLE_CAPTURE(IndexMask, isCallValid, context, mask); |
| } |
| } |
| |
| void GL_APIENTRY Indexd(GLdouble c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexd", "context = %d, GLdouble c = %f", CID(context), c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexd(context, c)); |
| if (isCallValid) |
| { |
| context->indexd(c); |
| } |
| ANGLE_CAPTURE(Indexd, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY Indexdv(const GLdouble *c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexdv", "context = %d, const GLdouble *c = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexdv(context, c)); |
| if (isCallValid) |
| { |
| context->indexdv(c); |
| } |
| ANGLE_CAPTURE(Indexdv, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY Indexf(GLfloat c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexf", "context = %d, GLfloat c = %f", CID(context), c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexf(context, c)); |
| if (isCallValid) |
| { |
| context->indexf(c); |
| } |
| ANGLE_CAPTURE(Indexf, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY Indexfv(const GLfloat *c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexfv", "context = %d, const GLfloat *c = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexfv(context, c)); |
| if (isCallValid) |
| { |
| context->indexfv(c); |
| } |
| ANGLE_CAPTURE(Indexfv, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY Indexi(GLint c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexi", "context = %d, GLint c = %d", CID(context), c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexi(context, c)); |
| if (isCallValid) |
| { |
| context->indexi(c); |
| } |
| ANGLE_CAPTURE(Indexi, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY Indexiv(const GLint *c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexiv", "context = %d, const GLint *c = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexiv(context, c)); |
| if (isCallValid) |
| { |
| context->indexiv(c); |
| } |
| ANGLE_CAPTURE(Indexiv, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY Indexs(GLshort c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexs", "context = %d, GLshort c = %d", CID(context), c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexs(context, c)); |
| if (isCallValid) |
| { |
| context->indexs(c); |
| } |
| ANGLE_CAPTURE(Indexs, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY Indexsv(const GLshort *c) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIndexsv", "context = %d, const GLshort *c = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)c); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIndexsv(context, c)); |
| if (isCallValid) |
| { |
| context->indexsv(c); |
| } |
| ANGLE_CAPTURE(Indexsv, isCallValid, context, c); |
| } |
| } |
| |
| void GL_APIENTRY InitNames() |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glInitNames", "context = %d", CID(context)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateInitNames(context)); |
| if (isCallValid) |
| { |
| context->initNames(); |
| } |
| ANGLE_CAPTURE(InitNames, isCallValid, context); |
| } |
| } |
| |
| GLboolean GL_APIENTRY IsEnabled(GLenum cap) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIsEnabled", "context = %d, GLenum cap = %s", CID(context), |
| GLenumToString(GLenumGroup::EnableCap, cap)); |
| |
| GLboolean returnValue; |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIsEnabled(context, cap)); |
| if (isCallValid) |
| { |
| returnValue = context->isEnabled(cap); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::IsEnabled, GLboolean>(); |
| } |
| ANGLE_CAPTURE(IsEnabled, isCallValid, context, cap, returnValue); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::IsEnabled, GLboolean>(); |
| } |
| return returnValue; |
| } |
| |
| GLboolean GL_APIENTRY IsList(GLuint list) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glIsList", "context = %d, GLuint list = %u", CID(context), list); |
| |
| GLboolean returnValue; |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateIsList(context, list)); |
| if (isCallValid) |
| { |
| returnValue = context->isList(list); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::IsList, GLboolean>(); |
| } |
| ANGLE_CAPTURE(IsList, isCallValid, context, list, returnValue); |
| } |
| else |
| { |
| returnValue = GetDefaultReturnValue<EntryPoint::IsList, GLboolean>(); |
| } |
| return returnValue; |
| } |
| |
| void GL_APIENTRY LightModelf(GLenum pname, GLfloat param) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLightModelf", "context = %d, GLenum pname = %s, GLfloat param = %f", CID(context), |
| GLenumToString(GLenumGroup::LightModelParameter, pname), param); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLightModelf(context, pname, param)); |
| if (isCallValid) |
| { |
| context->lightModelf(pname, param); |
| } |
| ANGLE_CAPTURE(LightModelf, isCallValid, context, pname, param); |
| } |
| } |
| |
| void GL_APIENTRY LightModelfv(GLenum pname, const GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLightModelfv", |
| "context = %d, GLenum pname = %s, const GLfloat *params = 0x%016" PRIxPTR "", |
| CID(context), GLenumToString(GLenumGroup::LightModelParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLightModelfv(context, pname, params)); |
| if (isCallValid) |
| { |
| context->lightModelfv(pname, params); |
| } |
| ANGLE_CAPTURE(LightModelfv, isCallValid, context, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY LightModeli(GLenum pname, GLint param) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLightModeli", "context = %d, GLenum pname = %s, GLint param = %d", CID(context), |
| GLenumToString(GLenumGroup::LightModelParameter, pname), param); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLightModeli(context, pname, param)); |
| if (isCallValid) |
| { |
| context->lightModeli(pname, param); |
| } |
| ANGLE_CAPTURE(LightModeli, isCallValid, context, pname, param); |
| } |
| } |
| |
| void GL_APIENTRY LightModeliv(GLenum pname, const GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLightModeliv", |
| "context = %d, GLenum pname = %s, const GLint *params = 0x%016" PRIxPTR "", CID(context), |
| GLenumToString(GLenumGroup::LightModelParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLightModeliv(context, pname, params)); |
| if (isCallValid) |
| { |
| context->lightModeliv(pname, params); |
| } |
| ANGLE_CAPTURE(LightModeliv, isCallValid, context, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY Lightf(GLenum light, GLenum pname, GLfloat param) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLightf", "context = %d, GLenum light = %s, GLenum pname = %s, GLfloat param = %f", |
| CID(context), GLenumToString(GLenumGroup::LightName, light), |
| GLenumToString(GLenumGroup::LightParameter, pname), param); |
| |
| if (context) |
| { |
| LightParameter pnamePacked = FromGL<LightParameter>(pname); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLightf(context, light, pnamePacked, param)); |
| if (isCallValid) |
| { |
| context->lightf(light, pnamePacked, param); |
| } |
| ANGLE_CAPTURE(Lightf, isCallValid, context, light, pnamePacked, param); |
| } |
| } |
| |
| void GL_APIENTRY Lightfv(GLenum light, GLenum pname, const GLfloat *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT( |
| "glLightfv", |
| "context = %d, GLenum light = %s, GLenum pname = %s, const GLfloat *params = 0x%016" PRIxPTR |
| "", |
| CID(context), GLenumToString(GLenumGroup::LightName, light), |
| GLenumToString(GLenumGroup::LightParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| LightParameter pnamePacked = FromGL<LightParameter>(pname); |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLightfv(context, light, pnamePacked, params)); |
| if (isCallValid) |
| { |
| context->lightfv(light, pnamePacked, params); |
| } |
| ANGLE_CAPTURE(Lightfv, isCallValid, context, light, pnamePacked, params); |
| } |
| } |
| |
| void GL_APIENTRY Lighti(GLenum light, GLenum pname, GLint param) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLighti", "context = %d, GLenum light = %s, GLenum pname = %s, GLint param = %d", |
| CID(context), GLenumToString(GLenumGroup::LightName, light), |
| GLenumToString(GLenumGroup::LightParameter, pname), param); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLighti(context, light, pname, param)); |
| if (isCallValid) |
| { |
| context->lighti(light, pname, param); |
| } |
| ANGLE_CAPTURE(Lighti, isCallValid, context, light, pname, param); |
| } |
| } |
| |
| void GL_APIENTRY Lightiv(GLenum light, GLenum pname, const GLint *params) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLightiv", |
| "context = %d, GLenum light = %s, GLenum pname = %s, const GLint *params = 0x%016" PRIxPTR |
| "", |
| CID(context), GLenumToString(GLenumGroup::LightName, light), |
| GLenumToString(GLenumGroup::LightParameter, pname), (uintptr_t)params); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLightiv(context, light, pname, params)); |
| if (isCallValid) |
| { |
| context->lightiv(light, pname, params); |
| } |
| ANGLE_CAPTURE(Lightiv, isCallValid, context, light, pname, params); |
| } |
| } |
| |
| void GL_APIENTRY LineStipple(GLint factor, GLushort pattern) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLineStipple", "context = %d, GLint factor = %d, GLushort pattern = %u", CID(context), |
| factor, pattern); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = |
| (context->skipValidation() || ValidateLineStipple(context, factor, pattern)); |
| if (isCallValid) |
| { |
| context->lineStipple(factor, pattern); |
| } |
| ANGLE_CAPTURE(LineStipple, isCallValid, context, factor, pattern); |
| } |
| } |
| |
| void GL_APIENTRY LineWidth(GLfloat width) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLineWidth", "context = %d, GLfloat width = %f", CID(context), width); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateLineWidth(context, width)); |
| if (isCallValid) |
| { |
| context->lineWidth(width); |
| } |
| ANGLE_CAPTURE(LineWidth, isCallValid, context, width); |
| } |
| } |
| |
| void GL_APIENTRY ListBase(GLuint base) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glListBase", "context = %d, GLuint base = %u", CID(context), base); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateListBase(context, base)); |
| if (isCallValid) |
| { |
| context->listBase(base); |
| } |
| ANGLE_CAPTURE(ListBase, isCallValid, context, base); |
| } |
| } |
| |
| void GL_APIENTRY LoadIdentity() |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLoadIdentity", "context = %d", CID(context)); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateLoadIdentity(context)); |
| if (isCallValid) |
| { |
| context->loadIdentity(); |
| } |
| ANGLE_CAPTURE(LoadIdentity, isCallValid, context); |
| } |
| } |
| |
| void GL_APIENTRY LoadMatrixd(const GLdouble *m) |
| { |
| Context *context = GetValidGlobalContext(); |
| EVENT("glLoadMatrixd", "context = %d, const GLdouble *m = 0x%016" PRIxPTR "", CID(context), |
| (uintptr_t)m); |
| |
| if (context) |
| { |
| std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context); |
| bool isCallValid = (context->skipValidation() || ValidateLoadMatrixd(context, m)); |
| if (isCallValid) |
| { |
| context->loadMatrixd(m); |
| } |
| ANGLE_CAPTURE(LoadMatrixd, isCallValid, context, m); |