a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync/*
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * (C) Copyright IBM Corporation 2005
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * All Rights Reserved.
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync *
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * Permission is hereby granted, free of charge, to any person obtaining a
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * copy of this software and associated documentation files (the "Software"),
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * to deal in the Software without restriction, including without limitation
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * the rights to use, copy, modify, merge, publish, distribute, sub license,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * and/or sell copies of the Software, and to permit persons to whom the
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * Software is furnished to do so, subject to the following conditions:
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync *
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * The above copyright notice and this permission notice (including the next
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * paragraph) shall be included in all copies or substantial portions of the
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * Software.
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync *
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * IBM,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync * SOFTWARE.
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync */
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync#ifndef __GLX_INDIRECT_UTIL_H__
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync#define __GLX_INDIRECT_UTIL_H__
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern GLint __glGetBooleanv_variable_size(GLenum e);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern void *__glXGetAnswerBuffer(__GLXclientState * cl,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync size_t required_size, void *local_buffer,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync size_t local_size, unsigned alignment);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern void __glXSendReply(ClientPtr client, const void *data,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync size_t elements, size_t element_size,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync GLboolean always_array, CARD32 retval);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern void __glXSendReplySwap(ClientPtr client, const void *data,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync size_t elements, size_t element_size,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync GLboolean always_array, CARD32 retval);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncstruct __glXDispatchInfo;
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern void *__glXGetProtocolDecodeFunction(const struct __glXDispatchInfo
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync *dispatch_info, int opcode,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync int swapped_version);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern int __glXGetProtocolSizeData(const struct __glXDispatchInfo
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync *dispatch_info, int opcode,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync __GLXrenderSizeData * data);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync#endif /* __GLX_INDIRECT_UTIL_H__ */