Home | History | Annotate | Download | only in main
      1 /*
      2  * Mesa 3-D graphics library
      3  * Version:  5.1
      4  *
      5  * Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
      6  *
      7  * Permission is hereby granted, free of charge, to any person obtaining a
      8  * copy of this software and associated documentation files (the "Software"),
      9  * to deal in the Software without restriction, including without limitation
     10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
     11  * and/or sell copies of the Software, and to permit persons to whom the
     12  * Software is furnished to do so, subject to the following conditions:
     13  *
     14  * The above copyright notice and this permission notice shall be included
     15  * in all copies or substantial portions of the Software.
     16  *
     17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
     18  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     20  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
     21  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
     22  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
     23  *
     24  * Authors:
     25  *    Brian Paul
     26  */
     27 
     28 
     29 #ifndef NVPROGRAM_H
     30 #define NVPROGRAM_H
     31 
     32 #include "glheader.h"
     33 
     34 struct gl_context;
     35 struct gl_program;
     36 
     37 extern void GLAPIENTRY
     38 _mesa_ExecuteProgramNV(GLenum target, GLuint id, const GLfloat *params);
     39 
     40 extern GLboolean GLAPIENTRY
     41 _mesa_AreProgramsResidentNV(GLsizei n, const GLuint *ids, GLboolean *residences);
     42 
     43 extern void GLAPIENTRY
     44 _mesa_RequestResidentProgramsNV(GLsizei n, const GLuint *ids);
     45 
     46 extern void GLAPIENTRY
     47 _mesa_GetProgramParameterfvNV(GLenum target, GLuint index, GLenum pname, GLfloat *params);
     48 
     49 extern void GLAPIENTRY
     50 _mesa_GetProgramParameterdvNV(GLenum target, GLuint index, GLenum pname, GLdouble *params);
     51 
     52 extern void GLAPIENTRY
     53 _mesa_GetProgramivNV(GLuint id, GLenum pname, GLint *params);
     54 
     55 extern void GLAPIENTRY
     56 _mesa_GetProgramStringNV(GLuint id, GLenum pname, GLubyte *program);
     57 
     58 extern void GLAPIENTRY
     59 _mesa_GetTrackMatrixivNV(GLenum target, GLuint address, GLenum pname, GLint *params);
     60 
     61 extern void GLAPIENTRY
     62 _mesa_GetVertexAttribdvNV(GLuint index, GLenum pname, GLdouble *params);
     63 
     64 extern void GLAPIENTRY
     65 _mesa_GetVertexAttribfvNV(GLuint index, GLenum pname, GLfloat *params);
     66 
     67 extern void GLAPIENTRY
     68 _mesa_GetVertexAttribivNV(GLuint index, GLenum pname, GLint *params);
     69 
     70 extern void GLAPIENTRY
     71 _mesa_GetVertexAttribPointervNV(GLuint index, GLenum pname, GLvoid **pointer);
     72 
     73 extern void GLAPIENTRY
     74 _mesa_LoadProgramNV(GLenum target, GLuint id, GLsizei len, const GLubyte *program);
     75 
     76 extern void GLAPIENTRY
     77 _mesa_ProgramParameters4dvNV(GLenum target, GLuint index, GLsizei num,
     78                              const GLdouble *params);
     79 
     80 extern void GLAPIENTRY
     81 _mesa_ProgramParameters4fvNV(GLenum target, GLuint index, GLsizei num,
     82                              const GLfloat *params);
     83 
     84 extern void GLAPIENTRY
     85 _mesa_TrackMatrixNV(GLenum target, GLuint address, GLenum matrix, GLenum transform);
     86 
     87 
     88 extern void GLAPIENTRY
     89 _mesa_ProgramNamedParameter4fNV(GLuint id, GLsizei len, const GLubyte *name,
     90                                 GLfloat x, GLfloat y, GLfloat z, GLfloat w);
     91 
     92 extern void GLAPIENTRY
     93 _mesa_ProgramNamedParameter4fvNV(GLuint id, GLsizei len, const GLubyte *name,
     94                                  const float v[]);
     95 
     96 extern void GLAPIENTRY
     97 _mesa_ProgramNamedParameter4dNV(GLuint id, GLsizei len, const GLubyte *name,
     98                                 GLdouble x, GLdouble y, GLdouble z, GLdouble w);
     99 
    100 extern void GLAPIENTRY
    101 _mesa_ProgramNamedParameter4dvNV(GLuint id, GLsizei len, const GLubyte *name,
    102                                  const double v[]);
    103 
    104 extern void GLAPIENTRY
    105 _mesa_GetProgramNamedParameterfvNV(GLuint id, GLsizei len, const GLubyte *name,
    106                                    GLfloat *params);
    107 
    108 extern void GLAPIENTRY
    109 _mesa_GetProgramNamedParameterdvNV(GLuint id, GLsizei len, const GLubyte *name,
    110                                    GLdouble *params);
    111 
    112 extern void
    113 _mesa_setup_nv_temporary_count(struct gl_program *program);
    114 
    115 extern void
    116 _mesa_emit_nv_temp_initialization(struct gl_context *ctx,
    117 				  struct gl_program *program);
    118 
    119 #endif
    120