Header file clean-up:
[mesa.git] / src / mesa / tnl / t_imm_dlist.c
index e7668cb2927e28cb8cc0d5f8d9668f28636fcd59..34da0ea448a0df512ec73a197cbdfc6973dc191a 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: t_imm_dlist.c,v 1.35 2002/01/05 20:51:13 brianp Exp $ */
+/* $Id: t_imm_dlist.c,v 1.43 2002/10/24 23:57:25 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
 
 
 #include "glheader.h"
-#include "api_compat.h"
 #include "context.h"
 #include "dlist.h"
 #include "debug.h"
 #include "mmath.h"
-#include "mem.h"
+#include "imports.h"
 #include "state.h"
 
 #include "t_context.h"
@@ -77,7 +76,7 @@ static void build_normal_lengths( struct immediate *IM )
    GLuint count = IM->Count - IM->Start;
 
    if (!dest) {
-      dest = IM->NormalLengthPtr = ALIGN_MALLOC( IMM_SIZE*sizeof(GLfloat), 32 );
+      dest = IM->NormalLengthPtr = (GLfloat *) ALIGN_MALLOC( IMM_SIZE*sizeof(GLfloat), 32 );
       if (!dest) return;
    }
    dest += IM->Start;
@@ -87,7 +86,7 @@ static void build_normal_lengths( struct immediate *IM )
    
    for (i = 0 ; i < count ; ) {
       dest[i] = len;
-      if (flags[++i] & VERT_NORMAL_BIT) {
+      if (flags[++i] & VERT_BIT_NORMAL) {
         len = (GLfloat) LEN_3FV( data[i] );
         if (len > 0.0F) len = 1.0F / len;
       }
@@ -109,7 +108,7 @@ static void fixup_normal_lengths( struct immediate *IM )
    } 
 
    if (i < IM->Count) {
-      while (!(flags[i] & (VERT_NORMAL_BIT|VERT_END_VB))) {
+      while (!(flags[i] & (VERT_BIT_NORMAL|VERT_BIT_END_VB))) {
         dest[i] = len;
         i++;
       }
@@ -129,6 +128,9 @@ _tnl_compile_cassette( GLcontext *ctx, struct immediate *IM )
    TNLvertexcassette *node;
    GLuint new_beginstate;
 
+   if (MESA_VERBOSE & VERBOSE_DISPLAY_LIST)
+      _mesa_debug(ctx, "_tnl_compiled_cassette IM: %d\n", IM->id); 
+
    if (IM->FlushElt) {
       ASSERT (IM->FlushElt == FLUSH_ELT_LAZY); 
       _tnl_translate_array_elts( ctx, IM, IM->Start, IM->Count );
@@ -140,8 +142,8 @@ _tnl_compile_cassette( GLcontext *ctx, struct immediate *IM )
     * array-elements have been translated away by now, so it's ok to
     * remove it.)
     */
-   IM->OrFlag &= ~VERT_ELT;    
-   IM->AndFlag &= ~VERT_ELT;   
+   IM->OrFlag &= ~VERT_BIT_ELT;        
+   IM->AndFlag &= ~VERT_BIT_ELT;       
 
    _tnl_fixup_input( ctx, IM );
 
@@ -223,17 +225,17 @@ static void fixup_compiled_primitives( GLcontext *ctx, struct immediate *IM )
         _mesa_error( ctx, GL_INVALID_OPERATION, "glBegin/glEnd");
 
       for (i = IM->Start ; i <= IM->Count ; i += IM->PrimitiveLength[i])
-        if (IM->Flag[i] & (VERT_BEGIN|VERT_END_VB))
+        if (IM->Flag[i] & (VERT_BIT_BEGIN|VERT_BIT_END_VB))
            break;
 
       /* Would like to just ignore vertices upto this point.  Can't
        * set copystart because it might skip materials?
        */
       ASSERT(IM->Start == IM->CopyStart);
-      if (i > IM->CopyStart || !(IM->Flag[IM->Start] & VERT_BEGIN)) {
+      if (i > IM->CopyStart || !(IM->Flag[IM->Start] & VERT_BIT_BEGIN)) {
         IM->Primitive[IM->CopyStart] = GL_POLYGON+1;
         IM->PrimitiveLength[IM->CopyStart] = i - IM->CopyStart;
-        if (IM->Flag[i] & VERT_END_VB) {
+        if (IM->Flag[i] & VERT_BIT_END_VB) {
            IM->Primitive[IM->CopyStart] |= PRIM_LAST;
            IM->LastPrimitive = IM->CopyStart;
         }
@@ -245,7 +247,7 @@ static void fixup_compiled_primitives( GLcontext *ctx, struct immediate *IM )
         _mesa_error( ctx, GL_INVALID_OPERATION, "glBegin/glEnd");
 
       if (IM->CopyStart == IM->Start &&
-         IM->Flag[IM->Start] & (VERT_END|VERT_END_VB))
+         IM->Flag[IM->Start] & (VERT_BIT_END | VERT_BIT_END_VB))
       {
       }
       else
@@ -257,16 +259,16 @@ static void fixup_compiled_primitives( GLcontext *ctx, struct immediate *IM )
          /* one of these should be true, else we'll be in an infinite loop 
          */
          ASSERT(IM->PrimitiveLength[IM->Start] > 0 ||
-                IM->Flag[IM->Start] & (VERT_END|VERT_END_VB));
+                IM->Flag[IM->Start] & (VERT_BIT_END | VERT_BIT_END_VB));
 
         for (i = IM->Start ; i <= IM->Count ; i += IM->PrimitiveLength[i])
-           if (IM->Flag[i] & (VERT_END|VERT_END_VB)) {
+           if (IM->Flag[i] & (VERT_BIT_END | VERT_BIT_END_VB)) {
               IM->PrimitiveLength[IM->CopyStart] = i - IM->CopyStart;
-              if (IM->Flag[i] & VERT_END_VB) {
+              if (IM->Flag[i] & VERT_BIT_END_VB) {
                  IM->Primitive[IM->CopyStart] |= PRIM_LAST;
                  IM->LastPrimitive = IM->CopyStart;
               }
-              if (IM->Flag[i] & VERT_END) {
+              if (IM->Flag[i] & VERT_BIT_END) {
                  IM->Primitive[IM->CopyStart] |= PRIM_END;
               }
               break;
@@ -294,7 +296,7 @@ execute_compiled_cassette( GLcontext *ctx, void *data )
    TNLvertexcassette *node = (TNLvertexcassette *)data;
    struct immediate *IM = node->IM;
 
-/*     fprintf(stderr, "%s\n", __FUNCTION__); */
+/*     _mesa_debug("%s\n", __FUNCTION__); */
 
    IM->Start = node->Start;
    IM->CopyStart = node->Start;
@@ -315,9 +317,8 @@ execute_compiled_cassette( GLcontext *ctx, void *data )
       _tnl_print_cassette( IM );
 
    if (MESA_VERBOSE & VERBOSE_DISPLAY_LIST) {
-      fprintf(stderr, "Run cassette %d, rows %d..%d, beginstate %x ",
-             IM->id,
-             IM->Start, IM->Count, IM->BeginState);
+      _mesa_debug(ctx, "Run cassette %d, rows %d..%d, beginstate %x ",
+                  IM->id, IM->Start, IM->Count, IM->BeginState);
       _tnl_print_vert_flags("orflag", IM->OrFlag);
    }
 
@@ -340,6 +341,7 @@ execute_compiled_cassette( GLcontext *ctx, void *data )
    }
 
    if (tnl->LoopbackDListCassettes) {
+/*        (tnl->IsolateMaterials && (IM->OrFlag & VERT_MATERIAL)) ) { */
       fixup_compiled_primitives( ctx, IM );
       loopback_compiled_cassette( ctx, IM );
       restore_compiled_primitives( ctx, IM );
@@ -388,7 +390,7 @@ destroy_compiled_cassette( GLcontext *ctx, void *data )
    TNLvertexcassette *node = (TNLvertexcassette *)data;
 
    if ( --node->IM->ref_count == 0 )
-      _tnl_free_immediate( node->IM );
+      _tnl_free_immediate( ctx, node->IM );
 }
 
 
@@ -398,8 +400,8 @@ print_compiled_cassette( GLcontext *ctx, void *data )
    TNLvertexcassette *node = (TNLvertexcassette *)data;
    struct immediate *IM = node->IM;
 
-   fprintf(stderr, "TNL-VERTEX-CASSETTE, id %u, rows %u..%u\n",
-          node->IM->id, node->Start, node->Count);
+   _mesa_debug(ctx, "TNL-VERTEX-CASSETTE, id %u, rows %u..%u\n",
+               node->IM->id, node->Start, node->Count);
 
    IM->Start = node->Start;
    IM->CopyStart = node->Start;
@@ -571,14 +573,14 @@ static void loopback_compiled_cassette( GLcontext *ctx, struct immediate *IM )
    GLuint maxtex = 0;
    GLuint p, length, prim = 0;
    
-   if (orflag & VERT_OBJ_234)
+   if (orflag & VERT_BITS_OBJ_234)
       vertex = (void (GLAPIENTRY *)(const GLfloat *)) glVertex4fv;
    else
       vertex = (void (GLAPIENTRY *)(const GLfloat *)) glVertex3fv;
    
-   if (orflag & VERT_TEX_ANY) {
+   if (orflag & VERT_BITS_TEX_ANY) {
       for (j = 0 ; j < ctx->Const.MaxTextureUnits ; j++) {
-        if (orflag & VERT_TEX(j)) {
+        if (orflag & VERT_BIT_TEX(j)) {
            maxtex = j+1;
            if ((IM->TexSize & TEX_SIZE_4(j)) == TEX_SIZE_4(j))
               texcoordfv[j] = glMultiTexCoord4fvARB;
@@ -602,47 +604,47 @@ static void loopback_compiled_cassette( GLcontext *ctx, struct immediate *IM )
       }
 
       for ( i = p ; i <= p+length ; i++) {
-        if (flags[i] & VERT_TEX_ANY) {
+        if (flags[i] & VERT_BITS_TEX_ANY) {
            GLuint k;
            for (k = 0 ; k < maxtex ; k++) {
-              if (flags[i] & VERT_TEX(k)) {
+              if (flags[i] & VERT_BIT_TEX(k)) {
                  texcoordfv[k]( GL_TEXTURE0_ARB + k,
                                  IM->Attrib[VERT_ATTRIB_TEX0 + k][i] );
               }
            }
         }
 
-        if (flags[i] & VERT_NORMAL_BIT
+        if (flags[i] & VERT_BIT_NORMAL
            glNormal3fv(IM->Attrib[VERT_ATTRIB_NORMAL][i]);
 
-        if (flags[i] & VERT_COLOR0_BIT
+        if (flags[i] & VERT_BIT_COLOR0
            glColor4fv( IM->Attrib[VERT_ATTRIB_COLOR0][i] );
 
-        if (flags[i] & VERT_COLOR1_BIT)
-           _compat_SecondaryColor3fvEXT( IM->Attrib[VERT_ATTRIB_COLOR1][i] );
+        if (flags[i] & VERT_BIT_COLOR1)
+           _glapi_Dispatch->SecondaryColor3fvEXT( IM->Attrib[VERT_ATTRIB_COLOR1][i] );
 
-        if (flags[i] & VERT_FOG_BIT)
-           _compat_FogCoordfEXT( IM->Attrib[VERT_ATTRIB_FOG][i][0] );
+        if (flags[i] & VERT_BIT_FOG)
+           _glapi_Dispatch->FogCoordfEXT( IM->Attrib[VERT_ATTRIB_FOG][i][0] );
 
-        if (flags[i] & VERT_INDEX_BIT)
+        if (flags[i] & VERT_BIT_INDEX)
            glIndexi( IM->Index[i] );
 
-        if (flags[i] & VERT_EDGEFLAG_BIT)
+        if (flags[i] & VERT_BIT_EDGEFLAG)
            glEdgeFlag( IM->EdgeFlag[i] );
 
-        if (flags[i] & VERT_MATERIAL) 
+        if (flags[i] & VERT_BIT_MATERIAL) 
            emit_material( IM->Material[i], IM->MaterialMask[i] );
 
-        if (flags[i]&VERT_OBJ_234) 
+        if (flags[i]&VERT_BITS_OBJ_234) 
            vertex( IM->Attrib[VERT_ATTRIB_POS][i] );
-        else if (flags[i] & VERT_EVAL_C1)
+        else if (flags[i] & VERT_BIT_EVAL_C1)
            glEvalCoord1f( IM->Attrib[VERT_ATTRIB_POS][i][0] );
-        else if (flags[i] & VERT_EVAL_P1)
+        else if (flags[i] & VERT_BIT_EVAL_P1)
            glEvalPoint1( (GLint) IM->Attrib[VERT_ATTRIB_POS][i][0] );
-        else if (flags[i] & VERT_EVAL_C2)
+        else if (flags[i] & VERT_BIT_EVAL_C2)
            glEvalCoord2f( IM->Attrib[VERT_ATTRIB_POS][i][0],
                            IM->Attrib[VERT_ATTRIB_POS][i][1] );
-        else if (flags[i] & VERT_EVAL_P2)
+        else if (flags[i] & VERT_BIT_EVAL_P2)
            glEvalPoint2( (GLint) IM->Attrib[VERT_ATTRIB_POS][i][0],
                           (GLint) IM->Attrib[VERT_ATTRIB_POS][i][1] );
       }