nvidia_video_codec_sdk/sys/linux_sys/
cuviddec.rs

1use cudarc::driver::sys::*;
2/* automatically generated by rust-bindgen 0.65.1 */
3
4pub type CUvideodecoder = *mut ::core::ffi::c_void;
5pub type CUvideoctxlock = *mut _CUcontextlock_st;
6pub type CUVIDDECODECAPS = _CUVIDDECODECAPS;
7pub type CUVIDDECODECREATEINFO = _CUVIDDECODECREATEINFO;
8pub type CUVIDH264DPBENTRY = _CUVIDH264DPBENTRY;
9pub type CUVIDH264MVCEXT = _CUVIDH264MVCEXT;
10pub type CUVIDH264SVCEXT = _CUVIDH264SVCEXT;
11pub type CUVIDH264PICPARAMS = _CUVIDH264PICPARAMS;
12pub type CUVIDMPEG2PICPARAMS = _CUVIDMPEG2PICPARAMS;
13pub type CUVIDMPEG4PICPARAMS = _CUVIDMPEG4PICPARAMS;
14pub type CUVIDVC1PICPARAMS = _CUVIDVC1PICPARAMS;
15pub type CUVIDJPEGPICPARAMS = _CUVIDJPEGPICPARAMS;
16pub type CUVIDHEVCPICPARAMS = _CUVIDHEVCPICPARAMS;
17pub type CUVIDVP8PICPARAMS = _CUVIDVP8PICPARAMS;
18pub type CUVIDVP9PICPARAMS = _CUVIDVP9PICPARAMS;
19pub type CUVIDAV1PICPARAMS = _CUVIDAV1PICPARAMS;
20pub type CUVIDPICPARAMS = _CUVIDPICPARAMS;
21pub type CUVIDPROCPARAMS = _CUVIDPROCPARAMS;
22pub type CUVIDGETDECODESTATUS = _CUVIDGETDECODESTATUS;
23pub type CUVIDRECONFIGUREDECODERINFO = _CUVIDRECONFIGUREDECODERINFO;
24#[repr(C)]
25#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
26pub struct __BindgenBitfieldUnit<Storage> {
27    storage: Storage,
28}
29#[repr(C)]
30#[derive(Debug, Copy, Clone)]
31pub struct _CUcontextlock_st {
32    _unused: [u8; 0],
33}
34#[repr(C)]
35#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
36pub struct _CUVIDDECODECAPS {
37    pub eCodecType: cudaVideoCodec,
38    pub eChromaFormat: cudaVideoChromaFormat,
39    pub nBitDepthMinus8: ::core::ffi::c_uint,
40    pub reserved1: [::core::ffi::c_uint; 3usize],
41    pub bIsSupported: ::core::ffi::c_uchar,
42    pub nNumNVDECs: ::core::ffi::c_uchar,
43    pub nOutputFormatMask: ::core::ffi::c_ushort,
44    pub nMaxWidth: ::core::ffi::c_uint,
45    pub nMaxHeight: ::core::ffi::c_uint,
46    pub nMaxMBCount: ::core::ffi::c_uint,
47    pub nMinWidth: ::core::ffi::c_ushort,
48    pub nMinHeight: ::core::ffi::c_ushort,
49    pub bIsHistogramSupported: ::core::ffi::c_uchar,
50    pub nCounterBitDepth: ::core::ffi::c_uchar,
51    pub nMaxHistogramBins: ::core::ffi::c_ushort,
52    pub reserved3: [::core::ffi::c_uint; 10usize],
53}
54#[repr(C)]
55#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
56pub struct _CUVIDDECODECREATEINFO {
57    pub ulWidth: ::core::ffi::c_ulong,
58    pub ulHeight: ::core::ffi::c_ulong,
59    pub ulNumDecodeSurfaces: ::core::ffi::c_ulong,
60    pub CodecType: cudaVideoCodec,
61    pub ChromaFormat: cudaVideoChromaFormat,
62    pub ulCreationFlags: ::core::ffi::c_ulong,
63    pub bitDepthMinus8: ::core::ffi::c_ulong,
64    pub ulIntraDecodeOnly: ::core::ffi::c_ulong,
65    pub ulMaxWidth: ::core::ffi::c_ulong,
66    pub ulMaxHeight: ::core::ffi::c_ulong,
67    pub Reserved1: ::core::ffi::c_ulong,
68    pub display_area: _CUVIDDECODECREATEINFO__bindgen_ty_1,
69    pub OutputFormat: cudaVideoSurfaceFormat,
70    pub DeinterlaceMode: cudaVideoDeinterlaceMode,
71    pub ulTargetWidth: ::core::ffi::c_ulong,
72    pub ulTargetHeight: ::core::ffi::c_ulong,
73    pub ulNumOutputSurfaces: ::core::ffi::c_ulong,
74    pub vidLock: CUvideoctxlock,
75    pub target_rect: _CUVIDDECODECREATEINFO__bindgen_ty_2,
76    pub enableHistogram: ::core::ffi::c_ulong,
77    pub Reserved2: [::core::ffi::c_ulong; 4usize],
78}
79#[repr(C)]
80#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
81pub struct _CUVIDDECODECREATEINFO__bindgen_ty_1 {
82    pub left: ::core::ffi::c_short,
83    pub top: ::core::ffi::c_short,
84    pub right: ::core::ffi::c_short,
85    pub bottom: ::core::ffi::c_short,
86}
87#[repr(C)]
88#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
89pub struct _CUVIDDECODECREATEINFO__bindgen_ty_2 {
90    pub left: ::core::ffi::c_short,
91    pub top: ::core::ffi::c_short,
92    pub right: ::core::ffi::c_short,
93    pub bottom: ::core::ffi::c_short,
94}
95#[repr(C)]
96#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
97pub struct _CUVIDH264DPBENTRY {
98    pub PicIdx: ::core::ffi::c_int,
99    pub FrameIdx: ::core::ffi::c_int,
100    pub is_long_term: ::core::ffi::c_int,
101    pub not_existing: ::core::ffi::c_int,
102    pub used_for_reference: ::core::ffi::c_int,
103    pub FieldOrderCnt: [::core::ffi::c_int; 2usize],
104}
105#[repr(C)]
106#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
107pub struct _CUVIDH264MVCEXT {
108    pub num_views_minus1: ::core::ffi::c_int,
109    pub view_id: ::core::ffi::c_int,
110    pub inter_view_flag: ::core::ffi::c_uchar,
111    pub num_inter_view_refs_l0: ::core::ffi::c_uchar,
112    pub num_inter_view_refs_l1: ::core::ffi::c_uchar,
113    pub MVCReserved8Bits: ::core::ffi::c_uchar,
114    pub InterViewRefsL0: [::core::ffi::c_int; 16usize],
115    pub InterViewRefsL1: [::core::ffi::c_int; 16usize],
116}
117#[repr(C)]
118#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
119pub struct _CUVIDH264SVCEXT {
120    pub profile_idc: ::core::ffi::c_uchar,
121    pub level_idc: ::core::ffi::c_uchar,
122    pub DQId: ::core::ffi::c_uchar,
123    pub DQIdMax: ::core::ffi::c_uchar,
124    pub disable_inter_layer_deblocking_filter_idc: ::core::ffi::c_uchar,
125    pub ref_layer_chroma_phase_y_plus1: ::core::ffi::c_uchar,
126    pub inter_layer_slice_alpha_c0_offset_div2: ::core::ffi::c_schar,
127    pub inter_layer_slice_beta_offset_div2: ::core::ffi::c_schar,
128    pub DPBEntryValidFlag: ::core::ffi::c_ushort,
129    pub inter_layer_deblocking_filter_control_present_flag: ::core::ffi::c_uchar,
130    pub extended_spatial_scalability_idc: ::core::ffi::c_uchar,
131    pub adaptive_tcoeff_level_prediction_flag: ::core::ffi::c_uchar,
132    pub slice_header_restriction_flag: ::core::ffi::c_uchar,
133    pub chroma_phase_x_plus1_flag: ::core::ffi::c_uchar,
134    pub chroma_phase_y_plus1: ::core::ffi::c_uchar,
135    pub tcoeff_level_prediction_flag: ::core::ffi::c_uchar,
136    pub constrained_intra_resampling_flag: ::core::ffi::c_uchar,
137    pub ref_layer_chroma_phase_x_plus1_flag: ::core::ffi::c_uchar,
138    pub store_ref_base_pic_flag: ::core::ffi::c_uchar,
139    pub Reserved8BitsA: ::core::ffi::c_uchar,
140    pub Reserved8BitsB: ::core::ffi::c_uchar,
141    pub scaled_ref_layer_left_offset: ::core::ffi::c_short,
142    pub scaled_ref_layer_top_offset: ::core::ffi::c_short,
143    pub scaled_ref_layer_right_offset: ::core::ffi::c_short,
144    pub scaled_ref_layer_bottom_offset: ::core::ffi::c_short,
145    pub Reserved16Bits: ::core::ffi::c_ushort,
146    pub pNextLayer: *mut _CUVIDPICPARAMS,
147    pub bRefBaseLayer: ::core::ffi::c_int,
148}
149#[repr(C)]
150#[derive(Copy, Clone)]
151pub struct _CUVIDH264PICPARAMS {
152    pub log2_max_frame_num_minus4: ::core::ffi::c_int,
153    pub pic_order_cnt_type: ::core::ffi::c_int,
154    pub log2_max_pic_order_cnt_lsb_minus4: ::core::ffi::c_int,
155    pub delta_pic_order_always_zero_flag: ::core::ffi::c_int,
156    pub frame_mbs_only_flag: ::core::ffi::c_int,
157    pub direct_8x8_inference_flag: ::core::ffi::c_int,
158    pub num_ref_frames: ::core::ffi::c_int,
159    pub residual_colour_transform_flag: ::core::ffi::c_uchar,
160    pub bit_depth_luma_minus8: ::core::ffi::c_uchar,
161    pub bit_depth_chroma_minus8: ::core::ffi::c_uchar,
162    pub qpprime_y_zero_transform_bypass_flag: ::core::ffi::c_uchar,
163    pub entropy_coding_mode_flag: ::core::ffi::c_int,
164    pub pic_order_present_flag: ::core::ffi::c_int,
165    pub num_ref_idx_l0_active_minus1: ::core::ffi::c_int,
166    pub num_ref_idx_l1_active_minus1: ::core::ffi::c_int,
167    pub weighted_pred_flag: ::core::ffi::c_int,
168    pub weighted_bipred_idc: ::core::ffi::c_int,
169    pub pic_init_qp_minus26: ::core::ffi::c_int,
170    pub deblocking_filter_control_present_flag: ::core::ffi::c_int,
171    pub redundant_pic_cnt_present_flag: ::core::ffi::c_int,
172    pub transform_8x8_mode_flag: ::core::ffi::c_int,
173    pub MbaffFrameFlag: ::core::ffi::c_int,
174    pub constrained_intra_pred_flag: ::core::ffi::c_int,
175    pub chroma_qp_index_offset: ::core::ffi::c_int,
176    pub second_chroma_qp_index_offset: ::core::ffi::c_int,
177    pub ref_pic_flag: ::core::ffi::c_int,
178    pub frame_num: ::core::ffi::c_int,
179    pub CurrFieldOrderCnt: [::core::ffi::c_int; 2usize],
180    pub dpb: [CUVIDH264DPBENTRY; 16usize],
181    pub WeightScale4x4: [[::core::ffi::c_uchar; 16usize]; 6usize],
182    pub WeightScale8x8: [[::core::ffi::c_uchar; 64usize]; 2usize],
183    pub fmo_aso_enable: ::core::ffi::c_uchar,
184    pub num_slice_groups_minus1: ::core::ffi::c_uchar,
185    pub slice_group_map_type: ::core::ffi::c_uchar,
186    pub pic_init_qs_minus26: ::core::ffi::c_schar,
187    pub slice_group_change_rate_minus1: ::core::ffi::c_uint,
188    pub fmo: _CUVIDH264PICPARAMS__bindgen_ty_1,
189    pub Reserved: [::core::ffi::c_uint; 12usize],
190    pub __bindgen_anon_1: _CUVIDH264PICPARAMS__bindgen_ty_2,
191}
192#[repr(C)]
193#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
194pub struct _CUVIDMPEG2PICPARAMS {
195    pub ForwardRefIdx: ::core::ffi::c_int,
196    pub BackwardRefIdx: ::core::ffi::c_int,
197    pub picture_coding_type: ::core::ffi::c_int,
198    pub full_pel_forward_vector: ::core::ffi::c_int,
199    pub full_pel_backward_vector: ::core::ffi::c_int,
200    pub f_code: [[::core::ffi::c_int; 2usize]; 2usize],
201    pub intra_dc_precision: ::core::ffi::c_int,
202    pub frame_pred_frame_dct: ::core::ffi::c_int,
203    pub concealment_motion_vectors: ::core::ffi::c_int,
204    pub q_scale_type: ::core::ffi::c_int,
205    pub intra_vlc_format: ::core::ffi::c_int,
206    pub alternate_scan: ::core::ffi::c_int,
207    pub top_field_first: ::core::ffi::c_int,
208    pub QuantMatrixIntra: [::core::ffi::c_uchar; 64usize],
209    pub QuantMatrixInter: [::core::ffi::c_uchar; 64usize],
210}
211#[repr(C)]
212#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
213pub struct _CUVIDMPEG4PICPARAMS {
214    pub ForwardRefIdx: ::core::ffi::c_int,
215    pub BackwardRefIdx: ::core::ffi::c_int,
216    pub video_object_layer_width: ::core::ffi::c_int,
217    pub video_object_layer_height: ::core::ffi::c_int,
218    pub vop_time_increment_bitcount: ::core::ffi::c_int,
219    pub top_field_first: ::core::ffi::c_int,
220    pub resync_marker_disable: ::core::ffi::c_int,
221    pub quant_type: ::core::ffi::c_int,
222    pub quarter_sample: ::core::ffi::c_int,
223    pub short_video_header: ::core::ffi::c_int,
224    pub divx_flags: ::core::ffi::c_int,
225    pub vop_coding_type: ::core::ffi::c_int,
226    pub vop_coded: ::core::ffi::c_int,
227    pub vop_rounding_type: ::core::ffi::c_int,
228    pub alternate_vertical_scan_flag: ::core::ffi::c_int,
229    pub interlaced: ::core::ffi::c_int,
230    pub vop_fcode_forward: ::core::ffi::c_int,
231    pub vop_fcode_backward: ::core::ffi::c_int,
232    pub trd: [::core::ffi::c_int; 2usize],
233    pub trb: [::core::ffi::c_int; 2usize],
234    pub QuantMatrixIntra: [::core::ffi::c_uchar; 64usize],
235    pub QuantMatrixInter: [::core::ffi::c_uchar; 64usize],
236    pub gmc_enabled: ::core::ffi::c_int,
237}
238#[repr(C)]
239#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
240pub struct _CUVIDVC1PICPARAMS {
241    pub ForwardRefIdx: ::core::ffi::c_int,
242    pub BackwardRefIdx: ::core::ffi::c_int,
243    pub FrameWidth: ::core::ffi::c_int,
244    pub FrameHeight: ::core::ffi::c_int,
245    pub intra_pic_flag: ::core::ffi::c_int,
246    pub ref_pic_flag: ::core::ffi::c_int,
247    pub progressive_fcm: ::core::ffi::c_int,
248    pub profile: ::core::ffi::c_int,
249    pub postprocflag: ::core::ffi::c_int,
250    pub pulldown: ::core::ffi::c_int,
251    pub interlace: ::core::ffi::c_int,
252    pub tfcntrflag: ::core::ffi::c_int,
253    pub finterpflag: ::core::ffi::c_int,
254    pub psf: ::core::ffi::c_int,
255    pub multires: ::core::ffi::c_int,
256    pub syncmarker: ::core::ffi::c_int,
257    pub rangered: ::core::ffi::c_int,
258    pub maxbframes: ::core::ffi::c_int,
259    pub panscan_flag: ::core::ffi::c_int,
260    pub refdist_flag: ::core::ffi::c_int,
261    pub extended_mv: ::core::ffi::c_int,
262    pub dquant: ::core::ffi::c_int,
263    pub vstransform: ::core::ffi::c_int,
264    pub loopfilter: ::core::ffi::c_int,
265    pub fastuvmc: ::core::ffi::c_int,
266    pub overlap: ::core::ffi::c_int,
267    pub quantizer: ::core::ffi::c_int,
268    pub extended_dmv: ::core::ffi::c_int,
269    pub range_mapy_flag: ::core::ffi::c_int,
270    pub range_mapy: ::core::ffi::c_int,
271    pub range_mapuv_flag: ::core::ffi::c_int,
272    pub range_mapuv: ::core::ffi::c_int,
273    pub rangeredfrm: ::core::ffi::c_int,
274}
275#[repr(C)]
276#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
277pub struct _CUVIDJPEGPICPARAMS {
278    pub Reserved: ::core::ffi::c_int,
279}
280#[repr(C)]
281#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
282pub struct _CUVIDHEVCPICPARAMS {
283    pub pic_width_in_luma_samples: ::core::ffi::c_int,
284    pub pic_height_in_luma_samples: ::core::ffi::c_int,
285    pub log2_min_luma_coding_block_size_minus3: ::core::ffi::c_uchar,
286    pub log2_diff_max_min_luma_coding_block_size: ::core::ffi::c_uchar,
287    pub log2_min_transform_block_size_minus2: ::core::ffi::c_uchar,
288    pub log2_diff_max_min_transform_block_size: ::core::ffi::c_uchar,
289    pub pcm_enabled_flag: ::core::ffi::c_uchar,
290    pub log2_min_pcm_luma_coding_block_size_minus3: ::core::ffi::c_uchar,
291    pub log2_diff_max_min_pcm_luma_coding_block_size: ::core::ffi::c_uchar,
292    pub pcm_sample_bit_depth_luma_minus1: ::core::ffi::c_uchar,
293    pub pcm_sample_bit_depth_chroma_minus1: ::core::ffi::c_uchar,
294    pub pcm_loop_filter_disabled_flag: ::core::ffi::c_uchar,
295    pub strong_intra_smoothing_enabled_flag: ::core::ffi::c_uchar,
296    pub max_transform_hierarchy_depth_intra: ::core::ffi::c_uchar,
297    pub max_transform_hierarchy_depth_inter: ::core::ffi::c_uchar,
298    pub amp_enabled_flag: ::core::ffi::c_uchar,
299    pub separate_colour_plane_flag: ::core::ffi::c_uchar,
300    pub log2_max_pic_order_cnt_lsb_minus4: ::core::ffi::c_uchar,
301    pub num_short_term_ref_pic_sets: ::core::ffi::c_uchar,
302    pub long_term_ref_pics_present_flag: ::core::ffi::c_uchar,
303    pub num_long_term_ref_pics_sps: ::core::ffi::c_uchar,
304    pub sps_temporal_mvp_enabled_flag: ::core::ffi::c_uchar,
305    pub sample_adaptive_offset_enabled_flag: ::core::ffi::c_uchar,
306    pub scaling_list_enable_flag: ::core::ffi::c_uchar,
307    pub IrapPicFlag: ::core::ffi::c_uchar,
308    pub IdrPicFlag: ::core::ffi::c_uchar,
309    pub bit_depth_luma_minus8: ::core::ffi::c_uchar,
310    pub bit_depth_chroma_minus8: ::core::ffi::c_uchar,
311    pub log2_max_transform_skip_block_size_minus2: ::core::ffi::c_uchar,
312    pub log2_sao_offset_scale_luma: ::core::ffi::c_uchar,
313    pub log2_sao_offset_scale_chroma: ::core::ffi::c_uchar,
314    pub high_precision_offsets_enabled_flag: ::core::ffi::c_uchar,
315    pub reserved1: [::core::ffi::c_uchar; 10usize],
316    pub dependent_slice_segments_enabled_flag: ::core::ffi::c_uchar,
317    pub slice_segment_header_extension_present_flag: ::core::ffi::c_uchar,
318    pub sign_data_hiding_enabled_flag: ::core::ffi::c_uchar,
319    pub cu_qp_delta_enabled_flag: ::core::ffi::c_uchar,
320    pub diff_cu_qp_delta_depth: ::core::ffi::c_uchar,
321    pub init_qp_minus26: ::core::ffi::c_schar,
322    pub pps_cb_qp_offset: ::core::ffi::c_schar,
323    pub pps_cr_qp_offset: ::core::ffi::c_schar,
324    pub constrained_intra_pred_flag: ::core::ffi::c_uchar,
325    pub weighted_pred_flag: ::core::ffi::c_uchar,
326    pub weighted_bipred_flag: ::core::ffi::c_uchar,
327    pub transform_skip_enabled_flag: ::core::ffi::c_uchar,
328    pub transquant_bypass_enabled_flag: ::core::ffi::c_uchar,
329    pub entropy_coding_sync_enabled_flag: ::core::ffi::c_uchar,
330    pub log2_parallel_merge_level_minus2: ::core::ffi::c_uchar,
331    pub num_extra_slice_header_bits: ::core::ffi::c_uchar,
332    pub loop_filter_across_tiles_enabled_flag: ::core::ffi::c_uchar,
333    pub loop_filter_across_slices_enabled_flag: ::core::ffi::c_uchar,
334    pub output_flag_present_flag: ::core::ffi::c_uchar,
335    pub num_ref_idx_l0_default_active_minus1: ::core::ffi::c_uchar,
336    pub num_ref_idx_l1_default_active_minus1: ::core::ffi::c_uchar,
337    pub lists_modification_present_flag: ::core::ffi::c_uchar,
338    pub cabac_init_present_flag: ::core::ffi::c_uchar,
339    pub pps_slice_chroma_qp_offsets_present_flag: ::core::ffi::c_uchar,
340    pub deblocking_filter_override_enabled_flag: ::core::ffi::c_uchar,
341    pub pps_deblocking_filter_disabled_flag: ::core::ffi::c_uchar,
342    pub pps_beta_offset_div2: ::core::ffi::c_schar,
343    pub pps_tc_offset_div2: ::core::ffi::c_schar,
344    pub tiles_enabled_flag: ::core::ffi::c_uchar,
345    pub uniform_spacing_flag: ::core::ffi::c_uchar,
346    pub num_tile_columns_minus1: ::core::ffi::c_uchar,
347    pub num_tile_rows_minus1: ::core::ffi::c_uchar,
348    pub column_width_minus1: [::core::ffi::c_ushort; 21usize],
349    pub row_height_minus1: [::core::ffi::c_ushort; 21usize],
350    pub sps_range_extension_flag: ::core::ffi::c_uchar,
351    pub transform_skip_rotation_enabled_flag: ::core::ffi::c_uchar,
352    pub transform_skip_context_enabled_flag: ::core::ffi::c_uchar,
353    pub implicit_rdpcm_enabled_flag: ::core::ffi::c_uchar,
354    pub explicit_rdpcm_enabled_flag: ::core::ffi::c_uchar,
355    pub extended_precision_processing_flag: ::core::ffi::c_uchar,
356    pub intra_smoothing_disabled_flag: ::core::ffi::c_uchar,
357    pub persistent_rice_adaptation_enabled_flag: ::core::ffi::c_uchar,
358    pub cabac_bypass_alignment_enabled_flag: ::core::ffi::c_uchar,
359    pub pps_range_extension_flag: ::core::ffi::c_uchar,
360    pub cross_component_prediction_enabled_flag: ::core::ffi::c_uchar,
361    pub chroma_qp_offset_list_enabled_flag: ::core::ffi::c_uchar,
362    pub diff_cu_chroma_qp_offset_depth: ::core::ffi::c_uchar,
363    pub chroma_qp_offset_list_len_minus1: ::core::ffi::c_uchar,
364    pub cb_qp_offset_list: [::core::ffi::c_schar; 6usize],
365    pub cr_qp_offset_list: [::core::ffi::c_schar; 6usize],
366    pub reserved2: [::core::ffi::c_uchar; 2usize],
367    pub reserved3: [::core::ffi::c_uint; 8usize],
368    pub NumBitsForShortTermRPSInSlice: ::core::ffi::c_int,
369    pub NumDeltaPocsOfRefRpsIdx: ::core::ffi::c_int,
370    pub NumPocTotalCurr: ::core::ffi::c_int,
371    pub NumPocStCurrBefore: ::core::ffi::c_int,
372    pub NumPocStCurrAfter: ::core::ffi::c_int,
373    pub NumPocLtCurr: ::core::ffi::c_int,
374    pub CurrPicOrderCntVal: ::core::ffi::c_int,
375    pub RefPicIdx: [::core::ffi::c_int; 16usize],
376    pub PicOrderCntVal: [::core::ffi::c_int; 16usize],
377    pub IsLongTerm: [::core::ffi::c_uchar; 16usize],
378    pub RefPicSetStCurrBefore: [::core::ffi::c_uchar; 8usize],
379    pub RefPicSetStCurrAfter: [::core::ffi::c_uchar; 8usize],
380    pub RefPicSetLtCurr: [::core::ffi::c_uchar; 8usize],
381    pub RefPicSetInterLayer0: [::core::ffi::c_uchar; 8usize],
382    pub RefPicSetInterLayer1: [::core::ffi::c_uchar; 8usize],
383    pub reserved4: [::core::ffi::c_uint; 12usize],
384    pub ScalingList4x4: [[::core::ffi::c_uchar; 16usize]; 6usize],
385    pub ScalingList8x8: [[::core::ffi::c_uchar; 64usize]; 6usize],
386    pub ScalingList16x16: [[::core::ffi::c_uchar; 64usize]; 6usize],
387    pub ScalingList32x32: [[::core::ffi::c_uchar; 64usize]; 2usize],
388    pub ScalingListDCCoeff16x16: [::core::ffi::c_uchar; 6usize],
389    pub ScalingListDCCoeff32x32: [::core::ffi::c_uchar; 2usize],
390}
391#[repr(C)]
392#[derive(Copy, Clone)]
393pub struct _CUVIDVP8PICPARAMS {
394    pub width: ::core::ffi::c_int,
395    pub height: ::core::ffi::c_int,
396    pub first_partition_size: ::core::ffi::c_uint,
397    pub LastRefIdx: ::core::ffi::c_uchar,
398    pub GoldenRefIdx: ::core::ffi::c_uchar,
399    pub AltRefIdx: ::core::ffi::c_uchar,
400    pub __bindgen_anon_1: _CUVIDVP8PICPARAMS__bindgen_ty_1,
401    pub Reserved1: [::core::ffi::c_uchar; 4usize],
402    pub Reserved2: [::core::ffi::c_uint; 3usize],
403}
404#[repr(C, packed)]
405#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
406pub struct _CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1 {
407    pub _bitfield_align_1: [u8; 0],
408    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
409}
410#[repr(C)]
411#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
412pub struct _CUVIDVP9PICPARAMS {
413    pub width: ::core::ffi::c_uint,
414    pub height: ::core::ffi::c_uint,
415    pub LastRefIdx: ::core::ffi::c_uchar,
416    pub GoldenRefIdx: ::core::ffi::c_uchar,
417    pub AltRefIdx: ::core::ffi::c_uchar,
418    pub colorSpace: ::core::ffi::c_uchar,
419    pub _bitfield_align_1: [u8; 0],
420    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
421    pub reserved16Bits: ::core::ffi::c_ushort,
422    pub refFrameSignBias: [::core::ffi::c_uchar; 4usize],
423    pub bitDepthMinus8Luma: ::core::ffi::c_uchar,
424    pub bitDepthMinus8Chroma: ::core::ffi::c_uchar,
425    pub loopFilterLevel: ::core::ffi::c_uchar,
426    pub loopFilterSharpness: ::core::ffi::c_uchar,
427    pub modeRefLfEnabled: ::core::ffi::c_uchar,
428    pub log2_tile_columns: ::core::ffi::c_uchar,
429    pub log2_tile_rows: ::core::ffi::c_uchar,
430    pub _bitfield_align_2: [u8; 0],
431    pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>,
432    pub segmentFeatureEnable: [[::core::ffi::c_uchar; 4usize]; 8usize],
433    pub segmentFeatureData: [[::core::ffi::c_short; 4usize]; 8usize],
434    pub mb_segment_tree_probs: [::core::ffi::c_uchar; 7usize],
435    pub segment_pred_probs: [::core::ffi::c_uchar; 3usize],
436    pub reservedSegment16Bits: [::core::ffi::c_uchar; 2usize],
437    pub qpYAc: ::core::ffi::c_int,
438    pub qpYDc: ::core::ffi::c_int,
439    pub qpChDc: ::core::ffi::c_int,
440    pub qpChAc: ::core::ffi::c_int,
441    pub activeRefIdx: [::core::ffi::c_uint; 3usize],
442    pub resetFrameContext: ::core::ffi::c_uint,
443    pub mcomp_filter_type: ::core::ffi::c_uint,
444    pub mbRefLfDelta: [::core::ffi::c_uint; 4usize],
445    pub mbModeLfDelta: [::core::ffi::c_uint; 2usize],
446    pub frameTagSize: ::core::ffi::c_uint,
447    pub offsetToDctParts: ::core::ffi::c_uint,
448    pub reserved128Bits: [::core::ffi::c_uint; 4usize],
449}
450#[repr(C)]
451#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
452pub struct _CUVIDAV1PICPARAMS {
453    pub width: ::core::ffi::c_uint,
454    pub height: ::core::ffi::c_uint,
455    pub frame_offset: ::core::ffi::c_uint,
456    pub decodePicIdx: ::core::ffi::c_int,
457    pub _bitfield_align_1: [u16; 0],
458    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 12usize]>,
459    pub tile_widths: [::core::ffi::c_ushort; 64usize],
460    pub tile_heights: [::core::ffi::c_ushort; 64usize],
461    pub _bitfield_align_2: [u8; 0],
462    pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>,
463    pub cdef_y_strength: [::core::ffi::c_uchar; 8usize],
464    pub cdef_uv_strength: [::core::ffi::c_uchar; 8usize],
465    pub _bitfield_align_3: [u8; 0],
466    pub _bitfield_3: __BindgenBitfieldUnit<[u8; 1usize]>,
467    pub base_qindex: ::core::ffi::c_uchar,
468    pub qp_y_dc_delta_q: ::core::ffi::c_char,
469    pub qp_u_dc_delta_q: ::core::ffi::c_char,
470    pub qp_v_dc_delta_q: ::core::ffi::c_char,
471    pub qp_u_ac_delta_q: ::core::ffi::c_char,
472    pub qp_v_ac_delta_q: ::core::ffi::c_char,
473    pub qm_y: ::core::ffi::c_uchar,
474    pub qm_u: ::core::ffi::c_uchar,
475    pub qm_v: ::core::ffi::c_uchar,
476    pub _bitfield_align_4: [u8; 0],
477    pub _bitfield_4: __BindgenBitfieldUnit<[u8; 1usize]>,
478    pub segmentation_feature_data: [[::core::ffi::c_short; 8usize]; 8usize],
479    pub segmentation_feature_mask: [::core::ffi::c_uchar; 8usize],
480    pub loop_filter_level: [::core::ffi::c_uchar; 2usize],
481    pub loop_filter_level_u: ::core::ffi::c_uchar,
482    pub loop_filter_level_v: ::core::ffi::c_uchar,
483    pub loop_filter_sharpness: ::core::ffi::c_uchar,
484    pub loop_filter_ref_deltas: [::core::ffi::c_char; 8usize],
485    pub loop_filter_mode_deltas: [::core::ffi::c_char; 2usize],
486    pub _bitfield_align_5: [u8; 0],
487    pub _bitfield_5: __BindgenBitfieldUnit<[u8; 1usize]>,
488    pub lr_unit_size: [::core::ffi::c_uchar; 3usize],
489    pub lr_type: [::core::ffi::c_uchar; 3usize],
490    pub primary_ref_frame: ::core::ffi::c_uchar,
491    pub ref_frame_map: [::core::ffi::c_uchar; 8usize],
492    pub _bitfield_align_6: [u8; 0],
493    pub _bitfield_6: __BindgenBitfieldUnit<[u8; 1usize]>,
494    pub reserved5_32bits: [::core::ffi::c_uchar; 4usize],
495    pub ref_frame: [_CUVIDAV1PICPARAMS__bindgen_ty_1; 7usize],
496    pub global_motion: [_CUVIDAV1PICPARAMS__bindgen_ty_2; 7usize],
497    pub _bitfield_align_7: [u8; 0],
498    pub _bitfield_7: __BindgenBitfieldUnit<[u8; 2usize]>,
499    pub num_y_points: ::core::ffi::c_uchar,
500    pub scaling_points_y: [[::core::ffi::c_uchar; 2usize]; 14usize],
501    pub num_cb_points: ::core::ffi::c_uchar,
502    pub scaling_points_cb: [[::core::ffi::c_uchar; 2usize]; 10usize],
503    pub num_cr_points: ::core::ffi::c_uchar,
504    pub scaling_points_cr: [[::core::ffi::c_uchar; 2usize]; 10usize],
505    pub reserved7_8bits: ::core::ffi::c_uchar,
506    pub random_seed: ::core::ffi::c_ushort,
507    pub ar_coeffs_y: [::core::ffi::c_short; 24usize],
508    pub ar_coeffs_cb: [::core::ffi::c_short; 25usize],
509    pub ar_coeffs_cr: [::core::ffi::c_short; 25usize],
510    pub cb_mult: ::core::ffi::c_uchar,
511    pub cb_luma_mult: ::core::ffi::c_uchar,
512    pub cb_offset: ::core::ffi::c_short,
513    pub cr_mult: ::core::ffi::c_uchar,
514    pub cr_luma_mult: ::core::ffi::c_uchar,
515    pub cr_offset: ::core::ffi::c_short,
516    pub reserved: [::core::ffi::c_int; 7usize],
517}
518#[repr(C)]
519#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
520pub struct _CUVIDAV1PICPARAMS__bindgen_ty_1 {
521    pub width: ::core::ffi::c_uint,
522    pub height: ::core::ffi::c_uint,
523    pub index: ::core::ffi::c_uchar,
524    pub reserved24Bits: [::core::ffi::c_uchar; 3usize],
525}
526#[repr(C)]
527#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
528pub struct _CUVIDAV1PICPARAMS__bindgen_ty_2 {
529    pub _bitfield_align_1: [u8; 0],
530    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
531    pub reserved24Bits: [::core::ffi::c_char; 3usize],
532    pub wmmat: [::core::ffi::c_int; 6usize],
533}
534#[repr(C)]
535#[derive(Copy, Clone)]
536pub struct _CUVIDPICPARAMS {
537    pub PicWidthInMbs: ::core::ffi::c_int,
538    pub FrameHeightInMbs: ::core::ffi::c_int,
539    pub CurrPicIdx: ::core::ffi::c_int,
540    pub field_pic_flag: ::core::ffi::c_int,
541    pub bottom_field_flag: ::core::ffi::c_int,
542    pub second_field: ::core::ffi::c_int,
543    pub nBitstreamDataLen: ::core::ffi::c_uint,
544    pub pBitstreamData: *const ::core::ffi::c_uchar,
545    pub nNumSlices: ::core::ffi::c_uint,
546    pub pSliceDataOffsets: *const ::core::ffi::c_uint,
547    pub ref_pic_flag: ::core::ffi::c_int,
548    pub intra_pic_flag: ::core::ffi::c_int,
549    pub Reserved: [::core::ffi::c_uint; 30usize],
550    pub CodecSpecific: _CUVIDPICPARAMS__bindgen_ty_1,
551}
552#[repr(C)]
553pub struct _CUVIDPROCPARAMS {
554    pub progressive_frame: ::core::ffi::c_int,
555    pub second_field: ::core::ffi::c_int,
556    pub top_field_first: ::core::ffi::c_int,
557    pub unpaired_field: ::core::ffi::c_int,
558    pub reserved_flags: ::core::ffi::c_uint,
559    pub reserved_zero: ::core::ffi::c_uint,
560    pub raw_input_dptr: ::core::ffi::c_ulonglong,
561    pub raw_input_pitch: ::core::ffi::c_uint,
562    pub raw_input_format: ::core::ffi::c_uint,
563    pub raw_output_dptr: ::core::ffi::c_ulonglong,
564    pub raw_output_pitch: ::core::ffi::c_uint,
565    pub Reserved1: ::core::ffi::c_uint,
566    pub output_stream: CUstream,
567    pub Reserved: [::core::ffi::c_uint; 46usize],
568    pub histogram_dptr: *mut ::core::ffi::c_ulonglong,
569    pub Reserved2: [*mut ::core::ffi::c_void; 1usize],
570}
571#[repr(C)]
572#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
573pub struct _CUVIDGETDECODESTATUS {
574    pub decodeStatus: cuvidDecodeStatus,
575    pub reserved: [::core::ffi::c_uint; 31usize],
576    pub pReserved: [*mut ::core::ffi::c_void; 8usize],
577}
578#[repr(C)]
579#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
580pub struct _CUVIDRECONFIGUREDECODERINFO {
581    pub ulWidth: ::core::ffi::c_uint,
582    pub ulHeight: ::core::ffi::c_uint,
583    pub ulTargetWidth: ::core::ffi::c_uint,
584    pub ulTargetHeight: ::core::ffi::c_uint,
585    pub ulNumDecodeSurfaces: ::core::ffi::c_uint,
586    pub reserved1: [::core::ffi::c_uint; 12usize],
587    pub display_area: _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1,
588    pub target_rect: _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2,
589    pub reserved2: [::core::ffi::c_uint; 11usize],
590}
591#[repr(C)]
592#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
593pub struct _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1 {
594    pub left: ::core::ffi::c_short,
595    pub top: ::core::ffi::c_short,
596    pub right: ::core::ffi::c_short,
597    pub bottom: ::core::ffi::c_short,
598}
599#[repr(C)]
600#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
601pub struct _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2 {
602    pub left: ::core::ffi::c_short,
603    pub top: ::core::ffi::c_short,
604    pub right: ::core::ffi::c_short,
605    pub bottom: ::core::ffi::c_short,
606}
607pub const I_VOP: u32 = 0;
608pub const P_VOP: u32 = 1;
609pub const B_VOP: u32 = 2;
610pub const S_VOP: u32 = 3;
611#[test]
612fn bindgen_test_layout__CUVIDDECODECAPS() {
613    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECAPS> = ::core::mem::MaybeUninit::uninit();
614    let ptr = UNINIT.as_ptr();
615    assert_eq!(
616        ::core::mem::size_of::<_CUVIDDECODECAPS>(),
617        88usize,
618        concat!("Size of: ", stringify!(_CUVIDDECODECAPS))
619    );
620    assert_eq!(
621        ::core::mem::align_of::<_CUVIDDECODECAPS>(),
622        4usize,
623        concat!("Alignment of ", stringify!(_CUVIDDECODECAPS))
624    );
625    assert_eq!(
626        unsafe { ::core::ptr::addr_of!((*ptr).eCodecType) as usize - ptr as usize },
627        0usize,
628        concat!(
629            "Offset of field: ",
630            stringify!(_CUVIDDECODECAPS),
631            "::",
632            stringify!(eCodecType)
633        )
634    );
635    assert_eq!(
636        unsafe { ::core::ptr::addr_of!((*ptr).eChromaFormat) as usize - ptr as usize },
637        4usize,
638        concat!(
639            "Offset of field: ",
640            stringify!(_CUVIDDECODECAPS),
641            "::",
642            stringify!(eChromaFormat)
643        )
644    );
645    assert_eq!(
646        unsafe { ::core::ptr::addr_of!((*ptr).nBitDepthMinus8) as usize - ptr as usize },
647        8usize,
648        concat!(
649            "Offset of field: ",
650            stringify!(_CUVIDDECODECAPS),
651            "::",
652            stringify!(nBitDepthMinus8)
653        )
654    );
655    assert_eq!(
656        unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize },
657        12usize,
658        concat!(
659            "Offset of field: ",
660            stringify!(_CUVIDDECODECAPS),
661            "::",
662            stringify!(reserved1)
663        )
664    );
665    assert_eq!(
666        unsafe { ::core::ptr::addr_of!((*ptr).bIsSupported) as usize - ptr as usize },
667        24usize,
668        concat!(
669            "Offset of field: ",
670            stringify!(_CUVIDDECODECAPS),
671            "::",
672            stringify!(bIsSupported)
673        )
674    );
675    assert_eq!(
676        unsafe { ::core::ptr::addr_of!((*ptr).nNumNVDECs) as usize - ptr as usize },
677        25usize,
678        concat!(
679            "Offset of field: ",
680            stringify!(_CUVIDDECODECAPS),
681            "::",
682            stringify!(nNumNVDECs)
683        )
684    );
685    assert_eq!(
686        unsafe { ::core::ptr::addr_of!((*ptr).nOutputFormatMask) as usize - ptr as usize },
687        26usize,
688        concat!(
689            "Offset of field: ",
690            stringify!(_CUVIDDECODECAPS),
691            "::",
692            stringify!(nOutputFormatMask)
693        )
694    );
695    assert_eq!(
696        unsafe { ::core::ptr::addr_of!((*ptr).nMaxWidth) as usize - ptr as usize },
697        28usize,
698        concat!(
699            "Offset of field: ",
700            stringify!(_CUVIDDECODECAPS),
701            "::",
702            stringify!(nMaxWidth)
703        )
704    );
705    assert_eq!(
706        unsafe { ::core::ptr::addr_of!((*ptr).nMaxHeight) as usize - ptr as usize },
707        32usize,
708        concat!(
709            "Offset of field: ",
710            stringify!(_CUVIDDECODECAPS),
711            "::",
712            stringify!(nMaxHeight)
713        )
714    );
715    assert_eq!(
716        unsafe { ::core::ptr::addr_of!((*ptr).nMaxMBCount) as usize - ptr as usize },
717        36usize,
718        concat!(
719            "Offset of field: ",
720            stringify!(_CUVIDDECODECAPS),
721            "::",
722            stringify!(nMaxMBCount)
723        )
724    );
725    assert_eq!(
726        unsafe { ::core::ptr::addr_of!((*ptr).nMinWidth) as usize - ptr as usize },
727        40usize,
728        concat!(
729            "Offset of field: ",
730            stringify!(_CUVIDDECODECAPS),
731            "::",
732            stringify!(nMinWidth)
733        )
734    );
735    assert_eq!(
736        unsafe { ::core::ptr::addr_of!((*ptr).nMinHeight) as usize - ptr as usize },
737        42usize,
738        concat!(
739            "Offset of field: ",
740            stringify!(_CUVIDDECODECAPS),
741            "::",
742            stringify!(nMinHeight)
743        )
744    );
745    assert_eq!(
746        unsafe { ::core::ptr::addr_of!((*ptr).bIsHistogramSupported) as usize - ptr as usize },
747        44usize,
748        concat!(
749            "Offset of field: ",
750            stringify!(_CUVIDDECODECAPS),
751            "::",
752            stringify!(bIsHistogramSupported)
753        )
754    );
755    assert_eq!(
756        unsafe { ::core::ptr::addr_of!((*ptr).nCounterBitDepth) as usize - ptr as usize },
757        45usize,
758        concat!(
759            "Offset of field: ",
760            stringify!(_CUVIDDECODECAPS),
761            "::",
762            stringify!(nCounterBitDepth)
763        )
764    );
765    assert_eq!(
766        unsafe { ::core::ptr::addr_of!((*ptr).nMaxHistogramBins) as usize - ptr as usize },
767        46usize,
768        concat!(
769            "Offset of field: ",
770            stringify!(_CUVIDDECODECAPS),
771            "::",
772            stringify!(nMaxHistogramBins)
773        )
774    );
775    assert_eq!(
776        unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize },
777        48usize,
778        concat!(
779            "Offset of field: ",
780            stringify!(_CUVIDDECODECAPS),
781            "::",
782            stringify!(reserved3)
783        )
784    );
785}
786#[test]
787fn bindgen_test_layout__CUVIDDECODECREATEINFO__bindgen_ty_1() {
788    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECREATEINFO__bindgen_ty_1> =
789        ::core::mem::MaybeUninit::uninit();
790    let ptr = UNINIT.as_ptr();
791    assert_eq!(
792        ::core::mem::size_of::<_CUVIDDECODECREATEINFO__bindgen_ty_1>(),
793        8usize,
794        concat!(
795            "Size of: ",
796            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1)
797        )
798    );
799    assert_eq!(
800        ::core::mem::align_of::<_CUVIDDECODECREATEINFO__bindgen_ty_1>(),
801        2usize,
802        concat!(
803            "Alignment of ",
804            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1)
805        )
806    );
807    assert_eq!(
808        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
809        0usize,
810        concat!(
811            "Offset of field: ",
812            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
813            "::",
814            stringify!(left)
815        )
816    );
817    assert_eq!(
818        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
819        2usize,
820        concat!(
821            "Offset of field: ",
822            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
823            "::",
824            stringify!(top)
825        )
826    );
827    assert_eq!(
828        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
829        4usize,
830        concat!(
831            "Offset of field: ",
832            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
833            "::",
834            stringify!(right)
835        )
836    );
837    assert_eq!(
838        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
839        6usize,
840        concat!(
841            "Offset of field: ",
842            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
843            "::",
844            stringify!(bottom)
845        )
846    );
847}
848#[test]
849fn bindgen_test_layout__CUVIDDECODECREATEINFO__bindgen_ty_2() {
850    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECREATEINFO__bindgen_ty_2> =
851        ::core::mem::MaybeUninit::uninit();
852    let ptr = UNINIT.as_ptr();
853    assert_eq!(
854        ::core::mem::size_of::<_CUVIDDECODECREATEINFO__bindgen_ty_2>(),
855        8usize,
856        concat!(
857            "Size of: ",
858            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2)
859        )
860    );
861    assert_eq!(
862        ::core::mem::align_of::<_CUVIDDECODECREATEINFO__bindgen_ty_2>(),
863        2usize,
864        concat!(
865            "Alignment of ",
866            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2)
867        )
868    );
869    assert_eq!(
870        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
871        0usize,
872        concat!(
873            "Offset of field: ",
874            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
875            "::",
876            stringify!(left)
877        )
878    );
879    assert_eq!(
880        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
881        2usize,
882        concat!(
883            "Offset of field: ",
884            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
885            "::",
886            stringify!(top)
887        )
888    );
889    assert_eq!(
890        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
891        4usize,
892        concat!(
893            "Offset of field: ",
894            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
895            "::",
896            stringify!(right)
897        )
898    );
899    assert_eq!(
900        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
901        6usize,
902        concat!(
903            "Offset of field: ",
904            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
905            "::",
906            stringify!(bottom)
907        )
908    );
909}
910#[test]
911fn bindgen_test_layout__CUVIDDECODECREATEINFO() {
912    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECREATEINFO> =
913        ::core::mem::MaybeUninit::uninit();
914    let ptr = UNINIT.as_ptr();
915    assert_eq!(
916        ::core::mem::size_of::<_CUVIDDECODECREATEINFO>(),
917        176usize,
918        concat!("Size of: ", stringify!(_CUVIDDECODECREATEINFO))
919    );
920    assert_eq!(
921        ::core::mem::align_of::<_CUVIDDECODECREATEINFO>(),
922        8usize,
923        concat!("Alignment of ", stringify!(_CUVIDDECODECREATEINFO))
924    );
925    assert_eq!(
926        unsafe { ::core::ptr::addr_of!((*ptr).ulWidth) as usize - ptr as usize },
927        0usize,
928        concat!(
929            "Offset of field: ",
930            stringify!(_CUVIDDECODECREATEINFO),
931            "::",
932            stringify!(ulWidth)
933        )
934    );
935    assert_eq!(
936        unsafe { ::core::ptr::addr_of!((*ptr).ulHeight) as usize - ptr as usize },
937        8usize,
938        concat!(
939            "Offset of field: ",
940            stringify!(_CUVIDDECODECREATEINFO),
941            "::",
942            stringify!(ulHeight)
943        )
944    );
945    assert_eq!(
946        unsafe { ::core::ptr::addr_of!((*ptr).ulNumDecodeSurfaces) as usize - ptr as usize },
947        16usize,
948        concat!(
949            "Offset of field: ",
950            stringify!(_CUVIDDECODECREATEINFO),
951            "::",
952            stringify!(ulNumDecodeSurfaces)
953        )
954    );
955    assert_eq!(
956        unsafe { ::core::ptr::addr_of!((*ptr).CodecType) as usize - ptr as usize },
957        24usize,
958        concat!(
959            "Offset of field: ",
960            stringify!(_CUVIDDECODECREATEINFO),
961            "::",
962            stringify!(CodecType)
963        )
964    );
965    assert_eq!(
966        unsafe { ::core::ptr::addr_of!((*ptr).ChromaFormat) as usize - ptr as usize },
967        28usize,
968        concat!(
969            "Offset of field: ",
970            stringify!(_CUVIDDECODECREATEINFO),
971            "::",
972            stringify!(ChromaFormat)
973        )
974    );
975    assert_eq!(
976        unsafe { ::core::ptr::addr_of!((*ptr).ulCreationFlags) as usize - ptr as usize },
977        32usize,
978        concat!(
979            "Offset of field: ",
980            stringify!(_CUVIDDECODECREATEINFO),
981            "::",
982            stringify!(ulCreationFlags)
983        )
984    );
985    assert_eq!(
986        unsafe { ::core::ptr::addr_of!((*ptr).bitDepthMinus8) as usize - ptr as usize },
987        40usize,
988        concat!(
989            "Offset of field: ",
990            stringify!(_CUVIDDECODECREATEINFO),
991            "::",
992            stringify!(bitDepthMinus8)
993        )
994    );
995    assert_eq!(
996        unsafe { ::core::ptr::addr_of!((*ptr).ulIntraDecodeOnly) as usize - ptr as usize },
997        48usize,
998        concat!(
999            "Offset of field: ",
1000            stringify!(_CUVIDDECODECREATEINFO),
1001            "::",
1002            stringify!(ulIntraDecodeOnly)
1003        )
1004    );
1005    assert_eq!(
1006        unsafe { ::core::ptr::addr_of!((*ptr).ulMaxWidth) as usize - ptr as usize },
1007        56usize,
1008        concat!(
1009            "Offset of field: ",
1010            stringify!(_CUVIDDECODECREATEINFO),
1011            "::",
1012            stringify!(ulMaxWidth)
1013        )
1014    );
1015    assert_eq!(
1016        unsafe { ::core::ptr::addr_of!((*ptr).ulMaxHeight) as usize - ptr as usize },
1017        64usize,
1018        concat!(
1019            "Offset of field: ",
1020            stringify!(_CUVIDDECODECREATEINFO),
1021            "::",
1022            stringify!(ulMaxHeight)
1023        )
1024    );
1025    assert_eq!(
1026        unsafe { ::core::ptr::addr_of!((*ptr).Reserved1) as usize - ptr as usize },
1027        72usize,
1028        concat!(
1029            "Offset of field: ",
1030            stringify!(_CUVIDDECODECREATEINFO),
1031            "::",
1032            stringify!(Reserved1)
1033        )
1034    );
1035    assert_eq!(
1036        unsafe { ::core::ptr::addr_of!((*ptr).display_area) as usize - ptr as usize },
1037        80usize,
1038        concat!(
1039            "Offset of field: ",
1040            stringify!(_CUVIDDECODECREATEINFO),
1041            "::",
1042            stringify!(display_area)
1043        )
1044    );
1045    assert_eq!(
1046        unsafe { ::core::ptr::addr_of!((*ptr).OutputFormat) as usize - ptr as usize },
1047        88usize,
1048        concat!(
1049            "Offset of field: ",
1050            stringify!(_CUVIDDECODECREATEINFO),
1051            "::",
1052            stringify!(OutputFormat)
1053        )
1054    );
1055    assert_eq!(
1056        unsafe { ::core::ptr::addr_of!((*ptr).DeinterlaceMode) as usize - ptr as usize },
1057        92usize,
1058        concat!(
1059            "Offset of field: ",
1060            stringify!(_CUVIDDECODECREATEINFO),
1061            "::",
1062            stringify!(DeinterlaceMode)
1063        )
1064    );
1065    assert_eq!(
1066        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetWidth) as usize - ptr as usize },
1067        96usize,
1068        concat!(
1069            "Offset of field: ",
1070            stringify!(_CUVIDDECODECREATEINFO),
1071            "::",
1072            stringify!(ulTargetWidth)
1073        )
1074    );
1075    assert_eq!(
1076        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetHeight) as usize - ptr as usize },
1077        104usize,
1078        concat!(
1079            "Offset of field: ",
1080            stringify!(_CUVIDDECODECREATEINFO),
1081            "::",
1082            stringify!(ulTargetHeight)
1083        )
1084    );
1085    assert_eq!(
1086        unsafe { ::core::ptr::addr_of!((*ptr).ulNumOutputSurfaces) as usize - ptr as usize },
1087        112usize,
1088        concat!(
1089            "Offset of field: ",
1090            stringify!(_CUVIDDECODECREATEINFO),
1091            "::",
1092            stringify!(ulNumOutputSurfaces)
1093        )
1094    );
1095    assert_eq!(
1096        unsafe { ::core::ptr::addr_of!((*ptr).vidLock) as usize - ptr as usize },
1097        120usize,
1098        concat!(
1099            "Offset of field: ",
1100            stringify!(_CUVIDDECODECREATEINFO),
1101            "::",
1102            stringify!(vidLock)
1103        )
1104    );
1105    assert_eq!(
1106        unsafe { ::core::ptr::addr_of!((*ptr).target_rect) as usize - ptr as usize },
1107        128usize,
1108        concat!(
1109            "Offset of field: ",
1110            stringify!(_CUVIDDECODECREATEINFO),
1111            "::",
1112            stringify!(target_rect)
1113        )
1114    );
1115    assert_eq!(
1116        unsafe { ::core::ptr::addr_of!((*ptr).enableHistogram) as usize - ptr as usize },
1117        136usize,
1118        concat!(
1119            "Offset of field: ",
1120            stringify!(_CUVIDDECODECREATEINFO),
1121            "::",
1122            stringify!(enableHistogram)
1123        )
1124    );
1125    assert_eq!(
1126        unsafe { ::core::ptr::addr_of!((*ptr).Reserved2) as usize - ptr as usize },
1127        144usize,
1128        concat!(
1129            "Offset of field: ",
1130            stringify!(_CUVIDDECODECREATEINFO),
1131            "::",
1132            stringify!(Reserved2)
1133        )
1134    );
1135}
1136#[test]
1137fn bindgen_test_layout__CUVIDH264DPBENTRY() {
1138    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264DPBENTRY> = ::core::mem::MaybeUninit::uninit();
1139    let ptr = UNINIT.as_ptr();
1140    assert_eq!(
1141        ::core::mem::size_of::<_CUVIDH264DPBENTRY>(),
1142        28usize,
1143        concat!("Size of: ", stringify!(_CUVIDH264DPBENTRY))
1144    );
1145    assert_eq!(
1146        ::core::mem::align_of::<_CUVIDH264DPBENTRY>(),
1147        4usize,
1148        concat!("Alignment of ", stringify!(_CUVIDH264DPBENTRY))
1149    );
1150    assert_eq!(
1151        unsafe { ::core::ptr::addr_of!((*ptr).PicIdx) as usize - ptr as usize },
1152        0usize,
1153        concat!(
1154            "Offset of field: ",
1155            stringify!(_CUVIDH264DPBENTRY),
1156            "::",
1157            stringify!(PicIdx)
1158        )
1159    );
1160    assert_eq!(
1161        unsafe { ::core::ptr::addr_of!((*ptr).FrameIdx) as usize - ptr as usize },
1162        4usize,
1163        concat!(
1164            "Offset of field: ",
1165            stringify!(_CUVIDH264DPBENTRY),
1166            "::",
1167            stringify!(FrameIdx)
1168        )
1169    );
1170    assert_eq!(
1171        unsafe { ::core::ptr::addr_of!((*ptr).is_long_term) as usize - ptr as usize },
1172        8usize,
1173        concat!(
1174            "Offset of field: ",
1175            stringify!(_CUVIDH264DPBENTRY),
1176            "::",
1177            stringify!(is_long_term)
1178        )
1179    );
1180    assert_eq!(
1181        unsafe { ::core::ptr::addr_of!((*ptr).not_existing) as usize - ptr as usize },
1182        12usize,
1183        concat!(
1184            "Offset of field: ",
1185            stringify!(_CUVIDH264DPBENTRY),
1186            "::",
1187            stringify!(not_existing)
1188        )
1189    );
1190    assert_eq!(
1191        unsafe { ::core::ptr::addr_of!((*ptr).used_for_reference) as usize - ptr as usize },
1192        16usize,
1193        concat!(
1194            "Offset of field: ",
1195            stringify!(_CUVIDH264DPBENTRY),
1196            "::",
1197            stringify!(used_for_reference)
1198        )
1199    );
1200    assert_eq!(
1201        unsafe { ::core::ptr::addr_of!((*ptr).FieldOrderCnt) as usize - ptr as usize },
1202        20usize,
1203        concat!(
1204            "Offset of field: ",
1205            stringify!(_CUVIDH264DPBENTRY),
1206            "::",
1207            stringify!(FieldOrderCnt)
1208        )
1209    );
1210}
1211#[test]
1212fn bindgen_test_layout__CUVIDH264MVCEXT() {
1213    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264MVCEXT> = ::core::mem::MaybeUninit::uninit();
1214    let ptr = UNINIT.as_ptr();
1215    assert_eq!(
1216        ::core::mem::size_of::<_CUVIDH264MVCEXT>(),
1217        140usize,
1218        concat!("Size of: ", stringify!(_CUVIDH264MVCEXT))
1219    );
1220    assert_eq!(
1221        ::core::mem::align_of::<_CUVIDH264MVCEXT>(),
1222        4usize,
1223        concat!("Alignment of ", stringify!(_CUVIDH264MVCEXT))
1224    );
1225    assert_eq!(
1226        unsafe { ::core::ptr::addr_of!((*ptr).num_views_minus1) as usize - ptr as usize },
1227        0usize,
1228        concat!(
1229            "Offset of field: ",
1230            stringify!(_CUVIDH264MVCEXT),
1231            "::",
1232            stringify!(num_views_minus1)
1233        )
1234    );
1235    assert_eq!(
1236        unsafe { ::core::ptr::addr_of!((*ptr).view_id) as usize - ptr as usize },
1237        4usize,
1238        concat!(
1239            "Offset of field: ",
1240            stringify!(_CUVIDH264MVCEXT),
1241            "::",
1242            stringify!(view_id)
1243        )
1244    );
1245    assert_eq!(
1246        unsafe { ::core::ptr::addr_of!((*ptr).inter_view_flag) as usize - ptr as usize },
1247        8usize,
1248        concat!(
1249            "Offset of field: ",
1250            stringify!(_CUVIDH264MVCEXT),
1251            "::",
1252            stringify!(inter_view_flag)
1253        )
1254    );
1255    assert_eq!(
1256        unsafe { ::core::ptr::addr_of!((*ptr).num_inter_view_refs_l0) as usize - ptr as usize },
1257        9usize,
1258        concat!(
1259            "Offset of field: ",
1260            stringify!(_CUVIDH264MVCEXT),
1261            "::",
1262            stringify!(num_inter_view_refs_l0)
1263        )
1264    );
1265    assert_eq!(
1266        unsafe { ::core::ptr::addr_of!((*ptr).num_inter_view_refs_l1) as usize - ptr as usize },
1267        10usize,
1268        concat!(
1269            "Offset of field: ",
1270            stringify!(_CUVIDH264MVCEXT),
1271            "::",
1272            stringify!(num_inter_view_refs_l1)
1273        )
1274    );
1275    assert_eq!(
1276        unsafe { ::core::ptr::addr_of!((*ptr).MVCReserved8Bits) as usize - ptr as usize },
1277        11usize,
1278        concat!(
1279            "Offset of field: ",
1280            stringify!(_CUVIDH264MVCEXT),
1281            "::",
1282            stringify!(MVCReserved8Bits)
1283        )
1284    );
1285    assert_eq!(
1286        unsafe { ::core::ptr::addr_of!((*ptr).InterViewRefsL0) as usize - ptr as usize },
1287        12usize,
1288        concat!(
1289            "Offset of field: ",
1290            stringify!(_CUVIDH264MVCEXT),
1291            "::",
1292            stringify!(InterViewRefsL0)
1293        )
1294    );
1295    assert_eq!(
1296        unsafe { ::core::ptr::addr_of!((*ptr).InterViewRefsL1) as usize - ptr as usize },
1297        76usize,
1298        concat!(
1299            "Offset of field: ",
1300            stringify!(_CUVIDH264MVCEXT),
1301            "::",
1302            stringify!(InterViewRefsL1)
1303        )
1304    );
1305}
1306#[test]
1307fn bindgen_test_layout__CUVIDH264SVCEXT() {
1308    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264SVCEXT> = ::core::mem::MaybeUninit::uninit();
1309    let ptr = UNINIT.as_ptr();
1310    assert_eq!(
1311        ::core::mem::size_of::<_CUVIDH264SVCEXT>(),
1312        48usize,
1313        concat!("Size of: ", stringify!(_CUVIDH264SVCEXT))
1314    );
1315    assert_eq!(
1316        ::core::mem::align_of::<_CUVIDH264SVCEXT>(),
1317        8usize,
1318        concat!("Alignment of ", stringify!(_CUVIDH264SVCEXT))
1319    );
1320    assert_eq!(
1321        unsafe { ::core::ptr::addr_of!((*ptr).profile_idc) as usize - ptr as usize },
1322        0usize,
1323        concat!(
1324            "Offset of field: ",
1325            stringify!(_CUVIDH264SVCEXT),
1326            "::",
1327            stringify!(profile_idc)
1328        )
1329    );
1330    assert_eq!(
1331        unsafe { ::core::ptr::addr_of!((*ptr).level_idc) as usize - ptr as usize },
1332        1usize,
1333        concat!(
1334            "Offset of field: ",
1335            stringify!(_CUVIDH264SVCEXT),
1336            "::",
1337            stringify!(level_idc)
1338        )
1339    );
1340    assert_eq!(
1341        unsafe { ::core::ptr::addr_of!((*ptr).DQId) as usize - ptr as usize },
1342        2usize,
1343        concat!(
1344            "Offset of field: ",
1345            stringify!(_CUVIDH264SVCEXT),
1346            "::",
1347            stringify!(DQId)
1348        )
1349    );
1350    assert_eq!(
1351        unsafe { ::core::ptr::addr_of!((*ptr).DQIdMax) as usize - ptr as usize },
1352        3usize,
1353        concat!(
1354            "Offset of field: ",
1355            stringify!(_CUVIDH264SVCEXT),
1356            "::",
1357            stringify!(DQIdMax)
1358        )
1359    );
1360    assert_eq!(
1361        unsafe {
1362            ::core::ptr::addr_of!((*ptr).disable_inter_layer_deblocking_filter_idc) as usize
1363                - ptr as usize
1364        },
1365        4usize,
1366        concat!(
1367            "Offset of field: ",
1368            stringify!(_CUVIDH264SVCEXT),
1369            "::",
1370            stringify!(disable_inter_layer_deblocking_filter_idc)
1371        )
1372    );
1373    assert_eq!(
1374        unsafe {
1375            ::core::ptr::addr_of!((*ptr).ref_layer_chroma_phase_y_plus1) as usize - ptr as usize
1376        },
1377        5usize,
1378        concat!(
1379            "Offset of field: ",
1380            stringify!(_CUVIDH264SVCEXT),
1381            "::",
1382            stringify!(ref_layer_chroma_phase_y_plus1)
1383        )
1384    );
1385    assert_eq!(
1386        unsafe {
1387            ::core::ptr::addr_of!((*ptr).inter_layer_slice_alpha_c0_offset_div2) as usize
1388                - ptr as usize
1389        },
1390        6usize,
1391        concat!(
1392            "Offset of field: ",
1393            stringify!(_CUVIDH264SVCEXT),
1394            "::",
1395            stringify!(inter_layer_slice_alpha_c0_offset_div2)
1396        )
1397    );
1398    assert_eq!(
1399        unsafe {
1400            ::core::ptr::addr_of!((*ptr).inter_layer_slice_beta_offset_div2) as usize - ptr as usize
1401        },
1402        7usize,
1403        concat!(
1404            "Offset of field: ",
1405            stringify!(_CUVIDH264SVCEXT),
1406            "::",
1407            stringify!(inter_layer_slice_beta_offset_div2)
1408        )
1409    );
1410    assert_eq!(
1411        unsafe { ::core::ptr::addr_of!((*ptr).DPBEntryValidFlag) as usize - ptr as usize },
1412        8usize,
1413        concat!(
1414            "Offset of field: ",
1415            stringify!(_CUVIDH264SVCEXT),
1416            "::",
1417            stringify!(DPBEntryValidFlag)
1418        )
1419    );
1420    assert_eq!(
1421        unsafe {
1422            ::core::ptr::addr_of!((*ptr).inter_layer_deblocking_filter_control_present_flag)
1423                as usize
1424                - ptr as usize
1425        },
1426        10usize,
1427        concat!(
1428            "Offset of field: ",
1429            stringify!(_CUVIDH264SVCEXT),
1430            "::",
1431            stringify!(inter_layer_deblocking_filter_control_present_flag)
1432        )
1433    );
1434    assert_eq!(
1435        unsafe {
1436            ::core::ptr::addr_of!((*ptr).extended_spatial_scalability_idc) as usize - ptr as usize
1437        },
1438        11usize,
1439        concat!(
1440            "Offset of field: ",
1441            stringify!(_CUVIDH264SVCEXT),
1442            "::",
1443            stringify!(extended_spatial_scalability_idc)
1444        )
1445    );
1446    assert_eq!(
1447        unsafe {
1448            ::core::ptr::addr_of!((*ptr).adaptive_tcoeff_level_prediction_flag) as usize
1449                - ptr as usize
1450        },
1451        12usize,
1452        concat!(
1453            "Offset of field: ",
1454            stringify!(_CUVIDH264SVCEXT),
1455            "::",
1456            stringify!(adaptive_tcoeff_level_prediction_flag)
1457        )
1458    );
1459    assert_eq!(
1460        unsafe {
1461            ::core::ptr::addr_of!((*ptr).slice_header_restriction_flag) as usize - ptr as usize
1462        },
1463        13usize,
1464        concat!(
1465            "Offset of field: ",
1466            stringify!(_CUVIDH264SVCEXT),
1467            "::",
1468            stringify!(slice_header_restriction_flag)
1469        )
1470    );
1471    assert_eq!(
1472        unsafe { ::core::ptr::addr_of!((*ptr).chroma_phase_x_plus1_flag) as usize - ptr as usize },
1473        14usize,
1474        concat!(
1475            "Offset of field: ",
1476            stringify!(_CUVIDH264SVCEXT),
1477            "::",
1478            stringify!(chroma_phase_x_plus1_flag)
1479        )
1480    );
1481    assert_eq!(
1482        unsafe { ::core::ptr::addr_of!((*ptr).chroma_phase_y_plus1) as usize - ptr as usize },
1483        15usize,
1484        concat!(
1485            "Offset of field: ",
1486            stringify!(_CUVIDH264SVCEXT),
1487            "::",
1488            stringify!(chroma_phase_y_plus1)
1489        )
1490    );
1491    assert_eq!(
1492        unsafe {
1493            ::core::ptr::addr_of!((*ptr).tcoeff_level_prediction_flag) as usize - ptr as usize
1494        },
1495        16usize,
1496        concat!(
1497            "Offset of field: ",
1498            stringify!(_CUVIDH264SVCEXT),
1499            "::",
1500            stringify!(tcoeff_level_prediction_flag)
1501        )
1502    );
1503    assert_eq!(
1504        unsafe {
1505            ::core::ptr::addr_of!((*ptr).constrained_intra_resampling_flag) as usize - ptr as usize
1506        },
1507        17usize,
1508        concat!(
1509            "Offset of field: ",
1510            stringify!(_CUVIDH264SVCEXT),
1511            "::",
1512            stringify!(constrained_intra_resampling_flag)
1513        )
1514    );
1515    assert_eq!(
1516        unsafe {
1517            ::core::ptr::addr_of!((*ptr).ref_layer_chroma_phase_x_plus1_flag) as usize
1518                - ptr as usize
1519        },
1520        18usize,
1521        concat!(
1522            "Offset of field: ",
1523            stringify!(_CUVIDH264SVCEXT),
1524            "::",
1525            stringify!(ref_layer_chroma_phase_x_plus1_flag)
1526        )
1527    );
1528    assert_eq!(
1529        unsafe { ::core::ptr::addr_of!((*ptr).store_ref_base_pic_flag) as usize - ptr as usize },
1530        19usize,
1531        concat!(
1532            "Offset of field: ",
1533            stringify!(_CUVIDH264SVCEXT),
1534            "::",
1535            stringify!(store_ref_base_pic_flag)
1536        )
1537    );
1538    assert_eq!(
1539        unsafe { ::core::ptr::addr_of!((*ptr).Reserved8BitsA) as usize - ptr as usize },
1540        20usize,
1541        concat!(
1542            "Offset of field: ",
1543            stringify!(_CUVIDH264SVCEXT),
1544            "::",
1545            stringify!(Reserved8BitsA)
1546        )
1547    );
1548    assert_eq!(
1549        unsafe { ::core::ptr::addr_of!((*ptr).Reserved8BitsB) as usize - ptr as usize },
1550        21usize,
1551        concat!(
1552            "Offset of field: ",
1553            stringify!(_CUVIDH264SVCEXT),
1554            "::",
1555            stringify!(Reserved8BitsB)
1556        )
1557    );
1558    assert_eq!(
1559        unsafe {
1560            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_left_offset) as usize - ptr as usize
1561        },
1562        22usize,
1563        concat!(
1564            "Offset of field: ",
1565            stringify!(_CUVIDH264SVCEXT),
1566            "::",
1567            stringify!(scaled_ref_layer_left_offset)
1568        )
1569    );
1570    assert_eq!(
1571        unsafe {
1572            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_top_offset) as usize - ptr as usize
1573        },
1574        24usize,
1575        concat!(
1576            "Offset of field: ",
1577            stringify!(_CUVIDH264SVCEXT),
1578            "::",
1579            stringify!(scaled_ref_layer_top_offset)
1580        )
1581    );
1582    assert_eq!(
1583        unsafe {
1584            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_right_offset) as usize - ptr as usize
1585        },
1586        26usize,
1587        concat!(
1588            "Offset of field: ",
1589            stringify!(_CUVIDH264SVCEXT),
1590            "::",
1591            stringify!(scaled_ref_layer_right_offset)
1592        )
1593    );
1594    assert_eq!(
1595        unsafe {
1596            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_bottom_offset) as usize - ptr as usize
1597        },
1598        28usize,
1599        concat!(
1600            "Offset of field: ",
1601            stringify!(_CUVIDH264SVCEXT),
1602            "::",
1603            stringify!(scaled_ref_layer_bottom_offset)
1604        )
1605    );
1606    assert_eq!(
1607        unsafe { ::core::ptr::addr_of!((*ptr).Reserved16Bits) as usize - ptr as usize },
1608        30usize,
1609        concat!(
1610            "Offset of field: ",
1611            stringify!(_CUVIDH264SVCEXT),
1612            "::",
1613            stringify!(Reserved16Bits)
1614        )
1615    );
1616    assert_eq!(
1617        unsafe { ::core::ptr::addr_of!((*ptr).pNextLayer) as usize - ptr as usize },
1618        32usize,
1619        concat!(
1620            "Offset of field: ",
1621            stringify!(_CUVIDH264SVCEXT),
1622            "::",
1623            stringify!(pNextLayer)
1624        )
1625    );
1626    assert_eq!(
1627        unsafe { ::core::ptr::addr_of!((*ptr).bRefBaseLayer) as usize - ptr as usize },
1628        40usize,
1629        concat!(
1630            "Offset of field: ",
1631            stringify!(_CUVIDH264SVCEXT),
1632            "::",
1633            stringify!(bRefBaseLayer)
1634        )
1635    );
1636}
1637#[test]
1638fn bindgen_test_layout__CUVIDH264PICPARAMS__bindgen_ty_1() {
1639    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264PICPARAMS__bindgen_ty_1> =
1640        ::core::mem::MaybeUninit::uninit();
1641    let ptr = UNINIT.as_ptr();
1642    assert_eq!(
1643        ::core::mem::size_of::<_CUVIDH264PICPARAMS__bindgen_ty_1>(),
1644        8usize,
1645        concat!("Size of: ", stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1))
1646    );
1647    assert_eq!(
1648        ::core::mem::align_of::<_CUVIDH264PICPARAMS__bindgen_ty_1>(),
1649        8usize,
1650        concat!(
1651            "Alignment of ",
1652            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1)
1653        )
1654    );
1655    assert_eq!(
1656        unsafe { ::core::ptr::addr_of!((*ptr).slice_group_map_addr) as usize - ptr as usize },
1657        0usize,
1658        concat!(
1659            "Offset of field: ",
1660            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1),
1661            "::",
1662            stringify!(slice_group_map_addr)
1663        )
1664    );
1665    assert_eq!(
1666        unsafe { ::core::ptr::addr_of!((*ptr).pMb2SliceGroupMap) as usize - ptr as usize },
1667        0usize,
1668        concat!(
1669            "Offset of field: ",
1670            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1),
1671            "::",
1672            stringify!(pMb2SliceGroupMap)
1673        )
1674    );
1675}
1676#[test]
1677fn bindgen_test_layout__CUVIDH264PICPARAMS__bindgen_ty_2() {
1678    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264PICPARAMS__bindgen_ty_2> =
1679        ::core::mem::MaybeUninit::uninit();
1680    let ptr = UNINIT.as_ptr();
1681    assert_eq!(
1682        ::core::mem::size_of::<_CUVIDH264PICPARAMS__bindgen_ty_2>(),
1683        144usize,
1684        concat!("Size of: ", stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2))
1685    );
1686    assert_eq!(
1687        ::core::mem::align_of::<_CUVIDH264PICPARAMS__bindgen_ty_2>(),
1688        8usize,
1689        concat!(
1690            "Alignment of ",
1691            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2)
1692        )
1693    );
1694    assert_eq!(
1695        unsafe { ::core::ptr::addr_of!((*ptr).mvcext) as usize - ptr as usize },
1696        0usize,
1697        concat!(
1698            "Offset of field: ",
1699            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2),
1700            "::",
1701            stringify!(mvcext)
1702        )
1703    );
1704    assert_eq!(
1705        unsafe { ::core::ptr::addr_of!((*ptr).svcext) as usize - ptr as usize },
1706        0usize,
1707        concat!(
1708            "Offset of field: ",
1709            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2),
1710            "::",
1711            stringify!(svcext)
1712        )
1713    );
1714}
1715#[test]
1716fn bindgen_test_layout__CUVIDH264PICPARAMS() {
1717    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264PICPARAMS> =
1718        ::core::mem::MaybeUninit::uninit();
1719    let ptr = UNINIT.as_ptr();
1720    assert_eq!(
1721        ::core::mem::size_of::<_CUVIDH264PICPARAMS>(),
1722        984usize,
1723        concat!("Size of: ", stringify!(_CUVIDH264PICPARAMS))
1724    );
1725    assert_eq!(
1726        ::core::mem::align_of::<_CUVIDH264PICPARAMS>(),
1727        8usize,
1728        concat!("Alignment of ", stringify!(_CUVIDH264PICPARAMS))
1729    );
1730    assert_eq!(
1731        unsafe { ::core::ptr::addr_of!((*ptr).log2_max_frame_num_minus4) as usize - ptr as usize },
1732        0usize,
1733        concat!(
1734            "Offset of field: ",
1735            stringify!(_CUVIDH264PICPARAMS),
1736            "::",
1737            stringify!(log2_max_frame_num_minus4)
1738        )
1739    );
1740    assert_eq!(
1741        unsafe { ::core::ptr::addr_of!((*ptr).pic_order_cnt_type) as usize - ptr as usize },
1742        4usize,
1743        concat!(
1744            "Offset of field: ",
1745            stringify!(_CUVIDH264PICPARAMS),
1746            "::",
1747            stringify!(pic_order_cnt_type)
1748        )
1749    );
1750    assert_eq!(
1751        unsafe {
1752            ::core::ptr::addr_of!((*ptr).log2_max_pic_order_cnt_lsb_minus4) as usize - ptr as usize
1753        },
1754        8usize,
1755        concat!(
1756            "Offset of field: ",
1757            stringify!(_CUVIDH264PICPARAMS),
1758            "::",
1759            stringify!(log2_max_pic_order_cnt_lsb_minus4)
1760        )
1761    );
1762    assert_eq!(
1763        unsafe {
1764            ::core::ptr::addr_of!((*ptr).delta_pic_order_always_zero_flag) as usize - ptr as usize
1765        },
1766        12usize,
1767        concat!(
1768            "Offset of field: ",
1769            stringify!(_CUVIDH264PICPARAMS),
1770            "::",
1771            stringify!(delta_pic_order_always_zero_flag)
1772        )
1773    );
1774    assert_eq!(
1775        unsafe { ::core::ptr::addr_of!((*ptr).frame_mbs_only_flag) as usize - ptr as usize },
1776        16usize,
1777        concat!(
1778            "Offset of field: ",
1779            stringify!(_CUVIDH264PICPARAMS),
1780            "::",
1781            stringify!(frame_mbs_only_flag)
1782        )
1783    );
1784    assert_eq!(
1785        unsafe { ::core::ptr::addr_of!((*ptr).direct_8x8_inference_flag) as usize - ptr as usize },
1786        20usize,
1787        concat!(
1788            "Offset of field: ",
1789            stringify!(_CUVIDH264PICPARAMS),
1790            "::",
1791            stringify!(direct_8x8_inference_flag)
1792        )
1793    );
1794    assert_eq!(
1795        unsafe { ::core::ptr::addr_of!((*ptr).num_ref_frames) as usize - ptr as usize },
1796        24usize,
1797        concat!(
1798            "Offset of field: ",
1799            stringify!(_CUVIDH264PICPARAMS),
1800            "::",
1801            stringify!(num_ref_frames)
1802        )
1803    );
1804    assert_eq!(
1805        unsafe {
1806            ::core::ptr::addr_of!((*ptr).residual_colour_transform_flag) as usize - ptr as usize
1807        },
1808        28usize,
1809        concat!(
1810            "Offset of field: ",
1811            stringify!(_CUVIDH264PICPARAMS),
1812            "::",
1813            stringify!(residual_colour_transform_flag)
1814        )
1815    );
1816    assert_eq!(
1817        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_luma_minus8) as usize - ptr as usize },
1818        29usize,
1819        concat!(
1820            "Offset of field: ",
1821            stringify!(_CUVIDH264PICPARAMS),
1822            "::",
1823            stringify!(bit_depth_luma_minus8)
1824        )
1825    );
1826    assert_eq!(
1827        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_chroma_minus8) as usize - ptr as usize },
1828        30usize,
1829        concat!(
1830            "Offset of field: ",
1831            stringify!(_CUVIDH264PICPARAMS),
1832            "::",
1833            stringify!(bit_depth_chroma_minus8)
1834        )
1835    );
1836    assert_eq!(
1837        unsafe {
1838            ::core::ptr::addr_of!((*ptr).qpprime_y_zero_transform_bypass_flag) as usize
1839                - ptr as usize
1840        },
1841        31usize,
1842        concat!(
1843            "Offset of field: ",
1844            stringify!(_CUVIDH264PICPARAMS),
1845            "::",
1846            stringify!(qpprime_y_zero_transform_bypass_flag)
1847        )
1848    );
1849    assert_eq!(
1850        unsafe { ::core::ptr::addr_of!((*ptr).entropy_coding_mode_flag) as usize - ptr as usize },
1851        32usize,
1852        concat!(
1853            "Offset of field: ",
1854            stringify!(_CUVIDH264PICPARAMS),
1855            "::",
1856            stringify!(entropy_coding_mode_flag)
1857        )
1858    );
1859    assert_eq!(
1860        unsafe { ::core::ptr::addr_of!((*ptr).pic_order_present_flag) as usize - ptr as usize },
1861        36usize,
1862        concat!(
1863            "Offset of field: ",
1864            stringify!(_CUVIDH264PICPARAMS),
1865            "::",
1866            stringify!(pic_order_present_flag)
1867        )
1868    );
1869    assert_eq!(
1870        unsafe {
1871            ::core::ptr::addr_of!((*ptr).num_ref_idx_l0_active_minus1) as usize - ptr as usize
1872        },
1873        40usize,
1874        concat!(
1875            "Offset of field: ",
1876            stringify!(_CUVIDH264PICPARAMS),
1877            "::",
1878            stringify!(num_ref_idx_l0_active_minus1)
1879        )
1880    );
1881    assert_eq!(
1882        unsafe {
1883            ::core::ptr::addr_of!((*ptr).num_ref_idx_l1_active_minus1) as usize - ptr as usize
1884        },
1885        44usize,
1886        concat!(
1887            "Offset of field: ",
1888            stringify!(_CUVIDH264PICPARAMS),
1889            "::",
1890            stringify!(num_ref_idx_l1_active_minus1)
1891        )
1892    );
1893    assert_eq!(
1894        unsafe { ::core::ptr::addr_of!((*ptr).weighted_pred_flag) as usize - ptr as usize },
1895        48usize,
1896        concat!(
1897            "Offset of field: ",
1898            stringify!(_CUVIDH264PICPARAMS),
1899            "::",
1900            stringify!(weighted_pred_flag)
1901        )
1902    );
1903    assert_eq!(
1904        unsafe { ::core::ptr::addr_of!((*ptr).weighted_bipred_idc) as usize - ptr as usize },
1905        52usize,
1906        concat!(
1907            "Offset of field: ",
1908            stringify!(_CUVIDH264PICPARAMS),
1909            "::",
1910            stringify!(weighted_bipred_idc)
1911        )
1912    );
1913    assert_eq!(
1914        unsafe { ::core::ptr::addr_of!((*ptr).pic_init_qp_minus26) as usize - ptr as usize },
1915        56usize,
1916        concat!(
1917            "Offset of field: ",
1918            stringify!(_CUVIDH264PICPARAMS),
1919            "::",
1920            stringify!(pic_init_qp_minus26)
1921        )
1922    );
1923    assert_eq!(
1924        unsafe {
1925            ::core::ptr::addr_of!((*ptr).deblocking_filter_control_present_flag) as usize
1926                - ptr as usize
1927        },
1928        60usize,
1929        concat!(
1930            "Offset of field: ",
1931            stringify!(_CUVIDH264PICPARAMS),
1932            "::",
1933            stringify!(deblocking_filter_control_present_flag)
1934        )
1935    );
1936    assert_eq!(
1937        unsafe {
1938            ::core::ptr::addr_of!((*ptr).redundant_pic_cnt_present_flag) as usize - ptr as usize
1939        },
1940        64usize,
1941        concat!(
1942            "Offset of field: ",
1943            stringify!(_CUVIDH264PICPARAMS),
1944            "::",
1945            stringify!(redundant_pic_cnt_present_flag)
1946        )
1947    );
1948    assert_eq!(
1949        unsafe { ::core::ptr::addr_of!((*ptr).transform_8x8_mode_flag) as usize - ptr as usize },
1950        68usize,
1951        concat!(
1952            "Offset of field: ",
1953            stringify!(_CUVIDH264PICPARAMS),
1954            "::",
1955            stringify!(transform_8x8_mode_flag)
1956        )
1957    );
1958    assert_eq!(
1959        unsafe { ::core::ptr::addr_of!((*ptr).MbaffFrameFlag) as usize - ptr as usize },
1960        72usize,
1961        concat!(
1962            "Offset of field: ",
1963            stringify!(_CUVIDH264PICPARAMS),
1964            "::",
1965            stringify!(MbaffFrameFlag)
1966        )
1967    );
1968    assert_eq!(
1969        unsafe {
1970            ::core::ptr::addr_of!((*ptr).constrained_intra_pred_flag) as usize - ptr as usize
1971        },
1972        76usize,
1973        concat!(
1974            "Offset of field: ",
1975            stringify!(_CUVIDH264PICPARAMS),
1976            "::",
1977            stringify!(constrained_intra_pred_flag)
1978        )
1979    );
1980    assert_eq!(
1981        unsafe { ::core::ptr::addr_of!((*ptr).chroma_qp_index_offset) as usize - ptr as usize },
1982        80usize,
1983        concat!(
1984            "Offset of field: ",
1985            stringify!(_CUVIDH264PICPARAMS),
1986            "::",
1987            stringify!(chroma_qp_index_offset)
1988        )
1989    );
1990    assert_eq!(
1991        unsafe {
1992            ::core::ptr::addr_of!((*ptr).second_chroma_qp_index_offset) as usize - ptr as usize
1993        },
1994        84usize,
1995        concat!(
1996            "Offset of field: ",
1997            stringify!(_CUVIDH264PICPARAMS),
1998            "::",
1999            stringify!(second_chroma_qp_index_offset)
2000        )
2001    );
2002    assert_eq!(
2003        unsafe { ::core::ptr::addr_of!((*ptr).ref_pic_flag) as usize - ptr as usize },
2004        88usize,
2005        concat!(
2006            "Offset of field: ",
2007            stringify!(_CUVIDH264PICPARAMS),
2008            "::",
2009            stringify!(ref_pic_flag)
2010        )
2011    );
2012    assert_eq!(
2013        unsafe { ::core::ptr::addr_of!((*ptr).frame_num) as usize - ptr as usize },
2014        92usize,
2015        concat!(
2016            "Offset of field: ",
2017            stringify!(_CUVIDH264PICPARAMS),
2018            "::",
2019            stringify!(frame_num)
2020        )
2021    );
2022    assert_eq!(
2023        unsafe { ::core::ptr::addr_of!((*ptr).CurrFieldOrderCnt) as usize - ptr as usize },
2024        96usize,
2025        concat!(
2026            "Offset of field: ",
2027            stringify!(_CUVIDH264PICPARAMS),
2028            "::",
2029            stringify!(CurrFieldOrderCnt)
2030        )
2031    );
2032    assert_eq!(
2033        unsafe { ::core::ptr::addr_of!((*ptr).dpb) as usize - ptr as usize },
2034        104usize,
2035        concat!(
2036            "Offset of field: ",
2037            stringify!(_CUVIDH264PICPARAMS),
2038            "::",
2039            stringify!(dpb)
2040        )
2041    );
2042    assert_eq!(
2043        unsafe { ::core::ptr::addr_of!((*ptr).WeightScale4x4) as usize - ptr as usize },
2044        552usize,
2045        concat!(
2046            "Offset of field: ",
2047            stringify!(_CUVIDH264PICPARAMS),
2048            "::",
2049            stringify!(WeightScale4x4)
2050        )
2051    );
2052    assert_eq!(
2053        unsafe { ::core::ptr::addr_of!((*ptr).WeightScale8x8) as usize - ptr as usize },
2054        648usize,
2055        concat!(
2056            "Offset of field: ",
2057            stringify!(_CUVIDH264PICPARAMS),
2058            "::",
2059            stringify!(WeightScale8x8)
2060        )
2061    );
2062    assert_eq!(
2063        unsafe { ::core::ptr::addr_of!((*ptr).fmo_aso_enable) as usize - ptr as usize },
2064        776usize,
2065        concat!(
2066            "Offset of field: ",
2067            stringify!(_CUVIDH264PICPARAMS),
2068            "::",
2069            stringify!(fmo_aso_enable)
2070        )
2071    );
2072    assert_eq!(
2073        unsafe { ::core::ptr::addr_of!((*ptr).num_slice_groups_minus1) as usize - ptr as usize },
2074        777usize,
2075        concat!(
2076            "Offset of field: ",
2077            stringify!(_CUVIDH264PICPARAMS),
2078            "::",
2079            stringify!(num_slice_groups_minus1)
2080        )
2081    );
2082    assert_eq!(
2083        unsafe { ::core::ptr::addr_of!((*ptr).slice_group_map_type) as usize - ptr as usize },
2084        778usize,
2085        concat!(
2086            "Offset of field: ",
2087            stringify!(_CUVIDH264PICPARAMS),
2088            "::",
2089            stringify!(slice_group_map_type)
2090        )
2091    );
2092    assert_eq!(
2093        unsafe { ::core::ptr::addr_of!((*ptr).pic_init_qs_minus26) as usize - ptr as usize },
2094        779usize,
2095        concat!(
2096            "Offset of field: ",
2097            stringify!(_CUVIDH264PICPARAMS),
2098            "::",
2099            stringify!(pic_init_qs_minus26)
2100        )
2101    );
2102    assert_eq!(
2103        unsafe {
2104            ::core::ptr::addr_of!((*ptr).slice_group_change_rate_minus1) as usize - ptr as usize
2105        },
2106        780usize,
2107        concat!(
2108            "Offset of field: ",
2109            stringify!(_CUVIDH264PICPARAMS),
2110            "::",
2111            stringify!(slice_group_change_rate_minus1)
2112        )
2113    );
2114    assert_eq!(
2115        unsafe { ::core::ptr::addr_of!((*ptr).fmo) as usize - ptr as usize },
2116        784usize,
2117        concat!(
2118            "Offset of field: ",
2119            stringify!(_CUVIDH264PICPARAMS),
2120            "::",
2121            stringify!(fmo)
2122        )
2123    );
2124    assert_eq!(
2125        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
2126        792usize,
2127        concat!(
2128            "Offset of field: ",
2129            stringify!(_CUVIDH264PICPARAMS),
2130            "::",
2131            stringify!(Reserved)
2132        )
2133    );
2134}
2135#[test]
2136fn bindgen_test_layout__CUVIDMPEG2PICPARAMS() {
2137    const UNINIT: ::core::mem::MaybeUninit<_CUVIDMPEG2PICPARAMS> =
2138        ::core::mem::MaybeUninit::uninit();
2139    let ptr = UNINIT.as_ptr();
2140    assert_eq!(
2141        ::core::mem::size_of::<_CUVIDMPEG2PICPARAMS>(),
2142        192usize,
2143        concat!("Size of: ", stringify!(_CUVIDMPEG2PICPARAMS))
2144    );
2145    assert_eq!(
2146        ::core::mem::align_of::<_CUVIDMPEG2PICPARAMS>(),
2147        4usize,
2148        concat!("Alignment of ", stringify!(_CUVIDMPEG2PICPARAMS))
2149    );
2150    assert_eq!(
2151        unsafe { ::core::ptr::addr_of!((*ptr).ForwardRefIdx) as usize - ptr as usize },
2152        0usize,
2153        concat!(
2154            "Offset of field: ",
2155            stringify!(_CUVIDMPEG2PICPARAMS),
2156            "::",
2157            stringify!(ForwardRefIdx)
2158        )
2159    );
2160    assert_eq!(
2161        unsafe { ::core::ptr::addr_of!((*ptr).BackwardRefIdx) as usize - ptr as usize },
2162        4usize,
2163        concat!(
2164            "Offset of field: ",
2165            stringify!(_CUVIDMPEG2PICPARAMS),
2166            "::",
2167            stringify!(BackwardRefIdx)
2168        )
2169    );
2170    assert_eq!(
2171        unsafe { ::core::ptr::addr_of!((*ptr).picture_coding_type) as usize - ptr as usize },
2172        8usize,
2173        concat!(
2174            "Offset of field: ",
2175            stringify!(_CUVIDMPEG2PICPARAMS),
2176            "::",
2177            stringify!(picture_coding_type)
2178        )
2179    );
2180    assert_eq!(
2181        unsafe { ::core::ptr::addr_of!((*ptr).full_pel_forward_vector) as usize - ptr as usize },
2182        12usize,
2183        concat!(
2184            "Offset of field: ",
2185            stringify!(_CUVIDMPEG2PICPARAMS),
2186            "::",
2187            stringify!(full_pel_forward_vector)
2188        )
2189    );
2190    assert_eq!(
2191        unsafe { ::core::ptr::addr_of!((*ptr).full_pel_backward_vector) as usize - ptr as usize },
2192        16usize,
2193        concat!(
2194            "Offset of field: ",
2195            stringify!(_CUVIDMPEG2PICPARAMS),
2196            "::",
2197            stringify!(full_pel_backward_vector)
2198        )
2199    );
2200    assert_eq!(
2201        unsafe { ::core::ptr::addr_of!((*ptr).f_code) as usize - ptr as usize },
2202        20usize,
2203        concat!(
2204            "Offset of field: ",
2205            stringify!(_CUVIDMPEG2PICPARAMS),
2206            "::",
2207            stringify!(f_code)
2208        )
2209    );
2210    assert_eq!(
2211        unsafe { ::core::ptr::addr_of!((*ptr).intra_dc_precision) as usize - ptr as usize },
2212        36usize,
2213        concat!(
2214            "Offset of field: ",
2215            stringify!(_CUVIDMPEG2PICPARAMS),
2216            "::",
2217            stringify!(intra_dc_precision)
2218        )
2219    );
2220    assert_eq!(
2221        unsafe { ::core::ptr::addr_of!((*ptr).frame_pred_frame_dct) as usize - ptr as usize },
2222        40usize,
2223        concat!(
2224            "Offset of field: ",
2225            stringify!(_CUVIDMPEG2PICPARAMS),
2226            "::",
2227            stringify!(frame_pred_frame_dct)
2228        )
2229    );
2230    assert_eq!(
2231        unsafe { ::core::ptr::addr_of!((*ptr).concealment_motion_vectors) as usize - ptr as usize },
2232        44usize,
2233        concat!(
2234            "Offset of field: ",
2235            stringify!(_CUVIDMPEG2PICPARAMS),
2236            "::",
2237            stringify!(concealment_motion_vectors)
2238        )
2239    );
2240    assert_eq!(
2241        unsafe { ::core::ptr::addr_of!((*ptr).q_scale_type) as usize - ptr as usize },
2242        48usize,
2243        concat!(
2244            "Offset of field: ",
2245            stringify!(_CUVIDMPEG2PICPARAMS),
2246            "::",
2247            stringify!(q_scale_type)
2248        )
2249    );
2250    assert_eq!(
2251        unsafe { ::core::ptr::addr_of!((*ptr).intra_vlc_format) as usize - ptr as usize },
2252        52usize,
2253        concat!(
2254            "Offset of field: ",
2255            stringify!(_CUVIDMPEG2PICPARAMS),
2256            "::",
2257            stringify!(intra_vlc_format)
2258        )
2259    );
2260    assert_eq!(
2261        unsafe { ::core::ptr::addr_of!((*ptr).alternate_scan) as usize - ptr as usize },
2262        56usize,
2263        concat!(
2264            "Offset of field: ",
2265            stringify!(_CUVIDMPEG2PICPARAMS),
2266            "::",
2267            stringify!(alternate_scan)
2268        )
2269    );
2270    assert_eq!(
2271        unsafe { ::core::ptr::addr_of!((*ptr).top_field_first) as usize - ptr as usize },
2272        60usize,
2273        concat!(
2274            "Offset of field: ",
2275            stringify!(_CUVIDMPEG2PICPARAMS),
2276            "::",
2277            stringify!(top_field_first)
2278        )
2279    );
2280    assert_eq!(
2281        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixIntra) as usize - ptr as usize },
2282        64usize,
2283        concat!(
2284            "Offset of field: ",
2285            stringify!(_CUVIDMPEG2PICPARAMS),
2286            "::",
2287            stringify!(QuantMatrixIntra)
2288        )
2289    );
2290    assert_eq!(
2291        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixInter) as usize - ptr as usize },
2292        128usize,
2293        concat!(
2294            "Offset of field: ",
2295            stringify!(_CUVIDMPEG2PICPARAMS),
2296            "::",
2297            stringify!(QuantMatrixInter)
2298        )
2299    );
2300}
2301#[test]
2302fn bindgen_test_layout__CUVIDMPEG4PICPARAMS() {
2303    const UNINIT: ::core::mem::MaybeUninit<_CUVIDMPEG4PICPARAMS> =
2304        ::core::mem::MaybeUninit::uninit();
2305    let ptr = UNINIT.as_ptr();
2306    assert_eq!(
2307        ::core::mem::size_of::<_CUVIDMPEG4PICPARAMS>(),
2308        220usize,
2309        concat!("Size of: ", stringify!(_CUVIDMPEG4PICPARAMS))
2310    );
2311    assert_eq!(
2312        ::core::mem::align_of::<_CUVIDMPEG4PICPARAMS>(),
2313        4usize,
2314        concat!("Alignment of ", stringify!(_CUVIDMPEG4PICPARAMS))
2315    );
2316    assert_eq!(
2317        unsafe { ::core::ptr::addr_of!((*ptr).ForwardRefIdx) as usize - ptr as usize },
2318        0usize,
2319        concat!(
2320            "Offset of field: ",
2321            stringify!(_CUVIDMPEG4PICPARAMS),
2322            "::",
2323            stringify!(ForwardRefIdx)
2324        )
2325    );
2326    assert_eq!(
2327        unsafe { ::core::ptr::addr_of!((*ptr).BackwardRefIdx) as usize - ptr as usize },
2328        4usize,
2329        concat!(
2330            "Offset of field: ",
2331            stringify!(_CUVIDMPEG4PICPARAMS),
2332            "::",
2333            stringify!(BackwardRefIdx)
2334        )
2335    );
2336    assert_eq!(
2337        unsafe { ::core::ptr::addr_of!((*ptr).video_object_layer_width) as usize - ptr as usize },
2338        8usize,
2339        concat!(
2340            "Offset of field: ",
2341            stringify!(_CUVIDMPEG4PICPARAMS),
2342            "::",
2343            stringify!(video_object_layer_width)
2344        )
2345    );
2346    assert_eq!(
2347        unsafe { ::core::ptr::addr_of!((*ptr).video_object_layer_height) as usize - ptr as usize },
2348        12usize,
2349        concat!(
2350            "Offset of field: ",
2351            stringify!(_CUVIDMPEG4PICPARAMS),
2352            "::",
2353            stringify!(video_object_layer_height)
2354        )
2355    );
2356    assert_eq!(
2357        unsafe {
2358            ::core::ptr::addr_of!((*ptr).vop_time_increment_bitcount) as usize - ptr as usize
2359        },
2360        16usize,
2361        concat!(
2362            "Offset of field: ",
2363            stringify!(_CUVIDMPEG4PICPARAMS),
2364            "::",
2365            stringify!(vop_time_increment_bitcount)
2366        )
2367    );
2368    assert_eq!(
2369        unsafe { ::core::ptr::addr_of!((*ptr).top_field_first) as usize - ptr as usize },
2370        20usize,
2371        concat!(
2372            "Offset of field: ",
2373            stringify!(_CUVIDMPEG4PICPARAMS),
2374            "::",
2375            stringify!(top_field_first)
2376        )
2377    );
2378    assert_eq!(
2379        unsafe { ::core::ptr::addr_of!((*ptr).resync_marker_disable) as usize - ptr as usize },
2380        24usize,
2381        concat!(
2382            "Offset of field: ",
2383            stringify!(_CUVIDMPEG4PICPARAMS),
2384            "::",
2385            stringify!(resync_marker_disable)
2386        )
2387    );
2388    assert_eq!(
2389        unsafe { ::core::ptr::addr_of!((*ptr).quant_type) as usize - ptr as usize },
2390        28usize,
2391        concat!(
2392            "Offset of field: ",
2393            stringify!(_CUVIDMPEG4PICPARAMS),
2394            "::",
2395            stringify!(quant_type)
2396        )
2397    );
2398    assert_eq!(
2399        unsafe { ::core::ptr::addr_of!((*ptr).quarter_sample) as usize - ptr as usize },
2400        32usize,
2401        concat!(
2402            "Offset of field: ",
2403            stringify!(_CUVIDMPEG4PICPARAMS),
2404            "::",
2405            stringify!(quarter_sample)
2406        )
2407    );
2408    assert_eq!(
2409        unsafe { ::core::ptr::addr_of!((*ptr).short_video_header) as usize - ptr as usize },
2410        36usize,
2411        concat!(
2412            "Offset of field: ",
2413            stringify!(_CUVIDMPEG4PICPARAMS),
2414            "::",
2415            stringify!(short_video_header)
2416        )
2417    );
2418    assert_eq!(
2419        unsafe { ::core::ptr::addr_of!((*ptr).divx_flags) as usize - ptr as usize },
2420        40usize,
2421        concat!(
2422            "Offset of field: ",
2423            stringify!(_CUVIDMPEG4PICPARAMS),
2424            "::",
2425            stringify!(divx_flags)
2426        )
2427    );
2428    assert_eq!(
2429        unsafe { ::core::ptr::addr_of!((*ptr).vop_coding_type) as usize - ptr as usize },
2430        44usize,
2431        concat!(
2432            "Offset of field: ",
2433            stringify!(_CUVIDMPEG4PICPARAMS),
2434            "::",
2435            stringify!(vop_coding_type)
2436        )
2437    );
2438    assert_eq!(
2439        unsafe { ::core::ptr::addr_of!((*ptr).vop_coded) as usize - ptr as usize },
2440        48usize,
2441        concat!(
2442            "Offset of field: ",
2443            stringify!(_CUVIDMPEG4PICPARAMS),
2444            "::",
2445            stringify!(vop_coded)
2446        )
2447    );
2448    assert_eq!(
2449        unsafe { ::core::ptr::addr_of!((*ptr).vop_rounding_type) as usize - ptr as usize },
2450        52usize,
2451        concat!(
2452            "Offset of field: ",
2453            stringify!(_CUVIDMPEG4PICPARAMS),
2454            "::",
2455            stringify!(vop_rounding_type)
2456        )
2457    );
2458    assert_eq!(
2459        unsafe {
2460            ::core::ptr::addr_of!((*ptr).alternate_vertical_scan_flag) as usize - ptr as usize
2461        },
2462        56usize,
2463        concat!(
2464            "Offset of field: ",
2465            stringify!(_CUVIDMPEG4PICPARAMS),
2466            "::",
2467            stringify!(alternate_vertical_scan_flag)
2468        )
2469    );
2470    assert_eq!(
2471        unsafe { ::core::ptr::addr_of!((*ptr).interlaced) as usize - ptr as usize },
2472        60usize,
2473        concat!(
2474            "Offset of field: ",
2475            stringify!(_CUVIDMPEG4PICPARAMS),
2476            "::",
2477            stringify!(interlaced)
2478        )
2479    );
2480    assert_eq!(
2481        unsafe { ::core::ptr::addr_of!((*ptr).vop_fcode_forward) as usize - ptr as usize },
2482        64usize,
2483        concat!(
2484            "Offset of field: ",
2485            stringify!(_CUVIDMPEG4PICPARAMS),
2486            "::",
2487            stringify!(vop_fcode_forward)
2488        )
2489    );
2490    assert_eq!(
2491        unsafe { ::core::ptr::addr_of!((*ptr).vop_fcode_backward) as usize - ptr as usize },
2492        68usize,
2493        concat!(
2494            "Offset of field: ",
2495            stringify!(_CUVIDMPEG4PICPARAMS),
2496            "::",
2497            stringify!(vop_fcode_backward)
2498        )
2499    );
2500    assert_eq!(
2501        unsafe { ::core::ptr::addr_of!((*ptr).trd) as usize - ptr as usize },
2502        72usize,
2503        concat!(
2504            "Offset of field: ",
2505            stringify!(_CUVIDMPEG4PICPARAMS),
2506            "::",
2507            stringify!(trd)
2508        )
2509    );
2510    assert_eq!(
2511        unsafe { ::core::ptr::addr_of!((*ptr).trb) as usize - ptr as usize },
2512        80usize,
2513        concat!(
2514            "Offset of field: ",
2515            stringify!(_CUVIDMPEG4PICPARAMS),
2516            "::",
2517            stringify!(trb)
2518        )
2519    );
2520    assert_eq!(
2521        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixIntra) as usize - ptr as usize },
2522        88usize,
2523        concat!(
2524            "Offset of field: ",
2525            stringify!(_CUVIDMPEG4PICPARAMS),
2526            "::",
2527            stringify!(QuantMatrixIntra)
2528        )
2529    );
2530    assert_eq!(
2531        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixInter) as usize - ptr as usize },
2532        152usize,
2533        concat!(
2534            "Offset of field: ",
2535            stringify!(_CUVIDMPEG4PICPARAMS),
2536            "::",
2537            stringify!(QuantMatrixInter)
2538        )
2539    );
2540    assert_eq!(
2541        unsafe { ::core::ptr::addr_of!((*ptr).gmc_enabled) as usize - ptr as usize },
2542        216usize,
2543        concat!(
2544            "Offset of field: ",
2545            stringify!(_CUVIDMPEG4PICPARAMS),
2546            "::",
2547            stringify!(gmc_enabled)
2548        )
2549    );
2550}
2551#[test]
2552fn bindgen_test_layout__CUVIDVC1PICPARAMS() {
2553    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVC1PICPARAMS> = ::core::mem::MaybeUninit::uninit();
2554    let ptr = UNINIT.as_ptr();
2555    assert_eq!(
2556        ::core::mem::size_of::<_CUVIDVC1PICPARAMS>(),
2557        132usize,
2558        concat!("Size of: ", stringify!(_CUVIDVC1PICPARAMS))
2559    );
2560    assert_eq!(
2561        ::core::mem::align_of::<_CUVIDVC1PICPARAMS>(),
2562        4usize,
2563        concat!("Alignment of ", stringify!(_CUVIDVC1PICPARAMS))
2564    );
2565    assert_eq!(
2566        unsafe { ::core::ptr::addr_of!((*ptr).ForwardRefIdx) as usize - ptr as usize },
2567        0usize,
2568        concat!(
2569            "Offset of field: ",
2570            stringify!(_CUVIDVC1PICPARAMS),
2571            "::",
2572            stringify!(ForwardRefIdx)
2573        )
2574    );
2575    assert_eq!(
2576        unsafe { ::core::ptr::addr_of!((*ptr).BackwardRefIdx) as usize - ptr as usize },
2577        4usize,
2578        concat!(
2579            "Offset of field: ",
2580            stringify!(_CUVIDVC1PICPARAMS),
2581            "::",
2582            stringify!(BackwardRefIdx)
2583        )
2584    );
2585    assert_eq!(
2586        unsafe { ::core::ptr::addr_of!((*ptr).FrameWidth) as usize - ptr as usize },
2587        8usize,
2588        concat!(
2589            "Offset of field: ",
2590            stringify!(_CUVIDVC1PICPARAMS),
2591            "::",
2592            stringify!(FrameWidth)
2593        )
2594    );
2595    assert_eq!(
2596        unsafe { ::core::ptr::addr_of!((*ptr).FrameHeight) as usize - ptr as usize },
2597        12usize,
2598        concat!(
2599            "Offset of field: ",
2600            stringify!(_CUVIDVC1PICPARAMS),
2601            "::",
2602            stringify!(FrameHeight)
2603        )
2604    );
2605    assert_eq!(
2606        unsafe { ::core::ptr::addr_of!((*ptr).intra_pic_flag) as usize - ptr as usize },
2607        16usize,
2608        concat!(
2609            "Offset of field: ",
2610            stringify!(_CUVIDVC1PICPARAMS),
2611            "::",
2612            stringify!(intra_pic_flag)
2613        )
2614    );
2615    assert_eq!(
2616        unsafe { ::core::ptr::addr_of!((*ptr).ref_pic_flag) as usize - ptr as usize },
2617        20usize,
2618        concat!(
2619            "Offset of field: ",
2620            stringify!(_CUVIDVC1PICPARAMS),
2621            "::",
2622            stringify!(ref_pic_flag)
2623        )
2624    );
2625    assert_eq!(
2626        unsafe { ::core::ptr::addr_of!((*ptr).progressive_fcm) as usize - ptr as usize },
2627        24usize,
2628        concat!(
2629            "Offset of field: ",
2630            stringify!(_CUVIDVC1PICPARAMS),
2631            "::",
2632            stringify!(progressive_fcm)
2633        )
2634    );
2635    assert_eq!(
2636        unsafe { ::core::ptr::addr_of!((*ptr).profile) as usize - ptr as usize },
2637        28usize,
2638        concat!(
2639            "Offset of field: ",
2640            stringify!(_CUVIDVC1PICPARAMS),
2641            "::",
2642            stringify!(profile)
2643        )
2644    );
2645    assert_eq!(
2646        unsafe { ::core::ptr::addr_of!((*ptr).postprocflag) as usize - ptr as usize },
2647        32usize,
2648        concat!(
2649            "Offset of field: ",
2650            stringify!(_CUVIDVC1PICPARAMS),
2651            "::",
2652            stringify!(postprocflag)
2653        )
2654    );
2655    assert_eq!(
2656        unsafe { ::core::ptr::addr_of!((*ptr).pulldown) as usize - ptr as usize },
2657        36usize,
2658        concat!(
2659            "Offset of field: ",
2660            stringify!(_CUVIDVC1PICPARAMS),
2661            "::",
2662            stringify!(pulldown)
2663        )
2664    );
2665    assert_eq!(
2666        unsafe { ::core::ptr::addr_of!((*ptr).interlace) as usize - ptr as usize },
2667        40usize,
2668        concat!(
2669            "Offset of field: ",
2670            stringify!(_CUVIDVC1PICPARAMS),
2671            "::",
2672            stringify!(interlace)
2673        )
2674    );
2675    assert_eq!(
2676        unsafe { ::core::ptr::addr_of!((*ptr).tfcntrflag) as usize - ptr as usize },
2677        44usize,
2678        concat!(
2679            "Offset of field: ",
2680            stringify!(_CUVIDVC1PICPARAMS),
2681            "::",
2682            stringify!(tfcntrflag)
2683        )
2684    );
2685    assert_eq!(
2686        unsafe { ::core::ptr::addr_of!((*ptr).finterpflag) as usize - ptr as usize },
2687        48usize,
2688        concat!(
2689            "Offset of field: ",
2690            stringify!(_CUVIDVC1PICPARAMS),
2691            "::",
2692            stringify!(finterpflag)
2693        )
2694    );
2695    assert_eq!(
2696        unsafe { ::core::ptr::addr_of!((*ptr).psf) as usize - ptr as usize },
2697        52usize,
2698        concat!(
2699            "Offset of field: ",
2700            stringify!(_CUVIDVC1PICPARAMS),
2701            "::",
2702            stringify!(psf)
2703        )
2704    );
2705    assert_eq!(
2706        unsafe { ::core::ptr::addr_of!((*ptr).multires) as usize - ptr as usize },
2707        56usize,
2708        concat!(
2709            "Offset of field: ",
2710            stringify!(_CUVIDVC1PICPARAMS),
2711            "::",
2712            stringify!(multires)
2713        )
2714    );
2715    assert_eq!(
2716        unsafe { ::core::ptr::addr_of!((*ptr).syncmarker) as usize - ptr as usize },
2717        60usize,
2718        concat!(
2719            "Offset of field: ",
2720            stringify!(_CUVIDVC1PICPARAMS),
2721            "::",
2722            stringify!(syncmarker)
2723        )
2724    );
2725    assert_eq!(
2726        unsafe { ::core::ptr::addr_of!((*ptr).rangered) as usize - ptr as usize },
2727        64usize,
2728        concat!(
2729            "Offset of field: ",
2730            stringify!(_CUVIDVC1PICPARAMS),
2731            "::",
2732            stringify!(rangered)
2733        )
2734    );
2735    assert_eq!(
2736        unsafe { ::core::ptr::addr_of!((*ptr).maxbframes) as usize - ptr as usize },
2737        68usize,
2738        concat!(
2739            "Offset of field: ",
2740            stringify!(_CUVIDVC1PICPARAMS),
2741            "::",
2742            stringify!(maxbframes)
2743        )
2744    );
2745    assert_eq!(
2746        unsafe { ::core::ptr::addr_of!((*ptr).panscan_flag) as usize - ptr as usize },
2747        72usize,
2748        concat!(
2749            "Offset of field: ",
2750            stringify!(_CUVIDVC1PICPARAMS),
2751            "::",
2752            stringify!(panscan_flag)
2753        )
2754    );
2755    assert_eq!(
2756        unsafe { ::core::ptr::addr_of!((*ptr).refdist_flag) as usize - ptr as usize },
2757        76usize,
2758        concat!(
2759            "Offset of field: ",
2760            stringify!(_CUVIDVC1PICPARAMS),
2761            "::",
2762            stringify!(refdist_flag)
2763        )
2764    );
2765    assert_eq!(
2766        unsafe { ::core::ptr::addr_of!((*ptr).extended_mv) as usize - ptr as usize },
2767        80usize,
2768        concat!(
2769            "Offset of field: ",
2770            stringify!(_CUVIDVC1PICPARAMS),
2771            "::",
2772            stringify!(extended_mv)
2773        )
2774    );
2775    assert_eq!(
2776        unsafe { ::core::ptr::addr_of!((*ptr).dquant) as usize - ptr as usize },
2777        84usize,
2778        concat!(
2779            "Offset of field: ",
2780            stringify!(_CUVIDVC1PICPARAMS),
2781            "::",
2782            stringify!(dquant)
2783        )
2784    );
2785    assert_eq!(
2786        unsafe { ::core::ptr::addr_of!((*ptr).vstransform) as usize - ptr as usize },
2787        88usize,
2788        concat!(
2789            "Offset of field: ",
2790            stringify!(_CUVIDVC1PICPARAMS),
2791            "::",
2792            stringify!(vstransform)
2793        )
2794    );
2795    assert_eq!(
2796        unsafe { ::core::ptr::addr_of!((*ptr).loopfilter) as usize - ptr as usize },
2797        92usize,
2798        concat!(
2799            "Offset of field: ",
2800            stringify!(_CUVIDVC1PICPARAMS),
2801            "::",
2802            stringify!(loopfilter)
2803        )
2804    );
2805    assert_eq!(
2806        unsafe { ::core::ptr::addr_of!((*ptr).fastuvmc) as usize - ptr as usize },
2807        96usize,
2808        concat!(
2809            "Offset of field: ",
2810            stringify!(_CUVIDVC1PICPARAMS),
2811            "::",
2812            stringify!(fastuvmc)
2813        )
2814    );
2815    assert_eq!(
2816        unsafe { ::core::ptr::addr_of!((*ptr).overlap) as usize - ptr as usize },
2817        100usize,
2818        concat!(
2819            "Offset of field: ",
2820            stringify!(_CUVIDVC1PICPARAMS),
2821            "::",
2822            stringify!(overlap)
2823        )
2824    );
2825    assert_eq!(
2826        unsafe { ::core::ptr::addr_of!((*ptr).quantizer) as usize - ptr as usize },
2827        104usize,
2828        concat!(
2829            "Offset of field: ",
2830            stringify!(_CUVIDVC1PICPARAMS),
2831            "::",
2832            stringify!(quantizer)
2833        )
2834    );
2835    assert_eq!(
2836        unsafe { ::core::ptr::addr_of!((*ptr).extended_dmv) as usize - ptr as usize },
2837        108usize,
2838        concat!(
2839            "Offset of field: ",
2840            stringify!(_CUVIDVC1PICPARAMS),
2841            "::",
2842            stringify!(extended_dmv)
2843        )
2844    );
2845    assert_eq!(
2846        unsafe { ::core::ptr::addr_of!((*ptr).range_mapy_flag) as usize - ptr as usize },
2847        112usize,
2848        concat!(
2849            "Offset of field: ",
2850            stringify!(_CUVIDVC1PICPARAMS),
2851            "::",
2852            stringify!(range_mapy_flag)
2853        )
2854    );
2855    assert_eq!(
2856        unsafe { ::core::ptr::addr_of!((*ptr).range_mapy) as usize - ptr as usize },
2857        116usize,
2858        concat!(
2859            "Offset of field: ",
2860            stringify!(_CUVIDVC1PICPARAMS),
2861            "::",
2862            stringify!(range_mapy)
2863        )
2864    );
2865    assert_eq!(
2866        unsafe { ::core::ptr::addr_of!((*ptr).range_mapuv_flag) as usize - ptr as usize },
2867        120usize,
2868        concat!(
2869            "Offset of field: ",
2870            stringify!(_CUVIDVC1PICPARAMS),
2871            "::",
2872            stringify!(range_mapuv_flag)
2873        )
2874    );
2875    assert_eq!(
2876        unsafe { ::core::ptr::addr_of!((*ptr).range_mapuv) as usize - ptr as usize },
2877        124usize,
2878        concat!(
2879            "Offset of field: ",
2880            stringify!(_CUVIDVC1PICPARAMS),
2881            "::",
2882            stringify!(range_mapuv)
2883        )
2884    );
2885    assert_eq!(
2886        unsafe { ::core::ptr::addr_of!((*ptr).rangeredfrm) as usize - ptr as usize },
2887        128usize,
2888        concat!(
2889            "Offset of field: ",
2890            stringify!(_CUVIDVC1PICPARAMS),
2891            "::",
2892            stringify!(rangeredfrm)
2893        )
2894    );
2895}
2896#[test]
2897fn bindgen_test_layout__CUVIDJPEGPICPARAMS() {
2898    const UNINIT: ::core::mem::MaybeUninit<_CUVIDJPEGPICPARAMS> =
2899        ::core::mem::MaybeUninit::uninit();
2900    let ptr = UNINIT.as_ptr();
2901    assert_eq!(
2902        ::core::mem::size_of::<_CUVIDJPEGPICPARAMS>(),
2903        4usize,
2904        concat!("Size of: ", stringify!(_CUVIDJPEGPICPARAMS))
2905    );
2906    assert_eq!(
2907        ::core::mem::align_of::<_CUVIDJPEGPICPARAMS>(),
2908        4usize,
2909        concat!("Alignment of ", stringify!(_CUVIDJPEGPICPARAMS))
2910    );
2911    assert_eq!(
2912        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
2913        0usize,
2914        concat!(
2915            "Offset of field: ",
2916            stringify!(_CUVIDJPEGPICPARAMS),
2917            "::",
2918            stringify!(Reserved)
2919        )
2920    );
2921}
2922#[test]
2923fn bindgen_test_layout__CUVIDHEVCPICPARAMS() {
2924    const UNINIT: ::core::mem::MaybeUninit<_CUVIDHEVCPICPARAMS> =
2925        ::core::mem::MaybeUninit::uninit();
2926    let ptr = UNINIT.as_ptr();
2927    assert_eq!(
2928        ::core::mem::size_of::<_CUVIDHEVCPICPARAMS>(),
2929        1484usize,
2930        concat!("Size of: ", stringify!(_CUVIDHEVCPICPARAMS))
2931    );
2932    assert_eq!(
2933        ::core::mem::align_of::<_CUVIDHEVCPICPARAMS>(),
2934        4usize,
2935        concat!("Alignment of ", stringify!(_CUVIDHEVCPICPARAMS))
2936    );
2937    assert_eq!(
2938        unsafe { ::core::ptr::addr_of!((*ptr).pic_width_in_luma_samples) as usize - ptr as usize },
2939        0usize,
2940        concat!(
2941            "Offset of field: ",
2942            stringify!(_CUVIDHEVCPICPARAMS),
2943            "::",
2944            stringify!(pic_width_in_luma_samples)
2945        )
2946    );
2947    assert_eq!(
2948        unsafe { ::core::ptr::addr_of!((*ptr).pic_height_in_luma_samples) as usize - ptr as usize },
2949        4usize,
2950        concat!(
2951            "Offset of field: ",
2952            stringify!(_CUVIDHEVCPICPARAMS),
2953            "::",
2954            stringify!(pic_height_in_luma_samples)
2955        )
2956    );
2957    assert_eq!(
2958        unsafe {
2959            ::core::ptr::addr_of!((*ptr).log2_min_luma_coding_block_size_minus3) as usize
2960                - ptr as usize
2961        },
2962        8usize,
2963        concat!(
2964            "Offset of field: ",
2965            stringify!(_CUVIDHEVCPICPARAMS),
2966            "::",
2967            stringify!(log2_min_luma_coding_block_size_minus3)
2968        )
2969    );
2970    assert_eq!(
2971        unsafe {
2972            ::core::ptr::addr_of!((*ptr).log2_diff_max_min_luma_coding_block_size) as usize
2973                - ptr as usize
2974        },
2975        9usize,
2976        concat!(
2977            "Offset of field: ",
2978            stringify!(_CUVIDHEVCPICPARAMS),
2979            "::",
2980            stringify!(log2_diff_max_min_luma_coding_block_size)
2981        )
2982    );
2983    assert_eq!(
2984        unsafe {
2985            ::core::ptr::addr_of!((*ptr).log2_min_transform_block_size_minus2) as usize
2986                - ptr as usize
2987        },
2988        10usize,
2989        concat!(
2990            "Offset of field: ",
2991            stringify!(_CUVIDHEVCPICPARAMS),
2992            "::",
2993            stringify!(log2_min_transform_block_size_minus2)
2994        )
2995    );
2996    assert_eq!(
2997        unsafe {
2998            ::core::ptr::addr_of!((*ptr).log2_diff_max_min_transform_block_size) as usize
2999                - ptr as usize
3000        },
3001        11usize,
3002        concat!(
3003            "Offset of field: ",
3004            stringify!(_CUVIDHEVCPICPARAMS),
3005            "::",
3006            stringify!(log2_diff_max_min_transform_block_size)
3007        )
3008    );
3009    assert_eq!(
3010        unsafe { ::core::ptr::addr_of!((*ptr).pcm_enabled_flag) as usize - ptr as usize },
3011        12usize,
3012        concat!(
3013            "Offset of field: ",
3014            stringify!(_CUVIDHEVCPICPARAMS),
3015            "::",
3016            stringify!(pcm_enabled_flag)
3017        )
3018    );
3019    assert_eq!(
3020        unsafe {
3021            ::core::ptr::addr_of!((*ptr).log2_min_pcm_luma_coding_block_size_minus3) as usize
3022                - ptr as usize
3023        },
3024        13usize,
3025        concat!(
3026            "Offset of field: ",
3027            stringify!(_CUVIDHEVCPICPARAMS),
3028            "::",
3029            stringify!(log2_min_pcm_luma_coding_block_size_minus3)
3030        )
3031    );
3032    assert_eq!(
3033        unsafe {
3034            ::core::ptr::addr_of!((*ptr).log2_diff_max_min_pcm_luma_coding_block_size) as usize
3035                - ptr as usize
3036        },
3037        14usize,
3038        concat!(
3039            "Offset of field: ",
3040            stringify!(_CUVIDHEVCPICPARAMS),
3041            "::",
3042            stringify!(log2_diff_max_min_pcm_luma_coding_block_size)
3043        )
3044    );
3045    assert_eq!(
3046        unsafe {
3047            ::core::ptr::addr_of!((*ptr).pcm_sample_bit_depth_luma_minus1) as usize - ptr as usize
3048        },
3049        15usize,
3050        concat!(
3051            "Offset of field: ",
3052            stringify!(_CUVIDHEVCPICPARAMS),
3053            "::",
3054            stringify!(pcm_sample_bit_depth_luma_minus1)
3055        )
3056    );
3057    assert_eq!(
3058        unsafe {
3059            ::core::ptr::addr_of!((*ptr).pcm_sample_bit_depth_chroma_minus1) as usize - ptr as usize
3060        },
3061        16usize,
3062        concat!(
3063            "Offset of field: ",
3064            stringify!(_CUVIDHEVCPICPARAMS),
3065            "::",
3066            stringify!(pcm_sample_bit_depth_chroma_minus1)
3067        )
3068    );
3069    assert_eq!(
3070        unsafe {
3071            ::core::ptr::addr_of!((*ptr).pcm_loop_filter_disabled_flag) as usize - ptr as usize
3072        },
3073        17usize,
3074        concat!(
3075            "Offset of field: ",
3076            stringify!(_CUVIDHEVCPICPARAMS),
3077            "::",
3078            stringify!(pcm_loop_filter_disabled_flag)
3079        )
3080    );
3081    assert_eq!(
3082        unsafe {
3083            ::core::ptr::addr_of!((*ptr).strong_intra_smoothing_enabled_flag) as usize
3084                - ptr as usize
3085        },
3086        18usize,
3087        concat!(
3088            "Offset of field: ",
3089            stringify!(_CUVIDHEVCPICPARAMS),
3090            "::",
3091            stringify!(strong_intra_smoothing_enabled_flag)
3092        )
3093    );
3094    assert_eq!(
3095        unsafe {
3096            ::core::ptr::addr_of!((*ptr).max_transform_hierarchy_depth_intra) as usize
3097                - ptr as usize
3098        },
3099        19usize,
3100        concat!(
3101            "Offset of field: ",
3102            stringify!(_CUVIDHEVCPICPARAMS),
3103            "::",
3104            stringify!(max_transform_hierarchy_depth_intra)
3105        )
3106    );
3107    assert_eq!(
3108        unsafe {
3109            ::core::ptr::addr_of!((*ptr).max_transform_hierarchy_depth_inter) as usize
3110                - ptr as usize
3111        },
3112        20usize,
3113        concat!(
3114            "Offset of field: ",
3115            stringify!(_CUVIDHEVCPICPARAMS),
3116            "::",
3117            stringify!(max_transform_hierarchy_depth_inter)
3118        )
3119    );
3120    assert_eq!(
3121        unsafe { ::core::ptr::addr_of!((*ptr).amp_enabled_flag) as usize - ptr as usize },
3122        21usize,
3123        concat!(
3124            "Offset of field: ",
3125            stringify!(_CUVIDHEVCPICPARAMS),
3126            "::",
3127            stringify!(amp_enabled_flag)
3128        )
3129    );
3130    assert_eq!(
3131        unsafe { ::core::ptr::addr_of!((*ptr).separate_colour_plane_flag) as usize - ptr as usize },
3132        22usize,
3133        concat!(
3134            "Offset of field: ",
3135            stringify!(_CUVIDHEVCPICPARAMS),
3136            "::",
3137            stringify!(separate_colour_plane_flag)
3138        )
3139    );
3140    assert_eq!(
3141        unsafe {
3142            ::core::ptr::addr_of!((*ptr).log2_max_pic_order_cnt_lsb_minus4) as usize - ptr as usize
3143        },
3144        23usize,
3145        concat!(
3146            "Offset of field: ",
3147            stringify!(_CUVIDHEVCPICPARAMS),
3148            "::",
3149            stringify!(log2_max_pic_order_cnt_lsb_minus4)
3150        )
3151    );
3152    assert_eq!(
3153        unsafe {
3154            ::core::ptr::addr_of!((*ptr).num_short_term_ref_pic_sets) as usize - ptr as usize
3155        },
3156        24usize,
3157        concat!(
3158            "Offset of field: ",
3159            stringify!(_CUVIDHEVCPICPARAMS),
3160            "::",
3161            stringify!(num_short_term_ref_pic_sets)
3162        )
3163    );
3164    assert_eq!(
3165        unsafe {
3166            ::core::ptr::addr_of!((*ptr).long_term_ref_pics_present_flag) as usize - ptr as usize
3167        },
3168        25usize,
3169        concat!(
3170            "Offset of field: ",
3171            stringify!(_CUVIDHEVCPICPARAMS),
3172            "::",
3173            stringify!(long_term_ref_pics_present_flag)
3174        )
3175    );
3176    assert_eq!(
3177        unsafe { ::core::ptr::addr_of!((*ptr).num_long_term_ref_pics_sps) as usize - ptr as usize },
3178        26usize,
3179        concat!(
3180            "Offset of field: ",
3181            stringify!(_CUVIDHEVCPICPARAMS),
3182            "::",
3183            stringify!(num_long_term_ref_pics_sps)
3184        )
3185    );
3186    assert_eq!(
3187        unsafe {
3188            ::core::ptr::addr_of!((*ptr).sps_temporal_mvp_enabled_flag) as usize - ptr as usize
3189        },
3190        27usize,
3191        concat!(
3192            "Offset of field: ",
3193            stringify!(_CUVIDHEVCPICPARAMS),
3194            "::",
3195            stringify!(sps_temporal_mvp_enabled_flag)
3196        )
3197    );
3198    assert_eq!(
3199        unsafe {
3200            ::core::ptr::addr_of!((*ptr).sample_adaptive_offset_enabled_flag) as usize
3201                - ptr as usize
3202        },
3203        28usize,
3204        concat!(
3205            "Offset of field: ",
3206            stringify!(_CUVIDHEVCPICPARAMS),
3207            "::",
3208            stringify!(sample_adaptive_offset_enabled_flag)
3209        )
3210    );
3211    assert_eq!(
3212        unsafe { ::core::ptr::addr_of!((*ptr).scaling_list_enable_flag) as usize - ptr as usize },
3213        29usize,
3214        concat!(
3215            "Offset of field: ",
3216            stringify!(_CUVIDHEVCPICPARAMS),
3217            "::",
3218            stringify!(scaling_list_enable_flag)
3219        )
3220    );
3221    assert_eq!(
3222        unsafe { ::core::ptr::addr_of!((*ptr).IrapPicFlag) as usize - ptr as usize },
3223        30usize,
3224        concat!(
3225            "Offset of field: ",
3226            stringify!(_CUVIDHEVCPICPARAMS),
3227            "::",
3228            stringify!(IrapPicFlag)
3229        )
3230    );
3231    assert_eq!(
3232        unsafe { ::core::ptr::addr_of!((*ptr).IdrPicFlag) as usize - ptr as usize },
3233        31usize,
3234        concat!(
3235            "Offset of field: ",
3236            stringify!(_CUVIDHEVCPICPARAMS),
3237            "::",
3238            stringify!(IdrPicFlag)
3239        )
3240    );
3241    assert_eq!(
3242        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_luma_minus8) as usize - ptr as usize },
3243        32usize,
3244        concat!(
3245            "Offset of field: ",
3246            stringify!(_CUVIDHEVCPICPARAMS),
3247            "::",
3248            stringify!(bit_depth_luma_minus8)
3249        )
3250    );
3251    assert_eq!(
3252        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_chroma_minus8) as usize - ptr as usize },
3253        33usize,
3254        concat!(
3255            "Offset of field: ",
3256            stringify!(_CUVIDHEVCPICPARAMS),
3257            "::",
3258            stringify!(bit_depth_chroma_minus8)
3259        )
3260    );
3261    assert_eq!(
3262        unsafe {
3263            ::core::ptr::addr_of!((*ptr).log2_max_transform_skip_block_size_minus2) as usize
3264                - ptr as usize
3265        },
3266        34usize,
3267        concat!(
3268            "Offset of field: ",
3269            stringify!(_CUVIDHEVCPICPARAMS),
3270            "::",
3271            stringify!(log2_max_transform_skip_block_size_minus2)
3272        )
3273    );
3274    assert_eq!(
3275        unsafe { ::core::ptr::addr_of!((*ptr).log2_sao_offset_scale_luma) as usize - ptr as usize },
3276        35usize,
3277        concat!(
3278            "Offset of field: ",
3279            stringify!(_CUVIDHEVCPICPARAMS),
3280            "::",
3281            stringify!(log2_sao_offset_scale_luma)
3282        )
3283    );
3284    assert_eq!(
3285        unsafe {
3286            ::core::ptr::addr_of!((*ptr).log2_sao_offset_scale_chroma) as usize - ptr as usize
3287        },
3288        36usize,
3289        concat!(
3290            "Offset of field: ",
3291            stringify!(_CUVIDHEVCPICPARAMS),
3292            "::",
3293            stringify!(log2_sao_offset_scale_chroma)
3294        )
3295    );
3296    assert_eq!(
3297        unsafe {
3298            ::core::ptr::addr_of!((*ptr).high_precision_offsets_enabled_flag) as usize
3299                - ptr as usize
3300        },
3301        37usize,
3302        concat!(
3303            "Offset of field: ",
3304            stringify!(_CUVIDHEVCPICPARAMS),
3305            "::",
3306            stringify!(high_precision_offsets_enabled_flag)
3307        )
3308    );
3309    assert_eq!(
3310        unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize },
3311        38usize,
3312        concat!(
3313            "Offset of field: ",
3314            stringify!(_CUVIDHEVCPICPARAMS),
3315            "::",
3316            stringify!(reserved1)
3317        )
3318    );
3319    assert_eq!(
3320        unsafe {
3321            ::core::ptr::addr_of!((*ptr).dependent_slice_segments_enabled_flag) as usize
3322                - ptr as usize
3323        },
3324        48usize,
3325        concat!(
3326            "Offset of field: ",
3327            stringify!(_CUVIDHEVCPICPARAMS),
3328            "::",
3329            stringify!(dependent_slice_segments_enabled_flag)
3330        )
3331    );
3332    assert_eq!(
3333        unsafe {
3334            ::core::ptr::addr_of!((*ptr).slice_segment_header_extension_present_flag) as usize
3335                - ptr as usize
3336        },
3337        49usize,
3338        concat!(
3339            "Offset of field: ",
3340            stringify!(_CUVIDHEVCPICPARAMS),
3341            "::",
3342            stringify!(slice_segment_header_extension_present_flag)
3343        )
3344    );
3345    assert_eq!(
3346        unsafe {
3347            ::core::ptr::addr_of!((*ptr).sign_data_hiding_enabled_flag) as usize - ptr as usize
3348        },
3349        50usize,
3350        concat!(
3351            "Offset of field: ",
3352            stringify!(_CUVIDHEVCPICPARAMS),
3353            "::",
3354            stringify!(sign_data_hiding_enabled_flag)
3355        )
3356    );
3357    assert_eq!(
3358        unsafe { ::core::ptr::addr_of!((*ptr).cu_qp_delta_enabled_flag) as usize - ptr as usize },
3359        51usize,
3360        concat!(
3361            "Offset of field: ",
3362            stringify!(_CUVIDHEVCPICPARAMS),
3363            "::",
3364            stringify!(cu_qp_delta_enabled_flag)
3365        )
3366    );
3367    assert_eq!(
3368        unsafe { ::core::ptr::addr_of!((*ptr).diff_cu_qp_delta_depth) as usize - ptr as usize },
3369        52usize,
3370        concat!(
3371            "Offset of field: ",
3372            stringify!(_CUVIDHEVCPICPARAMS),
3373            "::",
3374            stringify!(diff_cu_qp_delta_depth)
3375        )
3376    );
3377    assert_eq!(
3378        unsafe { ::core::ptr::addr_of!((*ptr).init_qp_minus26) as usize - ptr as usize },
3379        53usize,
3380        concat!(
3381            "Offset of field: ",
3382            stringify!(_CUVIDHEVCPICPARAMS),
3383            "::",
3384            stringify!(init_qp_minus26)
3385        )
3386    );
3387    assert_eq!(
3388        unsafe { ::core::ptr::addr_of!((*ptr).pps_cb_qp_offset) as usize - ptr as usize },
3389        54usize,
3390        concat!(
3391            "Offset of field: ",
3392            stringify!(_CUVIDHEVCPICPARAMS),
3393            "::",
3394            stringify!(pps_cb_qp_offset)
3395        )
3396    );
3397    assert_eq!(
3398        unsafe { ::core::ptr::addr_of!((*ptr).pps_cr_qp_offset) as usize - ptr as usize },
3399        55usize,
3400        concat!(
3401            "Offset of field: ",
3402            stringify!(_CUVIDHEVCPICPARAMS),
3403            "::",
3404            stringify!(pps_cr_qp_offset)
3405        )
3406    );
3407    assert_eq!(
3408        unsafe {
3409            ::core::ptr::addr_of!((*ptr).constrained_intra_pred_flag) as usize - ptr as usize
3410        },
3411        56usize,
3412        concat!(
3413            "Offset of field: ",
3414            stringify!(_CUVIDHEVCPICPARAMS),
3415            "::",
3416            stringify!(constrained_intra_pred_flag)
3417        )
3418    );
3419    assert_eq!(
3420        unsafe { ::core::ptr::addr_of!((*ptr).weighted_pred_flag) as usize - ptr as usize },
3421        57usize,
3422        concat!(
3423            "Offset of field: ",
3424            stringify!(_CUVIDHEVCPICPARAMS),
3425            "::",
3426            stringify!(weighted_pred_flag)
3427        )
3428    );
3429    assert_eq!(
3430        unsafe { ::core::ptr::addr_of!((*ptr).weighted_bipred_flag) as usize - ptr as usize },
3431        58usize,
3432        concat!(
3433            "Offset of field: ",
3434            stringify!(_CUVIDHEVCPICPARAMS),
3435            "::",
3436            stringify!(weighted_bipred_flag)
3437        )
3438    );
3439    assert_eq!(
3440        unsafe {
3441            ::core::ptr::addr_of!((*ptr).transform_skip_enabled_flag) as usize - ptr as usize
3442        },
3443        59usize,
3444        concat!(
3445            "Offset of field: ",
3446            stringify!(_CUVIDHEVCPICPARAMS),
3447            "::",
3448            stringify!(transform_skip_enabled_flag)
3449        )
3450    );
3451    assert_eq!(
3452        unsafe {
3453            ::core::ptr::addr_of!((*ptr).transquant_bypass_enabled_flag) as usize - ptr as usize
3454        },
3455        60usize,
3456        concat!(
3457            "Offset of field: ",
3458            stringify!(_CUVIDHEVCPICPARAMS),
3459            "::",
3460            stringify!(transquant_bypass_enabled_flag)
3461        )
3462    );
3463    assert_eq!(
3464        unsafe {
3465            ::core::ptr::addr_of!((*ptr).entropy_coding_sync_enabled_flag) as usize - ptr as usize
3466        },
3467        61usize,
3468        concat!(
3469            "Offset of field: ",
3470            stringify!(_CUVIDHEVCPICPARAMS),
3471            "::",
3472            stringify!(entropy_coding_sync_enabled_flag)
3473        )
3474    );
3475    assert_eq!(
3476        unsafe {
3477            ::core::ptr::addr_of!((*ptr).log2_parallel_merge_level_minus2) as usize - ptr as usize
3478        },
3479        62usize,
3480        concat!(
3481            "Offset of field: ",
3482            stringify!(_CUVIDHEVCPICPARAMS),
3483            "::",
3484            stringify!(log2_parallel_merge_level_minus2)
3485        )
3486    );
3487    assert_eq!(
3488        unsafe {
3489            ::core::ptr::addr_of!((*ptr).num_extra_slice_header_bits) as usize - ptr as usize
3490        },
3491        63usize,
3492        concat!(
3493            "Offset of field: ",
3494            stringify!(_CUVIDHEVCPICPARAMS),
3495            "::",
3496            stringify!(num_extra_slice_header_bits)
3497        )
3498    );
3499    assert_eq!(
3500        unsafe {
3501            ::core::ptr::addr_of!((*ptr).loop_filter_across_tiles_enabled_flag) as usize
3502                - ptr as usize
3503        },
3504        64usize,
3505        concat!(
3506            "Offset of field: ",
3507            stringify!(_CUVIDHEVCPICPARAMS),
3508            "::",
3509            stringify!(loop_filter_across_tiles_enabled_flag)
3510        )
3511    );
3512    assert_eq!(
3513        unsafe {
3514            ::core::ptr::addr_of!((*ptr).loop_filter_across_slices_enabled_flag) as usize
3515                - ptr as usize
3516        },
3517        65usize,
3518        concat!(
3519            "Offset of field: ",
3520            stringify!(_CUVIDHEVCPICPARAMS),
3521            "::",
3522            stringify!(loop_filter_across_slices_enabled_flag)
3523        )
3524    );
3525    assert_eq!(
3526        unsafe { ::core::ptr::addr_of!((*ptr).output_flag_present_flag) as usize - ptr as usize },
3527        66usize,
3528        concat!(
3529            "Offset of field: ",
3530            stringify!(_CUVIDHEVCPICPARAMS),
3531            "::",
3532            stringify!(output_flag_present_flag)
3533        )
3534    );
3535    assert_eq!(
3536        unsafe {
3537            ::core::ptr::addr_of!((*ptr).num_ref_idx_l0_default_active_minus1) as usize
3538                - ptr as usize
3539        },
3540        67usize,
3541        concat!(
3542            "Offset of field: ",
3543            stringify!(_CUVIDHEVCPICPARAMS),
3544            "::",
3545            stringify!(num_ref_idx_l0_default_active_minus1)
3546        )
3547    );
3548    assert_eq!(
3549        unsafe {
3550            ::core::ptr::addr_of!((*ptr).num_ref_idx_l1_default_active_minus1) as usize
3551                - ptr as usize
3552        },
3553        68usize,
3554        concat!(
3555            "Offset of field: ",
3556            stringify!(_CUVIDHEVCPICPARAMS),
3557            "::",
3558            stringify!(num_ref_idx_l1_default_active_minus1)
3559        )
3560    );
3561    assert_eq!(
3562        unsafe {
3563            ::core::ptr::addr_of!((*ptr).lists_modification_present_flag) as usize - ptr as usize
3564        },
3565        69usize,
3566        concat!(
3567            "Offset of field: ",
3568            stringify!(_CUVIDHEVCPICPARAMS),
3569            "::",
3570            stringify!(lists_modification_present_flag)
3571        )
3572    );
3573    assert_eq!(
3574        unsafe { ::core::ptr::addr_of!((*ptr).cabac_init_present_flag) as usize - ptr as usize },
3575        70usize,
3576        concat!(
3577            "Offset of field: ",
3578            stringify!(_CUVIDHEVCPICPARAMS),
3579            "::",
3580            stringify!(cabac_init_present_flag)
3581        )
3582    );
3583    assert_eq!(
3584        unsafe {
3585            ::core::ptr::addr_of!((*ptr).pps_slice_chroma_qp_offsets_present_flag) as usize
3586                - ptr as usize
3587        },
3588        71usize,
3589        concat!(
3590            "Offset of field: ",
3591            stringify!(_CUVIDHEVCPICPARAMS),
3592            "::",
3593            stringify!(pps_slice_chroma_qp_offsets_present_flag)
3594        )
3595    );
3596    assert_eq!(
3597        unsafe {
3598            ::core::ptr::addr_of!((*ptr).deblocking_filter_override_enabled_flag) as usize
3599                - ptr as usize
3600        },
3601        72usize,
3602        concat!(
3603            "Offset of field: ",
3604            stringify!(_CUVIDHEVCPICPARAMS),
3605            "::",
3606            stringify!(deblocking_filter_override_enabled_flag)
3607        )
3608    );
3609    assert_eq!(
3610        unsafe {
3611            ::core::ptr::addr_of!((*ptr).pps_deblocking_filter_disabled_flag) as usize
3612                - ptr as usize
3613        },
3614        73usize,
3615        concat!(
3616            "Offset of field: ",
3617            stringify!(_CUVIDHEVCPICPARAMS),
3618            "::",
3619            stringify!(pps_deblocking_filter_disabled_flag)
3620        )
3621    );
3622    assert_eq!(
3623        unsafe { ::core::ptr::addr_of!((*ptr).pps_beta_offset_div2) as usize - ptr as usize },
3624        74usize,
3625        concat!(
3626            "Offset of field: ",
3627            stringify!(_CUVIDHEVCPICPARAMS),
3628            "::",
3629            stringify!(pps_beta_offset_div2)
3630        )
3631    );
3632    assert_eq!(
3633        unsafe { ::core::ptr::addr_of!((*ptr).pps_tc_offset_div2) as usize - ptr as usize },
3634        75usize,
3635        concat!(
3636            "Offset of field: ",
3637            stringify!(_CUVIDHEVCPICPARAMS),
3638            "::",
3639            stringify!(pps_tc_offset_div2)
3640        )
3641    );
3642    assert_eq!(
3643        unsafe { ::core::ptr::addr_of!((*ptr).tiles_enabled_flag) as usize - ptr as usize },
3644        76usize,
3645        concat!(
3646            "Offset of field: ",
3647            stringify!(_CUVIDHEVCPICPARAMS),
3648            "::",
3649            stringify!(tiles_enabled_flag)
3650        )
3651    );
3652    assert_eq!(
3653        unsafe { ::core::ptr::addr_of!((*ptr).uniform_spacing_flag) as usize - ptr as usize },
3654        77usize,
3655        concat!(
3656            "Offset of field: ",
3657            stringify!(_CUVIDHEVCPICPARAMS),
3658            "::",
3659            stringify!(uniform_spacing_flag)
3660        )
3661    );
3662    assert_eq!(
3663        unsafe { ::core::ptr::addr_of!((*ptr).num_tile_columns_minus1) as usize - ptr as usize },
3664        78usize,
3665        concat!(
3666            "Offset of field: ",
3667            stringify!(_CUVIDHEVCPICPARAMS),
3668            "::",
3669            stringify!(num_tile_columns_minus1)
3670        )
3671    );
3672    assert_eq!(
3673        unsafe { ::core::ptr::addr_of!((*ptr).num_tile_rows_minus1) as usize - ptr as usize },
3674        79usize,
3675        concat!(
3676            "Offset of field: ",
3677            stringify!(_CUVIDHEVCPICPARAMS),
3678            "::",
3679            stringify!(num_tile_rows_minus1)
3680        )
3681    );
3682    assert_eq!(
3683        unsafe { ::core::ptr::addr_of!((*ptr).column_width_minus1) as usize - ptr as usize },
3684        80usize,
3685        concat!(
3686            "Offset of field: ",
3687            stringify!(_CUVIDHEVCPICPARAMS),
3688            "::",
3689            stringify!(column_width_minus1)
3690        )
3691    );
3692    assert_eq!(
3693        unsafe { ::core::ptr::addr_of!((*ptr).row_height_minus1) as usize - ptr as usize },
3694        122usize,
3695        concat!(
3696            "Offset of field: ",
3697            stringify!(_CUVIDHEVCPICPARAMS),
3698            "::",
3699            stringify!(row_height_minus1)
3700        )
3701    );
3702    assert_eq!(
3703        unsafe { ::core::ptr::addr_of!((*ptr).sps_range_extension_flag) as usize - ptr as usize },
3704        164usize,
3705        concat!(
3706            "Offset of field: ",
3707            stringify!(_CUVIDHEVCPICPARAMS),
3708            "::",
3709            stringify!(sps_range_extension_flag)
3710        )
3711    );
3712    assert_eq!(
3713        unsafe {
3714            ::core::ptr::addr_of!((*ptr).transform_skip_rotation_enabled_flag) as usize
3715                - ptr as usize
3716        },
3717        165usize,
3718        concat!(
3719            "Offset of field: ",
3720            stringify!(_CUVIDHEVCPICPARAMS),
3721            "::",
3722            stringify!(transform_skip_rotation_enabled_flag)
3723        )
3724    );
3725    assert_eq!(
3726        unsafe {
3727            ::core::ptr::addr_of!((*ptr).transform_skip_context_enabled_flag) as usize
3728                - ptr as usize
3729        },
3730        166usize,
3731        concat!(
3732            "Offset of field: ",
3733            stringify!(_CUVIDHEVCPICPARAMS),
3734            "::",
3735            stringify!(transform_skip_context_enabled_flag)
3736        )
3737    );
3738    assert_eq!(
3739        unsafe {
3740            ::core::ptr::addr_of!((*ptr).implicit_rdpcm_enabled_flag) as usize - ptr as usize
3741        },
3742        167usize,
3743        concat!(
3744            "Offset of field: ",
3745            stringify!(_CUVIDHEVCPICPARAMS),
3746            "::",
3747            stringify!(implicit_rdpcm_enabled_flag)
3748        )
3749    );
3750    assert_eq!(
3751        unsafe {
3752            ::core::ptr::addr_of!((*ptr).explicit_rdpcm_enabled_flag) as usize - ptr as usize
3753        },
3754        168usize,
3755        concat!(
3756            "Offset of field: ",
3757            stringify!(_CUVIDHEVCPICPARAMS),
3758            "::",
3759            stringify!(explicit_rdpcm_enabled_flag)
3760        )
3761    );
3762    assert_eq!(
3763        unsafe {
3764            ::core::ptr::addr_of!((*ptr).extended_precision_processing_flag) as usize - ptr as usize
3765        },
3766        169usize,
3767        concat!(
3768            "Offset of field: ",
3769            stringify!(_CUVIDHEVCPICPARAMS),
3770            "::",
3771            stringify!(extended_precision_processing_flag)
3772        )
3773    );
3774    assert_eq!(
3775        unsafe {
3776            ::core::ptr::addr_of!((*ptr).intra_smoothing_disabled_flag) as usize - ptr as usize
3777        },
3778        170usize,
3779        concat!(
3780            "Offset of field: ",
3781            stringify!(_CUVIDHEVCPICPARAMS),
3782            "::",
3783            stringify!(intra_smoothing_disabled_flag)
3784        )
3785    );
3786    assert_eq!(
3787        unsafe {
3788            ::core::ptr::addr_of!((*ptr).persistent_rice_adaptation_enabled_flag) as usize
3789                - ptr as usize
3790        },
3791        171usize,
3792        concat!(
3793            "Offset of field: ",
3794            stringify!(_CUVIDHEVCPICPARAMS),
3795            "::",
3796            stringify!(persistent_rice_adaptation_enabled_flag)
3797        )
3798    );
3799    assert_eq!(
3800        unsafe {
3801            ::core::ptr::addr_of!((*ptr).cabac_bypass_alignment_enabled_flag) as usize
3802                - ptr as usize
3803        },
3804        172usize,
3805        concat!(
3806            "Offset of field: ",
3807            stringify!(_CUVIDHEVCPICPARAMS),
3808            "::",
3809            stringify!(cabac_bypass_alignment_enabled_flag)
3810        )
3811    );
3812    assert_eq!(
3813        unsafe { ::core::ptr::addr_of!((*ptr).pps_range_extension_flag) as usize - ptr as usize },
3814        173usize,
3815        concat!(
3816            "Offset of field: ",
3817            stringify!(_CUVIDHEVCPICPARAMS),
3818            "::",
3819            stringify!(pps_range_extension_flag)
3820        )
3821    );
3822    assert_eq!(
3823        unsafe {
3824            ::core::ptr::addr_of!((*ptr).cross_component_prediction_enabled_flag) as usize
3825                - ptr as usize
3826        },
3827        174usize,
3828        concat!(
3829            "Offset of field: ",
3830            stringify!(_CUVIDHEVCPICPARAMS),
3831            "::",
3832            stringify!(cross_component_prediction_enabled_flag)
3833        )
3834    );
3835    assert_eq!(
3836        unsafe {
3837            ::core::ptr::addr_of!((*ptr).chroma_qp_offset_list_enabled_flag) as usize - ptr as usize
3838        },
3839        175usize,
3840        concat!(
3841            "Offset of field: ",
3842            stringify!(_CUVIDHEVCPICPARAMS),
3843            "::",
3844            stringify!(chroma_qp_offset_list_enabled_flag)
3845        )
3846    );
3847    assert_eq!(
3848        unsafe {
3849            ::core::ptr::addr_of!((*ptr).diff_cu_chroma_qp_offset_depth) as usize - ptr as usize
3850        },
3851        176usize,
3852        concat!(
3853            "Offset of field: ",
3854            stringify!(_CUVIDHEVCPICPARAMS),
3855            "::",
3856            stringify!(diff_cu_chroma_qp_offset_depth)
3857        )
3858    );
3859    assert_eq!(
3860        unsafe {
3861            ::core::ptr::addr_of!((*ptr).chroma_qp_offset_list_len_minus1) as usize - ptr as usize
3862        },
3863        177usize,
3864        concat!(
3865            "Offset of field: ",
3866            stringify!(_CUVIDHEVCPICPARAMS),
3867            "::",
3868            stringify!(chroma_qp_offset_list_len_minus1)
3869        )
3870    );
3871    assert_eq!(
3872        unsafe { ::core::ptr::addr_of!((*ptr).cb_qp_offset_list) as usize - ptr as usize },
3873        178usize,
3874        concat!(
3875            "Offset of field: ",
3876            stringify!(_CUVIDHEVCPICPARAMS),
3877            "::",
3878            stringify!(cb_qp_offset_list)
3879        )
3880    );
3881    assert_eq!(
3882        unsafe { ::core::ptr::addr_of!((*ptr).cr_qp_offset_list) as usize - ptr as usize },
3883        184usize,
3884        concat!(
3885            "Offset of field: ",
3886            stringify!(_CUVIDHEVCPICPARAMS),
3887            "::",
3888            stringify!(cr_qp_offset_list)
3889        )
3890    );
3891    assert_eq!(
3892        unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize },
3893        190usize,
3894        concat!(
3895            "Offset of field: ",
3896            stringify!(_CUVIDHEVCPICPARAMS),
3897            "::",
3898            stringify!(reserved2)
3899        )
3900    );
3901    assert_eq!(
3902        unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize },
3903        192usize,
3904        concat!(
3905            "Offset of field: ",
3906            stringify!(_CUVIDHEVCPICPARAMS),
3907            "::",
3908            stringify!(reserved3)
3909        )
3910    );
3911    assert_eq!(
3912        unsafe {
3913            ::core::ptr::addr_of!((*ptr).NumBitsForShortTermRPSInSlice) as usize - ptr as usize
3914        },
3915        224usize,
3916        concat!(
3917            "Offset of field: ",
3918            stringify!(_CUVIDHEVCPICPARAMS),
3919            "::",
3920            stringify!(NumBitsForShortTermRPSInSlice)
3921        )
3922    );
3923    assert_eq!(
3924        unsafe { ::core::ptr::addr_of!((*ptr).NumDeltaPocsOfRefRpsIdx) as usize - ptr as usize },
3925        228usize,
3926        concat!(
3927            "Offset of field: ",
3928            stringify!(_CUVIDHEVCPICPARAMS),
3929            "::",
3930            stringify!(NumDeltaPocsOfRefRpsIdx)
3931        )
3932    );
3933    assert_eq!(
3934        unsafe { ::core::ptr::addr_of!((*ptr).NumPocTotalCurr) as usize - ptr as usize },
3935        232usize,
3936        concat!(
3937            "Offset of field: ",
3938            stringify!(_CUVIDHEVCPICPARAMS),
3939            "::",
3940            stringify!(NumPocTotalCurr)
3941        )
3942    );
3943    assert_eq!(
3944        unsafe { ::core::ptr::addr_of!((*ptr).NumPocStCurrBefore) as usize - ptr as usize },
3945        236usize,
3946        concat!(
3947            "Offset of field: ",
3948            stringify!(_CUVIDHEVCPICPARAMS),
3949            "::",
3950            stringify!(NumPocStCurrBefore)
3951        )
3952    );
3953    assert_eq!(
3954        unsafe { ::core::ptr::addr_of!((*ptr).NumPocStCurrAfter) as usize - ptr as usize },
3955        240usize,
3956        concat!(
3957            "Offset of field: ",
3958            stringify!(_CUVIDHEVCPICPARAMS),
3959            "::",
3960            stringify!(NumPocStCurrAfter)
3961        )
3962    );
3963    assert_eq!(
3964        unsafe { ::core::ptr::addr_of!((*ptr).NumPocLtCurr) as usize - ptr as usize },
3965        244usize,
3966        concat!(
3967            "Offset of field: ",
3968            stringify!(_CUVIDHEVCPICPARAMS),
3969            "::",
3970            stringify!(NumPocLtCurr)
3971        )
3972    );
3973    assert_eq!(
3974        unsafe { ::core::ptr::addr_of!((*ptr).CurrPicOrderCntVal) as usize - ptr as usize },
3975        248usize,
3976        concat!(
3977            "Offset of field: ",
3978            stringify!(_CUVIDHEVCPICPARAMS),
3979            "::",
3980            stringify!(CurrPicOrderCntVal)
3981        )
3982    );
3983    assert_eq!(
3984        unsafe { ::core::ptr::addr_of!((*ptr).RefPicIdx) as usize - ptr as usize },
3985        252usize,
3986        concat!(
3987            "Offset of field: ",
3988            stringify!(_CUVIDHEVCPICPARAMS),
3989            "::",
3990            stringify!(RefPicIdx)
3991        )
3992    );
3993    assert_eq!(
3994        unsafe { ::core::ptr::addr_of!((*ptr).PicOrderCntVal) as usize - ptr as usize },
3995        316usize,
3996        concat!(
3997            "Offset of field: ",
3998            stringify!(_CUVIDHEVCPICPARAMS),
3999            "::",
4000            stringify!(PicOrderCntVal)
4001        )
4002    );
4003    assert_eq!(
4004        unsafe { ::core::ptr::addr_of!((*ptr).IsLongTerm) as usize - ptr as usize },
4005        380usize,
4006        concat!(
4007            "Offset of field: ",
4008            stringify!(_CUVIDHEVCPICPARAMS),
4009            "::",
4010            stringify!(IsLongTerm)
4011        )
4012    );
4013    assert_eq!(
4014        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetStCurrBefore) as usize - ptr as usize },
4015        396usize,
4016        concat!(
4017            "Offset of field: ",
4018            stringify!(_CUVIDHEVCPICPARAMS),
4019            "::",
4020            stringify!(RefPicSetStCurrBefore)
4021        )
4022    );
4023    assert_eq!(
4024        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetStCurrAfter) as usize - ptr as usize },
4025        404usize,
4026        concat!(
4027            "Offset of field: ",
4028            stringify!(_CUVIDHEVCPICPARAMS),
4029            "::",
4030            stringify!(RefPicSetStCurrAfter)
4031        )
4032    );
4033    assert_eq!(
4034        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetLtCurr) as usize - ptr as usize },
4035        412usize,
4036        concat!(
4037            "Offset of field: ",
4038            stringify!(_CUVIDHEVCPICPARAMS),
4039            "::",
4040            stringify!(RefPicSetLtCurr)
4041        )
4042    );
4043    assert_eq!(
4044        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetInterLayer0) as usize - ptr as usize },
4045        420usize,
4046        concat!(
4047            "Offset of field: ",
4048            stringify!(_CUVIDHEVCPICPARAMS),
4049            "::",
4050            stringify!(RefPicSetInterLayer0)
4051        )
4052    );
4053    assert_eq!(
4054        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetInterLayer1) as usize - ptr as usize },
4055        428usize,
4056        concat!(
4057            "Offset of field: ",
4058            stringify!(_CUVIDHEVCPICPARAMS),
4059            "::",
4060            stringify!(RefPicSetInterLayer1)
4061        )
4062    );
4063    assert_eq!(
4064        unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize },
4065        436usize,
4066        concat!(
4067            "Offset of field: ",
4068            stringify!(_CUVIDHEVCPICPARAMS),
4069            "::",
4070            stringify!(reserved4)
4071        )
4072    );
4073    assert_eq!(
4074        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList4x4) as usize - ptr as usize },
4075        484usize,
4076        concat!(
4077            "Offset of field: ",
4078            stringify!(_CUVIDHEVCPICPARAMS),
4079            "::",
4080            stringify!(ScalingList4x4)
4081        )
4082    );
4083    assert_eq!(
4084        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList8x8) as usize - ptr as usize },
4085        580usize,
4086        concat!(
4087            "Offset of field: ",
4088            stringify!(_CUVIDHEVCPICPARAMS),
4089            "::",
4090            stringify!(ScalingList8x8)
4091        )
4092    );
4093    assert_eq!(
4094        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList16x16) as usize - ptr as usize },
4095        964usize,
4096        concat!(
4097            "Offset of field: ",
4098            stringify!(_CUVIDHEVCPICPARAMS),
4099            "::",
4100            stringify!(ScalingList16x16)
4101        )
4102    );
4103    assert_eq!(
4104        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList32x32) as usize - ptr as usize },
4105        1348usize,
4106        concat!(
4107            "Offset of field: ",
4108            stringify!(_CUVIDHEVCPICPARAMS),
4109            "::",
4110            stringify!(ScalingList32x32)
4111        )
4112    );
4113    assert_eq!(
4114        unsafe { ::core::ptr::addr_of!((*ptr).ScalingListDCCoeff16x16) as usize - ptr as usize },
4115        1476usize,
4116        concat!(
4117            "Offset of field: ",
4118            stringify!(_CUVIDHEVCPICPARAMS),
4119            "::",
4120            stringify!(ScalingListDCCoeff16x16)
4121        )
4122    );
4123    assert_eq!(
4124        unsafe { ::core::ptr::addr_of!((*ptr).ScalingListDCCoeff32x32) as usize - ptr as usize },
4125        1482usize,
4126        concat!(
4127            "Offset of field: ",
4128            stringify!(_CUVIDHEVCPICPARAMS),
4129            "::",
4130            stringify!(ScalingListDCCoeff32x32)
4131        )
4132    );
4133}
4134#[test]
4135fn bindgen_test_layout__CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1() {
4136    assert_eq!(
4137        ::core::mem::size_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1>(),
4138        1usize,
4139        concat!(
4140            "Size of: ",
4141            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1)
4142        )
4143    );
4144    assert_eq!(
4145        ::core::mem::align_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1>(),
4146        1usize,
4147        concat!(
4148            "Alignment of ",
4149            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1)
4150        )
4151    );
4152}
4153#[test]
4154fn bindgen_test_layout__CUVIDVP8PICPARAMS__bindgen_ty_1() {
4155    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVP8PICPARAMS__bindgen_ty_1> =
4156        ::core::mem::MaybeUninit::uninit();
4157    let ptr = UNINIT.as_ptr();
4158    assert_eq!(
4159        ::core::mem::size_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1>(),
4160        1usize,
4161        concat!("Size of: ", stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1))
4162    );
4163    assert_eq!(
4164        ::core::mem::align_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1>(),
4165        1usize,
4166        concat!(
4167            "Alignment of ",
4168            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1)
4169        )
4170    );
4171    assert_eq!(
4172        unsafe { ::core::ptr::addr_of!((*ptr).vp8_frame_tag) as usize - ptr as usize },
4173        0usize,
4174        concat!(
4175            "Offset of field: ",
4176            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1),
4177            "::",
4178            stringify!(vp8_frame_tag)
4179        )
4180    );
4181    assert_eq!(
4182        unsafe { ::core::ptr::addr_of!((*ptr).wFrameTagFlags) as usize - ptr as usize },
4183        0usize,
4184        concat!(
4185            "Offset of field: ",
4186            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1),
4187            "::",
4188            stringify!(wFrameTagFlags)
4189        )
4190    );
4191}
4192#[test]
4193fn bindgen_test_layout__CUVIDVP8PICPARAMS() {
4194    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVP8PICPARAMS> = ::core::mem::MaybeUninit::uninit();
4195    let ptr = UNINIT.as_ptr();
4196    assert_eq!(
4197        ::core::mem::size_of::<_CUVIDVP8PICPARAMS>(),
4198        32usize,
4199        concat!("Size of: ", stringify!(_CUVIDVP8PICPARAMS))
4200    );
4201    assert_eq!(
4202        ::core::mem::align_of::<_CUVIDVP8PICPARAMS>(),
4203        4usize,
4204        concat!("Alignment of ", stringify!(_CUVIDVP8PICPARAMS))
4205    );
4206    assert_eq!(
4207        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
4208        0usize,
4209        concat!(
4210            "Offset of field: ",
4211            stringify!(_CUVIDVP8PICPARAMS),
4212            "::",
4213            stringify!(width)
4214        )
4215    );
4216    assert_eq!(
4217        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
4218        4usize,
4219        concat!(
4220            "Offset of field: ",
4221            stringify!(_CUVIDVP8PICPARAMS),
4222            "::",
4223            stringify!(height)
4224        )
4225    );
4226    assert_eq!(
4227        unsafe { ::core::ptr::addr_of!((*ptr).first_partition_size) as usize - ptr as usize },
4228        8usize,
4229        concat!(
4230            "Offset of field: ",
4231            stringify!(_CUVIDVP8PICPARAMS),
4232            "::",
4233            stringify!(first_partition_size)
4234        )
4235    );
4236    assert_eq!(
4237        unsafe { ::core::ptr::addr_of!((*ptr).LastRefIdx) as usize - ptr as usize },
4238        12usize,
4239        concat!(
4240            "Offset of field: ",
4241            stringify!(_CUVIDVP8PICPARAMS),
4242            "::",
4243            stringify!(LastRefIdx)
4244        )
4245    );
4246    assert_eq!(
4247        unsafe { ::core::ptr::addr_of!((*ptr).GoldenRefIdx) as usize - ptr as usize },
4248        13usize,
4249        concat!(
4250            "Offset of field: ",
4251            stringify!(_CUVIDVP8PICPARAMS),
4252            "::",
4253            stringify!(GoldenRefIdx)
4254        )
4255    );
4256    assert_eq!(
4257        unsafe { ::core::ptr::addr_of!((*ptr).AltRefIdx) as usize - ptr as usize },
4258        14usize,
4259        concat!(
4260            "Offset of field: ",
4261            stringify!(_CUVIDVP8PICPARAMS),
4262            "::",
4263            stringify!(AltRefIdx)
4264        )
4265    );
4266    assert_eq!(
4267        unsafe { ::core::ptr::addr_of!((*ptr).Reserved1) as usize - ptr as usize },
4268        16usize,
4269        concat!(
4270            "Offset of field: ",
4271            stringify!(_CUVIDVP8PICPARAMS),
4272            "::",
4273            stringify!(Reserved1)
4274        )
4275    );
4276    assert_eq!(
4277        unsafe { ::core::ptr::addr_of!((*ptr).Reserved2) as usize - ptr as usize },
4278        20usize,
4279        concat!(
4280            "Offset of field: ",
4281            stringify!(_CUVIDVP8PICPARAMS),
4282            "::",
4283            stringify!(Reserved2)
4284        )
4285    );
4286}
4287#[test]
4288fn bindgen_test_layout__CUVIDVP9PICPARAMS() {
4289    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVP9PICPARAMS> = ::core::mem::MaybeUninit::uninit();
4290    let ptr = UNINIT.as_ptr();
4291    assert_eq!(
4292        ::core::mem::size_of::<_CUVIDVP9PICPARAMS>(),
4293        220usize,
4294        concat!("Size of: ", stringify!(_CUVIDVP9PICPARAMS))
4295    );
4296    assert_eq!(
4297        ::core::mem::align_of::<_CUVIDVP9PICPARAMS>(),
4298        4usize,
4299        concat!("Alignment of ", stringify!(_CUVIDVP9PICPARAMS))
4300    );
4301    assert_eq!(
4302        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
4303        0usize,
4304        concat!(
4305            "Offset of field: ",
4306            stringify!(_CUVIDVP9PICPARAMS),
4307            "::",
4308            stringify!(width)
4309        )
4310    );
4311    assert_eq!(
4312        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
4313        4usize,
4314        concat!(
4315            "Offset of field: ",
4316            stringify!(_CUVIDVP9PICPARAMS),
4317            "::",
4318            stringify!(height)
4319        )
4320    );
4321    assert_eq!(
4322        unsafe { ::core::ptr::addr_of!((*ptr).LastRefIdx) as usize - ptr as usize },
4323        8usize,
4324        concat!(
4325            "Offset of field: ",
4326            stringify!(_CUVIDVP9PICPARAMS),
4327            "::",
4328            stringify!(LastRefIdx)
4329        )
4330    );
4331    assert_eq!(
4332        unsafe { ::core::ptr::addr_of!((*ptr).GoldenRefIdx) as usize - ptr as usize },
4333        9usize,
4334        concat!(
4335            "Offset of field: ",
4336            stringify!(_CUVIDVP9PICPARAMS),
4337            "::",
4338            stringify!(GoldenRefIdx)
4339        )
4340    );
4341    assert_eq!(
4342        unsafe { ::core::ptr::addr_of!((*ptr).AltRefIdx) as usize - ptr as usize },
4343        10usize,
4344        concat!(
4345            "Offset of field: ",
4346            stringify!(_CUVIDVP9PICPARAMS),
4347            "::",
4348            stringify!(AltRefIdx)
4349        )
4350    );
4351    assert_eq!(
4352        unsafe { ::core::ptr::addr_of!((*ptr).colorSpace) as usize - ptr as usize },
4353        11usize,
4354        concat!(
4355            "Offset of field: ",
4356            stringify!(_CUVIDVP9PICPARAMS),
4357            "::",
4358            stringify!(colorSpace)
4359        )
4360    );
4361    assert_eq!(
4362        unsafe { ::core::ptr::addr_of!((*ptr).reserved16Bits) as usize - ptr as usize },
4363        14usize,
4364        concat!(
4365            "Offset of field: ",
4366            stringify!(_CUVIDVP9PICPARAMS),
4367            "::",
4368            stringify!(reserved16Bits)
4369        )
4370    );
4371    assert_eq!(
4372        unsafe { ::core::ptr::addr_of!((*ptr).refFrameSignBias) as usize - ptr as usize },
4373        16usize,
4374        concat!(
4375            "Offset of field: ",
4376            stringify!(_CUVIDVP9PICPARAMS),
4377            "::",
4378            stringify!(refFrameSignBias)
4379        )
4380    );
4381    assert_eq!(
4382        unsafe { ::core::ptr::addr_of!((*ptr).bitDepthMinus8Luma) as usize - ptr as usize },
4383        20usize,
4384        concat!(
4385            "Offset of field: ",
4386            stringify!(_CUVIDVP9PICPARAMS),
4387            "::",
4388            stringify!(bitDepthMinus8Luma)
4389        )
4390    );
4391    assert_eq!(
4392        unsafe { ::core::ptr::addr_of!((*ptr).bitDepthMinus8Chroma) as usize - ptr as usize },
4393        21usize,
4394        concat!(
4395            "Offset of field: ",
4396            stringify!(_CUVIDVP9PICPARAMS),
4397            "::",
4398            stringify!(bitDepthMinus8Chroma)
4399        )
4400    );
4401    assert_eq!(
4402        unsafe { ::core::ptr::addr_of!((*ptr).loopFilterLevel) as usize - ptr as usize },
4403        22usize,
4404        concat!(
4405            "Offset of field: ",
4406            stringify!(_CUVIDVP9PICPARAMS),
4407            "::",
4408            stringify!(loopFilterLevel)
4409        )
4410    );
4411    assert_eq!(
4412        unsafe { ::core::ptr::addr_of!((*ptr).loopFilterSharpness) as usize - ptr as usize },
4413        23usize,
4414        concat!(
4415            "Offset of field: ",
4416            stringify!(_CUVIDVP9PICPARAMS),
4417            "::",
4418            stringify!(loopFilterSharpness)
4419        )
4420    );
4421    assert_eq!(
4422        unsafe { ::core::ptr::addr_of!((*ptr).modeRefLfEnabled) as usize - ptr as usize },
4423        24usize,
4424        concat!(
4425            "Offset of field: ",
4426            stringify!(_CUVIDVP9PICPARAMS),
4427            "::",
4428            stringify!(modeRefLfEnabled)
4429        )
4430    );
4431    assert_eq!(
4432        unsafe { ::core::ptr::addr_of!((*ptr).log2_tile_columns) as usize - ptr as usize },
4433        25usize,
4434        concat!(
4435            "Offset of field: ",
4436            stringify!(_CUVIDVP9PICPARAMS),
4437            "::",
4438            stringify!(log2_tile_columns)
4439        )
4440    );
4441    assert_eq!(
4442        unsafe { ::core::ptr::addr_of!((*ptr).log2_tile_rows) as usize - ptr as usize },
4443        26usize,
4444        concat!(
4445            "Offset of field: ",
4446            stringify!(_CUVIDVP9PICPARAMS),
4447            "::",
4448            stringify!(log2_tile_rows)
4449        )
4450    );
4451    assert_eq!(
4452        unsafe { ::core::ptr::addr_of!((*ptr).segmentFeatureEnable) as usize - ptr as usize },
4453        28usize,
4454        concat!(
4455            "Offset of field: ",
4456            stringify!(_CUVIDVP9PICPARAMS),
4457            "::",
4458            stringify!(segmentFeatureEnable)
4459        )
4460    );
4461    assert_eq!(
4462        unsafe { ::core::ptr::addr_of!((*ptr).segmentFeatureData) as usize - ptr as usize },
4463        60usize,
4464        concat!(
4465            "Offset of field: ",
4466            stringify!(_CUVIDVP9PICPARAMS),
4467            "::",
4468            stringify!(segmentFeatureData)
4469        )
4470    );
4471    assert_eq!(
4472        unsafe { ::core::ptr::addr_of!((*ptr).mb_segment_tree_probs) as usize - ptr as usize },
4473        124usize,
4474        concat!(
4475            "Offset of field: ",
4476            stringify!(_CUVIDVP9PICPARAMS),
4477            "::",
4478            stringify!(mb_segment_tree_probs)
4479        )
4480    );
4481    assert_eq!(
4482        unsafe { ::core::ptr::addr_of!((*ptr).segment_pred_probs) as usize - ptr as usize },
4483        131usize,
4484        concat!(
4485            "Offset of field: ",
4486            stringify!(_CUVIDVP9PICPARAMS),
4487            "::",
4488            stringify!(segment_pred_probs)
4489        )
4490    );
4491    assert_eq!(
4492        unsafe { ::core::ptr::addr_of!((*ptr).reservedSegment16Bits) as usize - ptr as usize },
4493        134usize,
4494        concat!(
4495            "Offset of field: ",
4496            stringify!(_CUVIDVP9PICPARAMS),
4497            "::",
4498            stringify!(reservedSegment16Bits)
4499        )
4500    );
4501    assert_eq!(
4502        unsafe { ::core::ptr::addr_of!((*ptr).qpYAc) as usize - ptr as usize },
4503        136usize,
4504        concat!(
4505            "Offset of field: ",
4506            stringify!(_CUVIDVP9PICPARAMS),
4507            "::",
4508            stringify!(qpYAc)
4509        )
4510    );
4511    assert_eq!(
4512        unsafe { ::core::ptr::addr_of!((*ptr).qpYDc) as usize - ptr as usize },
4513        140usize,
4514        concat!(
4515            "Offset of field: ",
4516            stringify!(_CUVIDVP9PICPARAMS),
4517            "::",
4518            stringify!(qpYDc)
4519        )
4520    );
4521    assert_eq!(
4522        unsafe { ::core::ptr::addr_of!((*ptr).qpChDc) as usize - ptr as usize },
4523        144usize,
4524        concat!(
4525            "Offset of field: ",
4526            stringify!(_CUVIDVP9PICPARAMS),
4527            "::",
4528            stringify!(qpChDc)
4529        )
4530    );
4531    assert_eq!(
4532        unsafe { ::core::ptr::addr_of!((*ptr).qpChAc) as usize - ptr as usize },
4533        148usize,
4534        concat!(
4535            "Offset of field: ",
4536            stringify!(_CUVIDVP9PICPARAMS),
4537            "::",
4538            stringify!(qpChAc)
4539        )
4540    );
4541    assert_eq!(
4542        unsafe { ::core::ptr::addr_of!((*ptr).activeRefIdx) as usize - ptr as usize },
4543        152usize,
4544        concat!(
4545            "Offset of field: ",
4546            stringify!(_CUVIDVP9PICPARAMS),
4547            "::",
4548            stringify!(activeRefIdx)
4549        )
4550    );
4551    assert_eq!(
4552        unsafe { ::core::ptr::addr_of!((*ptr).resetFrameContext) as usize - ptr as usize },
4553        164usize,
4554        concat!(
4555            "Offset of field: ",
4556            stringify!(_CUVIDVP9PICPARAMS),
4557            "::",
4558            stringify!(resetFrameContext)
4559        )
4560    );
4561    assert_eq!(
4562        unsafe { ::core::ptr::addr_of!((*ptr).mcomp_filter_type) as usize - ptr as usize },
4563        168usize,
4564        concat!(
4565            "Offset of field: ",
4566            stringify!(_CUVIDVP9PICPARAMS),
4567            "::",
4568            stringify!(mcomp_filter_type)
4569        )
4570    );
4571    assert_eq!(
4572        unsafe { ::core::ptr::addr_of!((*ptr).mbRefLfDelta) as usize - ptr as usize },
4573        172usize,
4574        concat!(
4575            "Offset of field: ",
4576            stringify!(_CUVIDVP9PICPARAMS),
4577            "::",
4578            stringify!(mbRefLfDelta)
4579        )
4580    );
4581    assert_eq!(
4582        unsafe { ::core::ptr::addr_of!((*ptr).mbModeLfDelta) as usize - ptr as usize },
4583        188usize,
4584        concat!(
4585            "Offset of field: ",
4586            stringify!(_CUVIDVP9PICPARAMS),
4587            "::",
4588            stringify!(mbModeLfDelta)
4589        )
4590    );
4591    assert_eq!(
4592        unsafe { ::core::ptr::addr_of!((*ptr).frameTagSize) as usize - ptr as usize },
4593        196usize,
4594        concat!(
4595            "Offset of field: ",
4596            stringify!(_CUVIDVP9PICPARAMS),
4597            "::",
4598            stringify!(frameTagSize)
4599        )
4600    );
4601    assert_eq!(
4602        unsafe { ::core::ptr::addr_of!((*ptr).offsetToDctParts) as usize - ptr as usize },
4603        200usize,
4604        concat!(
4605            "Offset of field: ",
4606            stringify!(_CUVIDVP9PICPARAMS),
4607            "::",
4608            stringify!(offsetToDctParts)
4609        )
4610    );
4611    assert_eq!(
4612        unsafe { ::core::ptr::addr_of!((*ptr).reserved128Bits) as usize - ptr as usize },
4613        204usize,
4614        concat!(
4615            "Offset of field: ",
4616            stringify!(_CUVIDVP9PICPARAMS),
4617            "::",
4618            stringify!(reserved128Bits)
4619        )
4620    );
4621}
4622#[test]
4623fn bindgen_test_layout__CUVIDAV1PICPARAMS__bindgen_ty_1() {
4624    const UNINIT: ::core::mem::MaybeUninit<_CUVIDAV1PICPARAMS__bindgen_ty_1> =
4625        ::core::mem::MaybeUninit::uninit();
4626    let ptr = UNINIT.as_ptr();
4627    assert_eq!(
4628        ::core::mem::size_of::<_CUVIDAV1PICPARAMS__bindgen_ty_1>(),
4629        12usize,
4630        concat!("Size of: ", stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1))
4631    );
4632    assert_eq!(
4633        ::core::mem::align_of::<_CUVIDAV1PICPARAMS__bindgen_ty_1>(),
4634        4usize,
4635        concat!(
4636            "Alignment of ",
4637            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1)
4638        )
4639    );
4640    assert_eq!(
4641        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
4642        0usize,
4643        concat!(
4644            "Offset of field: ",
4645            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
4646            "::",
4647            stringify!(width)
4648        )
4649    );
4650    assert_eq!(
4651        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
4652        4usize,
4653        concat!(
4654            "Offset of field: ",
4655            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
4656            "::",
4657            stringify!(height)
4658        )
4659    );
4660    assert_eq!(
4661        unsafe { ::core::ptr::addr_of!((*ptr).index) as usize - ptr as usize },
4662        8usize,
4663        concat!(
4664            "Offset of field: ",
4665            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
4666            "::",
4667            stringify!(index)
4668        )
4669    );
4670    assert_eq!(
4671        unsafe { ::core::ptr::addr_of!((*ptr).reserved24Bits) as usize - ptr as usize },
4672        9usize,
4673        concat!(
4674            "Offset of field: ",
4675            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
4676            "::",
4677            stringify!(reserved24Bits)
4678        )
4679    );
4680}
4681#[test]
4682fn bindgen_test_layout__CUVIDAV1PICPARAMS__bindgen_ty_2() {
4683    const UNINIT: ::core::mem::MaybeUninit<_CUVIDAV1PICPARAMS__bindgen_ty_2> =
4684        ::core::mem::MaybeUninit::uninit();
4685    let ptr = UNINIT.as_ptr();
4686    assert_eq!(
4687        ::core::mem::size_of::<_CUVIDAV1PICPARAMS__bindgen_ty_2>(),
4688        28usize,
4689        concat!("Size of: ", stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2))
4690    );
4691    assert_eq!(
4692        ::core::mem::align_of::<_CUVIDAV1PICPARAMS__bindgen_ty_2>(),
4693        4usize,
4694        concat!(
4695            "Alignment of ",
4696            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2)
4697        )
4698    );
4699    assert_eq!(
4700        unsafe { ::core::ptr::addr_of!((*ptr).reserved24Bits) as usize - ptr as usize },
4701        1usize,
4702        concat!(
4703            "Offset of field: ",
4704            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2),
4705            "::",
4706            stringify!(reserved24Bits)
4707        )
4708    );
4709    assert_eq!(
4710        unsafe { ::core::ptr::addr_of!((*ptr).wmmat) as usize - ptr as usize },
4711        4usize,
4712        concat!(
4713            "Offset of field: ",
4714            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2),
4715            "::",
4716            stringify!(wmmat)
4717        )
4718    );
4719}
4720#[test]
4721fn bindgen_test_layout__CUVIDAV1PICPARAMS() {
4722    const UNINIT: ::core::mem::MaybeUninit<_CUVIDAV1PICPARAMS> = ::core::mem::MaybeUninit::uninit();
4723    let ptr = UNINIT.as_ptr();
4724    assert_eq!(
4725        ::core::mem::size_of::<_CUVIDAV1PICPARAMS>(),
4726        1024usize,
4727        concat!("Size of: ", stringify!(_CUVIDAV1PICPARAMS))
4728    );
4729    assert_eq!(
4730        ::core::mem::align_of::<_CUVIDAV1PICPARAMS>(),
4731        4usize,
4732        concat!("Alignment of ", stringify!(_CUVIDAV1PICPARAMS))
4733    );
4734    assert_eq!(
4735        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
4736        0usize,
4737        concat!(
4738            "Offset of field: ",
4739            stringify!(_CUVIDAV1PICPARAMS),
4740            "::",
4741            stringify!(width)
4742        )
4743    );
4744    assert_eq!(
4745        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
4746        4usize,
4747        concat!(
4748            "Offset of field: ",
4749            stringify!(_CUVIDAV1PICPARAMS),
4750            "::",
4751            stringify!(height)
4752        )
4753    );
4754    assert_eq!(
4755        unsafe { ::core::ptr::addr_of!((*ptr).frame_offset) as usize - ptr as usize },
4756        8usize,
4757        concat!(
4758            "Offset of field: ",
4759            stringify!(_CUVIDAV1PICPARAMS),
4760            "::",
4761            stringify!(frame_offset)
4762        )
4763    );
4764    assert_eq!(
4765        unsafe { ::core::ptr::addr_of!((*ptr).decodePicIdx) as usize - ptr as usize },
4766        12usize,
4767        concat!(
4768            "Offset of field: ",
4769            stringify!(_CUVIDAV1PICPARAMS),
4770            "::",
4771            stringify!(decodePicIdx)
4772        )
4773    );
4774    assert_eq!(
4775        unsafe { ::core::ptr::addr_of!((*ptr).tile_widths) as usize - ptr as usize },
4776        28usize,
4777        concat!(
4778            "Offset of field: ",
4779            stringify!(_CUVIDAV1PICPARAMS),
4780            "::",
4781            stringify!(tile_widths)
4782        )
4783    );
4784    assert_eq!(
4785        unsafe { ::core::ptr::addr_of!((*ptr).tile_heights) as usize - ptr as usize },
4786        156usize,
4787        concat!(
4788            "Offset of field: ",
4789            stringify!(_CUVIDAV1PICPARAMS),
4790            "::",
4791            stringify!(tile_heights)
4792        )
4793    );
4794    assert_eq!(
4795        unsafe { ::core::ptr::addr_of!((*ptr).cdef_y_strength) as usize - ptr as usize },
4796        285usize,
4797        concat!(
4798            "Offset of field: ",
4799            stringify!(_CUVIDAV1PICPARAMS),
4800            "::",
4801            stringify!(cdef_y_strength)
4802        )
4803    );
4804    assert_eq!(
4805        unsafe { ::core::ptr::addr_of!((*ptr).cdef_uv_strength) as usize - ptr as usize },
4806        293usize,
4807        concat!(
4808            "Offset of field: ",
4809            stringify!(_CUVIDAV1PICPARAMS),
4810            "::",
4811            stringify!(cdef_uv_strength)
4812        )
4813    );
4814    assert_eq!(
4815        unsafe { ::core::ptr::addr_of!((*ptr).base_qindex) as usize - ptr as usize },
4816        302usize,
4817        concat!(
4818            "Offset of field: ",
4819            stringify!(_CUVIDAV1PICPARAMS),
4820            "::",
4821            stringify!(base_qindex)
4822        )
4823    );
4824    assert_eq!(
4825        unsafe { ::core::ptr::addr_of!((*ptr).qp_y_dc_delta_q) as usize - ptr as usize },
4826        303usize,
4827        concat!(
4828            "Offset of field: ",
4829            stringify!(_CUVIDAV1PICPARAMS),
4830            "::",
4831            stringify!(qp_y_dc_delta_q)
4832        )
4833    );
4834    assert_eq!(
4835        unsafe { ::core::ptr::addr_of!((*ptr).qp_u_dc_delta_q) as usize - ptr as usize },
4836        304usize,
4837        concat!(
4838            "Offset of field: ",
4839            stringify!(_CUVIDAV1PICPARAMS),
4840            "::",
4841            stringify!(qp_u_dc_delta_q)
4842        )
4843    );
4844    assert_eq!(
4845        unsafe { ::core::ptr::addr_of!((*ptr).qp_v_dc_delta_q) as usize - ptr as usize },
4846        305usize,
4847        concat!(
4848            "Offset of field: ",
4849            stringify!(_CUVIDAV1PICPARAMS),
4850            "::",
4851            stringify!(qp_v_dc_delta_q)
4852        )
4853    );
4854    assert_eq!(
4855        unsafe { ::core::ptr::addr_of!((*ptr).qp_u_ac_delta_q) as usize - ptr as usize },
4856        306usize,
4857        concat!(
4858            "Offset of field: ",
4859            stringify!(_CUVIDAV1PICPARAMS),
4860            "::",
4861            stringify!(qp_u_ac_delta_q)
4862        )
4863    );
4864    assert_eq!(
4865        unsafe { ::core::ptr::addr_of!((*ptr).qp_v_ac_delta_q) as usize - ptr as usize },
4866        307usize,
4867        concat!(
4868            "Offset of field: ",
4869            stringify!(_CUVIDAV1PICPARAMS),
4870            "::",
4871            stringify!(qp_v_ac_delta_q)
4872        )
4873    );
4874    assert_eq!(
4875        unsafe { ::core::ptr::addr_of!((*ptr).qm_y) as usize - ptr as usize },
4876        308usize,
4877        concat!(
4878            "Offset of field: ",
4879            stringify!(_CUVIDAV1PICPARAMS),
4880            "::",
4881            stringify!(qm_y)
4882        )
4883    );
4884    assert_eq!(
4885        unsafe { ::core::ptr::addr_of!((*ptr).qm_u) as usize - ptr as usize },
4886        309usize,
4887        concat!(
4888            "Offset of field: ",
4889            stringify!(_CUVIDAV1PICPARAMS),
4890            "::",
4891            stringify!(qm_u)
4892        )
4893    );
4894    assert_eq!(
4895        unsafe { ::core::ptr::addr_of!((*ptr).qm_v) as usize - ptr as usize },
4896        310usize,
4897        concat!(
4898            "Offset of field: ",
4899            stringify!(_CUVIDAV1PICPARAMS),
4900            "::",
4901            stringify!(qm_v)
4902        )
4903    );
4904    assert_eq!(
4905        unsafe { ::core::ptr::addr_of!((*ptr).segmentation_feature_data) as usize - ptr as usize },
4906        312usize,
4907        concat!(
4908            "Offset of field: ",
4909            stringify!(_CUVIDAV1PICPARAMS),
4910            "::",
4911            stringify!(segmentation_feature_data)
4912        )
4913    );
4914    assert_eq!(
4915        unsafe { ::core::ptr::addr_of!((*ptr).segmentation_feature_mask) as usize - ptr as usize },
4916        440usize,
4917        concat!(
4918            "Offset of field: ",
4919            stringify!(_CUVIDAV1PICPARAMS),
4920            "::",
4921            stringify!(segmentation_feature_mask)
4922        )
4923    );
4924    assert_eq!(
4925        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_level) as usize - ptr as usize },
4926        448usize,
4927        concat!(
4928            "Offset of field: ",
4929            stringify!(_CUVIDAV1PICPARAMS),
4930            "::",
4931            stringify!(loop_filter_level)
4932        )
4933    );
4934    assert_eq!(
4935        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_level_u) as usize - ptr as usize },
4936        450usize,
4937        concat!(
4938            "Offset of field: ",
4939            stringify!(_CUVIDAV1PICPARAMS),
4940            "::",
4941            stringify!(loop_filter_level_u)
4942        )
4943    );
4944    assert_eq!(
4945        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_level_v) as usize - ptr as usize },
4946        451usize,
4947        concat!(
4948            "Offset of field: ",
4949            stringify!(_CUVIDAV1PICPARAMS),
4950            "::",
4951            stringify!(loop_filter_level_v)
4952        )
4953    );
4954    assert_eq!(
4955        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_sharpness) as usize - ptr as usize },
4956        452usize,
4957        concat!(
4958            "Offset of field: ",
4959            stringify!(_CUVIDAV1PICPARAMS),
4960            "::",
4961            stringify!(loop_filter_sharpness)
4962        )
4963    );
4964    assert_eq!(
4965        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_ref_deltas) as usize - ptr as usize },
4966        453usize,
4967        concat!(
4968            "Offset of field: ",
4969            stringify!(_CUVIDAV1PICPARAMS),
4970            "::",
4971            stringify!(loop_filter_ref_deltas)
4972        )
4973    );
4974    assert_eq!(
4975        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_mode_deltas) as usize - ptr as usize },
4976        461usize,
4977        concat!(
4978            "Offset of field: ",
4979            stringify!(_CUVIDAV1PICPARAMS),
4980            "::",
4981            stringify!(loop_filter_mode_deltas)
4982        )
4983    );
4984    assert_eq!(
4985        unsafe { ::core::ptr::addr_of!((*ptr).lr_unit_size) as usize - ptr as usize },
4986        464usize,
4987        concat!(
4988            "Offset of field: ",
4989            stringify!(_CUVIDAV1PICPARAMS),
4990            "::",
4991            stringify!(lr_unit_size)
4992        )
4993    );
4994    assert_eq!(
4995        unsafe { ::core::ptr::addr_of!((*ptr).lr_type) as usize - ptr as usize },
4996        467usize,
4997        concat!(
4998            "Offset of field: ",
4999            stringify!(_CUVIDAV1PICPARAMS),
5000            "::",
5001            stringify!(lr_type)
5002        )
5003    );
5004    assert_eq!(
5005        unsafe { ::core::ptr::addr_of!((*ptr).primary_ref_frame) as usize - ptr as usize },
5006        470usize,
5007        concat!(
5008            "Offset of field: ",
5009            stringify!(_CUVIDAV1PICPARAMS),
5010            "::",
5011            stringify!(primary_ref_frame)
5012        )
5013    );
5014    assert_eq!(
5015        unsafe { ::core::ptr::addr_of!((*ptr).ref_frame_map) as usize - ptr as usize },
5016        471usize,
5017        concat!(
5018            "Offset of field: ",
5019            stringify!(_CUVIDAV1PICPARAMS),
5020            "::",
5021            stringify!(ref_frame_map)
5022        )
5023    );
5024    assert_eq!(
5025        unsafe { ::core::ptr::addr_of!((*ptr).reserved5_32bits) as usize - ptr as usize },
5026        480usize,
5027        concat!(
5028            "Offset of field: ",
5029            stringify!(_CUVIDAV1PICPARAMS),
5030            "::",
5031            stringify!(reserved5_32bits)
5032        )
5033    );
5034    assert_eq!(
5035        unsafe { ::core::ptr::addr_of!((*ptr).ref_frame) as usize - ptr as usize },
5036        484usize,
5037        concat!(
5038            "Offset of field: ",
5039            stringify!(_CUVIDAV1PICPARAMS),
5040            "::",
5041            stringify!(ref_frame)
5042        )
5043    );
5044    assert_eq!(
5045        unsafe { ::core::ptr::addr_of!((*ptr).global_motion) as usize - ptr as usize },
5046        568usize,
5047        concat!(
5048            "Offset of field: ",
5049            stringify!(_CUVIDAV1PICPARAMS),
5050            "::",
5051            stringify!(global_motion)
5052        )
5053    );
5054    assert_eq!(
5055        unsafe { ::core::ptr::addr_of!((*ptr).num_y_points) as usize - ptr as usize },
5056        766usize,
5057        concat!(
5058            "Offset of field: ",
5059            stringify!(_CUVIDAV1PICPARAMS),
5060            "::",
5061            stringify!(num_y_points)
5062        )
5063    );
5064    assert_eq!(
5065        unsafe { ::core::ptr::addr_of!((*ptr).scaling_points_y) as usize - ptr as usize },
5066        767usize,
5067        concat!(
5068            "Offset of field: ",
5069            stringify!(_CUVIDAV1PICPARAMS),
5070            "::",
5071            stringify!(scaling_points_y)
5072        )
5073    );
5074    assert_eq!(
5075        unsafe { ::core::ptr::addr_of!((*ptr).num_cb_points) as usize - ptr as usize },
5076        795usize,
5077        concat!(
5078            "Offset of field: ",
5079            stringify!(_CUVIDAV1PICPARAMS),
5080            "::",
5081            stringify!(num_cb_points)
5082        )
5083    );
5084    assert_eq!(
5085        unsafe { ::core::ptr::addr_of!((*ptr).scaling_points_cb) as usize - ptr as usize },
5086        796usize,
5087        concat!(
5088            "Offset of field: ",
5089            stringify!(_CUVIDAV1PICPARAMS),
5090            "::",
5091            stringify!(scaling_points_cb)
5092        )
5093    );
5094    assert_eq!(
5095        unsafe { ::core::ptr::addr_of!((*ptr).num_cr_points) as usize - ptr as usize },
5096        816usize,
5097        concat!(
5098            "Offset of field: ",
5099            stringify!(_CUVIDAV1PICPARAMS),
5100            "::",
5101            stringify!(num_cr_points)
5102        )
5103    );
5104    assert_eq!(
5105        unsafe { ::core::ptr::addr_of!((*ptr).scaling_points_cr) as usize - ptr as usize },
5106        817usize,
5107        concat!(
5108            "Offset of field: ",
5109            stringify!(_CUVIDAV1PICPARAMS),
5110            "::",
5111            stringify!(scaling_points_cr)
5112        )
5113    );
5114    assert_eq!(
5115        unsafe { ::core::ptr::addr_of!((*ptr).reserved7_8bits) as usize - ptr as usize },
5116        837usize,
5117        concat!(
5118            "Offset of field: ",
5119            stringify!(_CUVIDAV1PICPARAMS),
5120            "::",
5121            stringify!(reserved7_8bits)
5122        )
5123    );
5124    assert_eq!(
5125        unsafe { ::core::ptr::addr_of!((*ptr).random_seed) as usize - ptr as usize },
5126        838usize,
5127        concat!(
5128            "Offset of field: ",
5129            stringify!(_CUVIDAV1PICPARAMS),
5130            "::",
5131            stringify!(random_seed)
5132        )
5133    );
5134    assert_eq!(
5135        unsafe { ::core::ptr::addr_of!((*ptr).ar_coeffs_y) as usize - ptr as usize },
5136        840usize,
5137        concat!(
5138            "Offset of field: ",
5139            stringify!(_CUVIDAV1PICPARAMS),
5140            "::",
5141            stringify!(ar_coeffs_y)
5142        )
5143    );
5144    assert_eq!(
5145        unsafe { ::core::ptr::addr_of!((*ptr).ar_coeffs_cb) as usize - ptr as usize },
5146        888usize,
5147        concat!(
5148            "Offset of field: ",
5149            stringify!(_CUVIDAV1PICPARAMS),
5150            "::",
5151            stringify!(ar_coeffs_cb)
5152        )
5153    );
5154    assert_eq!(
5155        unsafe { ::core::ptr::addr_of!((*ptr).ar_coeffs_cr) as usize - ptr as usize },
5156        938usize,
5157        concat!(
5158            "Offset of field: ",
5159            stringify!(_CUVIDAV1PICPARAMS),
5160            "::",
5161            stringify!(ar_coeffs_cr)
5162        )
5163    );
5164    assert_eq!(
5165        unsafe { ::core::ptr::addr_of!((*ptr).cb_mult) as usize - ptr as usize },
5166        988usize,
5167        concat!(
5168            "Offset of field: ",
5169            stringify!(_CUVIDAV1PICPARAMS),
5170            "::",
5171            stringify!(cb_mult)
5172        )
5173    );
5174    assert_eq!(
5175        unsafe { ::core::ptr::addr_of!((*ptr).cb_luma_mult) as usize - ptr as usize },
5176        989usize,
5177        concat!(
5178            "Offset of field: ",
5179            stringify!(_CUVIDAV1PICPARAMS),
5180            "::",
5181            stringify!(cb_luma_mult)
5182        )
5183    );
5184    assert_eq!(
5185        unsafe { ::core::ptr::addr_of!((*ptr).cb_offset) as usize - ptr as usize },
5186        990usize,
5187        concat!(
5188            "Offset of field: ",
5189            stringify!(_CUVIDAV1PICPARAMS),
5190            "::",
5191            stringify!(cb_offset)
5192        )
5193    );
5194    assert_eq!(
5195        unsafe { ::core::ptr::addr_of!((*ptr).cr_mult) as usize - ptr as usize },
5196        992usize,
5197        concat!(
5198            "Offset of field: ",
5199            stringify!(_CUVIDAV1PICPARAMS),
5200            "::",
5201            stringify!(cr_mult)
5202        )
5203    );
5204    assert_eq!(
5205        unsafe { ::core::ptr::addr_of!((*ptr).cr_luma_mult) as usize - ptr as usize },
5206        993usize,
5207        concat!(
5208            "Offset of field: ",
5209            stringify!(_CUVIDAV1PICPARAMS),
5210            "::",
5211            stringify!(cr_luma_mult)
5212        )
5213    );
5214    assert_eq!(
5215        unsafe { ::core::ptr::addr_of!((*ptr).cr_offset) as usize - ptr as usize },
5216        994usize,
5217        concat!(
5218            "Offset of field: ",
5219            stringify!(_CUVIDAV1PICPARAMS),
5220            "::",
5221            stringify!(cr_offset)
5222        )
5223    );
5224    assert_eq!(
5225        unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
5226        996usize,
5227        concat!(
5228            "Offset of field: ",
5229            stringify!(_CUVIDAV1PICPARAMS),
5230            "::",
5231            stringify!(reserved)
5232        )
5233    );
5234}
5235#[test]
5236fn bindgen_test_layout__CUVIDPICPARAMS__bindgen_ty_1() {
5237    const UNINIT: ::core::mem::MaybeUninit<_CUVIDPICPARAMS__bindgen_ty_1> =
5238        ::core::mem::MaybeUninit::uninit();
5239    let ptr = UNINIT.as_ptr();
5240    assert_eq!(
5241        ::core::mem::size_of::<_CUVIDPICPARAMS__bindgen_ty_1>(),
5242        4096usize,
5243        concat!("Size of: ", stringify!(_CUVIDPICPARAMS__bindgen_ty_1))
5244    );
5245    assert_eq!(
5246        ::core::mem::align_of::<_CUVIDPICPARAMS__bindgen_ty_1>(),
5247        8usize,
5248        concat!("Alignment of ", stringify!(_CUVIDPICPARAMS__bindgen_ty_1))
5249    );
5250    assert_eq!(
5251        unsafe { ::core::ptr::addr_of!((*ptr).mpeg2) as usize - ptr as usize },
5252        0usize,
5253        concat!(
5254            "Offset of field: ",
5255            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5256            "::",
5257            stringify!(mpeg2)
5258        )
5259    );
5260    assert_eq!(
5261        unsafe { ::core::ptr::addr_of!((*ptr).h264) as usize - ptr as usize },
5262        0usize,
5263        concat!(
5264            "Offset of field: ",
5265            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5266            "::",
5267            stringify!(h264)
5268        )
5269    );
5270    assert_eq!(
5271        unsafe { ::core::ptr::addr_of!((*ptr).vc1) as usize - ptr as usize },
5272        0usize,
5273        concat!(
5274            "Offset of field: ",
5275            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5276            "::",
5277            stringify!(vc1)
5278        )
5279    );
5280    assert_eq!(
5281        unsafe { ::core::ptr::addr_of!((*ptr).mpeg4) as usize - ptr as usize },
5282        0usize,
5283        concat!(
5284            "Offset of field: ",
5285            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5286            "::",
5287            stringify!(mpeg4)
5288        )
5289    );
5290    assert_eq!(
5291        unsafe { ::core::ptr::addr_of!((*ptr).jpeg) as usize - ptr as usize },
5292        0usize,
5293        concat!(
5294            "Offset of field: ",
5295            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5296            "::",
5297            stringify!(jpeg)
5298        )
5299    );
5300    assert_eq!(
5301        unsafe { ::core::ptr::addr_of!((*ptr).hevc) as usize - ptr as usize },
5302        0usize,
5303        concat!(
5304            "Offset of field: ",
5305            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5306            "::",
5307            stringify!(hevc)
5308        )
5309    );
5310    assert_eq!(
5311        unsafe { ::core::ptr::addr_of!((*ptr).vp8) as usize - ptr as usize },
5312        0usize,
5313        concat!(
5314            "Offset of field: ",
5315            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5316            "::",
5317            stringify!(vp8)
5318        )
5319    );
5320    assert_eq!(
5321        unsafe { ::core::ptr::addr_of!((*ptr).vp9) as usize - ptr as usize },
5322        0usize,
5323        concat!(
5324            "Offset of field: ",
5325            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5326            "::",
5327            stringify!(vp9)
5328        )
5329    );
5330    assert_eq!(
5331        unsafe { ::core::ptr::addr_of!((*ptr).av1) as usize - ptr as usize },
5332        0usize,
5333        concat!(
5334            "Offset of field: ",
5335            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5336            "::",
5337            stringify!(av1)
5338        )
5339    );
5340    assert_eq!(
5341        unsafe { ::core::ptr::addr_of!((*ptr).CodecReserved) as usize - ptr as usize },
5342        0usize,
5343        concat!(
5344            "Offset of field: ",
5345            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
5346            "::",
5347            stringify!(CodecReserved)
5348        )
5349    );
5350}
5351#[test]
5352fn bindgen_test_layout__CUVIDPICPARAMS() {
5353    const UNINIT: ::core::mem::MaybeUninit<_CUVIDPICPARAMS> = ::core::mem::MaybeUninit::uninit();
5354    let ptr = UNINIT.as_ptr();
5355    assert_eq!(
5356        ::core::mem::size_of::<_CUVIDPICPARAMS>(),
5357        4280usize,
5358        concat!("Size of: ", stringify!(_CUVIDPICPARAMS))
5359    );
5360    assert_eq!(
5361        ::core::mem::align_of::<_CUVIDPICPARAMS>(),
5362        8usize,
5363        concat!("Alignment of ", stringify!(_CUVIDPICPARAMS))
5364    );
5365    assert_eq!(
5366        unsafe { ::core::ptr::addr_of!((*ptr).PicWidthInMbs) as usize - ptr as usize },
5367        0usize,
5368        concat!(
5369            "Offset of field: ",
5370            stringify!(_CUVIDPICPARAMS),
5371            "::",
5372            stringify!(PicWidthInMbs)
5373        )
5374    );
5375    assert_eq!(
5376        unsafe { ::core::ptr::addr_of!((*ptr).FrameHeightInMbs) as usize - ptr as usize },
5377        4usize,
5378        concat!(
5379            "Offset of field: ",
5380            stringify!(_CUVIDPICPARAMS),
5381            "::",
5382            stringify!(FrameHeightInMbs)
5383        )
5384    );
5385    assert_eq!(
5386        unsafe { ::core::ptr::addr_of!((*ptr).CurrPicIdx) as usize - ptr as usize },
5387        8usize,
5388        concat!(
5389            "Offset of field: ",
5390            stringify!(_CUVIDPICPARAMS),
5391            "::",
5392            stringify!(CurrPicIdx)
5393        )
5394    );
5395    assert_eq!(
5396        unsafe { ::core::ptr::addr_of!((*ptr).field_pic_flag) as usize - ptr as usize },
5397        12usize,
5398        concat!(
5399            "Offset of field: ",
5400            stringify!(_CUVIDPICPARAMS),
5401            "::",
5402            stringify!(field_pic_flag)
5403        )
5404    );
5405    assert_eq!(
5406        unsafe { ::core::ptr::addr_of!((*ptr).bottom_field_flag) as usize - ptr as usize },
5407        16usize,
5408        concat!(
5409            "Offset of field: ",
5410            stringify!(_CUVIDPICPARAMS),
5411            "::",
5412            stringify!(bottom_field_flag)
5413        )
5414    );
5415    assert_eq!(
5416        unsafe { ::core::ptr::addr_of!((*ptr).second_field) as usize - ptr as usize },
5417        20usize,
5418        concat!(
5419            "Offset of field: ",
5420            stringify!(_CUVIDPICPARAMS),
5421            "::",
5422            stringify!(second_field)
5423        )
5424    );
5425    assert_eq!(
5426        unsafe { ::core::ptr::addr_of!((*ptr).nBitstreamDataLen) as usize - ptr as usize },
5427        24usize,
5428        concat!(
5429            "Offset of field: ",
5430            stringify!(_CUVIDPICPARAMS),
5431            "::",
5432            stringify!(nBitstreamDataLen)
5433        )
5434    );
5435    assert_eq!(
5436        unsafe { ::core::ptr::addr_of!((*ptr).pBitstreamData) as usize - ptr as usize },
5437        32usize,
5438        concat!(
5439            "Offset of field: ",
5440            stringify!(_CUVIDPICPARAMS),
5441            "::",
5442            stringify!(pBitstreamData)
5443        )
5444    );
5445    assert_eq!(
5446        unsafe { ::core::ptr::addr_of!((*ptr).nNumSlices) as usize - ptr as usize },
5447        40usize,
5448        concat!(
5449            "Offset of field: ",
5450            stringify!(_CUVIDPICPARAMS),
5451            "::",
5452            stringify!(nNumSlices)
5453        )
5454    );
5455    assert_eq!(
5456        unsafe { ::core::ptr::addr_of!((*ptr).pSliceDataOffsets) as usize - ptr as usize },
5457        48usize,
5458        concat!(
5459            "Offset of field: ",
5460            stringify!(_CUVIDPICPARAMS),
5461            "::",
5462            stringify!(pSliceDataOffsets)
5463        )
5464    );
5465    assert_eq!(
5466        unsafe { ::core::ptr::addr_of!((*ptr).ref_pic_flag) as usize - ptr as usize },
5467        56usize,
5468        concat!(
5469            "Offset of field: ",
5470            stringify!(_CUVIDPICPARAMS),
5471            "::",
5472            stringify!(ref_pic_flag)
5473        )
5474    );
5475    assert_eq!(
5476        unsafe { ::core::ptr::addr_of!((*ptr).intra_pic_flag) as usize - ptr as usize },
5477        60usize,
5478        concat!(
5479            "Offset of field: ",
5480            stringify!(_CUVIDPICPARAMS),
5481            "::",
5482            stringify!(intra_pic_flag)
5483        )
5484    );
5485    assert_eq!(
5486        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
5487        64usize,
5488        concat!(
5489            "Offset of field: ",
5490            stringify!(_CUVIDPICPARAMS),
5491            "::",
5492            stringify!(Reserved)
5493        )
5494    );
5495    assert_eq!(
5496        unsafe { ::core::ptr::addr_of!((*ptr).CodecSpecific) as usize - ptr as usize },
5497        184usize,
5498        concat!(
5499            "Offset of field: ",
5500            stringify!(_CUVIDPICPARAMS),
5501            "::",
5502            stringify!(CodecSpecific)
5503        )
5504    );
5505}
5506#[test]
5507fn bindgen_test_layout__CUVIDPROCPARAMS() {
5508    const UNINIT: ::core::mem::MaybeUninit<_CUVIDPROCPARAMS> = ::core::mem::MaybeUninit::uninit();
5509    let ptr = UNINIT.as_ptr();
5510    assert_eq!(
5511        ::core::mem::size_of::<_CUVIDPROCPARAMS>(),
5512        264usize,
5513        concat!("Size of: ", stringify!(_CUVIDPROCPARAMS))
5514    );
5515    assert_eq!(
5516        ::core::mem::align_of::<_CUVIDPROCPARAMS>(),
5517        8usize,
5518        concat!("Alignment of ", stringify!(_CUVIDPROCPARAMS))
5519    );
5520    assert_eq!(
5521        unsafe { ::core::ptr::addr_of!((*ptr).progressive_frame) as usize - ptr as usize },
5522        0usize,
5523        concat!(
5524            "Offset of field: ",
5525            stringify!(_CUVIDPROCPARAMS),
5526            "::",
5527            stringify!(progressive_frame)
5528        )
5529    );
5530    assert_eq!(
5531        unsafe { ::core::ptr::addr_of!((*ptr).second_field) as usize - ptr as usize },
5532        4usize,
5533        concat!(
5534            "Offset of field: ",
5535            stringify!(_CUVIDPROCPARAMS),
5536            "::",
5537            stringify!(second_field)
5538        )
5539    );
5540    assert_eq!(
5541        unsafe { ::core::ptr::addr_of!((*ptr).top_field_first) as usize - ptr as usize },
5542        8usize,
5543        concat!(
5544            "Offset of field: ",
5545            stringify!(_CUVIDPROCPARAMS),
5546            "::",
5547            stringify!(top_field_first)
5548        )
5549    );
5550    assert_eq!(
5551        unsafe { ::core::ptr::addr_of!((*ptr).unpaired_field) as usize - ptr as usize },
5552        12usize,
5553        concat!(
5554            "Offset of field: ",
5555            stringify!(_CUVIDPROCPARAMS),
5556            "::",
5557            stringify!(unpaired_field)
5558        )
5559    );
5560    assert_eq!(
5561        unsafe { ::core::ptr::addr_of!((*ptr).reserved_flags) as usize - ptr as usize },
5562        16usize,
5563        concat!(
5564            "Offset of field: ",
5565            stringify!(_CUVIDPROCPARAMS),
5566            "::",
5567            stringify!(reserved_flags)
5568        )
5569    );
5570    assert_eq!(
5571        unsafe { ::core::ptr::addr_of!((*ptr).reserved_zero) as usize - ptr as usize },
5572        20usize,
5573        concat!(
5574            "Offset of field: ",
5575            stringify!(_CUVIDPROCPARAMS),
5576            "::",
5577            stringify!(reserved_zero)
5578        )
5579    );
5580    assert_eq!(
5581        unsafe { ::core::ptr::addr_of!((*ptr).raw_input_dptr) as usize - ptr as usize },
5582        24usize,
5583        concat!(
5584            "Offset of field: ",
5585            stringify!(_CUVIDPROCPARAMS),
5586            "::",
5587            stringify!(raw_input_dptr)
5588        )
5589    );
5590    assert_eq!(
5591        unsafe { ::core::ptr::addr_of!((*ptr).raw_input_pitch) as usize - ptr as usize },
5592        32usize,
5593        concat!(
5594            "Offset of field: ",
5595            stringify!(_CUVIDPROCPARAMS),
5596            "::",
5597            stringify!(raw_input_pitch)
5598        )
5599    );
5600    assert_eq!(
5601        unsafe { ::core::ptr::addr_of!((*ptr).raw_input_format) as usize - ptr as usize },
5602        36usize,
5603        concat!(
5604            "Offset of field: ",
5605            stringify!(_CUVIDPROCPARAMS),
5606            "::",
5607            stringify!(raw_input_format)
5608        )
5609    );
5610    assert_eq!(
5611        unsafe { ::core::ptr::addr_of!((*ptr).raw_output_dptr) as usize - ptr as usize },
5612        40usize,
5613        concat!(
5614            "Offset of field: ",
5615            stringify!(_CUVIDPROCPARAMS),
5616            "::",
5617            stringify!(raw_output_dptr)
5618        )
5619    );
5620    assert_eq!(
5621        unsafe { ::core::ptr::addr_of!((*ptr).raw_output_pitch) as usize - ptr as usize },
5622        48usize,
5623        concat!(
5624            "Offset of field: ",
5625            stringify!(_CUVIDPROCPARAMS),
5626            "::",
5627            stringify!(raw_output_pitch)
5628        )
5629    );
5630    assert_eq!(
5631        unsafe { ::core::ptr::addr_of!((*ptr).Reserved1) as usize - ptr as usize },
5632        52usize,
5633        concat!(
5634            "Offset of field: ",
5635            stringify!(_CUVIDPROCPARAMS),
5636            "::",
5637            stringify!(Reserved1)
5638        )
5639    );
5640    assert_eq!(
5641        unsafe { ::core::ptr::addr_of!((*ptr).output_stream) as usize - ptr as usize },
5642        56usize,
5643        concat!(
5644            "Offset of field: ",
5645            stringify!(_CUVIDPROCPARAMS),
5646            "::",
5647            stringify!(output_stream)
5648        )
5649    );
5650    assert_eq!(
5651        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
5652        64usize,
5653        concat!(
5654            "Offset of field: ",
5655            stringify!(_CUVIDPROCPARAMS),
5656            "::",
5657            stringify!(Reserved)
5658        )
5659    );
5660    assert_eq!(
5661        unsafe { ::core::ptr::addr_of!((*ptr).histogram_dptr) as usize - ptr as usize },
5662        248usize,
5663        concat!(
5664            "Offset of field: ",
5665            stringify!(_CUVIDPROCPARAMS),
5666            "::",
5667            stringify!(histogram_dptr)
5668        )
5669    );
5670    assert_eq!(
5671        unsafe { ::core::ptr::addr_of!((*ptr).Reserved2) as usize - ptr as usize },
5672        256usize,
5673        concat!(
5674            "Offset of field: ",
5675            stringify!(_CUVIDPROCPARAMS),
5676            "::",
5677            stringify!(Reserved2)
5678        )
5679    );
5680}
5681#[test]
5682fn bindgen_test_layout__CUVIDGETDECODESTATUS() {
5683    const UNINIT: ::core::mem::MaybeUninit<_CUVIDGETDECODESTATUS> =
5684        ::core::mem::MaybeUninit::uninit();
5685    let ptr = UNINIT.as_ptr();
5686    assert_eq!(
5687        ::core::mem::size_of::<_CUVIDGETDECODESTATUS>(),
5688        192usize,
5689        concat!("Size of: ", stringify!(_CUVIDGETDECODESTATUS))
5690    );
5691    assert_eq!(
5692        ::core::mem::align_of::<_CUVIDGETDECODESTATUS>(),
5693        8usize,
5694        concat!("Alignment of ", stringify!(_CUVIDGETDECODESTATUS))
5695    );
5696    assert_eq!(
5697        unsafe { ::core::ptr::addr_of!((*ptr).decodeStatus) as usize - ptr as usize },
5698        0usize,
5699        concat!(
5700            "Offset of field: ",
5701            stringify!(_CUVIDGETDECODESTATUS),
5702            "::",
5703            stringify!(decodeStatus)
5704        )
5705    );
5706    assert_eq!(
5707        unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
5708        4usize,
5709        concat!(
5710            "Offset of field: ",
5711            stringify!(_CUVIDGETDECODESTATUS),
5712            "::",
5713            stringify!(reserved)
5714        )
5715    );
5716    assert_eq!(
5717        unsafe { ::core::ptr::addr_of!((*ptr).pReserved) as usize - ptr as usize },
5718        128usize,
5719        concat!(
5720            "Offset of field: ",
5721            stringify!(_CUVIDGETDECODESTATUS),
5722            "::",
5723            stringify!(pReserved)
5724        )
5725    );
5726}
5727#[test]
5728fn bindgen_test_layout__CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1() {
5729    const UNINIT: ::core::mem::MaybeUninit<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1> =
5730        ::core::mem::MaybeUninit::uninit();
5731    let ptr = UNINIT.as_ptr();
5732    assert_eq!(
5733        ::core::mem::size_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1>(),
5734        8usize,
5735        concat!(
5736            "Size of: ",
5737            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1)
5738        )
5739    );
5740    assert_eq!(
5741        ::core::mem::align_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1>(),
5742        2usize,
5743        concat!(
5744            "Alignment of ",
5745            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1)
5746        )
5747    );
5748    assert_eq!(
5749        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
5750        0usize,
5751        concat!(
5752            "Offset of field: ",
5753            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
5754            "::",
5755            stringify!(left)
5756        )
5757    );
5758    assert_eq!(
5759        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
5760        2usize,
5761        concat!(
5762            "Offset of field: ",
5763            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
5764            "::",
5765            stringify!(top)
5766        )
5767    );
5768    assert_eq!(
5769        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
5770        4usize,
5771        concat!(
5772            "Offset of field: ",
5773            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
5774            "::",
5775            stringify!(right)
5776        )
5777    );
5778    assert_eq!(
5779        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
5780        6usize,
5781        concat!(
5782            "Offset of field: ",
5783            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
5784            "::",
5785            stringify!(bottom)
5786        )
5787    );
5788}
5789#[test]
5790fn bindgen_test_layout__CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2() {
5791    const UNINIT: ::core::mem::MaybeUninit<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2> =
5792        ::core::mem::MaybeUninit::uninit();
5793    let ptr = UNINIT.as_ptr();
5794    assert_eq!(
5795        ::core::mem::size_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2>(),
5796        8usize,
5797        concat!(
5798            "Size of: ",
5799            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2)
5800        )
5801    );
5802    assert_eq!(
5803        ::core::mem::align_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2>(),
5804        2usize,
5805        concat!(
5806            "Alignment of ",
5807            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2)
5808        )
5809    );
5810    assert_eq!(
5811        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
5812        0usize,
5813        concat!(
5814            "Offset of field: ",
5815            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
5816            "::",
5817            stringify!(left)
5818        )
5819    );
5820    assert_eq!(
5821        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
5822        2usize,
5823        concat!(
5824            "Offset of field: ",
5825            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
5826            "::",
5827            stringify!(top)
5828        )
5829    );
5830    assert_eq!(
5831        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
5832        4usize,
5833        concat!(
5834            "Offset of field: ",
5835            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
5836            "::",
5837            stringify!(right)
5838        )
5839    );
5840    assert_eq!(
5841        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
5842        6usize,
5843        concat!(
5844            "Offset of field: ",
5845            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
5846            "::",
5847            stringify!(bottom)
5848        )
5849    );
5850}
5851#[test]
5852fn bindgen_test_layout__CUVIDRECONFIGUREDECODERINFO() {
5853    const UNINIT: ::core::mem::MaybeUninit<_CUVIDRECONFIGUREDECODERINFO> =
5854        ::core::mem::MaybeUninit::uninit();
5855    let ptr = UNINIT.as_ptr();
5856    assert_eq!(
5857        ::core::mem::size_of::<_CUVIDRECONFIGUREDECODERINFO>(),
5858        128usize,
5859        concat!("Size of: ", stringify!(_CUVIDRECONFIGUREDECODERINFO))
5860    );
5861    assert_eq!(
5862        ::core::mem::align_of::<_CUVIDRECONFIGUREDECODERINFO>(),
5863        4usize,
5864        concat!("Alignment of ", stringify!(_CUVIDRECONFIGUREDECODERINFO))
5865    );
5866    assert_eq!(
5867        unsafe { ::core::ptr::addr_of!((*ptr).ulWidth) as usize - ptr as usize },
5868        0usize,
5869        concat!(
5870            "Offset of field: ",
5871            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5872            "::",
5873            stringify!(ulWidth)
5874        )
5875    );
5876    assert_eq!(
5877        unsafe { ::core::ptr::addr_of!((*ptr).ulHeight) as usize - ptr as usize },
5878        4usize,
5879        concat!(
5880            "Offset of field: ",
5881            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5882            "::",
5883            stringify!(ulHeight)
5884        )
5885    );
5886    assert_eq!(
5887        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetWidth) as usize - ptr as usize },
5888        8usize,
5889        concat!(
5890            "Offset of field: ",
5891            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5892            "::",
5893            stringify!(ulTargetWidth)
5894        )
5895    );
5896    assert_eq!(
5897        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetHeight) as usize - ptr as usize },
5898        12usize,
5899        concat!(
5900            "Offset of field: ",
5901            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5902            "::",
5903            stringify!(ulTargetHeight)
5904        )
5905    );
5906    assert_eq!(
5907        unsafe { ::core::ptr::addr_of!((*ptr).ulNumDecodeSurfaces) as usize - ptr as usize },
5908        16usize,
5909        concat!(
5910            "Offset of field: ",
5911            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5912            "::",
5913            stringify!(ulNumDecodeSurfaces)
5914        )
5915    );
5916    assert_eq!(
5917        unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize },
5918        20usize,
5919        concat!(
5920            "Offset of field: ",
5921            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5922            "::",
5923            stringify!(reserved1)
5924        )
5925    );
5926    assert_eq!(
5927        unsafe { ::core::ptr::addr_of!((*ptr).display_area) as usize - ptr as usize },
5928        68usize,
5929        concat!(
5930            "Offset of field: ",
5931            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5932            "::",
5933            stringify!(display_area)
5934        )
5935    );
5936    assert_eq!(
5937        unsafe { ::core::ptr::addr_of!((*ptr).target_rect) as usize - ptr as usize },
5938        76usize,
5939        concat!(
5940            "Offset of field: ",
5941            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5942            "::",
5943            stringify!(target_rect)
5944        )
5945    );
5946    assert_eq!(
5947        unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize },
5948        84usize,
5949        concat!(
5950            "Offset of field: ",
5951            stringify!(_CUVIDRECONFIGUREDECODERINFO),
5952            "::",
5953            stringify!(reserved2)
5954        )
5955    );
5956}
5957#[repr(u32)]
5958#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5959pub enum cudaVideoCodec_enum {
5960    cudaVideoCodec_MPEG1 = 0,
5961    cudaVideoCodec_MPEG2 = 1,
5962    cudaVideoCodec_MPEG4 = 2,
5963    cudaVideoCodec_VC1 = 3,
5964    cudaVideoCodec_H264 = 4,
5965    cudaVideoCodec_JPEG = 5,
5966    cudaVideoCodec_H264_SVC = 6,
5967    cudaVideoCodec_H264_MVC = 7,
5968    cudaVideoCodec_HEVC = 8,
5969    cudaVideoCodec_VP8 = 9,
5970    cudaVideoCodec_VP9 = 10,
5971    cudaVideoCodec_AV1 = 11,
5972    cudaVideoCodec_NumCodecs = 12,
5973    cudaVideoCodec_YUV420 = 1230591318,
5974    cudaVideoCodec_YV12 = 1498820914,
5975    cudaVideoCodec_NV12 = 1314271538,
5976    cudaVideoCodec_YUYV = 1498765654,
5977    cudaVideoCodec_UYVY = 1431918169,
5978}
5979#[repr(u32)]
5980#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5981pub enum cudaVideoSurfaceFormat_enum {
5982    cudaVideoSurfaceFormat_NV12 = 0,
5983    cudaVideoSurfaceFormat_P016 = 1,
5984    cudaVideoSurfaceFormat_YUV444 = 2,
5985    cudaVideoSurfaceFormat_YUV444_16Bit = 3,
5986}
5987#[repr(u32)]
5988#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5989pub enum cudaVideoDeinterlaceMode_enum {
5990    cudaVideoDeinterlaceMode_Weave = 0,
5991    cudaVideoDeinterlaceMode_Bob = 1,
5992    cudaVideoDeinterlaceMode_Adaptive = 2,
5993}
5994#[repr(u32)]
5995#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5996pub enum cudaVideoChromaFormat_enum {
5997    cudaVideoChromaFormat_Monochrome = 0,
5998    cudaVideoChromaFormat_420 = 1,
5999    cudaVideoChromaFormat_422 = 2,
6000    cudaVideoChromaFormat_444 = 3,
6001}
6002#[repr(u32)]
6003#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6004pub enum cudaVideoCreateFlags_enum {
6005    cudaVideoCreate_Default = 0,
6006    cudaVideoCreate_PreferCUDA = 1,
6007    cudaVideoCreate_PreferDXVA = 2,
6008    cudaVideoCreate_PreferCUVID = 4,
6009}
6010#[repr(u32)]
6011#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6012pub enum cuvidDecodeStatus_enum {
6013    cuvidDecodeStatus_Invalid = 0,
6014    cuvidDecodeStatus_InProgress = 1,
6015    cuvidDecodeStatus_Success = 2,
6016    cuvidDecodeStatus_Error = 8,
6017    cuvidDecodeStatus_Error_Concealed = 9,
6018}
6019#[repr(C)]
6020#[derive(Copy, Clone)]
6021pub union _CUVIDH264PICPARAMS__bindgen_ty_1 {
6022    pub slice_group_map_addr: ::core::ffi::c_ulonglong,
6023    pub pMb2SliceGroupMap: *const ::core::ffi::c_uchar,
6024}
6025#[repr(C)]
6026#[derive(Copy, Clone)]
6027pub union _CUVIDH264PICPARAMS__bindgen_ty_2 {
6028    pub mvcext: CUVIDH264MVCEXT,
6029    pub svcext: CUVIDH264SVCEXT,
6030}
6031#[repr(C)]
6032#[derive(Copy, Clone)]
6033pub union _CUVIDVP8PICPARAMS__bindgen_ty_1 {
6034    pub vp8_frame_tag: _CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1,
6035    pub wFrameTagFlags: ::core::ffi::c_uchar,
6036}
6037#[repr(C)]
6038#[derive(Copy, Clone)]
6039pub union _CUVIDPICPARAMS__bindgen_ty_1 {
6040    pub mpeg2: CUVIDMPEG2PICPARAMS,
6041    pub h264: CUVIDH264PICPARAMS,
6042    pub vc1: CUVIDVC1PICPARAMS,
6043    pub mpeg4: CUVIDMPEG4PICPARAMS,
6044    pub jpeg: CUVIDJPEGPICPARAMS,
6045    pub hevc: CUVIDHEVCPICPARAMS,
6046    pub vp8: CUVIDVP8PICPARAMS,
6047    pub vp9: CUVIDVP9PICPARAMS,
6048    pub av1: CUVIDAV1PICPARAMS,
6049    pub CodecReserved: [::core::ffi::c_uint; 1024usize],
6050}
6051impl<Storage> __BindgenBitfieldUnit<Storage> {
6052    #[inline]
6053    pub const fn new(storage: Storage) -> Self {
6054        Self { storage }
6055    }
6056}
6057impl<Storage> __BindgenBitfieldUnit<Storage>
6058where
6059    Storage: AsRef<[u8]> + AsMut<[u8]>,
6060{
6061    #[inline]
6062    pub fn get_bit(&self, index: usize) -> bool {
6063        debug_assert!(index / 8 < self.storage.as_ref().len());
6064        let byte_index = index / 8;
6065        let byte = self.storage.as_ref()[byte_index];
6066        let bit_index = if cfg!(target_endian = "big") {
6067            7 - (index % 8)
6068        } else {
6069            index % 8
6070        };
6071        let mask = 1 << bit_index;
6072        byte & mask == mask
6073    }
6074
6075    #[inline]
6076    pub fn set_bit(&mut self, index: usize, val: bool) {
6077        debug_assert!(index / 8 < self.storage.as_ref().len());
6078        let byte_index = index / 8;
6079        let byte = &mut self.storage.as_mut()[byte_index];
6080        let bit_index = if cfg!(target_endian = "big") {
6081            7 - (index % 8)
6082        } else {
6083            index % 8
6084        };
6085        let mask = 1 << bit_index;
6086        if val {
6087            *byte |= mask;
6088        } else {
6089            *byte &= !mask;
6090        }
6091    }
6092
6093    #[inline]
6094    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
6095        debug_assert!(bit_width <= 64);
6096        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
6097        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
6098        let mut val = 0;
6099        for i in 0..(bit_width as usize) {
6100            if self.get_bit(i + bit_offset) {
6101                let index = if cfg!(target_endian = "big") {
6102                    bit_width as usize - 1 - i
6103                } else {
6104                    i
6105                };
6106                val |= 1 << index;
6107            }
6108        }
6109        val
6110    }
6111
6112    #[inline]
6113    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
6114        debug_assert!(bit_width <= 64);
6115        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
6116        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
6117        for i in 0..(bit_width as usize) {
6118            let mask = 1 << i;
6119            let val_bit_is_set = val & mask == mask;
6120            let index = if cfg!(target_endian = "big") {
6121                bit_width as usize - 1 - i
6122            } else {
6123                i
6124            };
6125            self.set_bit(index + bit_offset, val_bit_is_set);
6126        }
6127    }
6128}
6129impl Default for _CUVIDDECODECAPS {
6130    fn default() -> Self {
6131        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6132        unsafe {
6133            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6134            s.assume_init()
6135        }
6136    }
6137}
6138impl Default for _CUVIDDECODECREATEINFO {
6139    fn default() -> Self {
6140        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6141        unsafe {
6142            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6143            s.assume_init()
6144        }
6145    }
6146}
6147impl Default for _CUVIDH264SVCEXT {
6148    fn default() -> Self {
6149        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6150        unsafe {
6151            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6152            s.assume_init()
6153        }
6154    }
6155}
6156impl Default for _CUVIDH264PICPARAMS__bindgen_ty_1 {
6157    fn default() -> Self {
6158        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6159        unsafe {
6160            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6161            s.assume_init()
6162        }
6163    }
6164}
6165impl Default for _CUVIDH264PICPARAMS__bindgen_ty_2 {
6166    fn default() -> Self {
6167        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6168        unsafe {
6169            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6170            s.assume_init()
6171        }
6172    }
6173}
6174impl Default for _CUVIDH264PICPARAMS {
6175    fn default() -> Self {
6176        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6177        unsafe {
6178            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6179            s.assume_init()
6180        }
6181    }
6182}
6183impl Default for _CUVIDMPEG2PICPARAMS {
6184    fn default() -> Self {
6185        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6186        unsafe {
6187            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6188            s.assume_init()
6189        }
6190    }
6191}
6192impl Default for _CUVIDMPEG4PICPARAMS {
6193    fn default() -> Self {
6194        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6195        unsafe {
6196            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6197            s.assume_init()
6198        }
6199    }
6200}
6201impl Default for _CUVIDHEVCPICPARAMS {
6202    fn default() -> Self {
6203        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6204        unsafe {
6205            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6206            s.assume_init()
6207        }
6208    }
6209}
6210impl _CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1 {
6211    #[inline]
6212    pub fn frame_type(&self) -> ::core::ffi::c_uchar {
6213        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
6214    }
6215
6216    #[inline]
6217    pub fn set_frame_type(&mut self, val: ::core::ffi::c_uchar) {
6218        unsafe {
6219            let val: u8 = ::core::mem::transmute(val);
6220            self._bitfield_1.set(0usize, 1u8, val as u64)
6221        }
6222    }
6223
6224    #[inline]
6225    pub fn version(&self) -> ::core::ffi::c_uchar {
6226        unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u8) }
6227    }
6228
6229    #[inline]
6230    pub fn set_version(&mut self, val: ::core::ffi::c_uchar) {
6231        unsafe {
6232            let val: u8 = ::core::mem::transmute(val);
6233            self._bitfield_1.set(1usize, 3u8, val as u64)
6234        }
6235    }
6236
6237    #[inline]
6238    pub fn show_frame(&self) -> ::core::ffi::c_uchar {
6239        unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) }
6240    }
6241
6242    #[inline]
6243    pub fn set_show_frame(&mut self, val: ::core::ffi::c_uchar) {
6244        unsafe {
6245            let val: u8 = ::core::mem::transmute(val);
6246            self._bitfield_1.set(4usize, 1u8, val as u64)
6247        }
6248    }
6249
6250    #[inline]
6251    pub fn update_mb_segmentation_data(&self) -> ::core::ffi::c_uchar {
6252        unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u8) }
6253    }
6254
6255    #[inline]
6256    pub fn set_update_mb_segmentation_data(&mut self, val: ::core::ffi::c_uchar) {
6257        unsafe {
6258            let val: u8 = ::core::mem::transmute(val);
6259            self._bitfield_1.set(5usize, 1u8, val as u64)
6260        }
6261    }
6262
6263    #[inline]
6264    pub fn Reserved2Bits(&self) -> ::core::ffi::c_uchar {
6265        unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
6266    }
6267
6268    #[inline]
6269    pub fn set_Reserved2Bits(&mut self, val: ::core::ffi::c_uchar) {
6270        unsafe {
6271            let val: u8 = ::core::mem::transmute(val);
6272            self._bitfield_1.set(6usize, 2u8, val as u64)
6273        }
6274    }
6275
6276    #[inline]
6277    pub fn new_bitfield_1(
6278        frame_type: ::core::ffi::c_uchar,
6279        version: ::core::ffi::c_uchar,
6280        show_frame: ::core::ffi::c_uchar,
6281        update_mb_segmentation_data: ::core::ffi::c_uchar,
6282        Reserved2Bits: ::core::ffi::c_uchar,
6283    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
6284        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
6285        __bindgen_bitfield_unit.set(0usize, 1u8, {
6286            let frame_type: u8 = unsafe { ::core::mem::transmute(frame_type) };
6287            frame_type as u64
6288        });
6289        __bindgen_bitfield_unit.set(1usize, 3u8, {
6290            let version: u8 = unsafe { ::core::mem::transmute(version) };
6291            version as u64
6292        });
6293        __bindgen_bitfield_unit.set(4usize, 1u8, {
6294            let show_frame: u8 = unsafe { ::core::mem::transmute(show_frame) };
6295            show_frame as u64
6296        });
6297        __bindgen_bitfield_unit.set(5usize, 1u8, {
6298            let update_mb_segmentation_data: u8 =
6299                unsafe { ::core::mem::transmute(update_mb_segmentation_data) };
6300            update_mb_segmentation_data as u64
6301        });
6302        __bindgen_bitfield_unit.set(6usize, 2u8, {
6303            let Reserved2Bits: u8 = unsafe { ::core::mem::transmute(Reserved2Bits) };
6304            Reserved2Bits as u64
6305        });
6306        __bindgen_bitfield_unit
6307    }
6308}
6309impl Default for _CUVIDVP8PICPARAMS__bindgen_ty_1 {
6310    fn default() -> Self {
6311        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6312        unsafe {
6313            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6314            s.assume_init()
6315        }
6316    }
6317}
6318impl Default for _CUVIDVP8PICPARAMS {
6319    fn default() -> Self {
6320        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6321        unsafe {
6322            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6323            s.assume_init()
6324        }
6325    }
6326}
6327impl _CUVIDVP9PICPARAMS {
6328    #[inline]
6329    pub fn profile(&self) -> ::core::ffi::c_ushort {
6330        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u16) }
6331    }
6332
6333    #[inline]
6334    pub fn set_profile(&mut self, val: ::core::ffi::c_ushort) {
6335        unsafe {
6336            let val: u16 = ::core::mem::transmute(val);
6337            self._bitfield_1.set(0usize, 3u8, val as u64)
6338        }
6339    }
6340
6341    #[inline]
6342    pub fn frameContextIdx(&self) -> ::core::ffi::c_ushort {
6343        unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 2u8) as u16) }
6344    }
6345
6346    #[inline]
6347    pub fn set_frameContextIdx(&mut self, val: ::core::ffi::c_ushort) {
6348        unsafe {
6349            let val: u16 = ::core::mem::transmute(val);
6350            self._bitfield_1.set(3usize, 2u8, val as u64)
6351        }
6352    }
6353
6354    #[inline]
6355    pub fn frameType(&self) -> ::core::ffi::c_ushort {
6356        unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u16) }
6357    }
6358
6359    #[inline]
6360    pub fn set_frameType(&mut self, val: ::core::ffi::c_ushort) {
6361        unsafe {
6362            let val: u16 = ::core::mem::transmute(val);
6363            self._bitfield_1.set(5usize, 1u8, val as u64)
6364        }
6365    }
6366
6367    #[inline]
6368    pub fn showFrame(&self) -> ::core::ffi::c_ushort {
6369        unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u16) }
6370    }
6371
6372    #[inline]
6373    pub fn set_showFrame(&mut self, val: ::core::ffi::c_ushort) {
6374        unsafe {
6375            let val: u16 = ::core::mem::transmute(val);
6376            self._bitfield_1.set(6usize, 1u8, val as u64)
6377        }
6378    }
6379
6380    #[inline]
6381    pub fn errorResilient(&self) -> ::core::ffi::c_ushort {
6382        unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) }
6383    }
6384
6385    #[inline]
6386    pub fn set_errorResilient(&mut self, val: ::core::ffi::c_ushort) {
6387        unsafe {
6388            let val: u16 = ::core::mem::transmute(val);
6389            self._bitfield_1.set(7usize, 1u8, val as u64)
6390        }
6391    }
6392
6393    #[inline]
6394    pub fn frameParallelDecoding(&self) -> ::core::ffi::c_ushort {
6395        unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u16) }
6396    }
6397
6398    #[inline]
6399    pub fn set_frameParallelDecoding(&mut self, val: ::core::ffi::c_ushort) {
6400        unsafe {
6401            let val: u16 = ::core::mem::transmute(val);
6402            self._bitfield_1.set(8usize, 1u8, val as u64)
6403        }
6404    }
6405
6406    #[inline]
6407    pub fn subSamplingX(&self) -> ::core::ffi::c_ushort {
6408        unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u16) }
6409    }
6410
6411    #[inline]
6412    pub fn set_subSamplingX(&mut self, val: ::core::ffi::c_ushort) {
6413        unsafe {
6414            let val: u16 = ::core::mem::transmute(val);
6415            self._bitfield_1.set(9usize, 1u8, val as u64)
6416        }
6417    }
6418
6419    #[inline]
6420    pub fn subSamplingY(&self) -> ::core::ffi::c_ushort {
6421        unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u16) }
6422    }
6423
6424    #[inline]
6425    pub fn set_subSamplingY(&mut self, val: ::core::ffi::c_ushort) {
6426        unsafe {
6427            let val: u16 = ::core::mem::transmute(val);
6428            self._bitfield_1.set(10usize, 1u8, val as u64)
6429        }
6430    }
6431
6432    #[inline]
6433    pub fn intraOnly(&self) -> ::core::ffi::c_ushort {
6434        unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u16) }
6435    }
6436
6437    #[inline]
6438    pub fn set_intraOnly(&mut self, val: ::core::ffi::c_ushort) {
6439        unsafe {
6440            let val: u16 = ::core::mem::transmute(val);
6441            self._bitfield_1.set(11usize, 1u8, val as u64)
6442        }
6443    }
6444
6445    #[inline]
6446    pub fn allow_high_precision_mv(&self) -> ::core::ffi::c_ushort {
6447        unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u16) }
6448    }
6449
6450    #[inline]
6451    pub fn set_allow_high_precision_mv(&mut self, val: ::core::ffi::c_ushort) {
6452        unsafe {
6453            let val: u16 = ::core::mem::transmute(val);
6454            self._bitfield_1.set(12usize, 1u8, val as u64)
6455        }
6456    }
6457
6458    #[inline]
6459    pub fn refreshEntropyProbs(&self) -> ::core::ffi::c_ushort {
6460        unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) }
6461    }
6462
6463    #[inline]
6464    pub fn set_refreshEntropyProbs(&mut self, val: ::core::ffi::c_ushort) {
6465        unsafe {
6466            let val: u16 = ::core::mem::transmute(val);
6467            self._bitfield_1.set(13usize, 1u8, val as u64)
6468        }
6469    }
6470
6471    #[inline]
6472    pub fn reserved2Bits(&self) -> ::core::ffi::c_ushort {
6473        unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 2u8) as u16) }
6474    }
6475
6476    #[inline]
6477    pub fn set_reserved2Bits(&mut self, val: ::core::ffi::c_ushort) {
6478        unsafe {
6479            let val: u16 = ::core::mem::transmute(val);
6480            self._bitfield_1.set(14usize, 2u8, val as u64)
6481        }
6482    }
6483
6484    #[inline]
6485    pub fn new_bitfield_1(
6486        profile: ::core::ffi::c_ushort,
6487        frameContextIdx: ::core::ffi::c_ushort,
6488        frameType: ::core::ffi::c_ushort,
6489        showFrame: ::core::ffi::c_ushort,
6490        errorResilient: ::core::ffi::c_ushort,
6491        frameParallelDecoding: ::core::ffi::c_ushort,
6492        subSamplingX: ::core::ffi::c_ushort,
6493        subSamplingY: ::core::ffi::c_ushort,
6494        intraOnly: ::core::ffi::c_ushort,
6495        allow_high_precision_mv: ::core::ffi::c_ushort,
6496        refreshEntropyProbs: ::core::ffi::c_ushort,
6497        reserved2Bits: ::core::ffi::c_ushort,
6498    ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
6499        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
6500        __bindgen_bitfield_unit.set(0usize, 3u8, {
6501            let profile: u16 = unsafe { ::core::mem::transmute(profile) };
6502            profile as u64
6503        });
6504        __bindgen_bitfield_unit.set(3usize, 2u8, {
6505            let frameContextIdx: u16 = unsafe { ::core::mem::transmute(frameContextIdx) };
6506            frameContextIdx as u64
6507        });
6508        __bindgen_bitfield_unit.set(5usize, 1u8, {
6509            let frameType: u16 = unsafe { ::core::mem::transmute(frameType) };
6510            frameType as u64
6511        });
6512        __bindgen_bitfield_unit.set(6usize, 1u8, {
6513            let showFrame: u16 = unsafe { ::core::mem::transmute(showFrame) };
6514            showFrame as u64
6515        });
6516        __bindgen_bitfield_unit.set(7usize, 1u8, {
6517            let errorResilient: u16 = unsafe { ::core::mem::transmute(errorResilient) };
6518            errorResilient as u64
6519        });
6520        __bindgen_bitfield_unit.set(8usize, 1u8, {
6521            let frameParallelDecoding: u16 =
6522                unsafe { ::core::mem::transmute(frameParallelDecoding) };
6523            frameParallelDecoding as u64
6524        });
6525        __bindgen_bitfield_unit.set(9usize, 1u8, {
6526            let subSamplingX: u16 = unsafe { ::core::mem::transmute(subSamplingX) };
6527            subSamplingX as u64
6528        });
6529        __bindgen_bitfield_unit.set(10usize, 1u8, {
6530            let subSamplingY: u16 = unsafe { ::core::mem::transmute(subSamplingY) };
6531            subSamplingY as u64
6532        });
6533        __bindgen_bitfield_unit.set(11usize, 1u8, {
6534            let intraOnly: u16 = unsafe { ::core::mem::transmute(intraOnly) };
6535            intraOnly as u64
6536        });
6537        __bindgen_bitfield_unit.set(12usize, 1u8, {
6538            let allow_high_precision_mv: u16 =
6539                unsafe { ::core::mem::transmute(allow_high_precision_mv) };
6540            allow_high_precision_mv as u64
6541        });
6542        __bindgen_bitfield_unit.set(13usize, 1u8, {
6543            let refreshEntropyProbs: u16 = unsafe { ::core::mem::transmute(refreshEntropyProbs) };
6544            refreshEntropyProbs as u64
6545        });
6546        __bindgen_bitfield_unit.set(14usize, 2u8, {
6547            let reserved2Bits: u16 = unsafe { ::core::mem::transmute(reserved2Bits) };
6548            reserved2Bits as u64
6549        });
6550        __bindgen_bitfield_unit
6551    }
6552
6553    #[inline]
6554    pub fn segmentEnabled(&self) -> ::core::ffi::c_uchar {
6555        unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 1u8) as u8) }
6556    }
6557
6558    #[inline]
6559    pub fn set_segmentEnabled(&mut self, val: ::core::ffi::c_uchar) {
6560        unsafe {
6561            let val: u8 = ::core::mem::transmute(val);
6562            self._bitfield_2.set(0usize, 1u8, val as u64)
6563        }
6564    }
6565
6566    #[inline]
6567    pub fn segmentMapUpdate(&self) -> ::core::ffi::c_uchar {
6568        unsafe { ::core::mem::transmute(self._bitfield_2.get(1usize, 1u8) as u8) }
6569    }
6570
6571    #[inline]
6572    pub fn set_segmentMapUpdate(&mut self, val: ::core::ffi::c_uchar) {
6573        unsafe {
6574            let val: u8 = ::core::mem::transmute(val);
6575            self._bitfield_2.set(1usize, 1u8, val as u64)
6576        }
6577    }
6578
6579    #[inline]
6580    pub fn segmentMapTemporalUpdate(&self) -> ::core::ffi::c_uchar {
6581        unsafe { ::core::mem::transmute(self._bitfield_2.get(2usize, 1u8) as u8) }
6582    }
6583
6584    #[inline]
6585    pub fn set_segmentMapTemporalUpdate(&mut self, val: ::core::ffi::c_uchar) {
6586        unsafe {
6587            let val: u8 = ::core::mem::transmute(val);
6588            self._bitfield_2.set(2usize, 1u8, val as u64)
6589        }
6590    }
6591
6592    #[inline]
6593    pub fn segmentFeatureMode(&self) -> ::core::ffi::c_uchar {
6594        unsafe { ::core::mem::transmute(self._bitfield_2.get(3usize, 1u8) as u8) }
6595    }
6596
6597    #[inline]
6598    pub fn set_segmentFeatureMode(&mut self, val: ::core::ffi::c_uchar) {
6599        unsafe {
6600            let val: u8 = ::core::mem::transmute(val);
6601            self._bitfield_2.set(3usize, 1u8, val as u64)
6602        }
6603    }
6604
6605    #[inline]
6606    pub fn reserved4Bits(&self) -> ::core::ffi::c_uchar {
6607        unsafe { ::core::mem::transmute(self._bitfield_2.get(4usize, 4u8) as u8) }
6608    }
6609
6610    #[inline]
6611    pub fn set_reserved4Bits(&mut self, val: ::core::ffi::c_uchar) {
6612        unsafe {
6613            let val: u8 = ::core::mem::transmute(val);
6614            self._bitfield_2.set(4usize, 4u8, val as u64)
6615        }
6616    }
6617
6618    #[inline]
6619    pub fn new_bitfield_2(
6620        segmentEnabled: ::core::ffi::c_uchar,
6621        segmentMapUpdate: ::core::ffi::c_uchar,
6622        segmentMapTemporalUpdate: ::core::ffi::c_uchar,
6623        segmentFeatureMode: ::core::ffi::c_uchar,
6624        reserved4Bits: ::core::ffi::c_uchar,
6625    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
6626        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
6627        __bindgen_bitfield_unit.set(0usize, 1u8, {
6628            let segmentEnabled: u8 = unsafe { ::core::mem::transmute(segmentEnabled) };
6629            segmentEnabled as u64
6630        });
6631        __bindgen_bitfield_unit.set(1usize, 1u8, {
6632            let segmentMapUpdate: u8 = unsafe { ::core::mem::transmute(segmentMapUpdate) };
6633            segmentMapUpdate as u64
6634        });
6635        __bindgen_bitfield_unit.set(2usize, 1u8, {
6636            let segmentMapTemporalUpdate: u8 =
6637                unsafe { ::core::mem::transmute(segmentMapTemporalUpdate) };
6638            segmentMapTemporalUpdate as u64
6639        });
6640        __bindgen_bitfield_unit.set(3usize, 1u8, {
6641            let segmentFeatureMode: u8 = unsafe { ::core::mem::transmute(segmentFeatureMode) };
6642            segmentFeatureMode as u64
6643        });
6644        __bindgen_bitfield_unit.set(4usize, 4u8, {
6645            let reserved4Bits: u8 = unsafe { ::core::mem::transmute(reserved4Bits) };
6646            reserved4Bits as u64
6647        });
6648        __bindgen_bitfield_unit
6649    }
6650}
6651impl _CUVIDAV1PICPARAMS__bindgen_ty_2 {
6652    #[inline]
6653    pub fn invalid(&self) -> ::core::ffi::c_uchar {
6654        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
6655    }
6656
6657    #[inline]
6658    pub fn set_invalid(&mut self, val: ::core::ffi::c_uchar) {
6659        unsafe {
6660            let val: u8 = ::core::mem::transmute(val);
6661            self._bitfield_1.set(0usize, 1u8, val as u64)
6662        }
6663    }
6664
6665    #[inline]
6666    pub fn wmtype(&self) -> ::core::ffi::c_uchar {
6667        unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u8) }
6668    }
6669
6670    #[inline]
6671    pub fn set_wmtype(&mut self, val: ::core::ffi::c_uchar) {
6672        unsafe {
6673            let val: u8 = ::core::mem::transmute(val);
6674            self._bitfield_1.set(1usize, 2u8, val as u64)
6675        }
6676    }
6677
6678    #[inline]
6679    pub fn reserved5Bits(&self) -> ::core::ffi::c_uchar {
6680        unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 5u8) as u8) }
6681    }
6682
6683    #[inline]
6684    pub fn set_reserved5Bits(&mut self, val: ::core::ffi::c_uchar) {
6685        unsafe {
6686            let val: u8 = ::core::mem::transmute(val);
6687            self._bitfield_1.set(3usize, 5u8, val as u64)
6688        }
6689    }
6690
6691    #[inline]
6692    pub fn new_bitfield_1(
6693        invalid: ::core::ffi::c_uchar,
6694        wmtype: ::core::ffi::c_uchar,
6695        reserved5Bits: ::core::ffi::c_uchar,
6696    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
6697        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
6698        __bindgen_bitfield_unit.set(0usize, 1u8, {
6699            let invalid: u8 = unsafe { ::core::mem::transmute(invalid) };
6700            invalid as u64
6701        });
6702        __bindgen_bitfield_unit.set(1usize, 2u8, {
6703            let wmtype: u8 = unsafe { ::core::mem::transmute(wmtype) };
6704            wmtype as u64
6705        });
6706        __bindgen_bitfield_unit.set(3usize, 5u8, {
6707            let reserved5Bits: u8 = unsafe { ::core::mem::transmute(reserved5Bits) };
6708            reserved5Bits as u64
6709        });
6710        __bindgen_bitfield_unit
6711    }
6712}
6713impl Default for _CUVIDAV1PICPARAMS {
6714    fn default() -> Self {
6715        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
6716        unsafe {
6717            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6718            s.assume_init()
6719        }
6720    }
6721}
6722impl _CUVIDAV1PICPARAMS {
6723    #[inline]
6724    pub fn profile(&self) -> ::core::ffi::c_uint {
6725        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u32) }
6726    }
6727
6728    #[inline]
6729    pub fn set_profile(&mut self, val: ::core::ffi::c_uint) {
6730        unsafe {
6731            let val: u32 = ::core::mem::transmute(val);
6732            self._bitfield_1.set(0usize, 3u8, val as u64)
6733        }
6734    }
6735
6736    #[inline]
6737    pub fn use_128x128_superblock(&self) -> ::core::ffi::c_uint {
6738        unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
6739    }
6740
6741    #[inline]
6742    pub fn set_use_128x128_superblock(&mut self, val: ::core::ffi::c_uint) {
6743        unsafe {
6744            let val: u32 = ::core::mem::transmute(val);
6745            self._bitfield_1.set(3usize, 1u8, val as u64)
6746        }
6747    }
6748
6749    #[inline]
6750    pub fn subsampling_x(&self) -> ::core::ffi::c_uint {
6751        unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
6752    }
6753
6754    #[inline]
6755    pub fn set_subsampling_x(&mut self, val: ::core::ffi::c_uint) {
6756        unsafe {
6757            let val: u32 = ::core::mem::transmute(val);
6758            self._bitfield_1.set(4usize, 1u8, val as u64)
6759        }
6760    }
6761
6762    #[inline]
6763    pub fn subsampling_y(&self) -> ::core::ffi::c_uint {
6764        unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
6765    }
6766
6767    #[inline]
6768    pub fn set_subsampling_y(&mut self, val: ::core::ffi::c_uint) {
6769        unsafe {
6770            let val: u32 = ::core::mem::transmute(val);
6771            self._bitfield_1.set(5usize, 1u8, val as u64)
6772        }
6773    }
6774
6775    #[inline]
6776    pub fn mono_chrome(&self) -> ::core::ffi::c_uint {
6777        unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
6778    }
6779
6780    #[inline]
6781    pub fn set_mono_chrome(&mut self, val: ::core::ffi::c_uint) {
6782        unsafe {
6783            let val: u32 = ::core::mem::transmute(val);
6784            self._bitfield_1.set(6usize, 1u8, val as u64)
6785        }
6786    }
6787
6788    #[inline]
6789    pub fn bit_depth_minus8(&self) -> ::core::ffi::c_uint {
6790        unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 4u8) as u32) }
6791    }
6792
6793    #[inline]
6794    pub fn set_bit_depth_minus8(&mut self, val: ::core::ffi::c_uint) {
6795        unsafe {
6796            let val: u32 = ::core::mem::transmute(val);
6797            self._bitfield_1.set(7usize, 4u8, val as u64)
6798        }
6799    }
6800
6801    #[inline]
6802    pub fn enable_filter_intra(&self) -> ::core::ffi::c_uint {
6803        unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
6804    }
6805
6806    #[inline]
6807    pub fn set_enable_filter_intra(&mut self, val: ::core::ffi::c_uint) {
6808        unsafe {
6809            let val: u32 = ::core::mem::transmute(val);
6810            self._bitfield_1.set(11usize, 1u8, val as u64)
6811        }
6812    }
6813
6814    #[inline]
6815    pub fn enable_intra_edge_filter(&self) -> ::core::ffi::c_uint {
6816        unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
6817    }
6818
6819    #[inline]
6820    pub fn set_enable_intra_edge_filter(&mut self, val: ::core::ffi::c_uint) {
6821        unsafe {
6822            let val: u32 = ::core::mem::transmute(val);
6823            self._bitfield_1.set(12usize, 1u8, val as u64)
6824        }
6825    }
6826
6827    #[inline]
6828    pub fn enable_interintra_compound(&self) -> ::core::ffi::c_uint {
6829        unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
6830    }
6831
6832    #[inline]
6833    pub fn set_enable_interintra_compound(&mut self, val: ::core::ffi::c_uint) {
6834        unsafe {
6835            let val: u32 = ::core::mem::transmute(val);
6836            self._bitfield_1.set(13usize, 1u8, val as u64)
6837        }
6838    }
6839
6840    #[inline]
6841    pub fn enable_masked_compound(&self) -> ::core::ffi::c_uint {
6842        unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
6843    }
6844
6845    #[inline]
6846    pub fn set_enable_masked_compound(&mut self, val: ::core::ffi::c_uint) {
6847        unsafe {
6848            let val: u32 = ::core::mem::transmute(val);
6849            self._bitfield_1.set(14usize, 1u8, val as u64)
6850        }
6851    }
6852
6853    #[inline]
6854    pub fn enable_dual_filter(&self) -> ::core::ffi::c_uint {
6855        unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
6856    }
6857
6858    #[inline]
6859    pub fn set_enable_dual_filter(&mut self, val: ::core::ffi::c_uint) {
6860        unsafe {
6861            let val: u32 = ::core::mem::transmute(val);
6862            self._bitfield_1.set(15usize, 1u8, val as u64)
6863        }
6864    }
6865
6866    #[inline]
6867    pub fn enable_order_hint(&self) -> ::core::ffi::c_uint {
6868        unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
6869    }
6870
6871    #[inline]
6872    pub fn set_enable_order_hint(&mut self, val: ::core::ffi::c_uint) {
6873        unsafe {
6874            let val: u32 = ::core::mem::transmute(val);
6875            self._bitfield_1.set(16usize, 1u8, val as u64)
6876        }
6877    }
6878
6879    #[inline]
6880    pub fn order_hint_bits_minus1(&self) -> ::core::ffi::c_uint {
6881        unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 3u8) as u32) }
6882    }
6883
6884    #[inline]
6885    pub fn set_order_hint_bits_minus1(&mut self, val: ::core::ffi::c_uint) {
6886        unsafe {
6887            let val: u32 = ::core::mem::transmute(val);
6888            self._bitfield_1.set(17usize, 3u8, val as u64)
6889        }
6890    }
6891
6892    #[inline]
6893    pub fn enable_jnt_comp(&self) -> ::core::ffi::c_uint {
6894        unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) }
6895    }
6896
6897    #[inline]
6898    pub fn set_enable_jnt_comp(&mut self, val: ::core::ffi::c_uint) {
6899        unsafe {
6900            let val: u32 = ::core::mem::transmute(val);
6901            self._bitfield_1.set(20usize, 1u8, val as u64)
6902        }
6903    }
6904
6905    #[inline]
6906    pub fn enable_superres(&self) -> ::core::ffi::c_uint {
6907        unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) }
6908    }
6909
6910    #[inline]
6911    pub fn set_enable_superres(&mut self, val: ::core::ffi::c_uint) {
6912        unsafe {
6913            let val: u32 = ::core::mem::transmute(val);
6914            self._bitfield_1.set(21usize, 1u8, val as u64)
6915        }
6916    }
6917
6918    #[inline]
6919    pub fn enable_cdef(&self) -> ::core::ffi::c_uint {
6920        unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) }
6921    }
6922
6923    #[inline]
6924    pub fn set_enable_cdef(&mut self, val: ::core::ffi::c_uint) {
6925        unsafe {
6926            let val: u32 = ::core::mem::transmute(val);
6927            self._bitfield_1.set(22usize, 1u8, val as u64)
6928        }
6929    }
6930
6931    #[inline]
6932    pub fn enable_restoration(&self) -> ::core::ffi::c_uint {
6933        unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) }
6934    }
6935
6936    #[inline]
6937    pub fn set_enable_restoration(&mut self, val: ::core::ffi::c_uint) {
6938        unsafe {
6939            let val: u32 = ::core::mem::transmute(val);
6940            self._bitfield_1.set(23usize, 1u8, val as u64)
6941        }
6942    }
6943
6944    #[inline]
6945    pub fn enable_fgs(&self) -> ::core::ffi::c_uint {
6946        unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) }
6947    }
6948
6949    #[inline]
6950    pub fn set_enable_fgs(&mut self, val: ::core::ffi::c_uint) {
6951        unsafe {
6952            let val: u32 = ::core::mem::transmute(val);
6953            self._bitfield_1.set(24usize, 1u8, val as u64)
6954        }
6955    }
6956
6957    #[inline]
6958    pub fn reserved0_7bits(&self) -> ::core::ffi::c_uint {
6959        unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 7u8) as u32) }
6960    }
6961
6962    #[inline]
6963    pub fn set_reserved0_7bits(&mut self, val: ::core::ffi::c_uint) {
6964        unsafe {
6965            let val: u32 = ::core::mem::transmute(val);
6966            self._bitfield_1.set(25usize, 7u8, val as u64)
6967        }
6968    }
6969
6970    #[inline]
6971    pub fn frame_type(&self) -> ::core::ffi::c_uint {
6972        unsafe { ::core::mem::transmute(self._bitfield_1.get(32usize, 2u8) as u32) }
6973    }
6974
6975    #[inline]
6976    pub fn set_frame_type(&mut self, val: ::core::ffi::c_uint) {
6977        unsafe {
6978            let val: u32 = ::core::mem::transmute(val);
6979            self._bitfield_1.set(32usize, 2u8, val as u64)
6980        }
6981    }
6982
6983    #[inline]
6984    pub fn show_frame(&self) -> ::core::ffi::c_uint {
6985        unsafe { ::core::mem::transmute(self._bitfield_1.get(34usize, 1u8) as u32) }
6986    }
6987
6988    #[inline]
6989    pub fn set_show_frame(&mut self, val: ::core::ffi::c_uint) {
6990        unsafe {
6991            let val: u32 = ::core::mem::transmute(val);
6992            self._bitfield_1.set(34usize, 1u8, val as u64)
6993        }
6994    }
6995
6996    #[inline]
6997    pub fn disable_cdf_update(&self) -> ::core::ffi::c_uint {
6998        unsafe { ::core::mem::transmute(self._bitfield_1.get(35usize, 1u8) as u32) }
6999    }
7000
7001    #[inline]
7002    pub fn set_disable_cdf_update(&mut self, val: ::core::ffi::c_uint) {
7003        unsafe {
7004            let val: u32 = ::core::mem::transmute(val);
7005            self._bitfield_1.set(35usize, 1u8, val as u64)
7006        }
7007    }
7008
7009    #[inline]
7010    pub fn allow_screen_content_tools(&self) -> ::core::ffi::c_uint {
7011        unsafe { ::core::mem::transmute(self._bitfield_1.get(36usize, 1u8) as u32) }
7012    }
7013
7014    #[inline]
7015    pub fn set_allow_screen_content_tools(&mut self, val: ::core::ffi::c_uint) {
7016        unsafe {
7017            let val: u32 = ::core::mem::transmute(val);
7018            self._bitfield_1.set(36usize, 1u8, val as u64)
7019        }
7020    }
7021
7022    #[inline]
7023    pub fn force_integer_mv(&self) -> ::core::ffi::c_uint {
7024        unsafe { ::core::mem::transmute(self._bitfield_1.get(37usize, 1u8) as u32) }
7025    }
7026
7027    #[inline]
7028    pub fn set_force_integer_mv(&mut self, val: ::core::ffi::c_uint) {
7029        unsafe {
7030            let val: u32 = ::core::mem::transmute(val);
7031            self._bitfield_1.set(37usize, 1u8, val as u64)
7032        }
7033    }
7034
7035    #[inline]
7036    pub fn coded_denom(&self) -> ::core::ffi::c_uint {
7037        unsafe { ::core::mem::transmute(self._bitfield_1.get(38usize, 3u8) as u32) }
7038    }
7039
7040    #[inline]
7041    pub fn set_coded_denom(&mut self, val: ::core::ffi::c_uint) {
7042        unsafe {
7043            let val: u32 = ::core::mem::transmute(val);
7044            self._bitfield_1.set(38usize, 3u8, val as u64)
7045        }
7046    }
7047
7048    #[inline]
7049    pub fn allow_intrabc(&self) -> ::core::ffi::c_uint {
7050        unsafe { ::core::mem::transmute(self._bitfield_1.get(41usize, 1u8) as u32) }
7051    }
7052
7053    #[inline]
7054    pub fn set_allow_intrabc(&mut self, val: ::core::ffi::c_uint) {
7055        unsafe {
7056            let val: u32 = ::core::mem::transmute(val);
7057            self._bitfield_1.set(41usize, 1u8, val as u64)
7058        }
7059    }
7060
7061    #[inline]
7062    pub fn allow_high_precision_mv(&self) -> ::core::ffi::c_uint {
7063        unsafe { ::core::mem::transmute(self._bitfield_1.get(42usize, 1u8) as u32) }
7064    }
7065
7066    #[inline]
7067    pub fn set_allow_high_precision_mv(&mut self, val: ::core::ffi::c_uint) {
7068        unsafe {
7069            let val: u32 = ::core::mem::transmute(val);
7070            self._bitfield_1.set(42usize, 1u8, val as u64)
7071        }
7072    }
7073
7074    #[inline]
7075    pub fn interp_filter(&self) -> ::core::ffi::c_uint {
7076        unsafe { ::core::mem::transmute(self._bitfield_1.get(43usize, 3u8) as u32) }
7077    }
7078
7079    #[inline]
7080    pub fn set_interp_filter(&mut self, val: ::core::ffi::c_uint) {
7081        unsafe {
7082            let val: u32 = ::core::mem::transmute(val);
7083            self._bitfield_1.set(43usize, 3u8, val as u64)
7084        }
7085    }
7086
7087    #[inline]
7088    pub fn switchable_motion_mode(&self) -> ::core::ffi::c_uint {
7089        unsafe { ::core::mem::transmute(self._bitfield_1.get(46usize, 1u8) as u32) }
7090    }
7091
7092    #[inline]
7093    pub fn set_switchable_motion_mode(&mut self, val: ::core::ffi::c_uint) {
7094        unsafe {
7095            let val: u32 = ::core::mem::transmute(val);
7096            self._bitfield_1.set(46usize, 1u8, val as u64)
7097        }
7098    }
7099
7100    #[inline]
7101    pub fn use_ref_frame_mvs(&self) -> ::core::ffi::c_uint {
7102        unsafe { ::core::mem::transmute(self._bitfield_1.get(47usize, 1u8) as u32) }
7103    }
7104
7105    #[inline]
7106    pub fn set_use_ref_frame_mvs(&mut self, val: ::core::ffi::c_uint) {
7107        unsafe {
7108            let val: u32 = ::core::mem::transmute(val);
7109            self._bitfield_1.set(47usize, 1u8, val as u64)
7110        }
7111    }
7112
7113    #[inline]
7114    pub fn disable_frame_end_update_cdf(&self) -> ::core::ffi::c_uint {
7115        unsafe { ::core::mem::transmute(self._bitfield_1.get(48usize, 1u8) as u32) }
7116    }
7117
7118    #[inline]
7119    pub fn set_disable_frame_end_update_cdf(&mut self, val: ::core::ffi::c_uint) {
7120        unsafe {
7121            let val: u32 = ::core::mem::transmute(val);
7122            self._bitfield_1.set(48usize, 1u8, val as u64)
7123        }
7124    }
7125
7126    #[inline]
7127    pub fn delta_q_present(&self) -> ::core::ffi::c_uint {
7128        unsafe { ::core::mem::transmute(self._bitfield_1.get(49usize, 1u8) as u32) }
7129    }
7130
7131    #[inline]
7132    pub fn set_delta_q_present(&mut self, val: ::core::ffi::c_uint) {
7133        unsafe {
7134            let val: u32 = ::core::mem::transmute(val);
7135            self._bitfield_1.set(49usize, 1u8, val as u64)
7136        }
7137    }
7138
7139    #[inline]
7140    pub fn delta_q_res(&self) -> ::core::ffi::c_uint {
7141        unsafe { ::core::mem::transmute(self._bitfield_1.get(50usize, 2u8) as u32) }
7142    }
7143
7144    #[inline]
7145    pub fn set_delta_q_res(&mut self, val: ::core::ffi::c_uint) {
7146        unsafe {
7147            let val: u32 = ::core::mem::transmute(val);
7148            self._bitfield_1.set(50usize, 2u8, val as u64)
7149        }
7150    }
7151
7152    #[inline]
7153    pub fn using_qmatrix(&self) -> ::core::ffi::c_uint {
7154        unsafe { ::core::mem::transmute(self._bitfield_1.get(52usize, 1u8) as u32) }
7155    }
7156
7157    #[inline]
7158    pub fn set_using_qmatrix(&mut self, val: ::core::ffi::c_uint) {
7159        unsafe {
7160            let val: u32 = ::core::mem::transmute(val);
7161            self._bitfield_1.set(52usize, 1u8, val as u64)
7162        }
7163    }
7164
7165    #[inline]
7166    pub fn coded_lossless(&self) -> ::core::ffi::c_uint {
7167        unsafe { ::core::mem::transmute(self._bitfield_1.get(53usize, 1u8) as u32) }
7168    }
7169
7170    #[inline]
7171    pub fn set_coded_lossless(&mut self, val: ::core::ffi::c_uint) {
7172        unsafe {
7173            let val: u32 = ::core::mem::transmute(val);
7174            self._bitfield_1.set(53usize, 1u8, val as u64)
7175        }
7176    }
7177
7178    #[inline]
7179    pub fn use_superres(&self) -> ::core::ffi::c_uint {
7180        unsafe { ::core::mem::transmute(self._bitfield_1.get(54usize, 1u8) as u32) }
7181    }
7182
7183    #[inline]
7184    pub fn set_use_superres(&mut self, val: ::core::ffi::c_uint) {
7185        unsafe {
7186            let val: u32 = ::core::mem::transmute(val);
7187            self._bitfield_1.set(54usize, 1u8, val as u64)
7188        }
7189    }
7190
7191    #[inline]
7192    pub fn tx_mode(&self) -> ::core::ffi::c_uint {
7193        unsafe { ::core::mem::transmute(self._bitfield_1.get(55usize, 2u8) as u32) }
7194    }
7195
7196    #[inline]
7197    pub fn set_tx_mode(&mut self, val: ::core::ffi::c_uint) {
7198        unsafe {
7199            let val: u32 = ::core::mem::transmute(val);
7200            self._bitfield_1.set(55usize, 2u8, val as u64)
7201        }
7202    }
7203
7204    #[inline]
7205    pub fn reference_mode(&self) -> ::core::ffi::c_uint {
7206        unsafe { ::core::mem::transmute(self._bitfield_1.get(57usize, 1u8) as u32) }
7207    }
7208
7209    #[inline]
7210    pub fn set_reference_mode(&mut self, val: ::core::ffi::c_uint) {
7211        unsafe {
7212            let val: u32 = ::core::mem::transmute(val);
7213            self._bitfield_1.set(57usize, 1u8, val as u64)
7214        }
7215    }
7216
7217    #[inline]
7218    pub fn allow_warped_motion(&self) -> ::core::ffi::c_uint {
7219        unsafe { ::core::mem::transmute(self._bitfield_1.get(58usize, 1u8) as u32) }
7220    }
7221
7222    #[inline]
7223    pub fn set_allow_warped_motion(&mut self, val: ::core::ffi::c_uint) {
7224        unsafe {
7225            let val: u32 = ::core::mem::transmute(val);
7226            self._bitfield_1.set(58usize, 1u8, val as u64)
7227        }
7228    }
7229
7230    #[inline]
7231    pub fn reduced_tx_set(&self) -> ::core::ffi::c_uint {
7232        unsafe { ::core::mem::transmute(self._bitfield_1.get(59usize, 1u8) as u32) }
7233    }
7234
7235    #[inline]
7236    pub fn set_reduced_tx_set(&mut self, val: ::core::ffi::c_uint) {
7237        unsafe {
7238            let val: u32 = ::core::mem::transmute(val);
7239            self._bitfield_1.set(59usize, 1u8, val as u64)
7240        }
7241    }
7242
7243    #[inline]
7244    pub fn skip_mode(&self) -> ::core::ffi::c_uint {
7245        unsafe { ::core::mem::transmute(self._bitfield_1.get(60usize, 1u8) as u32) }
7246    }
7247
7248    #[inline]
7249    pub fn set_skip_mode(&mut self, val: ::core::ffi::c_uint) {
7250        unsafe {
7251            let val: u32 = ::core::mem::transmute(val);
7252            self._bitfield_1.set(60usize, 1u8, val as u64)
7253        }
7254    }
7255
7256    #[inline]
7257    pub fn reserved1_3bits(&self) -> ::core::ffi::c_uint {
7258        unsafe { ::core::mem::transmute(self._bitfield_1.get(61usize, 3u8) as u32) }
7259    }
7260
7261    #[inline]
7262    pub fn set_reserved1_3bits(&mut self, val: ::core::ffi::c_uint) {
7263        unsafe {
7264            let val: u32 = ::core::mem::transmute(val);
7265            self._bitfield_1.set(61usize, 3u8, val as u64)
7266        }
7267    }
7268
7269    #[inline]
7270    pub fn num_tile_cols(&self) -> ::core::ffi::c_uint {
7271        unsafe { ::core::mem::transmute(self._bitfield_1.get(64usize, 8u8) as u32) }
7272    }
7273
7274    #[inline]
7275    pub fn set_num_tile_cols(&mut self, val: ::core::ffi::c_uint) {
7276        unsafe {
7277            let val: u32 = ::core::mem::transmute(val);
7278            self._bitfield_1.set(64usize, 8u8, val as u64)
7279        }
7280    }
7281
7282    #[inline]
7283    pub fn num_tile_rows(&self) -> ::core::ffi::c_uint {
7284        unsafe { ::core::mem::transmute(self._bitfield_1.get(72usize, 8u8) as u32) }
7285    }
7286
7287    #[inline]
7288    pub fn set_num_tile_rows(&mut self, val: ::core::ffi::c_uint) {
7289        unsafe {
7290            let val: u32 = ::core::mem::transmute(val);
7291            self._bitfield_1.set(72usize, 8u8, val as u64)
7292        }
7293    }
7294
7295    #[inline]
7296    pub fn context_update_tile_id(&self) -> ::core::ffi::c_uint {
7297        unsafe { ::core::mem::transmute(self._bitfield_1.get(80usize, 16u8) as u32) }
7298    }
7299
7300    #[inline]
7301    pub fn set_context_update_tile_id(&mut self, val: ::core::ffi::c_uint) {
7302        unsafe {
7303            let val: u32 = ::core::mem::transmute(val);
7304            self._bitfield_1.set(80usize, 16u8, val as u64)
7305        }
7306    }
7307
7308    #[inline]
7309    pub fn new_bitfield_1(
7310        profile: ::core::ffi::c_uint,
7311        use_128x128_superblock: ::core::ffi::c_uint,
7312        subsampling_x: ::core::ffi::c_uint,
7313        subsampling_y: ::core::ffi::c_uint,
7314        mono_chrome: ::core::ffi::c_uint,
7315        bit_depth_minus8: ::core::ffi::c_uint,
7316        enable_filter_intra: ::core::ffi::c_uint,
7317        enable_intra_edge_filter: ::core::ffi::c_uint,
7318        enable_interintra_compound: ::core::ffi::c_uint,
7319        enable_masked_compound: ::core::ffi::c_uint,
7320        enable_dual_filter: ::core::ffi::c_uint,
7321        enable_order_hint: ::core::ffi::c_uint,
7322        order_hint_bits_minus1: ::core::ffi::c_uint,
7323        enable_jnt_comp: ::core::ffi::c_uint,
7324        enable_superres: ::core::ffi::c_uint,
7325        enable_cdef: ::core::ffi::c_uint,
7326        enable_restoration: ::core::ffi::c_uint,
7327        enable_fgs: ::core::ffi::c_uint,
7328        reserved0_7bits: ::core::ffi::c_uint,
7329        frame_type: ::core::ffi::c_uint,
7330        show_frame: ::core::ffi::c_uint,
7331        disable_cdf_update: ::core::ffi::c_uint,
7332        allow_screen_content_tools: ::core::ffi::c_uint,
7333        force_integer_mv: ::core::ffi::c_uint,
7334        coded_denom: ::core::ffi::c_uint,
7335        allow_intrabc: ::core::ffi::c_uint,
7336        allow_high_precision_mv: ::core::ffi::c_uint,
7337        interp_filter: ::core::ffi::c_uint,
7338        switchable_motion_mode: ::core::ffi::c_uint,
7339        use_ref_frame_mvs: ::core::ffi::c_uint,
7340        disable_frame_end_update_cdf: ::core::ffi::c_uint,
7341        delta_q_present: ::core::ffi::c_uint,
7342        delta_q_res: ::core::ffi::c_uint,
7343        using_qmatrix: ::core::ffi::c_uint,
7344        coded_lossless: ::core::ffi::c_uint,
7345        use_superres: ::core::ffi::c_uint,
7346        tx_mode: ::core::ffi::c_uint,
7347        reference_mode: ::core::ffi::c_uint,
7348        allow_warped_motion: ::core::ffi::c_uint,
7349        reduced_tx_set: ::core::ffi::c_uint,
7350        skip_mode: ::core::ffi::c_uint,
7351        reserved1_3bits: ::core::ffi::c_uint,
7352        num_tile_cols: ::core::ffi::c_uint,
7353        num_tile_rows: ::core::ffi::c_uint,
7354        context_update_tile_id: ::core::ffi::c_uint,
7355    ) -> __BindgenBitfieldUnit<[u8; 12usize]> {
7356        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 12usize]> = Default::default();
7357        __bindgen_bitfield_unit.set(0usize, 3u8, {
7358            let profile: u32 = unsafe { ::core::mem::transmute(profile) };
7359            profile as u64
7360        });
7361        __bindgen_bitfield_unit.set(3usize, 1u8, {
7362            let use_128x128_superblock: u32 =
7363                unsafe { ::core::mem::transmute(use_128x128_superblock) };
7364            use_128x128_superblock as u64
7365        });
7366        __bindgen_bitfield_unit.set(4usize, 1u8, {
7367            let subsampling_x: u32 = unsafe { ::core::mem::transmute(subsampling_x) };
7368            subsampling_x as u64
7369        });
7370        __bindgen_bitfield_unit.set(5usize, 1u8, {
7371            let subsampling_y: u32 = unsafe { ::core::mem::transmute(subsampling_y) };
7372            subsampling_y as u64
7373        });
7374        __bindgen_bitfield_unit.set(6usize, 1u8, {
7375            let mono_chrome: u32 = unsafe { ::core::mem::transmute(mono_chrome) };
7376            mono_chrome as u64
7377        });
7378        __bindgen_bitfield_unit.set(7usize, 4u8, {
7379            let bit_depth_minus8: u32 = unsafe { ::core::mem::transmute(bit_depth_minus8) };
7380            bit_depth_minus8 as u64
7381        });
7382        __bindgen_bitfield_unit.set(11usize, 1u8, {
7383            let enable_filter_intra: u32 = unsafe { ::core::mem::transmute(enable_filter_intra) };
7384            enable_filter_intra as u64
7385        });
7386        __bindgen_bitfield_unit.set(12usize, 1u8, {
7387            let enable_intra_edge_filter: u32 =
7388                unsafe { ::core::mem::transmute(enable_intra_edge_filter) };
7389            enable_intra_edge_filter as u64
7390        });
7391        __bindgen_bitfield_unit.set(13usize, 1u8, {
7392            let enable_interintra_compound: u32 =
7393                unsafe { ::core::mem::transmute(enable_interintra_compound) };
7394            enable_interintra_compound as u64
7395        });
7396        __bindgen_bitfield_unit.set(14usize, 1u8, {
7397            let enable_masked_compound: u32 =
7398                unsafe { ::core::mem::transmute(enable_masked_compound) };
7399            enable_masked_compound as u64
7400        });
7401        __bindgen_bitfield_unit.set(15usize, 1u8, {
7402            let enable_dual_filter: u32 = unsafe { ::core::mem::transmute(enable_dual_filter) };
7403            enable_dual_filter as u64
7404        });
7405        __bindgen_bitfield_unit.set(16usize, 1u8, {
7406            let enable_order_hint: u32 = unsafe { ::core::mem::transmute(enable_order_hint) };
7407            enable_order_hint as u64
7408        });
7409        __bindgen_bitfield_unit.set(17usize, 3u8, {
7410            let order_hint_bits_minus1: u32 =
7411                unsafe { ::core::mem::transmute(order_hint_bits_minus1) };
7412            order_hint_bits_minus1 as u64
7413        });
7414        __bindgen_bitfield_unit.set(20usize, 1u8, {
7415            let enable_jnt_comp: u32 = unsafe { ::core::mem::transmute(enable_jnt_comp) };
7416            enable_jnt_comp as u64
7417        });
7418        __bindgen_bitfield_unit.set(21usize, 1u8, {
7419            let enable_superres: u32 = unsafe { ::core::mem::transmute(enable_superres) };
7420            enable_superres as u64
7421        });
7422        __bindgen_bitfield_unit.set(22usize, 1u8, {
7423            let enable_cdef: u32 = unsafe { ::core::mem::transmute(enable_cdef) };
7424            enable_cdef as u64
7425        });
7426        __bindgen_bitfield_unit.set(23usize, 1u8, {
7427            let enable_restoration: u32 = unsafe { ::core::mem::transmute(enable_restoration) };
7428            enable_restoration as u64
7429        });
7430        __bindgen_bitfield_unit.set(24usize, 1u8, {
7431            let enable_fgs: u32 = unsafe { ::core::mem::transmute(enable_fgs) };
7432            enable_fgs as u64
7433        });
7434        __bindgen_bitfield_unit.set(25usize, 7u8, {
7435            let reserved0_7bits: u32 = unsafe { ::core::mem::transmute(reserved0_7bits) };
7436            reserved0_7bits as u64
7437        });
7438        __bindgen_bitfield_unit.set(32usize, 2u8, {
7439            let frame_type: u32 = unsafe { ::core::mem::transmute(frame_type) };
7440            frame_type as u64
7441        });
7442        __bindgen_bitfield_unit.set(34usize, 1u8, {
7443            let show_frame: u32 = unsafe { ::core::mem::transmute(show_frame) };
7444            show_frame as u64
7445        });
7446        __bindgen_bitfield_unit.set(35usize, 1u8, {
7447            let disable_cdf_update: u32 = unsafe { ::core::mem::transmute(disable_cdf_update) };
7448            disable_cdf_update as u64
7449        });
7450        __bindgen_bitfield_unit.set(36usize, 1u8, {
7451            let allow_screen_content_tools: u32 =
7452                unsafe { ::core::mem::transmute(allow_screen_content_tools) };
7453            allow_screen_content_tools as u64
7454        });
7455        __bindgen_bitfield_unit.set(37usize, 1u8, {
7456            let force_integer_mv: u32 = unsafe { ::core::mem::transmute(force_integer_mv) };
7457            force_integer_mv as u64
7458        });
7459        __bindgen_bitfield_unit.set(38usize, 3u8, {
7460            let coded_denom: u32 = unsafe { ::core::mem::transmute(coded_denom) };
7461            coded_denom as u64
7462        });
7463        __bindgen_bitfield_unit.set(41usize, 1u8, {
7464            let allow_intrabc: u32 = unsafe { ::core::mem::transmute(allow_intrabc) };
7465            allow_intrabc as u64
7466        });
7467        __bindgen_bitfield_unit.set(42usize, 1u8, {
7468            let allow_high_precision_mv: u32 =
7469                unsafe { ::core::mem::transmute(allow_high_precision_mv) };
7470            allow_high_precision_mv as u64
7471        });
7472        __bindgen_bitfield_unit.set(43usize, 3u8, {
7473            let interp_filter: u32 = unsafe { ::core::mem::transmute(interp_filter) };
7474            interp_filter as u64
7475        });
7476        __bindgen_bitfield_unit.set(46usize, 1u8, {
7477            let switchable_motion_mode: u32 =
7478                unsafe { ::core::mem::transmute(switchable_motion_mode) };
7479            switchable_motion_mode as u64
7480        });
7481        __bindgen_bitfield_unit.set(47usize, 1u8, {
7482            let use_ref_frame_mvs: u32 = unsafe { ::core::mem::transmute(use_ref_frame_mvs) };
7483            use_ref_frame_mvs as u64
7484        });
7485        __bindgen_bitfield_unit.set(48usize, 1u8, {
7486            let disable_frame_end_update_cdf: u32 =
7487                unsafe { ::core::mem::transmute(disable_frame_end_update_cdf) };
7488            disable_frame_end_update_cdf as u64
7489        });
7490        __bindgen_bitfield_unit.set(49usize, 1u8, {
7491            let delta_q_present: u32 = unsafe { ::core::mem::transmute(delta_q_present) };
7492            delta_q_present as u64
7493        });
7494        __bindgen_bitfield_unit.set(50usize, 2u8, {
7495            let delta_q_res: u32 = unsafe { ::core::mem::transmute(delta_q_res) };
7496            delta_q_res as u64
7497        });
7498        __bindgen_bitfield_unit.set(52usize, 1u8, {
7499            let using_qmatrix: u32 = unsafe { ::core::mem::transmute(using_qmatrix) };
7500            using_qmatrix as u64
7501        });
7502        __bindgen_bitfield_unit.set(53usize, 1u8, {
7503            let coded_lossless: u32 = unsafe { ::core::mem::transmute(coded_lossless) };
7504            coded_lossless as u64
7505        });
7506        __bindgen_bitfield_unit.set(54usize, 1u8, {
7507            let use_superres: u32 = unsafe { ::core::mem::transmute(use_superres) };
7508            use_superres as u64
7509        });
7510        __bindgen_bitfield_unit.set(55usize, 2u8, {
7511            let tx_mode: u32 = unsafe { ::core::mem::transmute(tx_mode) };
7512            tx_mode as u64
7513        });
7514        __bindgen_bitfield_unit.set(57usize, 1u8, {
7515            let reference_mode: u32 = unsafe { ::core::mem::transmute(reference_mode) };
7516            reference_mode as u64
7517        });
7518        __bindgen_bitfield_unit.set(58usize, 1u8, {
7519            let allow_warped_motion: u32 = unsafe { ::core::mem::transmute(allow_warped_motion) };
7520            allow_warped_motion as u64
7521        });
7522        __bindgen_bitfield_unit.set(59usize, 1u8, {
7523            let reduced_tx_set: u32 = unsafe { ::core::mem::transmute(reduced_tx_set) };
7524            reduced_tx_set as u64
7525        });
7526        __bindgen_bitfield_unit.set(60usize, 1u8, {
7527            let skip_mode: u32 = unsafe { ::core::mem::transmute(skip_mode) };
7528            skip_mode as u64
7529        });
7530        __bindgen_bitfield_unit.set(61usize, 3u8, {
7531            let reserved1_3bits: u32 = unsafe { ::core::mem::transmute(reserved1_3bits) };
7532            reserved1_3bits as u64
7533        });
7534        __bindgen_bitfield_unit.set(64usize, 8u8, {
7535            let num_tile_cols: u32 = unsafe { ::core::mem::transmute(num_tile_cols) };
7536            num_tile_cols as u64
7537        });
7538        __bindgen_bitfield_unit.set(72usize, 8u8, {
7539            let num_tile_rows: u32 = unsafe { ::core::mem::transmute(num_tile_rows) };
7540            num_tile_rows as u64
7541        });
7542        __bindgen_bitfield_unit.set(80usize, 16u8, {
7543            let context_update_tile_id: u32 =
7544                unsafe { ::core::mem::transmute(context_update_tile_id) };
7545            context_update_tile_id as u64
7546        });
7547        __bindgen_bitfield_unit
7548    }
7549
7550    #[inline]
7551    pub fn cdef_damping_minus_3(&self) -> ::core::ffi::c_uchar {
7552        unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 2u8) as u8) }
7553    }
7554
7555    #[inline]
7556    pub fn set_cdef_damping_minus_3(&mut self, val: ::core::ffi::c_uchar) {
7557        unsafe {
7558            let val: u8 = ::core::mem::transmute(val);
7559            self._bitfield_2.set(0usize, 2u8, val as u64)
7560        }
7561    }
7562
7563    #[inline]
7564    pub fn cdef_bits(&self) -> ::core::ffi::c_uchar {
7565        unsafe { ::core::mem::transmute(self._bitfield_2.get(2usize, 2u8) as u8) }
7566    }
7567
7568    #[inline]
7569    pub fn set_cdef_bits(&mut self, val: ::core::ffi::c_uchar) {
7570        unsafe {
7571            let val: u8 = ::core::mem::transmute(val);
7572            self._bitfield_2.set(2usize, 2u8, val as u64)
7573        }
7574    }
7575
7576    #[inline]
7577    pub fn reserved2_4bits(&self) -> ::core::ffi::c_uchar {
7578        unsafe { ::core::mem::transmute(self._bitfield_2.get(4usize, 4u8) as u8) }
7579    }
7580
7581    #[inline]
7582    pub fn set_reserved2_4bits(&mut self, val: ::core::ffi::c_uchar) {
7583        unsafe {
7584            let val: u8 = ::core::mem::transmute(val);
7585            self._bitfield_2.set(4usize, 4u8, val as u64)
7586        }
7587    }
7588
7589    #[inline]
7590    pub fn new_bitfield_2(
7591        cdef_damping_minus_3: ::core::ffi::c_uchar,
7592        cdef_bits: ::core::ffi::c_uchar,
7593        reserved2_4bits: ::core::ffi::c_uchar,
7594    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
7595        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
7596        __bindgen_bitfield_unit.set(0usize, 2u8, {
7597            let cdef_damping_minus_3: u8 = unsafe { ::core::mem::transmute(cdef_damping_minus_3) };
7598            cdef_damping_minus_3 as u64
7599        });
7600        __bindgen_bitfield_unit.set(2usize, 2u8, {
7601            let cdef_bits: u8 = unsafe { ::core::mem::transmute(cdef_bits) };
7602            cdef_bits as u64
7603        });
7604        __bindgen_bitfield_unit.set(4usize, 4u8, {
7605            let reserved2_4bits: u8 = unsafe { ::core::mem::transmute(reserved2_4bits) };
7606            reserved2_4bits as u64
7607        });
7608        __bindgen_bitfield_unit
7609    }
7610
7611    #[inline]
7612    pub fn SkipModeFrame0(&self) -> ::core::ffi::c_uchar {
7613        unsafe { ::core::mem::transmute(self._bitfield_3.get(0usize, 4u8) as u8) }
7614    }
7615
7616    #[inline]
7617    pub fn set_SkipModeFrame0(&mut self, val: ::core::ffi::c_uchar) {
7618        unsafe {
7619            let val: u8 = ::core::mem::transmute(val);
7620            self._bitfield_3.set(0usize, 4u8, val as u64)
7621        }
7622    }
7623
7624    #[inline]
7625    pub fn SkipModeFrame1(&self) -> ::core::ffi::c_uchar {
7626        unsafe { ::core::mem::transmute(self._bitfield_3.get(4usize, 4u8) as u8) }
7627    }
7628
7629    #[inline]
7630    pub fn set_SkipModeFrame1(&mut self, val: ::core::ffi::c_uchar) {
7631        unsafe {
7632            let val: u8 = ::core::mem::transmute(val);
7633            self._bitfield_3.set(4usize, 4u8, val as u64)
7634        }
7635    }
7636
7637    #[inline]
7638    pub fn new_bitfield_3(
7639        SkipModeFrame0: ::core::ffi::c_uchar,
7640        SkipModeFrame1: ::core::ffi::c_uchar,
7641    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
7642        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
7643        __bindgen_bitfield_unit.set(0usize, 4u8, {
7644            let SkipModeFrame0: u8 = unsafe { ::core::mem::transmute(SkipModeFrame0) };
7645            SkipModeFrame0 as u64
7646        });
7647        __bindgen_bitfield_unit.set(4usize, 4u8, {
7648            let SkipModeFrame1: u8 = unsafe { ::core::mem::transmute(SkipModeFrame1) };
7649            SkipModeFrame1 as u64
7650        });
7651        __bindgen_bitfield_unit
7652    }
7653
7654    #[inline]
7655    pub fn segmentation_enabled(&self) -> ::core::ffi::c_uchar {
7656        unsafe { ::core::mem::transmute(self._bitfield_4.get(0usize, 1u8) as u8) }
7657    }
7658
7659    #[inline]
7660    pub fn set_segmentation_enabled(&mut self, val: ::core::ffi::c_uchar) {
7661        unsafe {
7662            let val: u8 = ::core::mem::transmute(val);
7663            self._bitfield_4.set(0usize, 1u8, val as u64)
7664        }
7665    }
7666
7667    #[inline]
7668    pub fn segmentation_update_map(&self) -> ::core::ffi::c_uchar {
7669        unsafe { ::core::mem::transmute(self._bitfield_4.get(1usize, 1u8) as u8) }
7670    }
7671
7672    #[inline]
7673    pub fn set_segmentation_update_map(&mut self, val: ::core::ffi::c_uchar) {
7674        unsafe {
7675            let val: u8 = ::core::mem::transmute(val);
7676            self._bitfield_4.set(1usize, 1u8, val as u64)
7677        }
7678    }
7679
7680    #[inline]
7681    pub fn segmentation_update_data(&self) -> ::core::ffi::c_uchar {
7682        unsafe { ::core::mem::transmute(self._bitfield_4.get(2usize, 1u8) as u8) }
7683    }
7684
7685    #[inline]
7686    pub fn set_segmentation_update_data(&mut self, val: ::core::ffi::c_uchar) {
7687        unsafe {
7688            let val: u8 = ::core::mem::transmute(val);
7689            self._bitfield_4.set(2usize, 1u8, val as u64)
7690        }
7691    }
7692
7693    #[inline]
7694    pub fn segmentation_temporal_update(&self) -> ::core::ffi::c_uchar {
7695        unsafe { ::core::mem::transmute(self._bitfield_4.get(3usize, 1u8) as u8) }
7696    }
7697
7698    #[inline]
7699    pub fn set_segmentation_temporal_update(&mut self, val: ::core::ffi::c_uchar) {
7700        unsafe {
7701            let val: u8 = ::core::mem::transmute(val);
7702            self._bitfield_4.set(3usize, 1u8, val as u64)
7703        }
7704    }
7705
7706    #[inline]
7707    pub fn reserved3_4bits(&self) -> ::core::ffi::c_uchar {
7708        unsafe { ::core::mem::transmute(self._bitfield_4.get(4usize, 4u8) as u8) }
7709    }
7710
7711    #[inline]
7712    pub fn set_reserved3_4bits(&mut self, val: ::core::ffi::c_uchar) {
7713        unsafe {
7714            let val: u8 = ::core::mem::transmute(val);
7715            self._bitfield_4.set(4usize, 4u8, val as u64)
7716        }
7717    }
7718
7719    #[inline]
7720    pub fn new_bitfield_4(
7721        segmentation_enabled: ::core::ffi::c_uchar,
7722        segmentation_update_map: ::core::ffi::c_uchar,
7723        segmentation_update_data: ::core::ffi::c_uchar,
7724        segmentation_temporal_update: ::core::ffi::c_uchar,
7725        reserved3_4bits: ::core::ffi::c_uchar,
7726    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
7727        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
7728        __bindgen_bitfield_unit.set(0usize, 1u8, {
7729            let segmentation_enabled: u8 = unsafe { ::core::mem::transmute(segmentation_enabled) };
7730            segmentation_enabled as u64
7731        });
7732        __bindgen_bitfield_unit.set(1usize, 1u8, {
7733            let segmentation_update_map: u8 =
7734                unsafe { ::core::mem::transmute(segmentation_update_map) };
7735            segmentation_update_map as u64
7736        });
7737        __bindgen_bitfield_unit.set(2usize, 1u8, {
7738            let segmentation_update_data: u8 =
7739                unsafe { ::core::mem::transmute(segmentation_update_data) };
7740            segmentation_update_data as u64
7741        });
7742        __bindgen_bitfield_unit.set(3usize, 1u8, {
7743            let segmentation_temporal_update: u8 =
7744                unsafe { ::core::mem::transmute(segmentation_temporal_update) };
7745            segmentation_temporal_update as u64
7746        });
7747        __bindgen_bitfield_unit.set(4usize, 4u8, {
7748            let reserved3_4bits: u8 = unsafe { ::core::mem::transmute(reserved3_4bits) };
7749            reserved3_4bits as u64
7750        });
7751        __bindgen_bitfield_unit
7752    }
7753
7754    #[inline]
7755    pub fn loop_filter_delta_enabled(&self) -> ::core::ffi::c_uchar {
7756        unsafe { ::core::mem::transmute(self._bitfield_5.get(0usize, 1u8) as u8) }
7757    }
7758
7759    #[inline]
7760    pub fn set_loop_filter_delta_enabled(&mut self, val: ::core::ffi::c_uchar) {
7761        unsafe {
7762            let val: u8 = ::core::mem::transmute(val);
7763            self._bitfield_5.set(0usize, 1u8, val as u64)
7764        }
7765    }
7766
7767    #[inline]
7768    pub fn loop_filter_delta_update(&self) -> ::core::ffi::c_uchar {
7769        unsafe { ::core::mem::transmute(self._bitfield_5.get(1usize, 1u8) as u8) }
7770    }
7771
7772    #[inline]
7773    pub fn set_loop_filter_delta_update(&mut self, val: ::core::ffi::c_uchar) {
7774        unsafe {
7775            let val: u8 = ::core::mem::transmute(val);
7776            self._bitfield_5.set(1usize, 1u8, val as u64)
7777        }
7778    }
7779
7780    #[inline]
7781    pub fn delta_lf_present(&self) -> ::core::ffi::c_uchar {
7782        unsafe { ::core::mem::transmute(self._bitfield_5.get(2usize, 1u8) as u8) }
7783    }
7784
7785    #[inline]
7786    pub fn set_delta_lf_present(&mut self, val: ::core::ffi::c_uchar) {
7787        unsafe {
7788            let val: u8 = ::core::mem::transmute(val);
7789            self._bitfield_5.set(2usize, 1u8, val as u64)
7790        }
7791    }
7792
7793    #[inline]
7794    pub fn delta_lf_res(&self) -> ::core::ffi::c_uchar {
7795        unsafe { ::core::mem::transmute(self._bitfield_5.get(3usize, 2u8) as u8) }
7796    }
7797
7798    #[inline]
7799    pub fn set_delta_lf_res(&mut self, val: ::core::ffi::c_uchar) {
7800        unsafe {
7801            let val: u8 = ::core::mem::transmute(val);
7802            self._bitfield_5.set(3usize, 2u8, val as u64)
7803        }
7804    }
7805
7806    #[inline]
7807    pub fn delta_lf_multi(&self) -> ::core::ffi::c_uchar {
7808        unsafe { ::core::mem::transmute(self._bitfield_5.get(5usize, 1u8) as u8) }
7809    }
7810
7811    #[inline]
7812    pub fn set_delta_lf_multi(&mut self, val: ::core::ffi::c_uchar) {
7813        unsafe {
7814            let val: u8 = ::core::mem::transmute(val);
7815            self._bitfield_5.set(5usize, 1u8, val as u64)
7816        }
7817    }
7818
7819    #[inline]
7820    pub fn reserved4_2bits(&self) -> ::core::ffi::c_uchar {
7821        unsafe { ::core::mem::transmute(self._bitfield_5.get(6usize, 2u8) as u8) }
7822    }
7823
7824    #[inline]
7825    pub fn set_reserved4_2bits(&mut self, val: ::core::ffi::c_uchar) {
7826        unsafe {
7827            let val: u8 = ::core::mem::transmute(val);
7828            self._bitfield_5.set(6usize, 2u8, val as u64)
7829        }
7830    }
7831
7832    #[inline]
7833    pub fn new_bitfield_5(
7834        loop_filter_delta_enabled: ::core::ffi::c_uchar,
7835        loop_filter_delta_update: ::core::ffi::c_uchar,
7836        delta_lf_present: ::core::ffi::c_uchar,
7837        delta_lf_res: ::core::ffi::c_uchar,
7838        delta_lf_multi: ::core::ffi::c_uchar,
7839        reserved4_2bits: ::core::ffi::c_uchar,
7840    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
7841        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
7842        __bindgen_bitfield_unit.set(0usize, 1u8, {
7843            let loop_filter_delta_enabled: u8 =
7844                unsafe { ::core::mem::transmute(loop_filter_delta_enabled) };
7845            loop_filter_delta_enabled as u64
7846        });
7847        __bindgen_bitfield_unit.set(1usize, 1u8, {
7848            let loop_filter_delta_update: u8 =
7849                unsafe { ::core::mem::transmute(loop_filter_delta_update) };
7850            loop_filter_delta_update as u64
7851        });
7852        __bindgen_bitfield_unit.set(2usize, 1u8, {
7853            let delta_lf_present: u8 = unsafe { ::core::mem::transmute(delta_lf_present) };
7854            delta_lf_present as u64
7855        });
7856        __bindgen_bitfield_unit.set(3usize, 2u8, {
7857            let delta_lf_res: u8 = unsafe { ::core::mem::transmute(delta_lf_res) };
7858            delta_lf_res as u64
7859        });
7860        __bindgen_bitfield_unit.set(5usize, 1u8, {
7861            let delta_lf_multi: u8 = unsafe { ::core::mem::transmute(delta_lf_multi) };
7862            delta_lf_multi as u64
7863        });
7864        __bindgen_bitfield_unit.set(6usize, 2u8, {
7865            let reserved4_2bits: u8 = unsafe { ::core::mem::transmute(reserved4_2bits) };
7866            reserved4_2bits as u64
7867        });
7868        __bindgen_bitfield_unit
7869    }
7870
7871    #[inline]
7872    pub fn temporal_layer_id(&self) -> ::core::ffi::c_uchar {
7873        unsafe { ::core::mem::transmute(self._bitfield_6.get(0usize, 4u8) as u8) }
7874    }
7875
7876    #[inline]
7877    pub fn set_temporal_layer_id(&mut self, val: ::core::ffi::c_uchar) {
7878        unsafe {
7879            let val: u8 = ::core::mem::transmute(val);
7880            self._bitfield_6.set(0usize, 4u8, val as u64)
7881        }
7882    }
7883
7884    #[inline]
7885    pub fn spatial_layer_id(&self) -> ::core::ffi::c_uchar {
7886        unsafe { ::core::mem::transmute(self._bitfield_6.get(4usize, 4u8) as u8) }
7887    }
7888
7889    #[inline]
7890    pub fn set_spatial_layer_id(&mut self, val: ::core::ffi::c_uchar) {
7891        unsafe {
7892            let val: u8 = ::core::mem::transmute(val);
7893            self._bitfield_6.set(4usize, 4u8, val as u64)
7894        }
7895    }
7896
7897    #[inline]
7898    pub fn new_bitfield_6(
7899        temporal_layer_id: ::core::ffi::c_uchar,
7900        spatial_layer_id: ::core::ffi::c_uchar,
7901    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
7902        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
7903        __bindgen_bitfield_unit.set(0usize, 4u8, {
7904            let temporal_layer_id: u8 = unsafe { ::core::mem::transmute(temporal_layer_id) };
7905            temporal_layer_id as u64
7906        });
7907        __bindgen_bitfield_unit.set(4usize, 4u8, {
7908            let spatial_layer_id: u8 = unsafe { ::core::mem::transmute(spatial_layer_id) };
7909            spatial_layer_id as u64
7910        });
7911        __bindgen_bitfield_unit
7912    }
7913
7914    #[inline]
7915    pub fn apply_grain(&self) -> ::core::ffi::c_ushort {
7916        unsafe { ::core::mem::transmute(self._bitfield_7.get(0usize, 1u8) as u16) }
7917    }
7918
7919    #[inline]
7920    pub fn set_apply_grain(&mut self, val: ::core::ffi::c_ushort) {
7921        unsafe {
7922            let val: u16 = ::core::mem::transmute(val);
7923            self._bitfield_7.set(0usize, 1u8, val as u64)
7924        }
7925    }
7926
7927    #[inline]
7928    pub fn overlap_flag(&self) -> ::core::ffi::c_ushort {
7929        unsafe { ::core::mem::transmute(self._bitfield_7.get(1usize, 1u8) as u16) }
7930    }
7931
7932    #[inline]
7933    pub fn set_overlap_flag(&mut self, val: ::core::ffi::c_ushort) {
7934        unsafe {
7935            let val: u16 = ::core::mem::transmute(val);
7936            self._bitfield_7.set(1usize, 1u8, val as u64)
7937        }
7938    }
7939
7940    #[inline]
7941    pub fn scaling_shift_minus8(&self) -> ::core::ffi::c_ushort {
7942        unsafe { ::core::mem::transmute(self._bitfield_7.get(2usize, 2u8) as u16) }
7943    }
7944
7945    #[inline]
7946    pub fn set_scaling_shift_minus8(&mut self, val: ::core::ffi::c_ushort) {
7947        unsafe {
7948            let val: u16 = ::core::mem::transmute(val);
7949            self._bitfield_7.set(2usize, 2u8, val as u64)
7950        }
7951    }
7952
7953    #[inline]
7954    pub fn chroma_scaling_from_luma(&self) -> ::core::ffi::c_ushort {
7955        unsafe { ::core::mem::transmute(self._bitfield_7.get(4usize, 1u8) as u16) }
7956    }
7957
7958    #[inline]
7959    pub fn set_chroma_scaling_from_luma(&mut self, val: ::core::ffi::c_ushort) {
7960        unsafe {
7961            let val: u16 = ::core::mem::transmute(val);
7962            self._bitfield_7.set(4usize, 1u8, val as u64)
7963        }
7964    }
7965
7966    #[inline]
7967    pub fn ar_coeff_lag(&self) -> ::core::ffi::c_ushort {
7968        unsafe { ::core::mem::transmute(self._bitfield_7.get(5usize, 2u8) as u16) }
7969    }
7970
7971    #[inline]
7972    pub fn set_ar_coeff_lag(&mut self, val: ::core::ffi::c_ushort) {
7973        unsafe {
7974            let val: u16 = ::core::mem::transmute(val);
7975            self._bitfield_7.set(5usize, 2u8, val as u64)
7976        }
7977    }
7978
7979    #[inline]
7980    pub fn ar_coeff_shift_minus6(&self) -> ::core::ffi::c_ushort {
7981        unsafe { ::core::mem::transmute(self._bitfield_7.get(7usize, 2u8) as u16) }
7982    }
7983
7984    #[inline]
7985    pub fn set_ar_coeff_shift_minus6(&mut self, val: ::core::ffi::c_ushort) {
7986        unsafe {
7987            let val: u16 = ::core::mem::transmute(val);
7988            self._bitfield_7.set(7usize, 2u8, val as u64)
7989        }
7990    }
7991
7992    #[inline]
7993    pub fn grain_scale_shift(&self) -> ::core::ffi::c_ushort {
7994        unsafe { ::core::mem::transmute(self._bitfield_7.get(9usize, 2u8) as u16) }
7995    }
7996
7997    #[inline]
7998    pub fn set_grain_scale_shift(&mut self, val: ::core::ffi::c_ushort) {
7999        unsafe {
8000            let val: u16 = ::core::mem::transmute(val);
8001            self._bitfield_7.set(9usize, 2u8, val as u64)
8002        }
8003    }
8004
8005    #[inline]
8006    pub fn clip_to_restricted_range(&self) -> ::core::ffi::c_ushort {
8007        unsafe { ::core::mem::transmute(self._bitfield_7.get(11usize, 1u8) as u16) }
8008    }
8009
8010    #[inline]
8011    pub fn set_clip_to_restricted_range(&mut self, val: ::core::ffi::c_ushort) {
8012        unsafe {
8013            let val: u16 = ::core::mem::transmute(val);
8014            self._bitfield_7.set(11usize, 1u8, val as u64)
8015        }
8016    }
8017
8018    #[inline]
8019    pub fn reserved6_4bits(&self) -> ::core::ffi::c_ushort {
8020        unsafe { ::core::mem::transmute(self._bitfield_7.get(12usize, 4u8) as u16) }
8021    }
8022
8023    #[inline]
8024    pub fn set_reserved6_4bits(&mut self, val: ::core::ffi::c_ushort) {
8025        unsafe {
8026            let val: u16 = ::core::mem::transmute(val);
8027            self._bitfield_7.set(12usize, 4u8, val as u64)
8028        }
8029    }
8030
8031    #[inline]
8032    pub fn new_bitfield_7(
8033        apply_grain: ::core::ffi::c_ushort,
8034        overlap_flag: ::core::ffi::c_ushort,
8035        scaling_shift_minus8: ::core::ffi::c_ushort,
8036        chroma_scaling_from_luma: ::core::ffi::c_ushort,
8037        ar_coeff_lag: ::core::ffi::c_ushort,
8038        ar_coeff_shift_minus6: ::core::ffi::c_ushort,
8039        grain_scale_shift: ::core::ffi::c_ushort,
8040        clip_to_restricted_range: ::core::ffi::c_ushort,
8041        reserved6_4bits: ::core::ffi::c_ushort,
8042    ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8043        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8044        __bindgen_bitfield_unit.set(0usize, 1u8, {
8045            let apply_grain: u16 = unsafe { ::core::mem::transmute(apply_grain) };
8046            apply_grain as u64
8047        });
8048        __bindgen_bitfield_unit.set(1usize, 1u8, {
8049            let overlap_flag: u16 = unsafe { ::core::mem::transmute(overlap_flag) };
8050            overlap_flag as u64
8051        });
8052        __bindgen_bitfield_unit.set(2usize, 2u8, {
8053            let scaling_shift_minus8: u16 = unsafe { ::core::mem::transmute(scaling_shift_minus8) };
8054            scaling_shift_minus8 as u64
8055        });
8056        __bindgen_bitfield_unit.set(4usize, 1u8, {
8057            let chroma_scaling_from_luma: u16 =
8058                unsafe { ::core::mem::transmute(chroma_scaling_from_luma) };
8059            chroma_scaling_from_luma as u64
8060        });
8061        __bindgen_bitfield_unit.set(5usize, 2u8, {
8062            let ar_coeff_lag: u16 = unsafe { ::core::mem::transmute(ar_coeff_lag) };
8063            ar_coeff_lag as u64
8064        });
8065        __bindgen_bitfield_unit.set(7usize, 2u8, {
8066            let ar_coeff_shift_minus6: u16 =
8067                unsafe { ::core::mem::transmute(ar_coeff_shift_minus6) };
8068            ar_coeff_shift_minus6 as u64
8069        });
8070        __bindgen_bitfield_unit.set(9usize, 2u8, {
8071            let grain_scale_shift: u16 = unsafe { ::core::mem::transmute(grain_scale_shift) };
8072            grain_scale_shift as u64
8073        });
8074        __bindgen_bitfield_unit.set(11usize, 1u8, {
8075            let clip_to_restricted_range: u16 =
8076                unsafe { ::core::mem::transmute(clip_to_restricted_range) };
8077            clip_to_restricted_range as u64
8078        });
8079        __bindgen_bitfield_unit.set(12usize, 4u8, {
8080            let reserved6_4bits: u16 = unsafe { ::core::mem::transmute(reserved6_4bits) };
8081            reserved6_4bits as u64
8082        });
8083        __bindgen_bitfield_unit
8084    }
8085}
8086impl Default for _CUVIDPICPARAMS__bindgen_ty_1 {
8087    fn default() -> Self {
8088        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
8089        unsafe {
8090            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8091            s.assume_init()
8092        }
8093    }
8094}
8095impl Default for _CUVIDPICPARAMS {
8096    fn default() -> Self {
8097        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
8098        unsafe {
8099            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8100            s.assume_init()
8101        }
8102    }
8103}
8104impl Default for _CUVIDPROCPARAMS {
8105    fn default() -> Self {
8106        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
8107        unsafe {
8108            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8109            s.assume_init()
8110        }
8111    }
8112}
8113impl Default for _CUVIDGETDECODESTATUS {
8114    fn default() -> Self {
8115        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
8116        unsafe {
8117            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8118            s.assume_init()
8119        }
8120    }
8121}
8122pub use self::{
8123    cudaVideoChromaFormat_enum as cudaVideoChromaFormat,
8124    cudaVideoCodec_enum as cudaVideoCodec,
8125    cudaVideoCreateFlags_enum as cudaVideoCreateFlags,
8126    cudaVideoDeinterlaceMode_enum as cudaVideoDeinterlaceMode,
8127    cudaVideoSurfaceFormat_enum as cudaVideoSurfaceFormat,
8128    cuvidDecodeStatus_enum as cuvidDecodeStatus,
8129};
8130extern "C" {
8131    #[must_use]
8132    pub fn cuvidGetDecoderCaps(pdc: *mut CUVIDDECODECAPS) -> CUresult;
8133    #[must_use]
8134    pub fn cuvidCreateDecoder(
8135        phDecoder: *mut CUvideodecoder,
8136        pdci: *mut CUVIDDECODECREATEINFO,
8137    ) -> CUresult;
8138    #[must_use]
8139    pub fn cuvidDestroyDecoder(hDecoder: CUvideodecoder) -> CUresult;
8140    #[must_use]
8141    pub fn cuvidDecodePicture(
8142        hDecoder: CUvideodecoder,
8143        pPicParams: *mut CUVIDPICPARAMS,
8144    ) -> CUresult;
8145    #[must_use]
8146    pub fn cuvidGetDecodeStatus(
8147        hDecoder: CUvideodecoder,
8148        nPicIdx: ::core::ffi::c_int,
8149        pDecodeStatus: *mut CUVIDGETDECODESTATUS,
8150    ) -> CUresult;
8151    #[must_use]
8152    pub fn cuvidReconfigureDecoder(
8153        hDecoder: CUvideodecoder,
8154        pDecReconfigParams: *mut CUVIDRECONFIGUREDECODERINFO,
8155    ) -> CUresult;
8156    #[must_use]
8157    pub fn cuvidMapVideoFrame64(
8158        hDecoder: CUvideodecoder,
8159        nPicIdx: ::core::ffi::c_int,
8160        pDevPtr: *mut ::core::ffi::c_ulonglong,
8161        pPitch: *mut ::core::ffi::c_uint,
8162        pVPP: *mut CUVIDPROCPARAMS,
8163    ) -> CUresult;
8164    #[must_use]
8165    pub fn cuvidUnmapVideoFrame64(
8166        hDecoder: CUvideodecoder,
8167        DevPtr: ::core::ffi::c_ulonglong,
8168    ) -> CUresult;
8169    #[must_use]
8170    pub fn cuvidCtxLockCreate(pLock: *mut CUvideoctxlock, ctx: CUcontext) -> CUresult;
8171    #[must_use]
8172    pub fn cuvidCtxLockDestroy(lck: CUvideoctxlock) -> CUresult;
8173    #[must_use]
8174    pub fn cuvidCtxLock(lck: CUvideoctxlock, reserved_flags: ::core::ffi::c_uint) -> CUresult;
8175    #[must_use]
8176    pub fn cuvidCtxUnlock(lck: CUvideoctxlock, reserved_flags: ::core::ffi::c_uint) -> CUresult;
8177}