gallium: don't use enum bitfields in p_video_state.h
authorBrian Paul <brianp@vmware.com>
Thu, 14 Jul 2011 14:09:21 +0000 (08:09 -0600)
committerBrian Paul <brianp@vmware.com>
Thu, 14 Jul 2011 14:14:14 +0000 (08:14 -0600)
Silences many warnings about "type of bit-field â€˜field_select’ is a
GCC extension".

Since the field sizes were 8 and 16 bits, just use basic types.

src/gallium/include/pipe/p_video_state.h

index 4d8a241..2a64ffb 100644 (file)
@@ -85,18 +85,18 @@ enum pipe_video_mv_weight
 struct pipe_motionvector
 {
    struct {
-      signed x:16, y:16;
-      enum pipe_video_field_select field_select:16;
-      enum pipe_video_mv_weight weight:16;
+      short x, y;
+      ushort field_select; /**< enum pipe_video_field_select */
+      ushort weight;  /**< enum pipe_video_mv_weight  */
    } top, bottom;
 };
 
 /* bitfields because this is used as a vertex buffer element */
 struct pipe_ycbcr_block
 {
-   unsigned x:8, y:8;
-   enum pipe_mpeg12_dct_intra intra:8;
-   enum pipe_mpeg12_dct_type coding:8;
+   ubyte x, y;
+   ubyte intra;  /**< enum pipe_mpeg12_dct_intra */
+   ubyte coding; /**< enum pipe_mpeg12_dct_type */
 };
 
 struct pipe_picture_desc