1
// GENERATED FILE - DO NOT EDIT.
2
// Generated by generate_entry_points.py using data from gl.xml.
4
// Copyright 2020 The ANGLE Project Authors. All rights reserved.
5
// Use of this source code is governed by a BSD-style license that can be
6
// found in the LICENSE file.
8
// entry_points_gl_1_5_autogen.cpp:
9
// Defines the GL 1.5 entry points.
11
#include "libGL/entry_points_gl_1_5_autogen.h"
13
#include "libANGLE/Context.h"
14
#include "libANGLE/Context.inl.h"
15
#include "libANGLE/entry_points_utils.h"
16
#include "libANGLE/gl_enum_utils.h"
17
#include "libANGLE/validationEGL.h"
18
#include "libANGLE/validationES.h"
19
#include "libANGLE/validationES1.h"
20
#include "libANGLE/validationES2.h"
21
#include "libANGLE/validationES3.h"
22
#include "libANGLE/validationES31.h"
23
#include "libANGLE/validationES32.h"
24
#include "libANGLE/validationESEXT.h"
25
#include "libANGLE/validationGL15_autogen.h"
26
#include "libGLESv2/global_state.h"
30
void GL_APIENTRY BeginQuery(GLenum target, GLuint id)
32
Context *context = GetValidGlobalContext();
33
EVENT("glBeginQuery", "context = %d, GLenum target = %s, GLuint id = %u", CID(context),
34
GLenumToString(GLenumGroup::QueryTarget, target), id);
38
QueryType targetPacked = FromGL<QueryType>(target);
39
QueryID idPacked = FromGL<QueryID>(id);
40
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
42
(context->skipValidation() || ValidateBeginQuery(context, targetPacked, idPacked));
45
context->beginQuery(targetPacked, idPacked);
47
ANGLE_CAPTURE(BeginQuery, isCallValid, context, targetPacked, idPacked);
51
void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer)
53
Context *context = GetValidGlobalContext();
54
EVENT("glBindBuffer", "context = %d, GLenum target = %s, GLuint buffer = %u", CID(context),
55
GLenumToString(GLenumGroup::BufferTargetARB, target), buffer);
59
BufferBinding targetPacked = FromGL<BufferBinding>(target);
60
BufferID bufferPacked = FromGL<BufferID>(buffer);
61
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
63
(context->skipValidation() || ValidateBindBuffer(context, targetPacked, bufferPacked));
66
context->bindBuffer(targetPacked, bufferPacked);
68
ANGLE_CAPTURE(BindBuffer, isCallValid, context, targetPacked, bufferPacked);
72
void GL_APIENTRY BufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
74
Context *context = GetValidGlobalContext();
76
"context = %d, GLenum target = %s, GLsizeiptr size = %llu, const void *data = "
77
"0x%016" PRIxPTR ", GLenum usage = %s",
78
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
79
static_cast<unsigned long long>(size), (uintptr_t)data,
80
GLenumToString(GLenumGroup::BufferUsageARB, usage));
84
BufferBinding targetPacked = FromGL<BufferBinding>(target);
85
BufferUsage usagePacked = FromGL<BufferUsage>(usage);
86
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
87
bool isCallValid = (context->skipValidation() ||
88
ValidateBufferData(context, targetPacked, size, data, usagePacked));
91
context->bufferData(targetPacked, size, data, usagePacked);
93
ANGLE_CAPTURE(BufferData, isCallValid, context, targetPacked, size, data, usagePacked);
97
void GL_APIENTRY BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
99
Context *context = GetValidGlobalContext();
100
EVENT("glBufferSubData",
101
"context = %d, GLenum target = %s, GLintptr offset = %llu, GLsizeiptr size = %llu, const "
102
"void *data = 0x%016" PRIxPTR "",
103
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
104
static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
109
BufferBinding targetPacked = FromGL<BufferBinding>(target);
110
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
111
bool isCallValid = (context->skipValidation() ||
112
ValidateBufferSubData(context, targetPacked, offset, size, data));
115
context->bufferSubData(targetPacked, offset, size, data);
117
ANGLE_CAPTURE(BufferSubData, isCallValid, context, targetPacked, offset, size, data);
121
void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint *buffers)
123
Context *context = GetValidGlobalContext();
124
EVENT("glDeleteBuffers",
125
"context = %d, GLsizei n = %d, const GLuint *buffers = 0x%016" PRIxPTR "", CID(context),
126
n, (uintptr_t)buffers);
130
const BufferID *buffersPacked = FromGL<const BufferID *>(buffers);
131
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
133
(context->skipValidation() || ValidateDeleteBuffers(context, n, buffersPacked));
136
context->deleteBuffers(n, buffersPacked);
138
ANGLE_CAPTURE(DeleteBuffers, isCallValid, context, n, buffersPacked);
142
void GL_APIENTRY DeleteQueries(GLsizei n, const GLuint *ids)
144
Context *context = GetValidGlobalContext();
145
EVENT("glDeleteQueries", "context = %d, GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR "",
146
CID(context), n, (uintptr_t)ids);
150
const QueryID *idsPacked = FromGL<const QueryID *>(ids);
151
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
153
(context->skipValidation() || ValidateDeleteQueries(context, n, idsPacked));
156
context->deleteQueries(n, idsPacked);
158
ANGLE_CAPTURE(DeleteQueries, isCallValid, context, n, idsPacked);
162
void GL_APIENTRY EndQuery(GLenum target)
164
Context *context = GetValidGlobalContext();
165
EVENT("glEndQuery", "context = %d, GLenum target = %s", CID(context),
166
GLenumToString(GLenumGroup::QueryTarget, target));
170
QueryType targetPacked = FromGL<QueryType>(target);
171
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
172
bool isCallValid = (context->skipValidation() || ValidateEndQuery(context, targetPacked));
175
context->endQuery(targetPacked);
177
ANGLE_CAPTURE(EndQuery, isCallValid, context, targetPacked);
181
void GL_APIENTRY GenBuffers(GLsizei n, GLuint *buffers)
183
Context *context = GetValidGlobalContext();
184
EVENT("glGenBuffers", "context = %d, GLsizei n = %d, GLuint *buffers = 0x%016" PRIxPTR "",
185
CID(context), n, (uintptr_t)buffers);
189
BufferID *buffersPacked = FromGL<BufferID *>(buffers);
190
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
192
(context->skipValidation() || ValidateGenBuffers(context, n, buffersPacked));
195
context->genBuffers(n, buffersPacked);
197
ANGLE_CAPTURE(GenBuffers, isCallValid, context, n, buffersPacked);
201
void GL_APIENTRY GenQueries(GLsizei n, GLuint *ids)
203
Context *context = GetValidGlobalContext();
204
EVENT("glGenQueries", "context = %d, GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR "",
205
CID(context), n, (uintptr_t)ids);
209
QueryID *idsPacked = FromGL<QueryID *>(ids);
210
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
211
bool isCallValid = (context->skipValidation() || ValidateGenQueries(context, n, idsPacked));
214
context->genQueries(n, idsPacked);
216
ANGLE_CAPTURE(GenQueries, isCallValid, context, n, idsPacked);
220
void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
222
Context *context = GetValidGlobalContext();
223
EVENT("glGetBufferParameteriv",
224
"context = %d, GLenum target = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "",
225
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
226
GLenumToString(GLenumGroup::DefaultGroup, pname), (uintptr_t)params);
230
BufferBinding targetPacked = FromGL<BufferBinding>(target);
231
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
232
bool isCallValid = (context->skipValidation() ||
233
ValidateGetBufferParameteriv(context, targetPacked, pname, params));
236
context->getBufferParameteriv(targetPacked, pname, params);
238
ANGLE_CAPTURE(GetBufferParameteriv, isCallValid, context, targetPacked, pname, params);
242
void GL_APIENTRY GetBufferPointerv(GLenum target, GLenum pname, void **params)
244
Context *context = GetValidGlobalContext();
245
EVENT("glGetBufferPointerv",
246
"context = %d, GLenum target = %s, GLenum pname = %s, void **params = 0x%016" PRIxPTR "",
247
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
248
GLenumToString(GLenumGroup::DefaultGroup, pname), (uintptr_t)params);
252
BufferBinding targetPacked = FromGL<BufferBinding>(target);
253
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
254
bool isCallValid = (context->skipValidation() ||
255
ValidateGetBufferPointerv(context, targetPacked, pname, params));
258
context->getBufferPointerv(targetPacked, pname, params);
260
ANGLE_CAPTURE(GetBufferPointerv, isCallValid, context, targetPacked, pname, params);
264
void GL_APIENTRY GetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)
266
Context *context = GetValidGlobalContext();
267
EVENT("glGetBufferSubData",
268
"context = %d, GLenum target = %s, GLintptr offset = %llu, GLsizeiptr size = %llu, void "
269
"*data = 0x%016" PRIxPTR "",
270
CID(context), GLenumToString(GLenumGroup::BufferTargetARB, target),
271
static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
276
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
277
bool isCallValid = (context->skipValidation() ||
278
ValidateGetBufferSubData(context, target, offset, size, data));
281
context->getBufferSubData(target, offset, size, data);
283
ANGLE_CAPTURE(GetBufferSubData, isCallValid, context, target, offset, size, data);
287
void GL_APIENTRY GetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
289
Context *context = GetGlobalContext();
290
EVENT("glGetQueryObjectiv",
291
"context = %d, GLuint id = %u, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "",
292
CID(context), id, GLenumToString(GLenumGroup::QueryObjectParameterName, pname),
297
QueryID idPacked = FromGL<QueryID>(id);
298
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
299
bool isCallValid = (context->skipValidation() ||
300
ValidateGetQueryObjectiv(context, idPacked, pname, params));
303
context->getQueryObjectiv(idPacked, pname, params);
305
ANGLE_CAPTURE(GetQueryObjectiv, isCallValid, context, idPacked, pname, params);
309
void GL_APIENTRY GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
311
Context *context = GetValidGlobalContext();
312
EVENT("glGetQueryObjectuiv",
313
"context = %d, GLuint id = %u, GLenum pname = %s, GLuint *params = 0x%016" PRIxPTR "",
314
CID(context), id, GLenumToString(GLenumGroup::QueryObjectParameterName, pname),
319
QueryID idPacked = FromGL<QueryID>(id);
320
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
321
bool isCallValid = (context->skipValidation() ||
322
ValidateGetQueryObjectuiv(context, idPacked, pname, params));
325
context->getQueryObjectuiv(idPacked, pname, params);
327
ANGLE_CAPTURE(GetQueryObjectuiv, isCallValid, context, idPacked, pname, params);
331
void GL_APIENTRY GetQueryiv(GLenum target, GLenum pname, GLint *params)
333
Context *context = GetValidGlobalContext();
334
EVENT("glGetQueryiv",
335
"context = %d, GLenum target = %s, GLenum pname = %s, GLint *params = 0x%016" PRIxPTR "",
336
CID(context), GLenumToString(GLenumGroup::QueryTarget, target),
337
GLenumToString(GLenumGroup::QueryParameterName, pname), (uintptr_t)params);
341
QueryType targetPacked = FromGL<QueryType>(target);
342
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
344
(context->skipValidation() || ValidateGetQueryiv(context, targetPacked, pname, params));
347
context->getQueryiv(targetPacked, pname, params);
349
ANGLE_CAPTURE(GetQueryiv, isCallValid, context, targetPacked, pname, params);
353
GLboolean GL_APIENTRY IsBuffer(GLuint buffer)
355
Context *context = GetValidGlobalContext();
356
EVENT("glIsBuffer", "context = %d, GLuint buffer = %u", CID(context), buffer);
358
GLboolean returnValue;
361
BufferID bufferPacked = FromGL<BufferID>(buffer);
362
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
363
bool isCallValid = (context->skipValidation() || ValidateIsBuffer(context, bufferPacked));
366
returnValue = context->isBuffer(bufferPacked);
370
returnValue = GetDefaultReturnValue<EntryPoint::IsBuffer, GLboolean>();
372
ANGLE_CAPTURE(IsBuffer, isCallValid, context, bufferPacked, returnValue);
376
returnValue = GetDefaultReturnValue<EntryPoint::IsBuffer, GLboolean>();
381
GLboolean GL_APIENTRY IsQuery(GLuint id)
383
Context *context = GetValidGlobalContext();
384
EVENT("glIsQuery", "context = %d, GLuint id = %u", CID(context), id);
386
GLboolean returnValue;
389
QueryID idPacked = FromGL<QueryID>(id);
390
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
391
bool isCallValid = (context->skipValidation() || ValidateIsQuery(context, idPacked));
394
returnValue = context->isQuery(idPacked);
398
returnValue = GetDefaultReturnValue<EntryPoint::IsQuery, GLboolean>();
400
ANGLE_CAPTURE(IsQuery, isCallValid, context, idPacked, returnValue);
404
returnValue = GetDefaultReturnValue<EntryPoint::IsQuery, GLboolean>();
409
void *GL_APIENTRY MapBuffer(GLenum target, GLenum access)
411
Context *context = GetValidGlobalContext();
412
EVENT("glMapBuffer", "context = %d, GLenum target = %s, GLenum access = %s", CID(context),
413
GLenumToString(GLenumGroup::BufferTargetARB, target),
414
GLenumToString(GLenumGroup::BufferAccessARB, access));
419
BufferBinding targetPacked = FromGL<BufferBinding>(target);
420
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
422
(context->skipValidation() || ValidateMapBuffer(context, targetPacked, access));
425
returnValue = context->mapBuffer(targetPacked, access);
429
returnValue = GetDefaultReturnValue<EntryPoint::MapBuffer, void *>();
431
ANGLE_CAPTURE(MapBuffer, isCallValid, context, targetPacked, access, returnValue);
435
returnValue = GetDefaultReturnValue<EntryPoint::MapBuffer, void *>();
440
GLboolean GL_APIENTRY UnmapBuffer(GLenum target)
442
Context *context = GetValidGlobalContext();
443
EVENT("glUnmapBuffer", "context = %d, GLenum target = %s", CID(context),
444
GLenumToString(GLenumGroup::BufferTargetARB, target));
446
GLboolean returnValue;
449
BufferBinding targetPacked = FromGL<BufferBinding>(target);
450
std::unique_lock<std::mutex> shareContextLock = GetShareGroupLock(context);
452
(context->skipValidation() || ValidateUnmapBuffer(context, targetPacked));
455
returnValue = context->unmapBuffer(targetPacked);
459
returnValue = GetDefaultReturnValue<EntryPoint::UnmapBuffer, GLboolean>();
461
ANGLE_CAPTURE(UnmapBuffer, isCallValid, context, targetPacked, returnValue);
465
returnValue = GetDefaultReturnValue<EntryPoint::UnmapBuffer, GLboolean>();