removed software alpha flag from GLvisual struct
authorBrian Paul <brian.paul@tungstengraphics.com>
Thu, 4 May 2000 13:53:55 +0000 (13:53 +0000)
committerBrian Paul <brian.paul@tungstengraphics.com>
Thu, 4 May 2000 13:53:55 +0000 (13:53 +0000)
src/mesa/main/buffers.c
src/mesa/main/context.c
src/mesa/main/context.h

index 834940129caa3845a0694045bd77d883be279890..086dc93451ba7e4d154784576ba8f00007c5d8f1 100644 (file)
@@ -1,4 +1,3 @@
-/* $Id: buffers.c,v 1.7 2000/04/22 01:03:22 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
@@ -240,6 +239,9 @@ void
 _mesa_Clear( GLbitfield mask )
 {
    GET_CURRENT_CONTEXT(ctx);
+#ifdef PROFILE
+   GLdouble t0 = gl_time();
+#endif
    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx, "glClear");
 
    if (MESA_VERBOSE & VERBOSE_API)
@@ -295,10 +297,16 @@ _mesa_Clear( GLbitfield mask )
       }
 
       /* clear software-based alpha buffer(s) */
-      if ( (mask & GL_COLOR_BUFFER_BIT) && ctx->Visual->SoftwareAlpha
+      if ( (mask & GL_COLOR_BUFFER_BIT)
+           && ctx->DrawBuffer->UseSoftwareAlphaBuffers
            && ctx->Color.ColorMask[RCOMP]) {
          _mesa_clear_alpha_buffers( ctx );
       }
+
+#ifdef PROFILE
+      ctx->ClearTime += gl_time() - t0;
+      ctx->ClearCount++;
+#endif
    }
 }
 
@@ -420,7 +428,7 @@ _mesa_DrawBuffer( GLenum mode )
    /*
     * Set current alpha buffer pointer
     */
-   if (ctx->Visual->SoftwareAlpha) {
+   if (ctx->DrawBuffer->UseSoftwareAlphaBuffers) {
       if (ctx->Color.DriverDrawBuffer == GL_FRONT_LEFT)
          ctx->DrawBuffer->Alpha = ctx->DrawBuffer->FrontLeftAlpha;
       else if (ctx->Color.DriverDrawBuffer == GL_BACK_LEFT)
@@ -550,7 +558,7 @@ _mesa_ResizeBuffersMESA( void )
    if (ctx->DrawBuffer->UseSoftwareAccumBuffer) {
       _mesa_alloc_accum_buffer( ctx );
    }
-   if (ctx->Visual->SoftwareAlpha) {
+   if (ctx->DrawBuffer->UseSoftwareAlphaBuffers) {
       _mesa_alloc_alpha_buffers( ctx );
    }
 }
index 9f31dac2014a14cc2d53c95929348b558a9b0e76..3533b822773709f4049c67750c4d5066b408d93d 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: context.c,v 1.61 2000/04/22 01:05:00 brianp Exp $ */
+/* $Id: context.c,v 1.62 2000/05/04 13:53:55 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
@@ -95,7 +95,6 @@ struct immediate *_mesa_CurrentInput = NULL;
 /*
  * Allocate a new GLvisual object.
  * Input:  rgbFlag - GL_TRUE=RGB(A) mode, GL_FALSE=Color Index mode
- *         alphaFlag - alloc software alpha buffers?
  *         dbFlag - double buffering?
  *         stereoFlag - stereo buffer?
  *         depthBits - requested bits per depth buffer value
@@ -112,7 +111,6 @@ struct immediate *_mesa_CurrentInput = NULL;
  */
 GLvisual *
 _mesa_create_visual( GLboolean rgbFlag,
-                     GLboolean alphaFlag,
                      GLboolean dbFlag,
                      GLboolean stereoFlag,
                      GLint redBits,
@@ -130,7 +128,7 @@ _mesa_create_visual( GLboolean rgbFlag,
 {
    GLvisual *vis = (GLvisual *) CALLOC( sizeof(GLvisual) );
    if (vis) {
-      if (!_mesa_initialize_visual(vis, rgbFlag, alphaFlag, dbFlag, stereoFlag,
+      if (!_mesa_initialize_visual(vis, rgbFlag, dbFlag, stereoFlag,
                                    redBits, greenBits, blueBits, alphaBits,
                                    indexBits, depthBits, stencilBits,
                                    accumRedBits, accumGreenBits,
@@ -153,7 +151,6 @@ _mesa_create_visual( GLboolean rgbFlag,
 GLboolean
 _mesa_initialize_visual( GLvisual *vis,
                          GLboolean rgbFlag,
-                         GLboolean alphaFlag,
                          GLboolean dbFlag,
                          GLboolean stereoFlag,
                          GLint redBits,
@@ -202,7 +199,7 @@ _mesa_initialize_visual( GLvisual *vis,
    vis->RedBits    = redBits;
    vis->GreenBits  = greenBits;
    vis->BlueBits   = blueBits;
-   vis->AlphaBits  = alphaFlag ? (8 * sizeof(GLubyte)) : alphaBits;
+   vis->AlphaBits  = alphaBits;
 
    vis->IndexBits      = indexBits;
    vis->DepthBits      = depthBits;
@@ -212,8 +209,6 @@ _mesa_initialize_visual( GLvisual *vis,
    vis->AccumAlphaBits = (accumAlphaBits > 0) ? (8 * sizeof(GLaccum)) : 0;
    vis->StencilBits    = (stencilBits > 0) ? (8 * sizeof(GLstencil)) : 0;
 
-   vis->SoftwareAlpha = alphaFlag;
-
    if (depthBits == 0) {
       /* Special case.  Even if we don't have a depth buffer we need
        * good values for DepthMax for Z vertex transformation purposes.
@@ -245,7 +240,8 @@ gl_create_visual( GLboolean rgbFlag,
                   GLint blueBits,
                   GLint alphaBits )
 {
-   return _mesa_create_visual(rgbFlag, alphaFlag, dbFlag, stereoFlag,
+   (void) alphaFlag;
+   return _mesa_create_visual(rgbFlag, dbFlag, stereoFlag,
                               redBits, greenBits, blueBits, alphaBits,
                               indexBits, depthBits, stencilBits,
                               accumBits, accumBits, accumBits, accumBits, 0);
index ce8be2e0f2045ec170c9eb461ac1d02b33809a42..581931153ce96bf51ec13bb710dbf9026f81d6fd 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: context.h,v 1.16 2000/04/22 01:05:00 brianp Exp $ */
+/* $Id: context.h,v 1.17 2000/05/04 13:53:55 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
@@ -59,7 +59,6 @@
  */
 extern GLvisual *
 _mesa_create_visual( GLboolean rgbFlag,
-                     GLboolean alphaFlag,
                      GLboolean dbFlag,
                      GLboolean stereoFlag,
                      GLint redBits,
@@ -78,7 +77,6 @@ _mesa_create_visual( GLboolean rgbFlag,
 extern GLboolean
 _mesa_initialize_visual( GLvisual *v,
                          GLboolean rgbFlag,
-                         GLboolean alphaFlag,
                          GLboolean dbFlag,
                          GLboolean stereoFlag,
                          GLint redBits,