pull-in changes from DRI/Mesa-4.0.4
[mesa.git] / src / mesa / swrast_setup / ss_context.h
index 61da9231057e18962cf8dc2483dd8825ee40ec02..3174c95de12af33ab1225e7fa137e06fbced86da 100644 (file)
@@ -1,19 +1,20 @@
+
 /*
  * Mesa 3-D graphics library
  * Version:  3.5
- * 
- * Copyright (C) 1999  Brian Paul   All Rights Reserved.
- * 
+ *
+ * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+ *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
  * to deal in the Software without restriction, including without limitation
  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  * and/or sell copies of the Software, and to permit persons to whom the
  * Software is furnished to do so, subject to the following conditions:
- * 
+ *
  * The above copyright notice and this permission notice shall be included
  * in all copies or substantial portions of the Software.
- * 
+ *
  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 #ifndef SS_CONTEXT_H
 #define SS_CONTEXT_H
 
-#include "types.h"
+#include "mtypes.h"
 #include "swrast/swrast.h"
 #include "swrast_setup.h"
 
 typedef struct {
    GLuint NewState;
-   GLuint StateChanges;
+   SWvertex *verts;
+   GLenum render_prim;
+   GLuint SetupIndex;
 
-   /* Function hooks, trigger lazy state updates.
+   /* Temporaries for translating away float colors:
     */
-   void (*InvalidateState)( GLcontext *ctx, GLuint new_state );
-
-   void (*RasterSetup)( struct vertex_buffer *VB, GLuint start, GLuint end );
-
-   void (*Quad)( GLcontext *ctx, GLuint v0, GLuint v1, 
-                GLuint v2, GLuint v3, GLuint pv );
-
-   void (*Triangle)( GLcontext *ctx, GLuint v0, GLuint v1, 
-                    GLuint v2, GLuint pv );
-
-   void (*Line)( GLcontext *ctx, GLuint v0, GLuint v1, GLuint pv );
-
-   void (*Points)( GLcontext *ctx, GLuint first, GLuint last );
-
+   struct gl_client_array ChanColor;
+   struct gl_client_array ChanSecondaryColor;
 } SScontext;
 
-typedef struct {
-
-   SWvertex *verts;
-
-} SSvertexbuffer;
-
-
 #define SWSETUP_CONTEXT(ctx) ((SScontext *)ctx->swsetup_context)
-#define SWSETUP_VB(VB) ((SSvertexbuffer *)VB->swsetup_vb)
-
 
 #endif