ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

prog_execute.h
Go to the documentation of this file.
00001 /*
00002  * Mesa 3-D graphics library
00003  * Version:  7.0.3
00004  *
00005  * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
00006  *
00007  * Permission is hereby granted, free of charge, to any person obtaining a
00008  * copy of this software and associated documentation files (the "Software"),
00009  * to deal in the Software without restriction, including without limitation
00010  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
00011  * and/or sell copies of the Software, and to permit persons to whom the
00012  * Software is furnished to do so, subject to the following conditions:
00013  *
00014  * The above copyright notice and this permission notice shall be included
00015  * in all copies or substantial portions of the Software.
00016  *
00017  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
00018  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00019  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
00020  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
00021  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
00022  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00023  */
00024 
00025 #ifndef PROG_EXECUTE_H
00026 #define PROG_EXECUTE_H
00027 
00028 #include "main/config.h"
00029 
00030 
00031 typedef void (*FetchTexelLodFunc)(GLcontext *ctx, const GLfloat texcoord[4],
00032                                   GLfloat lambda, GLuint unit, GLfloat color[4]);
00033 
00034 typedef void (*FetchTexelDerivFunc)(GLcontext *ctx, const GLfloat texcoord[4],
00035                                     const GLfloat texdx[4],
00036                                     const GLfloat texdy[4],
00037                                     GLfloat lodBias,
00038                                     GLuint unit, GLfloat color[4]);
00039 
00040 
00044 struct gl_program_machine
00045 {
00046    const struct gl_program *CurProgram;
00047 
00049    GLfloat (*Attribs)[MAX_WIDTH][4];
00050    GLfloat (*DerivX)[4];
00051    GLfloat (*DerivY)[4];
00052    GLuint NumDeriv; 
00053    GLuint CurElement; 
00056    GLfloat VertAttribs[VERT_ATTRIB_MAX][4];
00057 
00058    GLfloat Temporaries[MAX_PROGRAM_TEMPS][4];
00059    GLfloat Outputs[MAX_PROGRAM_OUTPUTS][4];
00060    GLfloat (*EnvParams)[4]; 
00061    GLuint CondCodes[4];  
00062    GLint AddressReg[MAX_PROGRAM_ADDRESS_REGS][4];
00063 
00064    const GLubyte *Samplers;  
00066    GLuint CallStack[MAX_PROGRAM_CALL_DEPTH]; 
00067    GLuint StackDepth; 
00070    FetchTexelLodFunc FetchTexelLod;
00071    FetchTexelDerivFunc FetchTexelDeriv;
00072 };
00073 
00074 
00075 extern void
00076 _mesa_get_program_register(GLcontext *ctx, enum register_file file,
00077                            GLuint index, GLfloat val[4]);
00078 
00079 extern GLboolean
00080 _mesa_execute_program(GLcontext *ctx,
00081                       const struct gl_program *program,
00082                       struct gl_program_machine *machine);
00083 
00084 
00085 #endif /* PROG_EXECUTE_H */

Generated on Sun May 27 2012 04:20:34 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.