feedback.h revision 14940c4ffe066a8b85bc14274c19ad3d8e334d61
1/* $Id: feedback.h,v 1.4 2000/11/05 18:40:58 keithw Exp $ */ 2 3/* 4 * Mesa 3-D graphics library 5 * Version: 3.3 6 * 7 * Copyright (C) 1999 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 "types.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 42extern void gl_feedback_vertex( GLcontext *ctx, 43 const GLfloat win[4], 44 const GLfloat color[4], 45 GLuint index, 46 const GLfloat texcoord[4] ); 47 48 49extern void gl_update_hitflag( GLcontext *ctx, GLfloat z ); 50 51 52extern void 53_mesa_PassThrough( GLfloat token ); 54 55extern void 56_mesa_FeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); 57 58extern void 59_mesa_SelectBuffer( GLsizei size, GLuint *buffer ); 60 61extern void 62_mesa_InitNames( void ); 63 64extern void 65_mesa_LoadName( GLuint name ); 66 67extern void 68_mesa_PushName( GLuint name ); 69 70extern void 71_mesa_PopName( void ); 72 73extern GLint 74_mesa_RenderMode( GLenum mode ); 75 76 77#endif 78 79