Path: blob/21.2-virgl/src/glx/indirect_vertex_array.h
4558 views
/*1* (C) Copyright IBM Corporation 2004, 20052* All Rights Reserved.3*4* Permission is hereby granted, free of charge, to any person obtaining a5* copy of this software and associated documentation files (the "Software"),6* to deal in the Software without restriction, including without limitation7* the rights to use, copy, modify, merge, publish, distribute, sub license,8* and/or sell copies of the Software, and to permit persons to whom the9* Software is furnished to do so, subject to the following conditions:10*11* The above copyright notice and this permission notice (including the next12* paragraph) shall be included in all copies or substantial portions of the13* Software.14*15* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR16* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,17* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL18* IBM,19* AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,20* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF21* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE22* SOFTWARE.23*/2425#ifndef INDIRECT_VERTEX_ARRAY_H26#define INDIRECT_VERTEX_ARRAY_H2728extern const GLuint __glXTypeSize_table[16];2930#define __glXTypeSize(e) ((((e) & ~0x0f) != 0x1400) \31? 0 : __glXTypeSize_table[ (e) & 0x0f ])3233extern void __glXArrayDisableAll(__GLXattribute * state);3435extern GLboolean __glXSetArrayEnable(__GLXattribute * state,36GLenum key, unsigned index,37GLboolean enable);3839extern GLboolean __glXGetArrayEnable(const __GLXattribute * const state,40GLenum key, unsigned index,41GLintptr * dest);42extern GLboolean __glXGetArraySize(const __GLXattribute * const state,43GLenum key, unsigned index,44GLintptr * dest);45extern GLboolean __glXGetArrayType(const __GLXattribute * const state,46GLenum key, unsigned index,47GLintptr * dest);48extern GLboolean __glXGetArrayStride(const __GLXattribute * const state,49GLenum key, unsigned index,50GLintptr * dest);51extern GLboolean __glXGetArrayPointer(const __GLXattribute * const state,52GLenum key, unsigned index,53void **dest);54extern GLboolean __glXGetArrayNormalized(const __GLXattribute * const state,55GLenum key, unsigned index,56GLintptr * dest);5758extern void __glXPushArrayState(__GLXattribute * state);59extern void __glXPopArrayState(__GLXattribute * state);6061extern GLuint __glXGetActiveTextureUnit(const __GLXattribute * const state);6263#endif /* INDIRECT_VERTEX_ARRAY_H */646566