comparison dvdread/ifo_types.h @ 350:950749fdce4a src

read_multichannel_ext() uses getbits() instead of relying on endianness-specific bitfields
author nicodvb
date Sat, 03 May 2008 08:04:34 +0000
parents 8a711d89e294
children 0dae99f22e60
comparison
equal deleted inserted replaced
349:8a711d89e294 350:950749fdce4a
126 126
127 /** 127 /**
128 * MultiChannel Extension 128 * MultiChannel Extension
129 */ 129 */
130 typedef struct { 130 typedef struct {
131 #ifdef WORDS_BIGENDIAN
132 unsigned int zero1 : 7; 131 unsigned int zero1 : 7;
133 unsigned int ach0_gme : 1; 132 unsigned int ach0_gme : 1;
134 133
135 unsigned int zero2 : 7; 134 unsigned int zero2 : 7;
136 unsigned int ach1_gme : 1; 135 unsigned int ach1_gme : 1;
150 unsigned int zero5 : 4; 149 unsigned int zero5 : 4;
151 unsigned int ach4_gv1e : 1; 150 unsigned int ach4_gv1e : 1;
152 unsigned int ach4_gv2e : 1; 151 unsigned int ach4_gv2e : 1;
153 unsigned int ach4_gmBe : 1; 152 unsigned int ach4_gmBe : 1;
154 unsigned int ach4_seBe : 1; 153 unsigned int ach4_seBe : 1;
155 #else
156 unsigned char ach0_gme : 1;
157 unsigned char zero1 : 7;
158
159 unsigned char ach1_gme : 1;
160 unsigned char zero2 : 7;
161
162 unsigned char ach2_gm2e : 1;
163 unsigned char ach2_gm1e : 1;
164 unsigned char ach2_gv2e : 1;
165 unsigned char ach2_gv1e : 1;
166 unsigned char zero3 : 4;
167
168 unsigned char ach3_se2e : 1;
169 unsigned char ach3_gmAe : 1;
170 unsigned char ach3_gv2e : 1;
171 unsigned char ach3_gv1e : 1;
172 unsigned char zero4 : 4;
173
174 unsigned char ach4_seBe : 1;
175 unsigned char ach4_gmBe : 1;
176 unsigned char ach4_gv2e : 1;
177 unsigned char ach4_gv1e : 1;
178 unsigned char zero5 : 4;
179 #endif
180 uint8_t zero6[19]; 154 uint8_t zero6[19];
181 } ATTRIBUTE_PACKED multichannel_ext_t; 155 } ATTRIBUTE_PACKED multichannel_ext_t;
182 156
183 157
184 /** 158 /**