blob: 744b3a2777e08404353f6b43d100f6939e23b944 [file] [log] [blame]
// 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_5_autogen.cpp:
// Defines the GL 1.5 entry points.
#include "libGL/entry_points_gl_1_5_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/validationGL15_autogen.h"
#include "libGLESv2/global_state.h"
namespace gl
{
void GL_APIENTRY BeginQuery(GLenum target, GLuint id)
{
Context *context = GetValidGlobalContext();
EVENT("glBeginQuery", "context = %d, GLenum target = %s, GLuint id = %u", CID(context),
GLenumToString(GLenumGroup::QueryTarget, target), id);
if (context)
{
QueryType targetPacked = FromGL<QueryType>(target);
QueryID idPacked = FromGL<QueryID>(id);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateBeginQuery(context, targetPacked, idPacked));
if (isCallValid)
{
context->beginQuery(targetPacked, idPacked);
}
ANGLE_CAPTURE(BeginQuery, isCallValid, context, targetPacked, idPacked);
}
}
void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer)
{
Context *context = GetValidGlobalContext();
EVENT("glBindBuffer", "context = %d, GLenum target = %s, GLuint buffer = %u", CID(context),
GLenumToString(GLenumGroup::BufferTargetARB, target), buffer);
if (context)
{
BufferBinding targetPacked = FromGL<BufferBinding>(target);
BufferID bufferPacked = FromGL<BufferID>(buffer);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateBindBuffer(context, targetPacked, bufferPacked));
if (isCallValid)
{
context->bindBuffer(targetPacked, bufferPacked);
}
ANGLE_CAPTURE(BindBuffer, isCallValid, context, targetPacked, bufferPacked);
}
}
void GL_APIENTRY BufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
{
Context *context = GetValidGlobalContext();
EVENT("glBufferData",
"context = %d, GLenum target = %s, GLsizeiptr size = %llu, const void *data = "
"0x%016" PRIxPTR ", GLenum usage = %s",
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
static_cast<unsigned long long>(size), (uintptr_t)data,
GLenumToString(GLenumGroup::BufferUsageARB, usage));
if (context)
{
BufferBinding targetPacked = FromGL<BufferBinding>(target);
BufferUsage usagePacked = FromGL<BufferUsage>(usage);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() ||
ValidateBufferData(context, targetPacked, size, data, usagePacked));
if (isCallValid)
{
context->bufferData(targetPacked, size, data, usagePacked);
}
ANGLE_CAPTURE(BufferData, isCallValid, context, targetPacked, size, data, usagePacked);
}
}
void GL_APIENTRY BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
{
Context *context = GetValidGlobalContext();
EVENT("glBufferSubData",
"context = %d, GLenum target = %s, GLintptr offset = %llu, GLsizeiptr size = %llu, const "
"void *data = 0x%016" PRIxPTR "",
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
(uintptr_t)data);
if (context)
{
BufferBinding targetPacked = FromGL<BufferBinding>(target);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() ||
ValidateBufferSubData(context, targetPacked, offset, size, data));
if (isCallValid)
{
context->bufferSubData(targetPacked, offset, size, data);
}
ANGLE_CAPTURE(BufferSubData, isCallValid, context, targetPacked, offset, size, data);
}
}
void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint *buffers)
{
Context *context = GetValidGlobalContext();
EVENT("glDeleteBuffers",
"context = %d, GLsizei n = %d, const GLuint *buffers = 0x%016" PRIxPTR "", CID(context),
n, (uintptr_t)buffers);
if (context)
{
const BufferID *buffersPacked = FromGL<const BufferID *>(buffers);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateDeleteBuffers(context, n, buffersPacked));
if (isCallValid)
{
context->deleteBuffers(n, buffersPacked);
}
ANGLE_CAPTURE(DeleteBuffers, isCallValid, context, n, buffersPacked);
}
}
void GL_APIENTRY DeleteQueries(GLsizei n, const GLuint *ids)
{
Context *context = GetValidGlobalContext();
EVENT("glDeleteQueries", "context = %d, GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR "",
CID(context), n, (uintptr_t)ids);
if (context)
{
const QueryID *idsPacked = FromGL<const QueryID *>(ids);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateDeleteQueries(context, n, idsPacked));
if (isCallValid)
{
context->deleteQueries(n, idsPacked);
}
ANGLE_CAPTURE(DeleteQueries, isCallValid, context, n, idsPacked);
}
}
void GL_APIENTRY EndQuery(GLenum target)
{
Context *context = GetValidGlobalContext();
EVENT("glEndQuery", "context = %d, GLenum target = %s", CID(context),
GLenumToString(GLenumGroup::QueryTarget, target));
if (context)
{
QueryType targetPacked = FromGL<QueryType>(target);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() || ValidateEndQuery(context, targetPacked));
if (isCallValid)
{
context->endQuery(targetPacked);
}
ANGLE_CAPTURE(EndQuery, isCallValid, context, targetPacked);
}
}
void GL_APIENTRY GenBuffers(GLsizei n, GLuint *buffers)
{
Context *context = GetValidGlobalContext();
EVENT("glGenBuffers", "context = %d, GLsizei n = %d, GLuint *buffers = 0x%016" PRIxPTR "",
CID(context), n, (uintptr_t)buffers);
if (context)
{
BufferID *buffersPacked = FromGL<BufferID *>(buffers);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateGenBuffers(context, n, buffersPacked));
if (isCallValid)
{
context->genBuffers(n, buffersPacked);
}
ANGLE_CAPTURE(GenBuffers, isCallValid, context, n, buffersPacked);
}
}
void GL_APIENTRY GenQueries(GLsizei n, GLuint *ids)
{
Context *context = GetValidGlobalContext();
EVENT("glGenQueries", "context = %d, GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR "",
CID(context), n, (uintptr_t)ids);
if (context)
{
QueryID *idsPacked = FromGL<QueryID *>(ids);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() || ValidateGenQueries(context, n, idsPacked));
if (isCallValid)
{
context->genQueries(n, idsPacked);
}
ANGLE_CAPTURE(GenQueries, isCallValid, context, n, idsPacked);
}
}
void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
{
Context *context = GetValidGlobalContext();
EVENT("glGetBufferParameteriv",
"context = %d, GLenum target = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "",
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
GLenumToString(GLenumGroup::DefaultGroup, pname), (uintptr_t)params);
if (context)
{
BufferBinding targetPacked = FromGL<BufferBinding>(target);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() ||
ValidateGetBufferParameteriv(context, targetPacked, pname, params));
if (isCallValid)
{
context->getBufferParameteriv(targetPacked, pname, params);
}
ANGLE_CAPTURE(GetBufferParameteriv, isCallValid, context, targetPacked, pname, params);
}
}
void GL_APIENTRY GetBufferPointerv(GLenum target, GLenum pname, void **params)
{
Context *context = GetValidGlobalContext();
EVENT("glGetBufferPointerv",
"context = %d, GLenum target = %s, GLenum pname = %s, void **params = 0x%016" PRIxPTR "",
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
GLenumToString(GLenumGroup::DefaultGroup, pname), (uintptr_t)params);
if (context)
{
BufferBinding targetPacked = FromGL<BufferBinding>(target);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() ||
ValidateGetBufferPointerv(context, targetPacked, pname, params));
if (isCallValid)
{
context->getBufferPointerv(targetPacked, pname, params);
}
ANGLE_CAPTURE(GetBufferPointerv, isCallValid, context, targetPacked, pname, params);
}
}
void GL_APIENTRY GetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)
{
Context *context = GetValidGlobalContext();
EVENT("glGetBufferSubData",
"context = %d, GLenum target = %s, GLintptr offset = %llu, GLsizeiptr size = %llu, void "
"*data = 0x%016" PRIxPTR "",
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
(uintptr_t)data);
if (context)
{
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() ||
ValidateGetBufferSubData(context, target, offset, size, data));
if (isCallValid)
{
context->getBufferSubData(target, offset, size, data);
}
ANGLE_CAPTURE(GetBufferSubData, isCallValid, context, target, offset, size, data);
}
}
void GL_APIENTRY GetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
{
Context *context = GetGlobalContext();
EVENT("glGetQueryObjectiv",
"context = %d, GLuint id = %u, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "",
CID(context), id, GLenumToString(GLenumGroup::QueryObjectParameterName, pname),
(uintptr_t)params);
if (context)
{
QueryID idPacked = FromGL<QueryID>(id);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() ||
ValidateGetQueryObjectiv(context, idPacked, pname, params));
if (isCallValid)
{
context->getQueryObjectiv(idPacked, pname, params);
}
ANGLE_CAPTURE(GetQueryObjectiv, isCallValid, context, idPacked, pname, params);
}
}
void GL_APIENTRY GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
{
Context *context = GetValidGlobalContext();
EVENT("glGetQueryObjectuiv",
"context = %d, GLuint id = %u, GLenum pname = %s, GLuint *params = 0x%016" PRIxPTR "",
CID(context), id, GLenumToString(GLenumGroup::QueryObjectParameterName, pname),
(uintptr_t)params);
if (context)
{
QueryID idPacked = FromGL<QueryID>(id);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() ||
ValidateGetQueryObjectuiv(context, idPacked, pname, params));
if (isCallValid)
{
context->getQueryObjectuiv(idPacked, pname, params);
}
ANGLE_CAPTURE(GetQueryObjectuiv, isCallValid, context, idPacked, pname, params);
}
}
void GL_APIENTRY GetQueryiv(GLenum target, GLenum pname, GLint *params)
{
Context *context = GetValidGlobalContext();
EVENT("glGetQueryiv",
"context = %d, GLenum target = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "",
CID(context), GLenumToString(GLenumGroup::QueryTarget, target),
GLenumToString(GLenumGroup::QueryParameterName, pname), (uintptr_t)params);
if (context)
{
QueryType targetPacked = FromGL<QueryType>(target);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateGetQueryiv(context, targetPacked, pname, params));
if (isCallValid)
{
context->getQueryiv(targetPacked, pname, params);
}
ANGLE_CAPTURE(GetQueryiv, isCallValid, context, targetPacked, pname, params);
}
}
GLboolean GL_APIENTRY IsBuffer(GLuint buffer)
{
Context *context = GetValidGlobalContext();
EVENT("glIsBuffer", "context = %d, GLuint buffer = %u", CID(context), buffer);
GLboolean returnValue;
if (context)
{
BufferID bufferPacked = FromGL<BufferID>(buffer);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() || ValidateIsBuffer(context, bufferPacked));
if (isCallValid)
{
returnValue = context->isBuffer(bufferPacked);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::IsBuffer, GLboolean>();
}
ANGLE_CAPTURE(IsBuffer, isCallValid, context, bufferPacked, returnValue);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::IsBuffer, GLboolean>();
}
return returnValue;
}
GLboolean GL_APIENTRY IsQuery(GLuint id)
{
Context *context = GetValidGlobalContext();
EVENT("glIsQuery", "context = %d, GLuint id = %u", CID(context), id);
GLboolean returnValue;
if (context)
{
QueryID idPacked = FromGL<QueryID>(id);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid = (context->skipValidation() || ValidateIsQuery(context, idPacked));
if (isCallValid)
{
returnValue = context->isQuery(idPacked);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::IsQuery, GLboolean>();
}
ANGLE_CAPTURE(IsQuery, isCallValid, context, idPacked, returnValue);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::IsQuery, GLboolean>();
}
return returnValue;
}
void *GL_APIENTRY MapBuffer(GLenum target, GLenum access)
{
Context *context = GetValidGlobalContext();
EVENT("glMapBuffer", "context = %d, GLenum target = %s, GLenum access = %s", CID(context),
GLenumToString(GLenumGroup::BufferTargetARB, target),
GLenumToString(GLenumGroup::BufferAccessARB, access));
void *returnValue;
if (context)
{
BufferBinding targetPacked = FromGL<BufferBinding>(target);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateMapBuffer(context, targetPacked, access));
if (isCallValid)
{
returnValue = context->mapBuffer(targetPacked, access);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::MapBuffer, void *>();
}
ANGLE_CAPTURE(MapBuffer, isCallValid, context, targetPacked, access, returnValue);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::MapBuffer, void *>();
}
return returnValue;
}
GLboolean GL_APIENTRY UnmapBuffer(GLenum target)
{
Context *context = GetValidGlobalContext();
EVENT("glUnmapBuffer", "context = %d, GLenum target = %s", CID(context),
GLenumToString(GLenumGroup::BufferTargetARB, target));
GLboolean returnValue;
if (context)
{
BufferBinding targetPacked = FromGL<BufferBinding>(target);
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
bool isCallValid =
(context->skipValidation() || ValidateUnmapBuffer(context, targetPacked));
if (isCallValid)
{
returnValue = context->unmapBuffer(targetPacked);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::UnmapBuffer, GLboolean>();
}
ANGLE_CAPTURE(UnmapBuffer, isCallValid, context, targetPacked, returnValue);
}
else
{
returnValue = GetDefaultReturnValue<EntryPoint::UnmapBuffer, GLboolean>();
}
return returnValue;
}
} // namespace gl