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