mesa: add new gl_renderbuffer fields
authorBrian Paul <brianp@vmware.com>
Mon, 16 Jan 2012 17:55:15 +0000 (10:55 -0700)
committerBrian Paul <brianp@vmware.com>
Tue, 24 Jan 2012 21:12:12 +0000 (14:12 -0700)
These are temporary, actually, but they'll make follow-on work easier to
implement in a step-by-step manner.  Eventually the Map and RowStrideBytes
fields will go into a new swrast_renderbuffer type, but adding that type
now would involve touching a _lot_ of code that'll eventually be removed.

The fields marked as obsolete will go away completely at some point.

src/mesa/main/mtypes.h

index e8a9d42704332401256855099423119fe667fd37..f69279a3c5300600f67d61050605c8cee6e299da 100644 (file)
@@ -2547,7 +2547,6 @@ struct gl_renderbuffer
    GLuint Name;
    GLint RefCount;
    GLuint Width, Height;
-   GLint RowStride;       /**< Padded width in units of pixels */
    GLboolean Purgeable;   /**< Is the buffer purgeable under memory pressure? */
 
    GLboolean AttachedAnytime; /**< TRUE if it was attached to a framebuffer */
@@ -2559,9 +2558,15 @@ struct gl_renderbuffer
                                GL_STENCIL_INDEX. */
    gl_format Format;      /**< The actual renderbuffer memory format */
 
+   /* XXX the following 3 fields are obsolete and wil go away */
+   GLint RowStride;       /**< Padded width in units of pixels */
    GLenum DataType;      /**< Type of values passed to the Get/Put functions */
    GLvoid *Data;        /**< This may not be used by some kinds of RBs */
 
+   /** The following fields are only valid while the buffer is mapped */
+   GLubyte *Map;
+   GLint RowStrideBytes;
+
    /* Used to wrap one renderbuffer around another: */
    struct gl_renderbuffer *Wrapped;