home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mesa5.zip / mesa5src.zip / feedback.h < prev    next >
C/C++ Source or Header  |  2001-03-11  |  2KB  |  78 lines

  1. /* $Id: feedback.h,v 1.7 2001/03/12 00:48:37 gareth Exp $ */
  2.  
  3. /*
  4.  * Mesa 3-D graphics library
  5.  * Version:  3.5
  6.  *
  7.  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
  8.  *
  9.  * Permission is hereby granted, free of charge, to any person obtaining a
  10.  * copy of this software and associated documentation files (the "Software"),
  11.  * to deal in the Software without restriction, including without limitation
  12.  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  13.  * and/or sell copies of the Software, and to permit persons to whom the
  14.  * Software is furnished to do so, subject to the following conditions:
  15.  *
  16.  * The above copyright notice and this permission notice shall be included
  17.  * in all copies or substantial portions of the Software.
  18.  *
  19.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  20.  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  21.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
  22.  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  23.  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  24.  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  25.  */
  26.  
  27.  
  28. #ifndef FEEDBACK_H
  29. #define FEEDBACK_H
  30.  
  31.  
  32. #include "mtypes.h"
  33.  
  34.  
  35. #define FEEDBACK_TOKEN( CTX, T )                \
  36.     if (CTX->Feedback.Count < CTX->Feedback.BufferSize) {    \
  37.        CTX->Feedback.Buffer[CTX->Feedback.Count] = (GLfloat) (T); \
  38.     }                            \
  39.     CTX->Feedback.Count++;
  40.  
  41.  
  42. extern void _mesa_feedback_vertex( GLcontext *ctx,
  43.                                 const GLfloat win[4],
  44.                                 const GLfloat color[4],
  45.                 GLuint index,
  46.                                 const GLfloat texcoord[4] );
  47.  
  48.  
  49. extern void _mesa_update_hitflag( GLcontext *ctx, GLfloat z );
  50.  
  51.  
  52. extern void
  53. _mesa_PassThrough( GLfloat token );
  54.  
  55. extern void
  56. _mesa_FeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer );
  57.  
  58. extern void
  59. _mesa_SelectBuffer( GLsizei size, GLuint *buffer );
  60.  
  61. extern void
  62. _mesa_InitNames( void );
  63.  
  64. extern void
  65. _mesa_LoadName( GLuint name );
  66.  
  67. extern void
  68. _mesa_PushName( GLuint name );
  69.  
  70. extern void
  71. _mesa_PopName( void );
  72.  
  73. extern GLint
  74. _mesa_RenderMode( GLenum mode );
  75.  
  76.  
  77. #endif
  78.