⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bufferobj.h

📁 Mesa is an open-source implementation of the OpenGL specification - a system for rendering interacti
💻 H
字号:
/* * Mesa 3-D graphics library * Version:  7.2 * * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */#ifndef BUFFEROBJ_H#define BUFFEROBJ_H#include "context.h"/* * Internal functions */extern void_mesa_init_buffer_objects( GLcontext *ctx );extern void_mesa_update_default_objects_buffer_objects(GLcontext *ctx);extern struct gl_buffer_object *_mesa_new_buffer_object( GLcontext *ctx, GLuint name, GLenum target );extern void_mesa_delete_buffer_object( GLcontext *ctx, struct gl_buffer_object *bufObj );extern struct gl_buffer_object *_mesa_lookup_bufferobj(GLcontext *ctx, GLuint buffer);extern void_mesa_initialize_buffer_object( struct gl_buffer_object *obj,				GLuint name, GLenum target );extern void_mesa_reference_buffer_object(GLcontext *ctx,                              struct gl_buffer_object **ptr,                              struct gl_buffer_object *bufObj);extern void_mesa_buffer_data( GLcontext *ctx, GLenum target, GLsizeiptrARB size,		   const GLvoid * data, GLenum usage,		   struct gl_buffer_object * bufObj );extern void_mesa_buffer_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset,		      GLsizeiptrARB size, const GLvoid * data,		      struct gl_buffer_object * bufObj );extern void_mesa_buffer_get_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset,			  GLsizeiptrARB size, GLvoid * data,			  struct gl_buffer_object * bufObj );extern void *_mesa_buffer_map( GLcontext *ctx, GLenum target, GLenum access,		  struct gl_buffer_object * bufObj );extern GLboolean_mesa_buffer_unmap( GLcontext *ctx, GLenum target,                    struct gl_buffer_object * bufObj );extern GLboolean_mesa_validate_pbo_access(GLuint dimensions,                          const struct gl_pixelstore_attrib *pack,                          GLsizei width, GLsizei height, GLsizei depth,                          GLenum format, GLenum type, const GLvoid *ptr);extern const GLubyte *_mesa_map_bitmap_pbo(GLcontext *ctx,                     const struct gl_pixelstore_attrib *unpack,                     const GLubyte *bitmap);extern void_mesa_unmap_bitmap_pbo(GLcontext *ctx,                       const struct gl_pixelstore_attrib *unpack);extern const GLvoid *_mesa_map_drawpix_pbo(GLcontext *ctx,                      const struct gl_pixelstore_attrib *unpack,                      const GLvoid *pixels);extern void_mesa_unmap_drapix_pbo(GLcontext *ctx,                       const struct gl_pixelstore_attrib *unpack);extern void *_mesa_map_readpix_pbo(GLcontext *ctx,                      const struct gl_pixelstore_attrib *pack,                      GLvoid *dest);extern void_mesa_unmap_readpix_pbo(GLcontext *ctx,                        const struct gl_pixelstore_attrib *pack);/* * API functions */extern void GLAPIENTRY_mesa_BindBufferARB(GLenum target, GLuint buffer);extern void GLAPIENTRY_mesa_DeleteBuffersARB(GLsizei n, const GLuint * buffer);extern void GLAPIENTRY_mesa_GenBuffersARB(GLsizei n, GLuint * buffer);extern GLboolean GLAPIENTRY_mesa_IsBufferARB(GLuint buffer);extern void GLAPIENTRY_mesa_BufferDataARB(GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage);extern void GLAPIENTRY_mesa_BufferSubDataARB(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid * data);extern void GLAPIENTRY_mesa_GetBufferSubDataARB(GLenum target, GLintptrARB offset, GLsizeiptrARB size, void * data);extern void * GLAPIENTRY_mesa_MapBufferARB(GLenum target, GLenum access);extern GLboolean GLAPIENTRY_mesa_UnmapBufferARB(GLenum target);extern void GLAPIENTRY_mesa_GetBufferParameterivARB(GLenum target, GLenum pname, GLint *params);extern void GLAPIENTRY_mesa_GetBufferPointervARB(GLenum target, GLenum pname, GLvoid **params);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -