Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mesa
Path: blob/21.2-virgl/src/glx/indirect_vertex_array.h
4558 views
1
/*
2
* (C) Copyright IBM Corporation 2004, 2005
3
* All Rights Reserved.
4
*
5
* Permission is hereby granted, free of charge, to any person obtaining a
6
* copy of this software and associated documentation files (the "Software"),
7
* to deal in the Software without restriction, including without limitation
8
* the rights to use, copy, modify, merge, publish, distribute, sub license,
9
* and/or sell copies of the Software, and to permit persons to whom the
10
* Software is furnished to do so, subject to the following conditions:
11
*
12
* The above copyright notice and this permission notice (including the next
13
* paragraph) shall be included in all copies or substantial portions of the
14
* Software.
15
*
16
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
19
* IBM,
20
* AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
21
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
22
* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
* SOFTWARE.
24
*/
25
26
#ifndef INDIRECT_VERTEX_ARRAY_H
27
#define INDIRECT_VERTEX_ARRAY_H
28
29
extern const GLuint __glXTypeSize_table[16];
30
31
#define __glXTypeSize(e) ((((e) & ~0x0f) != 0x1400) \
32
? 0 : __glXTypeSize_table[ (e) & 0x0f ])
33
34
extern void __glXArrayDisableAll(__GLXattribute * state);
35
36
extern GLboolean __glXSetArrayEnable(__GLXattribute * state,
37
GLenum key, unsigned index,
38
GLboolean enable);
39
40
extern GLboolean __glXGetArrayEnable(const __GLXattribute * const state,
41
GLenum key, unsigned index,
42
GLintptr * dest);
43
extern GLboolean __glXGetArraySize(const __GLXattribute * const state,
44
GLenum key, unsigned index,
45
GLintptr * dest);
46
extern GLboolean __glXGetArrayType(const __GLXattribute * const state,
47
GLenum key, unsigned index,
48
GLintptr * dest);
49
extern GLboolean __glXGetArrayStride(const __GLXattribute * const state,
50
GLenum key, unsigned index,
51
GLintptr * dest);
52
extern GLboolean __glXGetArrayPointer(const __GLXattribute * const state,
53
GLenum key, unsigned index,
54
void **dest);
55
extern GLboolean __glXGetArrayNormalized(const __GLXattribute * const state,
56
GLenum key, unsigned index,
57
GLintptr * dest);
58
59
extern void __glXPushArrayState(__GLXattribute * state);
60
extern void __glXPopArrayState(__GLXattribute * state);
61
62
extern GLuint __glXGetActiveTextureUnit(const __GLXattribute * const state);
63
64
#endif /* INDIRECT_VERTEX_ARRAY_H */
65
66