use cudarc::driver::sys::*;
/* automatically generated by rust-bindgen 0.65.1 */

pub type CUvideodecoder = *mut ::core::ffi::c_void;
pub type CUvideoctxlock = *mut _CUcontextlock_st;
pub type CUVIDDECODECAPS = _CUVIDDECODECAPS;
pub type CUVIDDECODECREATEINFO = _CUVIDDECODECREATEINFO;
pub type CUVIDH264DPBENTRY = _CUVIDH264DPBENTRY;
pub type CUVIDH264MVCEXT = _CUVIDH264MVCEXT;
pub type CUVIDH264SVCEXT = _CUVIDH264SVCEXT;
pub type CUVIDH264PICPARAMS = _CUVIDH264PICPARAMS;
pub type CUVIDMPEG2PICPARAMS = _CUVIDMPEG2PICPARAMS;
pub type CUVIDMPEG4PICPARAMS = _CUVIDMPEG4PICPARAMS;
pub type CUVIDVC1PICPARAMS = _CUVIDVC1PICPARAMS;
pub type CUVIDJPEGPICPARAMS = _CUVIDJPEGPICPARAMS;
pub type CUVIDHEVCPICPARAMS = _CUVIDHEVCPICPARAMS;
pub type CUVIDVP8PICPARAMS = _CUVIDVP8PICPARAMS;
pub type CUVIDVP9PICPARAMS = _CUVIDVP9PICPARAMS;
pub type CUVIDAV1PICPARAMS = _CUVIDAV1PICPARAMS;
pub type CUVIDPICPARAMS = _CUVIDPICPARAMS;
pub type CUVIDPROCPARAMS = _CUVIDPROCPARAMS;
pub type CUVIDGETDECODESTATUS = _CUVIDGETDECODESTATUS;
pub type CUVIDRECONFIGUREDECODERINFO = _CUVIDRECONFIGUREDECODERINFO;
#[repr(C)]
#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
pub struct __BindgenBitfieldUnit<Storage> {
    storage: Storage,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _CUcontextlock_st {
    _unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDDECODECAPS {
    pub eCodecType: cudaVideoCodec,
    pub eChromaFormat: cudaVideoChromaFormat,
    pub nBitDepthMinus8: ::core::ffi::c_uint,
    pub reserved1: [::core::ffi::c_uint; 3usize],
    pub bIsSupported: ::core::ffi::c_uchar,
    pub nNumNVDECs: ::core::ffi::c_uchar,
    pub nOutputFormatMask: ::core::ffi::c_ushort,
    pub nMaxWidth: ::core::ffi::c_uint,
    pub nMaxHeight: ::core::ffi::c_uint,
    pub nMaxMBCount: ::core::ffi::c_uint,
    pub nMinWidth: ::core::ffi::c_ushort,
    pub nMinHeight: ::core::ffi::c_ushort,
    pub bIsHistogramSupported: ::core::ffi::c_uchar,
    pub nCounterBitDepth: ::core::ffi::c_uchar,
    pub nMaxHistogramBins: ::core::ffi::c_ushort,
    pub reserved3: [::core::ffi::c_uint; 10usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDDECODECREATEINFO {
    pub ulWidth: ::core::ffi::c_ulong,
    pub ulHeight: ::core::ffi::c_ulong,
    pub ulNumDecodeSurfaces: ::core::ffi::c_ulong,
    pub CodecType: cudaVideoCodec,
    pub ChromaFormat: cudaVideoChromaFormat,
    pub ulCreationFlags: ::core::ffi::c_ulong,
    pub bitDepthMinus8: ::core::ffi::c_ulong,
    pub ulIntraDecodeOnly: ::core::ffi::c_ulong,
    pub ulMaxWidth: ::core::ffi::c_ulong,
    pub ulMaxHeight: ::core::ffi::c_ulong,
    pub Reserved1: ::core::ffi::c_ulong,
    pub display_area: _CUVIDDECODECREATEINFO__bindgen_ty_1,
    pub OutputFormat: cudaVideoSurfaceFormat,
    pub DeinterlaceMode: cudaVideoDeinterlaceMode,
    pub ulTargetWidth: ::core::ffi::c_ulong,
    pub ulTargetHeight: ::core::ffi::c_ulong,
    pub ulNumOutputSurfaces: ::core::ffi::c_ulong,
    pub vidLock: CUvideoctxlock,
    pub target_rect: _CUVIDDECODECREATEINFO__bindgen_ty_2,
    pub enableHistogram: ::core::ffi::c_ulong,
    pub Reserved2: [::core::ffi::c_ulong; 4usize],
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDDECODECREATEINFO__bindgen_ty_1 {
    pub left: ::core::ffi::c_short,
    pub top: ::core::ffi::c_short,
    pub right: ::core::ffi::c_short,
    pub bottom: ::core::ffi::c_short,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDDECODECREATEINFO__bindgen_ty_2 {
    pub left: ::core::ffi::c_short,
    pub top: ::core::ffi::c_short,
    pub right: ::core::ffi::c_short,
    pub bottom: ::core::ffi::c_short,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDH264DPBENTRY {
    pub PicIdx: ::core::ffi::c_int,
    pub FrameIdx: ::core::ffi::c_int,
    pub is_long_term: ::core::ffi::c_int,
    pub not_existing: ::core::ffi::c_int,
    pub used_for_reference: ::core::ffi::c_int,
    pub FieldOrderCnt: [::core::ffi::c_int; 2usize],
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDH264MVCEXT {
    pub num_views_minus1: ::core::ffi::c_int,
    pub view_id: ::core::ffi::c_int,
    pub inter_view_flag: ::core::ffi::c_uchar,
    pub num_inter_view_refs_l0: ::core::ffi::c_uchar,
    pub num_inter_view_refs_l1: ::core::ffi::c_uchar,
    pub MVCReserved8Bits: ::core::ffi::c_uchar,
    pub InterViewRefsL0: [::core::ffi::c_int; 16usize],
    pub InterViewRefsL1: [::core::ffi::c_int; 16usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDH264SVCEXT {
    pub profile_idc: ::core::ffi::c_uchar,
    pub level_idc: ::core::ffi::c_uchar,
    pub DQId: ::core::ffi::c_uchar,
    pub DQIdMax: ::core::ffi::c_uchar,
    pub disable_inter_layer_deblocking_filter_idc: ::core::ffi::c_uchar,
    pub ref_layer_chroma_phase_y_plus1: ::core::ffi::c_uchar,
    pub inter_layer_slice_alpha_c0_offset_div2: ::core::ffi::c_schar,
    pub inter_layer_slice_beta_offset_div2: ::core::ffi::c_schar,
    pub DPBEntryValidFlag: ::core::ffi::c_ushort,
    pub inter_layer_deblocking_filter_control_present_flag: ::core::ffi::c_uchar,
    pub extended_spatial_scalability_idc: ::core::ffi::c_uchar,
    pub adaptive_tcoeff_level_prediction_flag: ::core::ffi::c_uchar,
    pub slice_header_restriction_flag: ::core::ffi::c_uchar,
    pub chroma_phase_x_plus1_flag: ::core::ffi::c_uchar,
    pub chroma_phase_y_plus1: ::core::ffi::c_uchar,
    pub tcoeff_level_prediction_flag: ::core::ffi::c_uchar,
    pub constrained_intra_resampling_flag: ::core::ffi::c_uchar,
    pub ref_layer_chroma_phase_x_plus1_flag: ::core::ffi::c_uchar,
    pub store_ref_base_pic_flag: ::core::ffi::c_uchar,
    pub Reserved8BitsA: ::core::ffi::c_uchar,
    pub Reserved8BitsB: ::core::ffi::c_uchar,
    pub scaled_ref_layer_left_offset: ::core::ffi::c_short,
    pub scaled_ref_layer_top_offset: ::core::ffi::c_short,
    pub scaled_ref_layer_right_offset: ::core::ffi::c_short,
    pub scaled_ref_layer_bottom_offset: ::core::ffi::c_short,
    pub Reserved16Bits: ::core::ffi::c_ushort,
    pub pNextLayer: *mut _CUVIDPICPARAMS,
    pub bRefBaseLayer: ::core::ffi::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _CUVIDH264PICPARAMS {
    pub log2_max_frame_num_minus4: ::core::ffi::c_int,
    pub pic_order_cnt_type: ::core::ffi::c_int,
    pub log2_max_pic_order_cnt_lsb_minus4: ::core::ffi::c_int,
    pub delta_pic_order_always_zero_flag: ::core::ffi::c_int,
    pub frame_mbs_only_flag: ::core::ffi::c_int,
    pub direct_8x8_inference_flag: ::core::ffi::c_int,
    pub num_ref_frames: ::core::ffi::c_int,
    pub residual_colour_transform_flag: ::core::ffi::c_uchar,
    pub bit_depth_luma_minus8: ::core::ffi::c_uchar,
    pub bit_depth_chroma_minus8: ::core::ffi::c_uchar,
    pub qpprime_y_zero_transform_bypass_flag: ::core::ffi::c_uchar,
    pub entropy_coding_mode_flag: ::core::ffi::c_int,
    pub pic_order_present_flag: ::core::ffi::c_int,
    pub num_ref_idx_l0_active_minus1: ::core::ffi::c_int,
    pub num_ref_idx_l1_active_minus1: ::core::ffi::c_int,
    pub weighted_pred_flag: ::core::ffi::c_int,
    pub weighted_bipred_idc: ::core::ffi::c_int,
    pub pic_init_qp_minus26: ::core::ffi::c_int,
    pub deblocking_filter_control_present_flag: ::core::ffi::c_int,
    pub redundant_pic_cnt_present_flag: ::core::ffi::c_int,
    pub transform_8x8_mode_flag: ::core::ffi::c_int,
    pub MbaffFrameFlag: ::core::ffi::c_int,
    pub constrained_intra_pred_flag: ::core::ffi::c_int,
    pub chroma_qp_index_offset: ::core::ffi::c_int,
    pub second_chroma_qp_index_offset: ::core::ffi::c_int,
    pub ref_pic_flag: ::core::ffi::c_int,
    pub frame_num: ::core::ffi::c_int,
    pub CurrFieldOrderCnt: [::core::ffi::c_int; 2usize],
    pub dpb: [CUVIDH264DPBENTRY; 16usize],
    pub WeightScale4x4: [[::core::ffi::c_uchar; 16usize]; 6usize],
    pub WeightScale8x8: [[::core::ffi::c_uchar; 64usize]; 2usize],
    pub fmo_aso_enable: ::core::ffi::c_uchar,
    pub num_slice_groups_minus1: ::core::ffi::c_uchar,
    pub slice_group_map_type: ::core::ffi::c_uchar,
    pub pic_init_qs_minus26: ::core::ffi::c_schar,
    pub slice_group_change_rate_minus1: ::core::ffi::c_uint,
    pub fmo: _CUVIDH264PICPARAMS__bindgen_ty_1,
    pub Reserved: [::core::ffi::c_uint; 12usize],
    pub __bindgen_anon_1: _CUVIDH264PICPARAMS__bindgen_ty_2,
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDMPEG2PICPARAMS {
    pub ForwardRefIdx: ::core::ffi::c_int,
    pub BackwardRefIdx: ::core::ffi::c_int,
    pub picture_coding_type: ::core::ffi::c_int,
    pub full_pel_forward_vector: ::core::ffi::c_int,
    pub full_pel_backward_vector: ::core::ffi::c_int,
    pub f_code: [[::core::ffi::c_int; 2usize]; 2usize],
    pub intra_dc_precision: ::core::ffi::c_int,
    pub frame_pred_frame_dct: ::core::ffi::c_int,
    pub concealment_motion_vectors: ::core::ffi::c_int,
    pub q_scale_type: ::core::ffi::c_int,
    pub intra_vlc_format: ::core::ffi::c_int,
    pub alternate_scan: ::core::ffi::c_int,
    pub top_field_first: ::core::ffi::c_int,
    pub QuantMatrixIntra: [::core::ffi::c_uchar; 64usize],
    pub QuantMatrixInter: [::core::ffi::c_uchar; 64usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDMPEG4PICPARAMS {
    pub ForwardRefIdx: ::core::ffi::c_int,
    pub BackwardRefIdx: ::core::ffi::c_int,
    pub video_object_layer_width: ::core::ffi::c_int,
    pub video_object_layer_height: ::core::ffi::c_int,
    pub vop_time_increment_bitcount: ::core::ffi::c_int,
    pub top_field_first: ::core::ffi::c_int,
    pub resync_marker_disable: ::core::ffi::c_int,
    pub quant_type: ::core::ffi::c_int,
    pub quarter_sample: ::core::ffi::c_int,
    pub short_video_header: ::core::ffi::c_int,
    pub divx_flags: ::core::ffi::c_int,
    pub vop_coding_type: ::core::ffi::c_int,
    pub vop_coded: ::core::ffi::c_int,
    pub vop_rounding_type: ::core::ffi::c_int,
    pub alternate_vertical_scan_flag: ::core::ffi::c_int,
    pub interlaced: ::core::ffi::c_int,
    pub vop_fcode_forward: ::core::ffi::c_int,
    pub vop_fcode_backward: ::core::ffi::c_int,
    pub trd: [::core::ffi::c_int; 2usize],
    pub trb: [::core::ffi::c_int; 2usize],
    pub QuantMatrixIntra: [::core::ffi::c_uchar; 64usize],
    pub QuantMatrixInter: [::core::ffi::c_uchar; 64usize],
    pub gmc_enabled: ::core::ffi::c_int,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDVC1PICPARAMS {
    pub ForwardRefIdx: ::core::ffi::c_int,
    pub BackwardRefIdx: ::core::ffi::c_int,
    pub FrameWidth: ::core::ffi::c_int,
    pub FrameHeight: ::core::ffi::c_int,
    pub intra_pic_flag: ::core::ffi::c_int,
    pub ref_pic_flag: ::core::ffi::c_int,
    pub progressive_fcm: ::core::ffi::c_int,
    pub profile: ::core::ffi::c_int,
    pub postprocflag: ::core::ffi::c_int,
    pub pulldown: ::core::ffi::c_int,
    pub interlace: ::core::ffi::c_int,
    pub tfcntrflag: ::core::ffi::c_int,
    pub finterpflag: ::core::ffi::c_int,
    pub psf: ::core::ffi::c_int,
    pub multires: ::core::ffi::c_int,
    pub syncmarker: ::core::ffi::c_int,
    pub rangered: ::core::ffi::c_int,
    pub maxbframes: ::core::ffi::c_int,
    pub panscan_flag: ::core::ffi::c_int,
    pub refdist_flag: ::core::ffi::c_int,
    pub extended_mv: ::core::ffi::c_int,
    pub dquant: ::core::ffi::c_int,
    pub vstransform: ::core::ffi::c_int,
    pub loopfilter: ::core::ffi::c_int,
    pub fastuvmc: ::core::ffi::c_int,
    pub overlap: ::core::ffi::c_int,
    pub quantizer: ::core::ffi::c_int,
    pub extended_dmv: ::core::ffi::c_int,
    pub range_mapy_flag: ::core::ffi::c_int,
    pub range_mapy: ::core::ffi::c_int,
    pub range_mapuv_flag: ::core::ffi::c_int,
    pub range_mapuv: ::core::ffi::c_int,
    pub rangeredfrm: ::core::ffi::c_int,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDJPEGPICPARAMS {
    pub Reserved: ::core::ffi::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDHEVCPICPARAMS {
    pub pic_width_in_luma_samples: ::core::ffi::c_int,
    pub pic_height_in_luma_samples: ::core::ffi::c_int,
    pub log2_min_luma_coding_block_size_minus3: ::core::ffi::c_uchar,
    pub log2_diff_max_min_luma_coding_block_size: ::core::ffi::c_uchar,
    pub log2_min_transform_block_size_minus2: ::core::ffi::c_uchar,
    pub log2_diff_max_min_transform_block_size: ::core::ffi::c_uchar,
    pub pcm_enabled_flag: ::core::ffi::c_uchar,
    pub log2_min_pcm_luma_coding_block_size_minus3: ::core::ffi::c_uchar,
    pub log2_diff_max_min_pcm_luma_coding_block_size: ::core::ffi::c_uchar,
    pub pcm_sample_bit_depth_luma_minus1: ::core::ffi::c_uchar,
    pub pcm_sample_bit_depth_chroma_minus1: ::core::ffi::c_uchar,
    pub pcm_loop_filter_disabled_flag: ::core::ffi::c_uchar,
    pub strong_intra_smoothing_enabled_flag: ::core::ffi::c_uchar,
    pub max_transform_hierarchy_depth_intra: ::core::ffi::c_uchar,
    pub max_transform_hierarchy_depth_inter: ::core::ffi::c_uchar,
    pub amp_enabled_flag: ::core::ffi::c_uchar,
    pub separate_colour_plane_flag: ::core::ffi::c_uchar,
    pub log2_max_pic_order_cnt_lsb_minus4: ::core::ffi::c_uchar,
    pub num_short_term_ref_pic_sets: ::core::ffi::c_uchar,
    pub long_term_ref_pics_present_flag: ::core::ffi::c_uchar,
    pub num_long_term_ref_pics_sps: ::core::ffi::c_uchar,
    pub sps_temporal_mvp_enabled_flag: ::core::ffi::c_uchar,
    pub sample_adaptive_offset_enabled_flag: ::core::ffi::c_uchar,
    pub scaling_list_enable_flag: ::core::ffi::c_uchar,
    pub IrapPicFlag: ::core::ffi::c_uchar,
    pub IdrPicFlag: ::core::ffi::c_uchar,
    pub bit_depth_luma_minus8: ::core::ffi::c_uchar,
    pub bit_depth_chroma_minus8: ::core::ffi::c_uchar,
    pub log2_max_transform_skip_block_size_minus2: ::core::ffi::c_uchar,
    pub log2_sao_offset_scale_luma: ::core::ffi::c_uchar,
    pub log2_sao_offset_scale_chroma: ::core::ffi::c_uchar,
    pub high_precision_offsets_enabled_flag: ::core::ffi::c_uchar,
    pub reserved1: [::core::ffi::c_uchar; 10usize],
    pub dependent_slice_segments_enabled_flag: ::core::ffi::c_uchar,
    pub slice_segment_header_extension_present_flag: ::core::ffi::c_uchar,
    pub sign_data_hiding_enabled_flag: ::core::ffi::c_uchar,
    pub cu_qp_delta_enabled_flag: ::core::ffi::c_uchar,
    pub diff_cu_qp_delta_depth: ::core::ffi::c_uchar,
    pub init_qp_minus26: ::core::ffi::c_schar,
    pub pps_cb_qp_offset: ::core::ffi::c_schar,
    pub pps_cr_qp_offset: ::core::ffi::c_schar,
    pub constrained_intra_pred_flag: ::core::ffi::c_uchar,
    pub weighted_pred_flag: ::core::ffi::c_uchar,
    pub weighted_bipred_flag: ::core::ffi::c_uchar,
    pub transform_skip_enabled_flag: ::core::ffi::c_uchar,
    pub transquant_bypass_enabled_flag: ::core::ffi::c_uchar,
    pub entropy_coding_sync_enabled_flag: ::core::ffi::c_uchar,
    pub log2_parallel_merge_level_minus2: ::core::ffi::c_uchar,
    pub num_extra_slice_header_bits: ::core::ffi::c_uchar,
    pub loop_filter_across_tiles_enabled_flag: ::core::ffi::c_uchar,
    pub loop_filter_across_slices_enabled_flag: ::core::ffi::c_uchar,
    pub output_flag_present_flag: ::core::ffi::c_uchar,
    pub num_ref_idx_l0_default_active_minus1: ::core::ffi::c_uchar,
    pub num_ref_idx_l1_default_active_minus1: ::core::ffi::c_uchar,
    pub lists_modification_present_flag: ::core::ffi::c_uchar,
    pub cabac_init_present_flag: ::core::ffi::c_uchar,
    pub pps_slice_chroma_qp_offsets_present_flag: ::core::ffi::c_uchar,
    pub deblocking_filter_override_enabled_flag: ::core::ffi::c_uchar,
    pub pps_deblocking_filter_disabled_flag: ::core::ffi::c_uchar,
    pub pps_beta_offset_div2: ::core::ffi::c_schar,
    pub pps_tc_offset_div2: ::core::ffi::c_schar,
    pub tiles_enabled_flag: ::core::ffi::c_uchar,
    pub uniform_spacing_flag: ::core::ffi::c_uchar,
    pub num_tile_columns_minus1: ::core::ffi::c_uchar,
    pub num_tile_rows_minus1: ::core::ffi::c_uchar,
    pub column_width_minus1: [::core::ffi::c_ushort; 21usize],
    pub row_height_minus1: [::core::ffi::c_ushort; 21usize],
    pub sps_range_extension_flag: ::core::ffi::c_uchar,
    pub transform_skip_rotation_enabled_flag: ::core::ffi::c_uchar,
    pub transform_skip_context_enabled_flag: ::core::ffi::c_uchar,
    pub implicit_rdpcm_enabled_flag: ::core::ffi::c_uchar,
    pub explicit_rdpcm_enabled_flag: ::core::ffi::c_uchar,
    pub extended_precision_processing_flag: ::core::ffi::c_uchar,
    pub intra_smoothing_disabled_flag: ::core::ffi::c_uchar,
    pub persistent_rice_adaptation_enabled_flag: ::core::ffi::c_uchar,
    pub cabac_bypass_alignment_enabled_flag: ::core::ffi::c_uchar,
    pub pps_range_extension_flag: ::core::ffi::c_uchar,
    pub cross_component_prediction_enabled_flag: ::core::ffi::c_uchar,
    pub chroma_qp_offset_list_enabled_flag: ::core::ffi::c_uchar,
    pub diff_cu_chroma_qp_offset_depth: ::core::ffi::c_uchar,
    pub chroma_qp_offset_list_len_minus1: ::core::ffi::c_uchar,
    pub cb_qp_offset_list: [::core::ffi::c_schar; 6usize],
    pub cr_qp_offset_list: [::core::ffi::c_schar; 6usize],
    pub reserved2: [::core::ffi::c_uchar; 2usize],
    pub reserved3: [::core::ffi::c_uint; 8usize],
    pub NumBitsForShortTermRPSInSlice: ::core::ffi::c_int,
    pub NumDeltaPocsOfRefRpsIdx: ::core::ffi::c_int,
    pub NumPocTotalCurr: ::core::ffi::c_int,
    pub NumPocStCurrBefore: ::core::ffi::c_int,
    pub NumPocStCurrAfter: ::core::ffi::c_int,
    pub NumPocLtCurr: ::core::ffi::c_int,
    pub CurrPicOrderCntVal: ::core::ffi::c_int,
    pub RefPicIdx: [::core::ffi::c_int; 16usize],
    pub PicOrderCntVal: [::core::ffi::c_int; 16usize],
    pub IsLongTerm: [::core::ffi::c_uchar; 16usize],
    pub RefPicSetStCurrBefore: [::core::ffi::c_uchar; 8usize],
    pub RefPicSetStCurrAfter: [::core::ffi::c_uchar; 8usize],
    pub RefPicSetLtCurr: [::core::ffi::c_uchar; 8usize],
    pub RefPicSetInterLayer0: [::core::ffi::c_uchar; 8usize],
    pub RefPicSetInterLayer1: [::core::ffi::c_uchar; 8usize],
    pub reserved4: [::core::ffi::c_uint; 12usize],
    pub ScalingList4x4: [[::core::ffi::c_uchar; 16usize]; 6usize],
    pub ScalingList8x8: [[::core::ffi::c_uchar; 64usize]; 6usize],
    pub ScalingList16x16: [[::core::ffi::c_uchar; 64usize]; 6usize],
    pub ScalingList32x32: [[::core::ffi::c_uchar; 64usize]; 2usize],
    pub ScalingListDCCoeff16x16: [::core::ffi::c_uchar; 6usize],
    pub ScalingListDCCoeff32x32: [::core::ffi::c_uchar; 2usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _CUVIDVP8PICPARAMS {
    pub width: ::core::ffi::c_int,
    pub height: ::core::ffi::c_int,
    pub first_partition_size: ::core::ffi::c_uint,
    pub LastRefIdx: ::core::ffi::c_uchar,
    pub GoldenRefIdx: ::core::ffi::c_uchar,
    pub AltRefIdx: ::core::ffi::c_uchar,
    pub __bindgen_anon_1: _CUVIDVP8PICPARAMS__bindgen_ty_1,
    pub Reserved1: [::core::ffi::c_uchar; 4usize],
    pub Reserved2: [::core::ffi::c_uint; 3usize],
}
#[repr(C, packed)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1 {
    pub _bitfield_align_1: [u8; 0],
    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDVP9PICPARAMS {
    pub width: ::core::ffi::c_uint,
    pub height: ::core::ffi::c_uint,
    pub LastRefIdx: ::core::ffi::c_uchar,
    pub GoldenRefIdx: ::core::ffi::c_uchar,
    pub AltRefIdx: ::core::ffi::c_uchar,
    pub colorSpace: ::core::ffi::c_uchar,
    pub _bitfield_align_1: [u8; 0],
    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
    pub reserved16Bits: ::core::ffi::c_ushort,
    pub refFrameSignBias: [::core::ffi::c_uchar; 4usize],
    pub bitDepthMinus8Luma: ::core::ffi::c_uchar,
    pub bitDepthMinus8Chroma: ::core::ffi::c_uchar,
    pub loopFilterLevel: ::core::ffi::c_uchar,
    pub loopFilterSharpness: ::core::ffi::c_uchar,
    pub modeRefLfEnabled: ::core::ffi::c_uchar,
    pub log2_tile_columns: ::core::ffi::c_uchar,
    pub log2_tile_rows: ::core::ffi::c_uchar,
    pub _bitfield_align_2: [u8; 0],
    pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>,
    pub segmentFeatureEnable: [[::core::ffi::c_uchar; 4usize]; 8usize],
    pub segmentFeatureData: [[::core::ffi::c_short; 4usize]; 8usize],
    pub mb_segment_tree_probs: [::core::ffi::c_uchar; 7usize],
    pub segment_pred_probs: [::core::ffi::c_uchar; 3usize],
    pub reservedSegment16Bits: [::core::ffi::c_uchar; 2usize],
    pub qpYAc: ::core::ffi::c_int,
    pub qpYDc: ::core::ffi::c_int,
    pub qpChDc: ::core::ffi::c_int,
    pub qpChAc: ::core::ffi::c_int,
    pub activeRefIdx: [::core::ffi::c_uint; 3usize],
    pub resetFrameContext: ::core::ffi::c_uint,
    pub mcomp_filter_type: ::core::ffi::c_uint,
    pub mbRefLfDelta: [::core::ffi::c_uint; 4usize],
    pub mbModeLfDelta: [::core::ffi::c_uint; 2usize],
    pub frameTagSize: ::core::ffi::c_uint,
    pub offsetToDctParts: ::core::ffi::c_uint,
    pub reserved128Bits: [::core::ffi::c_uint; 4usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDAV1PICPARAMS {
    pub width: ::core::ffi::c_uint,
    pub height: ::core::ffi::c_uint,
    pub frame_offset: ::core::ffi::c_uint,
    pub decodePicIdx: ::core::ffi::c_int,
    pub _bitfield_align_1: [u16; 0],
    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 12usize]>,
    pub tile_widths: [::core::ffi::c_ushort; 64usize],
    pub tile_heights: [::core::ffi::c_ushort; 64usize],
    pub _bitfield_align_2: [u8; 0],
    pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>,
    pub cdef_y_strength: [::core::ffi::c_uchar; 8usize],
    pub cdef_uv_strength: [::core::ffi::c_uchar; 8usize],
    pub _bitfield_align_3: [u8; 0],
    pub _bitfield_3: __BindgenBitfieldUnit<[u8; 1usize]>,
    pub base_qindex: ::core::ffi::c_uchar,
    pub qp_y_dc_delta_q: ::core::ffi::c_char,
    pub qp_u_dc_delta_q: ::core::ffi::c_char,
    pub qp_v_dc_delta_q: ::core::ffi::c_char,
    pub qp_u_ac_delta_q: ::core::ffi::c_char,
    pub qp_v_ac_delta_q: ::core::ffi::c_char,
    pub qm_y: ::core::ffi::c_uchar,
    pub qm_u: ::core::ffi::c_uchar,
    pub qm_v: ::core::ffi::c_uchar,
    pub _bitfield_align_4: [u8; 0],
    pub _bitfield_4: __BindgenBitfieldUnit<[u8; 1usize]>,
    pub segmentation_feature_data: [[::core::ffi::c_short; 8usize]; 8usize],
    pub segmentation_feature_mask: [::core::ffi::c_uchar; 8usize],
    pub loop_filter_level: [::core::ffi::c_uchar; 2usize],
    pub loop_filter_level_u: ::core::ffi::c_uchar,
    pub loop_filter_level_v: ::core::ffi::c_uchar,
    pub loop_filter_sharpness: ::core::ffi::c_uchar,
    pub loop_filter_ref_deltas: [::core::ffi::c_char; 8usize],
    pub loop_filter_mode_deltas: [::core::ffi::c_char; 2usize],
    pub _bitfield_align_5: [u8; 0],
    pub _bitfield_5: __BindgenBitfieldUnit<[u8; 1usize]>,
    pub lr_unit_size: [::core::ffi::c_uchar; 3usize],
    pub lr_type: [::core::ffi::c_uchar; 3usize],
    pub primary_ref_frame: ::core::ffi::c_uchar,
    pub ref_frame_map: [::core::ffi::c_uchar; 8usize],
    pub _bitfield_align_6: [u8; 0],
    pub _bitfield_6: __BindgenBitfieldUnit<[u8; 1usize]>,
    pub reserved5_32bits: [::core::ffi::c_uchar; 4usize],
    pub ref_frame: [_CUVIDAV1PICPARAMS__bindgen_ty_1; 7usize],
    pub global_motion: [_CUVIDAV1PICPARAMS__bindgen_ty_2; 7usize],
    pub _bitfield_align_7: [u8; 0],
    pub _bitfield_7: __BindgenBitfieldUnit<[u8; 2usize]>,
    pub num_y_points: ::core::ffi::c_uchar,
    pub scaling_points_y: [[::core::ffi::c_uchar; 2usize]; 14usize],
    pub num_cb_points: ::core::ffi::c_uchar,
    pub scaling_points_cb: [[::core::ffi::c_uchar; 2usize]; 10usize],
    pub num_cr_points: ::core::ffi::c_uchar,
    pub scaling_points_cr: [[::core::ffi::c_uchar; 2usize]; 10usize],
    pub reserved7_8bits: ::core::ffi::c_uchar,
    pub random_seed: ::core::ffi::c_ushort,
    pub ar_coeffs_y: [::core::ffi::c_short; 24usize],
    pub ar_coeffs_cb: [::core::ffi::c_short; 25usize],
    pub ar_coeffs_cr: [::core::ffi::c_short; 25usize],
    pub cb_mult: ::core::ffi::c_uchar,
    pub cb_luma_mult: ::core::ffi::c_uchar,
    pub cb_offset: ::core::ffi::c_short,
    pub cr_mult: ::core::ffi::c_uchar,
    pub cr_luma_mult: ::core::ffi::c_uchar,
    pub cr_offset: ::core::ffi::c_short,
    pub reserved: [::core::ffi::c_int; 7usize],
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDAV1PICPARAMS__bindgen_ty_1 {
    pub width: ::core::ffi::c_uint,
    pub height: ::core::ffi::c_uint,
    pub index: ::core::ffi::c_uchar,
    pub reserved24Bits: [::core::ffi::c_uchar; 3usize],
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDAV1PICPARAMS__bindgen_ty_2 {
    pub _bitfield_align_1: [u8; 0],
    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
    pub reserved24Bits: [::core::ffi::c_char; 3usize],
    pub wmmat: [::core::ffi::c_int; 6usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _CUVIDPICPARAMS {
    pub PicWidthInMbs: ::core::ffi::c_int,
    pub FrameHeightInMbs: ::core::ffi::c_int,
    pub CurrPicIdx: ::core::ffi::c_int,
    pub field_pic_flag: ::core::ffi::c_int,
    pub bottom_field_flag: ::core::ffi::c_int,
    pub second_field: ::core::ffi::c_int,
    pub nBitstreamDataLen: ::core::ffi::c_uint,
    pub pBitstreamData: *const ::core::ffi::c_uchar,
    pub nNumSlices: ::core::ffi::c_uint,
    pub pSliceDataOffsets: *const ::core::ffi::c_uint,
    pub ref_pic_flag: ::core::ffi::c_int,
    pub intra_pic_flag: ::core::ffi::c_int,
    pub Reserved: [::core::ffi::c_uint; 30usize],
    pub CodecSpecific: _CUVIDPICPARAMS__bindgen_ty_1,
}
#[repr(C)]
pub struct _CUVIDPROCPARAMS {
    pub progressive_frame: ::core::ffi::c_int,
    pub second_field: ::core::ffi::c_int,
    pub top_field_first: ::core::ffi::c_int,
    pub unpaired_field: ::core::ffi::c_int,
    pub reserved_flags: ::core::ffi::c_uint,
    pub reserved_zero: ::core::ffi::c_uint,
    pub raw_input_dptr: ::core::ffi::c_ulonglong,
    pub raw_input_pitch: ::core::ffi::c_uint,
    pub raw_input_format: ::core::ffi::c_uint,
    pub raw_output_dptr: ::core::ffi::c_ulonglong,
    pub raw_output_pitch: ::core::ffi::c_uint,
    pub Reserved1: ::core::ffi::c_uint,
    pub output_stream: CUstream,
    pub Reserved: [::core::ffi::c_uint; 46usize],
    pub histogram_dptr: *mut ::core::ffi::c_ulonglong,
    pub Reserved2: [*mut ::core::ffi::c_void; 1usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDGETDECODESTATUS {
    pub decodeStatus: cuvidDecodeStatus,
    pub reserved: [::core::ffi::c_uint; 31usize],
    pub pReserved: [*mut ::core::ffi::c_void; 8usize],
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDRECONFIGUREDECODERINFO {
    pub ulWidth: ::core::ffi::c_uint,
    pub ulHeight: ::core::ffi::c_uint,
    pub ulTargetWidth: ::core::ffi::c_uint,
    pub ulTargetHeight: ::core::ffi::c_uint,
    pub ulNumDecodeSurfaces: ::core::ffi::c_uint,
    pub reserved1: [::core::ffi::c_uint; 12usize],
    pub display_area: _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1,
    pub target_rect: _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2,
    pub reserved2: [::core::ffi::c_uint; 11usize],
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1 {
    pub left: ::core::ffi::c_short,
    pub top: ::core::ffi::c_short,
    pub right: ::core::ffi::c_short,
    pub bottom: ::core::ffi::c_short,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct _CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2 {
    pub left: ::core::ffi::c_short,
    pub top: ::core::ffi::c_short,
    pub right: ::core::ffi::c_short,
    pub bottom: ::core::ffi::c_short,
}
#[test]
fn bindgen_test_layout__CUVIDDECODECAPS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECAPS> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDDECODECAPS>(),
        88usize,
        concat!("Size of: ", stringify!(_CUVIDDECODECAPS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDDECODECAPS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDDECODECAPS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).eCodecType) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(eCodecType)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).eChromaFormat) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(eChromaFormat)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nBitDepthMinus8) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nBitDepthMinus8)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(reserved1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bIsSupported) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(bIsSupported)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nNumNVDECs) as usize - ptr as usize },
        25usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nNumNVDECs)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nOutputFormatMask) as usize - ptr as usize },
        26usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nOutputFormatMask)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nMaxWidth) as usize - ptr as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nMaxWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nMaxHeight) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nMaxHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nMaxMBCount) as usize - ptr as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nMaxMBCount)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nMinWidth) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nMinWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nMinHeight) as usize - ptr as usize },
        42usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nMinHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bIsHistogramSupported) as usize - ptr as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(bIsHistogramSupported)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nCounterBitDepth) as usize - ptr as usize },
        45usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nCounterBitDepth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nMaxHistogramBins) as usize - ptr as usize },
        46usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(nMaxHistogramBins)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECAPS),
            "::",
            stringify!(reserved3)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDDECODECREATEINFO__bindgen_ty_1() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECREATEINFO__bindgen_ty_1> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDDECODECREATEINFO__bindgen_ty_1>(),
        8usize,
        concat!(
            "Size of: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1)
        )
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDDECODECREATEINFO__bindgen_ty_1>(),
        2usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
            "::",
            stringify!(left)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
            "::",
            stringify!(right)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
        6usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_1),
            "::",
            stringify!(bottom)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDDECODECREATEINFO__bindgen_ty_2() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECREATEINFO__bindgen_ty_2> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDDECODECREATEINFO__bindgen_ty_2>(),
        8usize,
        concat!(
            "Size of: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2)
        )
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDDECODECREATEINFO__bindgen_ty_2>(),
        2usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
            "::",
            stringify!(left)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
            "::",
            stringify!(right)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
        6usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO__bindgen_ty_2),
            "::",
            stringify!(bottom)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDDECODECREATEINFO() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDDECODECREATEINFO> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDDECODECREATEINFO>(),
        112usize,
        concat!("Size of: ", stringify!(_CUVIDDECODECREATEINFO))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDDECODECREATEINFO>(),
        8usize,
        concat!("Alignment of ", stringify!(_CUVIDDECODECREATEINFO))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulWidth) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulHeight) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulNumDecodeSurfaces) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulNumDecodeSurfaces)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).CodecType) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(CodecType)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ChromaFormat) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ChromaFormat)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulCreationFlags) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulCreationFlags)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bitDepthMinus8) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(bitDepthMinus8)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulIntraDecodeOnly) as usize - ptr as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulIntraDecodeOnly)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulMaxWidth) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulMaxWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulMaxHeight) as usize - ptr as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulMaxHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved1) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(Reserved1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).display_area) as usize - ptr as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(display_area)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).OutputFormat) as usize - ptr as usize },
        52usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(OutputFormat)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).DeinterlaceMode) as usize - ptr as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(DeinterlaceMode)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetWidth) as usize - ptr as usize },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulTargetWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetHeight) as usize - ptr as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulTargetHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulNumOutputSurfaces) as usize - ptr as usize },
        68usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(ulNumOutputSurfaces)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vidLock) as usize - ptr as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(vidLock)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).target_rect) as usize - ptr as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(target_rect)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).enableHistogram) as usize - ptr as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(enableHistogram)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved2) as usize - ptr as usize },
        92usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDDECODECREATEINFO),
            "::",
            stringify!(Reserved2)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDH264DPBENTRY() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264DPBENTRY> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDH264DPBENTRY>(),
        28usize,
        concat!("Size of: ", stringify!(_CUVIDH264DPBENTRY))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDH264DPBENTRY>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDH264DPBENTRY))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).PicIdx) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264DPBENTRY),
            "::",
            stringify!(PicIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).FrameIdx) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264DPBENTRY),
            "::",
            stringify!(FrameIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).is_long_term) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264DPBENTRY),
            "::",
            stringify!(is_long_term)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).not_existing) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264DPBENTRY),
            "::",
            stringify!(not_existing)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).used_for_reference) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264DPBENTRY),
            "::",
            stringify!(used_for_reference)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).FieldOrderCnt) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264DPBENTRY),
            "::",
            stringify!(FieldOrderCnt)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDH264MVCEXT() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264MVCEXT> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDH264MVCEXT>(),
        140usize,
        concat!("Size of: ", stringify!(_CUVIDH264MVCEXT))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDH264MVCEXT>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDH264MVCEXT))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_views_minus1) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(num_views_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).view_id) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(view_id)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).inter_view_flag) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(inter_view_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_inter_view_refs_l0) as usize - ptr as usize },
        9usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(num_inter_view_refs_l0)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_inter_view_refs_l1) as usize - ptr as usize },
        10usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(num_inter_view_refs_l1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).MVCReserved8Bits) as usize - ptr as usize },
        11usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(MVCReserved8Bits)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).InterViewRefsL0) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(InterViewRefsL0)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).InterViewRefsL1) as usize - ptr as usize },
        76usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264MVCEXT),
            "::",
            stringify!(InterViewRefsL1)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDH264SVCEXT() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264SVCEXT> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDH264SVCEXT>(),
        48usize,
        concat!("Size of: ", stringify!(_CUVIDH264SVCEXT))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDH264SVCEXT>(),
        8usize,
        concat!("Alignment of ", stringify!(_CUVIDH264SVCEXT))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).profile_idc) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(profile_idc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).level_idc) as usize - ptr as usize },
        1usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(level_idc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).DQId) as usize - ptr as usize },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(DQId)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).DQIdMax) as usize - ptr as usize },
        3usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(DQIdMax)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).disable_inter_layer_deblocking_filter_idc) as usize
                - ptr as usize
        },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(disable_inter_layer_deblocking_filter_idc)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).ref_layer_chroma_phase_y_plus1) as usize - ptr as usize
        },
        5usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(ref_layer_chroma_phase_y_plus1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).inter_layer_slice_alpha_c0_offset_div2) as usize
                - ptr as usize
        },
        6usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(inter_layer_slice_alpha_c0_offset_div2)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).inter_layer_slice_beta_offset_div2) as usize - ptr as usize
        },
        7usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(inter_layer_slice_beta_offset_div2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).DPBEntryValidFlag) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(DPBEntryValidFlag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).inter_layer_deblocking_filter_control_present_flag)
                as usize
                - ptr as usize
        },
        10usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(inter_layer_deblocking_filter_control_present_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).extended_spatial_scalability_idc) as usize - ptr as usize
        },
        11usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(extended_spatial_scalability_idc)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).adaptive_tcoeff_level_prediction_flag) as usize
                - ptr as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(adaptive_tcoeff_level_prediction_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).slice_header_restriction_flag) as usize - ptr as usize
        },
        13usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(slice_header_restriction_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).chroma_phase_x_plus1_flag) as usize - ptr as usize },
        14usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(chroma_phase_x_plus1_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).chroma_phase_y_plus1) as usize - ptr as usize },
        15usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(chroma_phase_y_plus1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).tcoeff_level_prediction_flag) as usize - ptr as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(tcoeff_level_prediction_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).constrained_intra_resampling_flag) as usize - ptr as usize
        },
        17usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(constrained_intra_resampling_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).ref_layer_chroma_phase_x_plus1_flag) as usize
                - ptr as usize
        },
        18usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(ref_layer_chroma_phase_x_plus1_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).store_ref_base_pic_flag) as usize - ptr as usize },
        19usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(store_ref_base_pic_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved8BitsA) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(Reserved8BitsA)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved8BitsB) as usize - ptr as usize },
        21usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(Reserved8BitsB)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_left_offset) as usize - ptr as usize
        },
        22usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(scaled_ref_layer_left_offset)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_top_offset) as usize - ptr as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(scaled_ref_layer_top_offset)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_right_offset) as usize - ptr as usize
        },
        26usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(scaled_ref_layer_right_offset)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).scaled_ref_layer_bottom_offset) as usize - ptr as usize
        },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(scaled_ref_layer_bottom_offset)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved16Bits) as usize - ptr as usize },
        30usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(Reserved16Bits)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pNextLayer) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(pNextLayer)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bRefBaseLayer) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264SVCEXT),
            "::",
            stringify!(bRefBaseLayer)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDH264PICPARAMS__bindgen_ty_1() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264PICPARAMS__bindgen_ty_1> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDH264PICPARAMS__bindgen_ty_1>(),
        8usize,
        concat!("Size of: ", stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDH264PICPARAMS__bindgen_ty_1>(),
        8usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).slice_group_map_addr) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(slice_group_map_addr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pMb2SliceGroupMap) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(pMb2SliceGroupMap)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDH264PICPARAMS__bindgen_ty_2() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264PICPARAMS__bindgen_ty_2> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDH264PICPARAMS__bindgen_ty_2>(),
        144usize,
        concat!("Size of: ", stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDH264PICPARAMS__bindgen_ty_2>(),
        8usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).mvcext) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2),
            "::",
            stringify!(mvcext)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).svcext) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS__bindgen_ty_2),
            "::",
            stringify!(svcext)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDH264PICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDH264PICPARAMS> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDH264PICPARAMS>(),
        984usize,
        concat!("Size of: ", stringify!(_CUVIDH264PICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDH264PICPARAMS>(),
        8usize,
        concat!("Alignment of ", stringify!(_CUVIDH264PICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).log2_max_frame_num_minus4) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(log2_max_frame_num_minus4)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pic_order_cnt_type) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(pic_order_cnt_type)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_max_pic_order_cnt_lsb_minus4) as usize - ptr as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(log2_max_pic_order_cnt_lsb_minus4)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).delta_pic_order_always_zero_flag) as usize - ptr as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(delta_pic_order_always_zero_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).frame_mbs_only_flag) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(frame_mbs_only_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).direct_8x8_inference_flag) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(direct_8x8_inference_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_ref_frames) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(num_ref_frames)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).residual_colour_transform_flag) as usize - ptr as usize
        },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(residual_colour_transform_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_luma_minus8) as usize - ptr as usize },
        29usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(bit_depth_luma_minus8)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_chroma_minus8) as usize - ptr as usize },
        30usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(bit_depth_chroma_minus8)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).qpprime_y_zero_transform_bypass_flag) as usize
                - ptr as usize
        },
        31usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(qpprime_y_zero_transform_bypass_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).entropy_coding_mode_flag) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(entropy_coding_mode_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pic_order_present_flag) as usize - ptr as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(pic_order_present_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).num_ref_idx_l0_active_minus1) as usize - ptr as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(num_ref_idx_l0_active_minus1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).num_ref_idx_l1_active_minus1) as usize - ptr as usize
        },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(num_ref_idx_l1_active_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).weighted_pred_flag) as usize - ptr as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(weighted_pred_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).weighted_bipred_idc) as usize - ptr as usize },
        52usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(weighted_bipred_idc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pic_init_qp_minus26) as usize - ptr as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(pic_init_qp_minus26)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).deblocking_filter_control_present_flag) as usize
                - ptr as usize
        },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(deblocking_filter_control_present_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).redundant_pic_cnt_present_flag) as usize - ptr as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(redundant_pic_cnt_present_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).transform_8x8_mode_flag) as usize - ptr as usize },
        68usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(transform_8x8_mode_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).MbaffFrameFlag) as usize - ptr as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(MbaffFrameFlag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).constrained_intra_pred_flag) as usize - ptr as usize
        },
        76usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(constrained_intra_pred_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).chroma_qp_index_offset) as usize - ptr as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(chroma_qp_index_offset)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).second_chroma_qp_index_offset) as usize - ptr as usize
        },
        84usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(second_chroma_qp_index_offset)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ref_pic_flag) as usize - ptr as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(ref_pic_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).frame_num) as usize - ptr as usize },
        92usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(frame_num)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).CurrFieldOrderCnt) as usize - ptr as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(CurrFieldOrderCnt)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).dpb) as usize - ptr as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(dpb)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).WeightScale4x4) as usize - ptr as usize },
        552usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(WeightScale4x4)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).WeightScale8x8) as usize - ptr as usize },
        648usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(WeightScale8x8)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).fmo_aso_enable) as usize - ptr as usize },
        776usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(fmo_aso_enable)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_slice_groups_minus1) as usize - ptr as usize },
        777usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(num_slice_groups_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).slice_group_map_type) as usize - ptr as usize },
        778usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(slice_group_map_type)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pic_init_qs_minus26) as usize - ptr as usize },
        779usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(pic_init_qs_minus26)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).slice_group_change_rate_minus1) as usize - ptr as usize
        },
        780usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(slice_group_change_rate_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).fmo) as usize - ptr as usize },
        784usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(fmo)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
        792usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDH264PICPARAMS),
            "::",
            stringify!(Reserved)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDMPEG2PICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDMPEG2PICPARAMS> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDMPEG2PICPARAMS>(),
        192usize,
        concat!("Size of: ", stringify!(_CUVIDMPEG2PICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDMPEG2PICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDMPEG2PICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ForwardRefIdx) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(ForwardRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).BackwardRefIdx) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(BackwardRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).picture_coding_type) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(picture_coding_type)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).full_pel_forward_vector) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(full_pel_forward_vector)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).full_pel_backward_vector) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(full_pel_backward_vector)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).f_code) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(f_code)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).intra_dc_precision) as usize - ptr as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(intra_dc_precision)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).frame_pred_frame_dct) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(frame_pred_frame_dct)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).concealment_motion_vectors) as usize - ptr as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(concealment_motion_vectors)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).q_scale_type) as usize - ptr as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(q_scale_type)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).intra_vlc_format) as usize - ptr as usize },
        52usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(intra_vlc_format)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).alternate_scan) as usize - ptr as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(alternate_scan)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).top_field_first) as usize - ptr as usize },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(top_field_first)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixIntra) as usize - ptr as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(QuantMatrixIntra)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixInter) as usize - ptr as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG2PICPARAMS),
            "::",
            stringify!(QuantMatrixInter)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDMPEG4PICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDMPEG4PICPARAMS> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDMPEG4PICPARAMS>(),
        220usize,
        concat!("Size of: ", stringify!(_CUVIDMPEG4PICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDMPEG4PICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDMPEG4PICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ForwardRefIdx) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(ForwardRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).BackwardRefIdx) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(BackwardRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).video_object_layer_width) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(video_object_layer_width)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).video_object_layer_height) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(video_object_layer_height)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).vop_time_increment_bitcount) as usize - ptr as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(vop_time_increment_bitcount)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).top_field_first) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(top_field_first)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).resync_marker_disable) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(resync_marker_disable)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).quant_type) as usize - ptr as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(quant_type)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).quarter_sample) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(quarter_sample)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).short_video_header) as usize - ptr as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(short_video_header)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).divx_flags) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(divx_flags)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vop_coding_type) as usize - ptr as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(vop_coding_type)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vop_coded) as usize - ptr as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(vop_coded)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vop_rounding_type) as usize - ptr as usize },
        52usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(vop_rounding_type)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).alternate_vertical_scan_flag) as usize - ptr as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(alternate_vertical_scan_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).interlaced) as usize - ptr as usize },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(interlaced)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vop_fcode_forward) as usize - ptr as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(vop_fcode_forward)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vop_fcode_backward) as usize - ptr as usize },
        68usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(vop_fcode_backward)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).trd) as usize - ptr as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(trd)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).trb) as usize - ptr as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(trb)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixIntra) as usize - ptr as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(QuantMatrixIntra)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).QuantMatrixInter) as usize - ptr as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(QuantMatrixInter)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).gmc_enabled) as usize - ptr as usize },
        216usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDMPEG4PICPARAMS),
            "::",
            stringify!(gmc_enabled)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDVC1PICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVC1PICPARAMS> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDVC1PICPARAMS>(),
        132usize,
        concat!("Size of: ", stringify!(_CUVIDVC1PICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDVC1PICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDVC1PICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ForwardRefIdx) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(ForwardRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).BackwardRefIdx) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(BackwardRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).FrameWidth) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(FrameWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).FrameHeight) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(FrameHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).intra_pic_flag) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(intra_pic_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ref_pic_flag) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(ref_pic_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).progressive_fcm) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(progressive_fcm)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).profile) as usize - ptr as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(profile)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).postprocflag) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(postprocflag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pulldown) as usize - ptr as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(pulldown)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).interlace) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(interlace)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).tfcntrflag) as usize - ptr as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(tfcntrflag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).finterpflag) as usize - ptr as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(finterpflag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).psf) as usize - ptr as usize },
        52usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(psf)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).multires) as usize - ptr as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(multires)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).syncmarker) as usize - ptr as usize },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(syncmarker)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).rangered) as usize - ptr as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(rangered)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).maxbframes) as usize - ptr as usize },
        68usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(maxbframes)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).panscan_flag) as usize - ptr as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(panscan_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).refdist_flag) as usize - ptr as usize },
        76usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(refdist_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).extended_mv) as usize - ptr as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(extended_mv)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).dquant) as usize - ptr as usize },
        84usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(dquant)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vstransform) as usize - ptr as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(vstransform)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loopfilter) as usize - ptr as usize },
        92usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(loopfilter)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).fastuvmc) as usize - ptr as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(fastuvmc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).overlap) as usize - ptr as usize },
        100usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(overlap)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).quantizer) as usize - ptr as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(quantizer)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).extended_dmv) as usize - ptr as usize },
        108usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(extended_dmv)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).range_mapy_flag) as usize - ptr as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(range_mapy_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).range_mapy) as usize - ptr as usize },
        116usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(range_mapy)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).range_mapuv_flag) as usize - ptr as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(range_mapuv_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).range_mapuv) as usize - ptr as usize },
        124usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(range_mapuv)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).rangeredfrm) as usize - ptr as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVC1PICPARAMS),
            "::",
            stringify!(rangeredfrm)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDJPEGPICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDJPEGPICPARAMS> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDJPEGPICPARAMS>(),
        4usize,
        concat!("Size of: ", stringify!(_CUVIDJPEGPICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDJPEGPICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDJPEGPICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDJPEGPICPARAMS),
            "::",
            stringify!(Reserved)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDHEVCPICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDHEVCPICPARAMS> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDHEVCPICPARAMS>(),
        1484usize,
        concat!("Size of: ", stringify!(_CUVIDHEVCPICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDHEVCPICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDHEVCPICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pic_width_in_luma_samples) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pic_width_in_luma_samples)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pic_height_in_luma_samples) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pic_height_in_luma_samples)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_min_luma_coding_block_size_minus3) as usize
                - ptr as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_min_luma_coding_block_size_minus3)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_diff_max_min_luma_coding_block_size) as usize
                - ptr as usize
        },
        9usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_diff_max_min_luma_coding_block_size)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_min_transform_block_size_minus2) as usize
                - ptr as usize
        },
        10usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_min_transform_block_size_minus2)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_diff_max_min_transform_block_size) as usize
                - ptr as usize
        },
        11usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_diff_max_min_transform_block_size)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pcm_enabled_flag) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pcm_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_min_pcm_luma_coding_block_size_minus3) as usize
                - ptr as usize
        },
        13usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_min_pcm_luma_coding_block_size_minus3)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_diff_max_min_pcm_luma_coding_block_size) as usize
                - ptr as usize
        },
        14usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_diff_max_min_pcm_luma_coding_block_size)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).pcm_sample_bit_depth_luma_minus1) as usize - ptr as usize
        },
        15usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pcm_sample_bit_depth_luma_minus1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).pcm_sample_bit_depth_chroma_minus1) as usize - ptr as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pcm_sample_bit_depth_chroma_minus1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).pcm_loop_filter_disabled_flag) as usize - ptr as usize
        },
        17usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pcm_loop_filter_disabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).strong_intra_smoothing_enabled_flag) as usize
                - ptr as usize
        },
        18usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(strong_intra_smoothing_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).max_transform_hierarchy_depth_intra) as usize
                - ptr as usize
        },
        19usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(max_transform_hierarchy_depth_intra)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).max_transform_hierarchy_depth_inter) as usize
                - ptr as usize
        },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(max_transform_hierarchy_depth_inter)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).amp_enabled_flag) as usize - ptr as usize },
        21usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(amp_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).separate_colour_plane_flag) as usize - ptr as usize },
        22usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(separate_colour_plane_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_max_pic_order_cnt_lsb_minus4) as usize - ptr as usize
        },
        23usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_max_pic_order_cnt_lsb_minus4)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).num_short_term_ref_pic_sets) as usize - ptr as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(num_short_term_ref_pic_sets)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).long_term_ref_pics_present_flag) as usize - ptr as usize
        },
        25usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(long_term_ref_pics_present_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_long_term_ref_pics_sps) as usize - ptr as usize },
        26usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(num_long_term_ref_pics_sps)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).sps_temporal_mvp_enabled_flag) as usize - ptr as usize
        },
        27usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(sps_temporal_mvp_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).sample_adaptive_offset_enabled_flag) as usize
                - ptr as usize
        },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(sample_adaptive_offset_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).scaling_list_enable_flag) as usize - ptr as usize },
        29usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(scaling_list_enable_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).IrapPicFlag) as usize - ptr as usize },
        30usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(IrapPicFlag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).IdrPicFlag) as usize - ptr as usize },
        31usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(IdrPicFlag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_luma_minus8) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(bit_depth_luma_minus8)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bit_depth_chroma_minus8) as usize - ptr as usize },
        33usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(bit_depth_chroma_minus8)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_max_transform_skip_block_size_minus2) as usize
                - ptr as usize
        },
        34usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_max_transform_skip_block_size_minus2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).log2_sao_offset_scale_luma) as usize - ptr as usize },
        35usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_sao_offset_scale_luma)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_sao_offset_scale_chroma) as usize - ptr as usize
        },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_sao_offset_scale_chroma)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).high_precision_offsets_enabled_flag) as usize
                - ptr as usize
        },
        37usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(high_precision_offsets_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize },
        38usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(reserved1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).dependent_slice_segments_enabled_flag) as usize
                - ptr as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(dependent_slice_segments_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).slice_segment_header_extension_present_flag) as usize
                - ptr as usize
        },
        49usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(slice_segment_header_extension_present_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).sign_data_hiding_enabled_flag) as usize - ptr as usize
        },
        50usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(sign_data_hiding_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cu_qp_delta_enabled_flag) as usize - ptr as usize },
        51usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(cu_qp_delta_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).diff_cu_qp_delta_depth) as usize - ptr as usize },
        52usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(diff_cu_qp_delta_depth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).init_qp_minus26) as usize - ptr as usize },
        53usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(init_qp_minus26)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pps_cb_qp_offset) as usize - ptr as usize },
        54usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pps_cb_qp_offset)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pps_cr_qp_offset) as usize - ptr as usize },
        55usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pps_cr_qp_offset)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).constrained_intra_pred_flag) as usize - ptr as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(constrained_intra_pred_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).weighted_pred_flag) as usize - ptr as usize },
        57usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(weighted_pred_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).weighted_bipred_flag) as usize - ptr as usize },
        58usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(weighted_bipred_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).transform_skip_enabled_flag) as usize - ptr as usize
        },
        59usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(transform_skip_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).transquant_bypass_enabled_flag) as usize - ptr as usize
        },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(transquant_bypass_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).entropy_coding_sync_enabled_flag) as usize - ptr as usize
        },
        61usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(entropy_coding_sync_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).log2_parallel_merge_level_minus2) as usize - ptr as usize
        },
        62usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(log2_parallel_merge_level_minus2)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).num_extra_slice_header_bits) as usize - ptr as usize
        },
        63usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(num_extra_slice_header_bits)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).loop_filter_across_tiles_enabled_flag) as usize
                - ptr as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(loop_filter_across_tiles_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).loop_filter_across_slices_enabled_flag) as usize
                - ptr as usize
        },
        65usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(loop_filter_across_slices_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).output_flag_present_flag) as usize - ptr as usize },
        66usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(output_flag_present_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).num_ref_idx_l0_default_active_minus1) as usize
                - ptr as usize
        },
        67usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(num_ref_idx_l0_default_active_minus1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).num_ref_idx_l1_default_active_minus1) as usize
                - ptr as usize
        },
        68usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(num_ref_idx_l1_default_active_minus1)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).lists_modification_present_flag) as usize - ptr as usize
        },
        69usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(lists_modification_present_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cabac_init_present_flag) as usize - ptr as usize },
        70usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(cabac_init_present_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).pps_slice_chroma_qp_offsets_present_flag) as usize
                - ptr as usize
        },
        71usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pps_slice_chroma_qp_offsets_present_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).deblocking_filter_override_enabled_flag) as usize
                - ptr as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(deblocking_filter_override_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).pps_deblocking_filter_disabled_flag) as usize
                - ptr as usize
        },
        73usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pps_deblocking_filter_disabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pps_beta_offset_div2) as usize - ptr as usize },
        74usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pps_beta_offset_div2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pps_tc_offset_div2) as usize - ptr as usize },
        75usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pps_tc_offset_div2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).tiles_enabled_flag) as usize - ptr as usize },
        76usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(tiles_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).uniform_spacing_flag) as usize - ptr as usize },
        77usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(uniform_spacing_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_tile_columns_minus1) as usize - ptr as usize },
        78usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(num_tile_columns_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_tile_rows_minus1) as usize - ptr as usize },
        79usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(num_tile_rows_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).column_width_minus1) as usize - ptr as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(column_width_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).row_height_minus1) as usize - ptr as usize },
        122usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(row_height_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).sps_range_extension_flag) as usize - ptr as usize },
        164usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(sps_range_extension_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).transform_skip_rotation_enabled_flag) as usize
                - ptr as usize
        },
        165usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(transform_skip_rotation_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).transform_skip_context_enabled_flag) as usize
                - ptr as usize
        },
        166usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(transform_skip_context_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).implicit_rdpcm_enabled_flag) as usize - ptr as usize
        },
        167usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(implicit_rdpcm_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).explicit_rdpcm_enabled_flag) as usize - ptr as usize
        },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(explicit_rdpcm_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).extended_precision_processing_flag) as usize - ptr as usize
        },
        169usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(extended_precision_processing_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).intra_smoothing_disabled_flag) as usize - ptr as usize
        },
        170usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(intra_smoothing_disabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).persistent_rice_adaptation_enabled_flag) as usize
                - ptr as usize
        },
        171usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(persistent_rice_adaptation_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).cabac_bypass_alignment_enabled_flag) as usize
                - ptr as usize
        },
        172usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(cabac_bypass_alignment_enabled_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pps_range_extension_flag) as usize - ptr as usize },
        173usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(pps_range_extension_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).cross_component_prediction_enabled_flag) as usize
                - ptr as usize
        },
        174usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(cross_component_prediction_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).chroma_qp_offset_list_enabled_flag) as usize - ptr as usize
        },
        175usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(chroma_qp_offset_list_enabled_flag)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).diff_cu_chroma_qp_offset_depth) as usize - ptr as usize
        },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(diff_cu_chroma_qp_offset_depth)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).chroma_qp_offset_list_len_minus1) as usize - ptr as usize
        },
        177usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(chroma_qp_offset_list_len_minus1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cb_qp_offset_list) as usize - ptr as usize },
        178usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(cb_qp_offset_list)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cr_qp_offset_list) as usize - ptr as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(cr_qp_offset_list)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize },
        190usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(reserved2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(reserved3)
        )
    );
    assert_eq!(
        unsafe {
            ::core::ptr::addr_of!((*ptr).NumBitsForShortTermRPSInSlice) as usize - ptr as usize
        },
        224usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(NumBitsForShortTermRPSInSlice)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).NumDeltaPocsOfRefRpsIdx) as usize - ptr as usize },
        228usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(NumDeltaPocsOfRefRpsIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).NumPocTotalCurr) as usize - ptr as usize },
        232usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(NumPocTotalCurr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).NumPocStCurrBefore) as usize - ptr as usize },
        236usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(NumPocStCurrBefore)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).NumPocStCurrAfter) as usize - ptr as usize },
        240usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(NumPocStCurrAfter)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).NumPocLtCurr) as usize - ptr as usize },
        244usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(NumPocLtCurr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).CurrPicOrderCntVal) as usize - ptr as usize },
        248usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(CurrPicOrderCntVal)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).RefPicIdx) as usize - ptr as usize },
        252usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(RefPicIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).PicOrderCntVal) as usize - ptr as usize },
        316usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(PicOrderCntVal)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).IsLongTerm) as usize - ptr as usize },
        380usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(IsLongTerm)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetStCurrBefore) as usize - ptr as usize },
        396usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(RefPicSetStCurrBefore)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetStCurrAfter) as usize - ptr as usize },
        404usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(RefPicSetStCurrAfter)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetLtCurr) as usize - ptr as usize },
        412usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(RefPicSetLtCurr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetInterLayer0) as usize - ptr as usize },
        420usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(RefPicSetInterLayer0)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).RefPicSetInterLayer1) as usize - ptr as usize },
        428usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(RefPicSetInterLayer1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize },
        436usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(reserved4)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList4x4) as usize - ptr as usize },
        484usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(ScalingList4x4)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList8x8) as usize - ptr as usize },
        580usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(ScalingList8x8)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList16x16) as usize - ptr as usize },
        964usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(ScalingList16x16)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ScalingList32x32) as usize - ptr as usize },
        1348usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(ScalingList32x32)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ScalingListDCCoeff16x16) as usize - ptr as usize },
        1476usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(ScalingListDCCoeff16x16)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ScalingListDCCoeff32x32) as usize - ptr as usize },
        1482usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDHEVCPICPARAMS),
            "::",
            stringify!(ScalingListDCCoeff32x32)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1() {
    assert_eq!(
        ::core::mem::size_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1>(),
        1usize,
        concat!(
            "Size of: ",
            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1)
        )
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1>(),
        1usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDVP8PICPARAMS__bindgen_ty_1() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVP8PICPARAMS__bindgen_ty_1> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1>(),
        1usize,
        concat!("Size of: ", stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDVP8PICPARAMS__bindgen_ty_1>(),
        1usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vp8_frame_tag) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(vp8_frame_tag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).wFrameTagFlags) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(wFrameTagFlags)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDVP8PICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVP8PICPARAMS> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDVP8PICPARAMS>(),
        32usize,
        concat!("Size of: ", stringify!(_CUVIDVP8PICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDVP8PICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDVP8PICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(width)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(height)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).first_partition_size) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(first_partition_size)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).LastRefIdx) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(LastRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).GoldenRefIdx) as usize - ptr as usize },
        13usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(GoldenRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).AltRefIdx) as usize - ptr as usize },
        14usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(AltRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved1) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(Reserved1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved2) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP8PICPARAMS),
            "::",
            stringify!(Reserved2)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDVP9PICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDVP9PICPARAMS> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDVP9PICPARAMS>(),
        220usize,
        concat!("Size of: ", stringify!(_CUVIDVP9PICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDVP9PICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDVP9PICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(width)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(height)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).LastRefIdx) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(LastRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).GoldenRefIdx) as usize - ptr as usize },
        9usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(GoldenRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).AltRefIdx) as usize - ptr as usize },
        10usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(AltRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).colorSpace) as usize - ptr as usize },
        11usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(colorSpace)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved16Bits) as usize - ptr as usize },
        14usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(reserved16Bits)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).refFrameSignBias) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(refFrameSignBias)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bitDepthMinus8Luma) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(bitDepthMinus8Luma)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bitDepthMinus8Chroma) as usize - ptr as usize },
        21usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(bitDepthMinus8Chroma)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loopFilterLevel) as usize - ptr as usize },
        22usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(loopFilterLevel)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loopFilterSharpness) as usize - ptr as usize },
        23usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(loopFilterSharpness)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).modeRefLfEnabled) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(modeRefLfEnabled)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).log2_tile_columns) as usize - ptr as usize },
        25usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(log2_tile_columns)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).log2_tile_rows) as usize - ptr as usize },
        26usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(log2_tile_rows)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).segmentFeatureEnable) as usize - ptr as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(segmentFeatureEnable)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).segmentFeatureData) as usize - ptr as usize },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(segmentFeatureData)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).mb_segment_tree_probs) as usize - ptr as usize },
        124usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(mb_segment_tree_probs)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).segment_pred_probs) as usize - ptr as usize },
        131usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(segment_pred_probs)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reservedSegment16Bits) as usize - ptr as usize },
        134usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(reservedSegment16Bits)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qpYAc) as usize - ptr as usize },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(qpYAc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qpYDc) as usize - ptr as usize },
        140usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(qpYDc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qpChDc) as usize - ptr as usize },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(qpChDc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qpChAc) as usize - ptr as usize },
        148usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(qpChAc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).activeRefIdx) as usize - ptr as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(activeRefIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).resetFrameContext) as usize - ptr as usize },
        164usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(resetFrameContext)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).mcomp_filter_type) as usize - ptr as usize },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(mcomp_filter_type)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).mbRefLfDelta) as usize - ptr as usize },
        172usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(mbRefLfDelta)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).mbModeLfDelta) as usize - ptr as usize },
        188usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(mbModeLfDelta)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).frameTagSize) as usize - ptr as usize },
        196usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(frameTagSize)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).offsetToDctParts) as usize - ptr as usize },
        200usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(offsetToDctParts)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved128Bits) as usize - ptr as usize },
        204usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDVP9PICPARAMS),
            "::",
            stringify!(reserved128Bits)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDAV1PICPARAMS__bindgen_ty_1() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDAV1PICPARAMS__bindgen_ty_1> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDAV1PICPARAMS__bindgen_ty_1>(),
        12usize,
        concat!("Size of: ", stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDAV1PICPARAMS__bindgen_ty_1>(),
        4usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(width)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(height)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).index) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(index)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved24Bits) as usize - ptr as usize },
        9usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_1),
            "::",
            stringify!(reserved24Bits)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDAV1PICPARAMS__bindgen_ty_2() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDAV1PICPARAMS__bindgen_ty_2> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDAV1PICPARAMS__bindgen_ty_2>(),
        28usize,
        concat!("Size of: ", stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDAV1PICPARAMS__bindgen_ty_2>(),
        4usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved24Bits) as usize - ptr as usize },
        1usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2),
            "::",
            stringify!(reserved24Bits)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).wmmat) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS__bindgen_ty_2),
            "::",
            stringify!(wmmat)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDAV1PICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDAV1PICPARAMS> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDAV1PICPARAMS>(),
        1024usize,
        concat!("Size of: ", stringify!(_CUVIDAV1PICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDAV1PICPARAMS>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDAV1PICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(width)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(height)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).frame_offset) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(frame_offset)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).decodePicIdx) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(decodePicIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).tile_widths) as usize - ptr as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(tile_widths)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).tile_heights) as usize - ptr as usize },
        156usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(tile_heights)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cdef_y_strength) as usize - ptr as usize },
        285usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cdef_y_strength)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cdef_uv_strength) as usize - ptr as usize },
        293usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cdef_uv_strength)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).base_qindex) as usize - ptr as usize },
        302usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(base_qindex)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qp_y_dc_delta_q) as usize - ptr as usize },
        303usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qp_y_dc_delta_q)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qp_u_dc_delta_q) as usize - ptr as usize },
        304usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qp_u_dc_delta_q)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qp_v_dc_delta_q) as usize - ptr as usize },
        305usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qp_v_dc_delta_q)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qp_u_ac_delta_q) as usize - ptr as usize },
        306usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qp_u_ac_delta_q)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qp_v_ac_delta_q) as usize - ptr as usize },
        307usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qp_v_ac_delta_q)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qm_y) as usize - ptr as usize },
        308usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qm_y)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qm_u) as usize - ptr as usize },
        309usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qm_u)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).qm_v) as usize - ptr as usize },
        310usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(qm_v)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).segmentation_feature_data) as usize - ptr as usize },
        312usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(segmentation_feature_data)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).segmentation_feature_mask) as usize - ptr as usize },
        440usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(segmentation_feature_mask)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_level) as usize - ptr as usize },
        448usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(loop_filter_level)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_level_u) as usize - ptr as usize },
        450usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(loop_filter_level_u)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_level_v) as usize - ptr as usize },
        451usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(loop_filter_level_v)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_sharpness) as usize - ptr as usize },
        452usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(loop_filter_sharpness)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_ref_deltas) as usize - ptr as usize },
        453usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(loop_filter_ref_deltas)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).loop_filter_mode_deltas) as usize - ptr as usize },
        461usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(loop_filter_mode_deltas)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).lr_unit_size) as usize - ptr as usize },
        464usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(lr_unit_size)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).lr_type) as usize - ptr as usize },
        467usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(lr_type)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).primary_ref_frame) as usize - ptr as usize },
        470usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(primary_ref_frame)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ref_frame_map) as usize - ptr as usize },
        471usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(ref_frame_map)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved5_32bits) as usize - ptr as usize },
        480usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(reserved5_32bits)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ref_frame) as usize - ptr as usize },
        484usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(ref_frame)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).global_motion) as usize - ptr as usize },
        568usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(global_motion)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_y_points) as usize - ptr as usize },
        766usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(num_y_points)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).scaling_points_y) as usize - ptr as usize },
        767usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(scaling_points_y)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_cb_points) as usize - ptr as usize },
        795usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(num_cb_points)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).scaling_points_cb) as usize - ptr as usize },
        796usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(scaling_points_cb)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).num_cr_points) as usize - ptr as usize },
        816usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(num_cr_points)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).scaling_points_cr) as usize - ptr as usize },
        817usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(scaling_points_cr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved7_8bits) as usize - ptr as usize },
        837usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(reserved7_8bits)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).random_seed) as usize - ptr as usize },
        838usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(random_seed)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ar_coeffs_y) as usize - ptr as usize },
        840usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(ar_coeffs_y)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ar_coeffs_cb) as usize - ptr as usize },
        888usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(ar_coeffs_cb)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ar_coeffs_cr) as usize - ptr as usize },
        938usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(ar_coeffs_cr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cb_mult) as usize - ptr as usize },
        988usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cb_mult)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cb_luma_mult) as usize - ptr as usize },
        989usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cb_luma_mult)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cb_offset) as usize - ptr as usize },
        990usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cb_offset)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cr_mult) as usize - ptr as usize },
        992usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cr_mult)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cr_luma_mult) as usize - ptr as usize },
        993usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cr_luma_mult)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).cr_offset) as usize - ptr as usize },
        994usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(cr_offset)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
        996usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDAV1PICPARAMS),
            "::",
            stringify!(reserved)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDPICPARAMS__bindgen_ty_1() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDPICPARAMS__bindgen_ty_1> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDPICPARAMS__bindgen_ty_1>(),
        4096usize,
        concat!("Size of: ", stringify!(_CUVIDPICPARAMS__bindgen_ty_1))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDPICPARAMS__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_CUVIDPICPARAMS__bindgen_ty_1))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).mpeg2) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(mpeg2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).h264) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(h264)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vc1) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(vc1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).mpeg4) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(mpeg4)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).jpeg) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(jpeg)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).hevc) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(hevc)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vp8) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(vp8)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).vp9) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(vp9)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).av1) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(av1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).CodecReserved) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS__bindgen_ty_1),
            "::",
            stringify!(CodecReserved)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDPICPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDPICPARAMS> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDPICPARAMS>(),
        4280usize,
        concat!("Size of: ", stringify!(_CUVIDPICPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDPICPARAMS>(),
        8usize,
        concat!("Alignment of ", stringify!(_CUVIDPICPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).PicWidthInMbs) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(PicWidthInMbs)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).FrameHeightInMbs) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(FrameHeightInMbs)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).CurrPicIdx) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(CurrPicIdx)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).field_pic_flag) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(field_pic_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bottom_field_flag) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(bottom_field_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).second_field) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(second_field)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nBitstreamDataLen) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(nBitstreamDataLen)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pBitstreamData) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(pBitstreamData)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).nNumSlices) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(nNumSlices)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pSliceDataOffsets) as usize - ptr as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(pSliceDataOffsets)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ref_pic_flag) as usize - ptr as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(ref_pic_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).intra_pic_flag) as usize - ptr as usize },
        60usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(intra_pic_flag)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(Reserved)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).CodecSpecific) as usize - ptr as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPICPARAMS),
            "::",
            stringify!(CodecSpecific)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDPROCPARAMS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDPROCPARAMS> = ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDPROCPARAMS>(),
        264usize,
        concat!("Size of: ", stringify!(_CUVIDPROCPARAMS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDPROCPARAMS>(),
        8usize,
        concat!("Alignment of ", stringify!(_CUVIDPROCPARAMS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).progressive_frame) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(progressive_frame)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).second_field) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(second_field)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).top_field_first) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(top_field_first)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).unpaired_field) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(unpaired_field)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved_flags) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(reserved_flags)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved_zero) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(reserved_zero)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).raw_input_dptr) as usize - ptr as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(raw_input_dptr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).raw_input_pitch) as usize - ptr as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(raw_input_pitch)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).raw_input_format) as usize - ptr as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(raw_input_format)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).raw_output_dptr) as usize - ptr as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(raw_output_dptr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).raw_output_pitch) as usize - ptr as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(raw_output_pitch)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved1) as usize - ptr as usize },
        52usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(Reserved1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).output_stream) as usize - ptr as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(output_stream)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved) as usize - ptr as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(Reserved)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).histogram_dptr) as usize - ptr as usize },
        248usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(histogram_dptr)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).Reserved2) as usize - ptr as usize },
        256usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDPROCPARAMS),
            "::",
            stringify!(Reserved2)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDGETDECODESTATUS() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDGETDECODESTATUS> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDGETDECODESTATUS>(),
        192usize,
        concat!("Size of: ", stringify!(_CUVIDGETDECODESTATUS))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDGETDECODESTATUS>(),
        8usize,
        concat!("Alignment of ", stringify!(_CUVIDGETDECODESTATUS))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).decodeStatus) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDGETDECODESTATUS),
            "::",
            stringify!(decodeStatus)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDGETDECODESTATUS),
            "::",
            stringify!(reserved)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).pReserved) as usize - ptr as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDGETDECODESTATUS),
            "::",
            stringify!(pReserved)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1>(),
        8usize,
        concat!(
            "Size of: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1)
        )
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1>(),
        2usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
            "::",
            stringify!(left)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
            "::",
            stringify!(right)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
        6usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_1),
            "::",
            stringify!(bottom)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2>(),
        8usize,
        concat!(
            "Size of: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2)
        )
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2>(),
        2usize,
        concat!(
            "Alignment of ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).left) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
            "::",
            stringify!(left)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).right) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
            "::",
            stringify!(right)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
        6usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO__bindgen_ty_2),
            "::",
            stringify!(bottom)
        )
    );
}
#[test]
fn bindgen_test_layout__CUVIDRECONFIGUREDECODERINFO() {
    const UNINIT: ::core::mem::MaybeUninit<_CUVIDRECONFIGUREDECODERINFO> =
        ::core::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::core::mem::size_of::<_CUVIDRECONFIGUREDECODERINFO>(),
        128usize,
        concat!("Size of: ", stringify!(_CUVIDRECONFIGUREDECODERINFO))
    );
    assert_eq!(
        ::core::mem::align_of::<_CUVIDRECONFIGUREDECODERINFO>(),
        4usize,
        concat!("Alignment of ", stringify!(_CUVIDRECONFIGUREDECODERINFO))
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulWidth) as usize - ptr as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(ulWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulHeight) as usize - ptr as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(ulHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetWidth) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(ulTargetWidth)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulTargetHeight) as usize - ptr as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(ulTargetHeight)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).ulNumDecodeSurfaces) as usize - ptr as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(ulNumDecodeSurfaces)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(reserved1)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).display_area) as usize - ptr as usize },
        68usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(display_area)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).target_rect) as usize - ptr as usize },
        76usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(target_rect)
        )
    );
    assert_eq!(
        unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize },
        84usize,
        concat!(
            "Offset of field: ",
            stringify!(_CUVIDRECONFIGUREDECODERINFO),
            "::",
            stringify!(reserved2)
        )
    );
}
#[repr(i32)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub enum cudaVideoCodec_enum {
    cudaVideoCodec_MPEG1 = 0,
    cudaVideoCodec_MPEG2 = 1,
    cudaVideoCodec_MPEG4 = 2,
    cudaVideoCodec_VC1 = 3,
    cudaVideoCodec_H264 = 4,
    cudaVideoCodec_JPEG = 5,
    cudaVideoCodec_H264_SVC = 6,
    cudaVideoCodec_H264_MVC = 7,
    cudaVideoCodec_HEVC = 8,
    cudaVideoCodec_VP8 = 9,
    cudaVideoCodec_VP9 = 10,
    cudaVideoCodec_AV1 = 11,
    cudaVideoCodec_NumCodecs = 12,
    cudaVideoCodec_YUV420 = 1230591318,
    cudaVideoCodec_YV12 = 1498820914,
    cudaVideoCodec_NV12 = 1314271538,
    cudaVideoCodec_YUYV = 1498765654,
    cudaVideoCodec_UYVY = 1431918169,
}
#[repr(i32)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub enum cudaVideoSurfaceFormat_enum {
    cudaVideoSurfaceFormat_NV12 = 0,
    cudaVideoSurfaceFormat_P016 = 1,
    cudaVideoSurfaceFormat_YUV444 = 2,
    cudaVideoSurfaceFormat_YUV444_16Bit = 3,
}
#[repr(i32)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub enum cudaVideoDeinterlaceMode_enum {
    cudaVideoDeinterlaceMode_Weave = 0,
    cudaVideoDeinterlaceMode_Bob = 1,
    cudaVideoDeinterlaceMode_Adaptive = 2,
}
#[repr(i32)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub enum cudaVideoChromaFormat_enum {
    cudaVideoChromaFormat_Monochrome = 0,
    cudaVideoChromaFormat_420 = 1,
    cudaVideoChromaFormat_422 = 2,
    cudaVideoChromaFormat_444 = 3,
}
#[repr(i32)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub enum cudaVideoCreateFlags_enum {
    cudaVideoCreate_Default = 0,
    cudaVideoCreate_PreferCUDA = 1,
    cudaVideoCreate_PreferDXVA = 2,
    cudaVideoCreate_PreferCUVID = 4,
}
#[repr(i32)]
#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub enum cuvidDecodeStatus_enum {
    cuvidDecodeStatus_Invalid = 0,
    cuvidDecodeStatus_InProgress = 1,
    cuvidDecodeStatus_Success = 2,
    cuvidDecodeStatus_Error = 8,
    cuvidDecodeStatus_Error_Concealed = 9,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _CUVIDH264PICPARAMS__bindgen_ty_1 {
    pub slice_group_map_addr: ::core::ffi::c_ulonglong,
    pub pMb2SliceGroupMap: *const ::core::ffi::c_uchar,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _CUVIDH264PICPARAMS__bindgen_ty_2 {
    pub mvcext: CUVIDH264MVCEXT,
    pub svcext: CUVIDH264SVCEXT,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _CUVIDVP8PICPARAMS__bindgen_ty_1 {
    pub vp8_frame_tag: _CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1,
    pub wFrameTagFlags: ::core::ffi::c_uchar,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _CUVIDPICPARAMS__bindgen_ty_1 {
    pub mpeg2: CUVIDMPEG2PICPARAMS,
    pub h264: CUVIDH264PICPARAMS,
    pub vc1: CUVIDVC1PICPARAMS,
    pub mpeg4: CUVIDMPEG4PICPARAMS,
    pub jpeg: CUVIDJPEGPICPARAMS,
    pub hevc: CUVIDHEVCPICPARAMS,
    pub vp8: CUVIDVP8PICPARAMS,
    pub vp9: CUVIDVP9PICPARAMS,
    pub av1: CUVIDAV1PICPARAMS,
    pub CodecReserved: [::core::ffi::c_uint; 1024usize],
}
impl<Storage> __BindgenBitfieldUnit<Storage> {
    #[inline]
    pub const fn new(storage: Storage) -> Self {
        Self { storage }
    }
}
impl<Storage> __BindgenBitfieldUnit<Storage>
where
    Storage: AsRef<[u8]> + AsMut<[u8]>,
{
    #[inline]
    pub fn get_bit(&self, index: usize) -> bool {
        debug_assert!(index / 8 < self.storage.as_ref().len());
        let byte_index = index / 8;
        let byte = self.storage.as_ref()[byte_index];
        let bit_index = if cfg!(target_endian = "big") {
            7 - (index % 8)
        } else {
            index % 8
        };
        let mask = 1 << bit_index;
        byte & mask == mask
    }

    #[inline]
    pub fn set_bit(&mut self, index: usize, val: bool) {
        debug_assert!(index / 8 < self.storage.as_ref().len());
        let byte_index = index / 8;
        let byte = &mut self.storage.as_mut()[byte_index];
        let bit_index = if cfg!(target_endian = "big") {
            7 - (index % 8)
        } else {
            index % 8
        };
        let mask = 1 << bit_index;
        if val {
            *byte |= mask;
        } else {
            *byte &= !mask;
        }
    }

    #[inline]
    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
        debug_assert!(bit_width <= 64);
        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
        let mut val = 0;
        for i in 0..(bit_width as usize) {
            if self.get_bit(i + bit_offset) {
                let index = if cfg!(target_endian = "big") {
                    bit_width as usize - 1 - i
                } else {
                    i
                };
                val |= 1 << index;
            }
        }
        val
    }

    #[inline]
    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
        debug_assert!(bit_width <= 64);
        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
        for i in 0..(bit_width as usize) {
            let mask = 1 << i;
            let val_bit_is_set = val & mask == mask;
            let index = if cfg!(target_endian = "big") {
                bit_width as usize - 1 - i
            } else {
                i
            };
            self.set_bit(index + bit_offset, val_bit_is_set);
        }
    }
}
impl Default for _CUVIDDECODECAPS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDDECODECREATEINFO {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDH264SVCEXT {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDH264PICPARAMS__bindgen_ty_1 {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDH264PICPARAMS__bindgen_ty_2 {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDH264PICPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDMPEG2PICPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDMPEG4PICPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDHEVCPICPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl _CUVIDVP8PICPARAMS__bindgen_ty_1__bindgen_ty_1 {
    #[inline]
    pub fn frame_type(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_frame_type(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(0usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn version(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u8) }
    }

    #[inline]
    pub fn set_version(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(1usize, 3u8, val as u64)
        }
    }

    #[inline]
    pub fn show_frame(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_show_frame(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(4usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn update_mb_segmentation_data(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_update_mb_segmentation_data(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(5usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn Reserved2Bits(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
    }

    #[inline]
    pub fn set_Reserved2Bits(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(6usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_1(
        frame_type: ::core::ffi::c_uchar,
        version: ::core::ffi::c_uchar,
        show_frame: ::core::ffi::c_uchar,
        update_mb_segmentation_data: ::core::ffi::c_uchar,
        Reserved2Bits: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 1u8, {
            let frame_type: u8 = unsafe { ::core::mem::transmute(frame_type) };
            frame_type as u64
        });
        __bindgen_bitfield_unit.set(1usize, 3u8, {
            let version: u8 = unsafe { ::core::mem::transmute(version) };
            version as u64
        });
        __bindgen_bitfield_unit.set(4usize, 1u8, {
            let show_frame: u8 = unsafe { ::core::mem::transmute(show_frame) };
            show_frame as u64
        });
        __bindgen_bitfield_unit.set(5usize, 1u8, {
            let update_mb_segmentation_data: u8 =
                unsafe { ::core::mem::transmute(update_mb_segmentation_data) };
            update_mb_segmentation_data as u64
        });
        __bindgen_bitfield_unit.set(6usize, 2u8, {
            let Reserved2Bits: u8 = unsafe { ::core::mem::transmute(Reserved2Bits) };
            Reserved2Bits as u64
        });
        __bindgen_bitfield_unit
    }
}
impl Default for _CUVIDVP8PICPARAMS__bindgen_ty_1 {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDVP8PICPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl _CUVIDVP9PICPARAMS {
    #[inline]
    pub fn profile(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u16) }
    }

    #[inline]
    pub fn set_profile(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(0usize, 3u8, val as u64)
        }
    }

    #[inline]
    pub fn frameContextIdx(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 2u8) as u16) }
    }

    #[inline]
    pub fn set_frameContextIdx(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(3usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn frameType(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_frameType(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(5usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn showFrame(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_showFrame(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(6usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn errorResilient(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_errorResilient(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(7usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn frameParallelDecoding(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_frameParallelDecoding(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(8usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn subSamplingX(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_subSamplingX(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(9usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn subSamplingY(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_subSamplingY(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(10usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn intraOnly(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_intraOnly(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(11usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn allow_high_precision_mv(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_allow_high_precision_mv(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(12usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn refreshEntropyProbs(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_refreshEntropyProbs(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(13usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved2Bits(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 2u8) as u16) }
    }

    #[inline]
    pub fn set_reserved2Bits(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_1.set(14usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_1(
        profile: ::core::ffi::c_ushort,
        frameContextIdx: ::core::ffi::c_ushort,
        frameType: ::core::ffi::c_ushort,
        showFrame: ::core::ffi::c_ushort,
        errorResilient: ::core::ffi::c_ushort,
        frameParallelDecoding: ::core::ffi::c_ushort,
        subSamplingX: ::core::ffi::c_ushort,
        subSamplingY: ::core::ffi::c_ushort,
        intraOnly: ::core::ffi::c_ushort,
        allow_high_precision_mv: ::core::ffi::c_ushort,
        refreshEntropyProbs: ::core::ffi::c_ushort,
        reserved2Bits: ::core::ffi::c_ushort,
    ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 3u8, {
            let profile: u16 = unsafe { ::core::mem::transmute(profile) };
            profile as u64
        });
        __bindgen_bitfield_unit.set(3usize, 2u8, {
            let frameContextIdx: u16 = unsafe { ::core::mem::transmute(frameContextIdx) };
            frameContextIdx as u64
        });
        __bindgen_bitfield_unit.set(5usize, 1u8, {
            let frameType: u16 = unsafe { ::core::mem::transmute(frameType) };
            frameType as u64
        });
        __bindgen_bitfield_unit.set(6usize, 1u8, {
            let showFrame: u16 = unsafe { ::core::mem::transmute(showFrame) };
            showFrame as u64
        });
        __bindgen_bitfield_unit.set(7usize, 1u8, {
            let errorResilient: u16 = unsafe { ::core::mem::transmute(errorResilient) };
            errorResilient as u64
        });
        __bindgen_bitfield_unit.set(8usize, 1u8, {
            let frameParallelDecoding: u16 =
                unsafe { ::core::mem::transmute(frameParallelDecoding) };
            frameParallelDecoding as u64
        });
        __bindgen_bitfield_unit.set(9usize, 1u8, {
            let subSamplingX: u16 = unsafe { ::core::mem::transmute(subSamplingX) };
            subSamplingX as u64
        });
        __bindgen_bitfield_unit.set(10usize, 1u8, {
            let subSamplingY: u16 = unsafe { ::core::mem::transmute(subSamplingY) };
            subSamplingY as u64
        });
        __bindgen_bitfield_unit.set(11usize, 1u8, {
            let intraOnly: u16 = unsafe { ::core::mem::transmute(intraOnly) };
            intraOnly as u64
        });
        __bindgen_bitfield_unit.set(12usize, 1u8, {
            let allow_high_precision_mv: u16 =
                unsafe { ::core::mem::transmute(allow_high_precision_mv) };
            allow_high_precision_mv as u64
        });
        __bindgen_bitfield_unit.set(13usize, 1u8, {
            let refreshEntropyProbs: u16 = unsafe { ::core::mem::transmute(refreshEntropyProbs) };
            refreshEntropyProbs as u64
        });
        __bindgen_bitfield_unit.set(14usize, 2u8, {
            let reserved2Bits: u16 = unsafe { ::core::mem::transmute(reserved2Bits) };
            reserved2Bits as u64
        });
        __bindgen_bitfield_unit
    }

    #[inline]
    pub fn segmentEnabled(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentEnabled(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(0usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn segmentMapUpdate(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(1usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentMapUpdate(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(1usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn segmentMapTemporalUpdate(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(2usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentMapTemporalUpdate(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(2usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn segmentFeatureMode(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(3usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentFeatureMode(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(3usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved4Bits(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(4usize, 4u8) as u8) }
    }

    #[inline]
    pub fn set_reserved4Bits(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(4usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_2(
        segmentEnabled: ::core::ffi::c_uchar,
        segmentMapUpdate: ::core::ffi::c_uchar,
        segmentMapTemporalUpdate: ::core::ffi::c_uchar,
        segmentFeatureMode: ::core::ffi::c_uchar,
        reserved4Bits: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 1u8, {
            let segmentEnabled: u8 = unsafe { ::core::mem::transmute(segmentEnabled) };
            segmentEnabled as u64
        });
        __bindgen_bitfield_unit.set(1usize, 1u8, {
            let segmentMapUpdate: u8 = unsafe { ::core::mem::transmute(segmentMapUpdate) };
            segmentMapUpdate as u64
        });
        __bindgen_bitfield_unit.set(2usize, 1u8, {
            let segmentMapTemporalUpdate: u8 =
                unsafe { ::core::mem::transmute(segmentMapTemporalUpdate) };
            segmentMapTemporalUpdate as u64
        });
        __bindgen_bitfield_unit.set(3usize, 1u8, {
            let segmentFeatureMode: u8 = unsafe { ::core::mem::transmute(segmentFeatureMode) };
            segmentFeatureMode as u64
        });
        __bindgen_bitfield_unit.set(4usize, 4u8, {
            let reserved4Bits: u8 = unsafe { ::core::mem::transmute(reserved4Bits) };
            reserved4Bits as u64
        });
        __bindgen_bitfield_unit
    }
}
impl _CUVIDAV1PICPARAMS__bindgen_ty_2 {
    #[inline]
    pub fn invalid(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_invalid(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(0usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn wmtype(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u8) }
    }

    #[inline]
    pub fn set_wmtype(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(1usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved5Bits(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 5u8) as u8) }
    }

    #[inline]
    pub fn set_reserved5Bits(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_1.set(3usize, 5u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_1(
        invalid: ::core::ffi::c_uchar,
        wmtype: ::core::ffi::c_uchar,
        reserved5Bits: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 1u8, {
            let invalid: u8 = unsafe { ::core::mem::transmute(invalid) };
            invalid as u64
        });
        __bindgen_bitfield_unit.set(1usize, 2u8, {
            let wmtype: u8 = unsafe { ::core::mem::transmute(wmtype) };
            wmtype as u64
        });
        __bindgen_bitfield_unit.set(3usize, 5u8, {
            let reserved5Bits: u8 = unsafe { ::core::mem::transmute(reserved5Bits) };
            reserved5Bits as u64
        });
        __bindgen_bitfield_unit
    }
}
impl Default for _CUVIDAV1PICPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl _CUVIDAV1PICPARAMS {
    #[inline]
    pub fn profile(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u32) }
    }

    #[inline]
    pub fn set_profile(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(0usize, 3u8, val as u64)
        }
    }

    #[inline]
    pub fn use_128x128_superblock(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_use_128x128_superblock(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(3usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn subsampling_x(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_subsampling_x(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(4usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn subsampling_y(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_subsampling_y(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(5usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn mono_chrome(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_mono_chrome(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(6usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn bit_depth_minus8(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 4u8) as u32) }
    }

    #[inline]
    pub fn set_bit_depth_minus8(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(7usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_filter_intra(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_filter_intra(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(11usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_intra_edge_filter(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_intra_edge_filter(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(12usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_interintra_compound(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_interintra_compound(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(13usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_masked_compound(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_masked_compound(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(14usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_dual_filter(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_dual_filter(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(15usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_order_hint(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_order_hint(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(16usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn order_hint_bits_minus1(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 3u8) as u32) }
    }

    #[inline]
    pub fn set_order_hint_bits_minus1(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(17usize, 3u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_jnt_comp(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_jnt_comp(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(20usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_superres(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_superres(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(21usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_cdef(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_cdef(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(22usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_restoration(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_restoration(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(23usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn enable_fgs(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_enable_fgs(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(24usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved0_7bits(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 7u8) as u32) }
    }

    #[inline]
    pub fn set_reserved0_7bits(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(25usize, 7u8, val as u64)
        }
    }

    #[inline]
    pub fn frame_type(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(32usize, 2u8) as u32) }
    }

    #[inline]
    pub fn set_frame_type(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(32usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn show_frame(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(34usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_show_frame(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(34usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn disable_cdf_update(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(35usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_disable_cdf_update(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(35usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn allow_screen_content_tools(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(36usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_allow_screen_content_tools(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(36usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn force_integer_mv(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(37usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_force_integer_mv(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(37usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn coded_denom(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(38usize, 3u8) as u32) }
    }

    #[inline]
    pub fn set_coded_denom(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(38usize, 3u8, val as u64)
        }
    }

    #[inline]
    pub fn allow_intrabc(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(41usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_allow_intrabc(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(41usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn allow_high_precision_mv(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(42usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_allow_high_precision_mv(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(42usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn interp_filter(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(43usize, 3u8) as u32) }
    }

    #[inline]
    pub fn set_interp_filter(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(43usize, 3u8, val as u64)
        }
    }

    #[inline]
    pub fn switchable_motion_mode(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(46usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_switchable_motion_mode(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(46usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn use_ref_frame_mvs(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(47usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_use_ref_frame_mvs(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(47usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn disable_frame_end_update_cdf(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(48usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_disable_frame_end_update_cdf(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(48usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn delta_q_present(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(49usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_delta_q_present(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(49usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn delta_q_res(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(50usize, 2u8) as u32) }
    }

    #[inline]
    pub fn set_delta_q_res(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(50usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn using_qmatrix(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(52usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_using_qmatrix(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(52usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn coded_lossless(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(53usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_coded_lossless(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(53usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn use_superres(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(54usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_use_superres(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(54usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn tx_mode(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(55usize, 2u8) as u32) }
    }

    #[inline]
    pub fn set_tx_mode(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(55usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn reference_mode(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(57usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_reference_mode(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(57usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn allow_warped_motion(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(58usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_allow_warped_motion(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(58usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reduced_tx_set(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(59usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_reduced_tx_set(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(59usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn skip_mode(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(60usize, 1u8) as u32) }
    }

    #[inline]
    pub fn set_skip_mode(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(60usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved1_3bits(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(61usize, 3u8) as u32) }
    }

    #[inline]
    pub fn set_reserved1_3bits(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(61usize, 3u8, val as u64)
        }
    }

    #[inline]
    pub fn num_tile_cols(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(64usize, 8u8) as u32) }
    }

    #[inline]
    pub fn set_num_tile_cols(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(64usize, 8u8, val as u64)
        }
    }

    #[inline]
    pub fn num_tile_rows(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(72usize, 8u8) as u32) }
    }

    #[inline]
    pub fn set_num_tile_rows(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(72usize, 8u8, val as u64)
        }
    }

    #[inline]
    pub fn context_update_tile_id(&self) -> ::core::ffi::c_uint {
        unsafe { ::core::mem::transmute(self._bitfield_1.get(80usize, 16u8) as u32) }
    }

    #[inline]
    pub fn set_context_update_tile_id(&mut self, val: ::core::ffi::c_uint) {
        unsafe {
            let val: u32 = ::core::mem::transmute(val);
            self._bitfield_1.set(80usize, 16u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_1(
        profile: ::core::ffi::c_uint,
        use_128x128_superblock: ::core::ffi::c_uint,
        subsampling_x: ::core::ffi::c_uint,
        subsampling_y: ::core::ffi::c_uint,
        mono_chrome: ::core::ffi::c_uint,
        bit_depth_minus8: ::core::ffi::c_uint,
        enable_filter_intra: ::core::ffi::c_uint,
        enable_intra_edge_filter: ::core::ffi::c_uint,
        enable_interintra_compound: ::core::ffi::c_uint,
        enable_masked_compound: ::core::ffi::c_uint,
        enable_dual_filter: ::core::ffi::c_uint,
        enable_order_hint: ::core::ffi::c_uint,
        order_hint_bits_minus1: ::core::ffi::c_uint,
        enable_jnt_comp: ::core::ffi::c_uint,
        enable_superres: ::core::ffi::c_uint,
        enable_cdef: ::core::ffi::c_uint,
        enable_restoration: ::core::ffi::c_uint,
        enable_fgs: ::core::ffi::c_uint,
        reserved0_7bits: ::core::ffi::c_uint,
        frame_type: ::core::ffi::c_uint,
        show_frame: ::core::ffi::c_uint,
        disable_cdf_update: ::core::ffi::c_uint,
        allow_screen_content_tools: ::core::ffi::c_uint,
        force_integer_mv: ::core::ffi::c_uint,
        coded_denom: ::core::ffi::c_uint,
        allow_intrabc: ::core::ffi::c_uint,
        allow_high_precision_mv: ::core::ffi::c_uint,
        interp_filter: ::core::ffi::c_uint,
        switchable_motion_mode: ::core::ffi::c_uint,
        use_ref_frame_mvs: ::core::ffi::c_uint,
        disable_frame_end_update_cdf: ::core::ffi::c_uint,
        delta_q_present: ::core::ffi::c_uint,
        delta_q_res: ::core::ffi::c_uint,
        using_qmatrix: ::core::ffi::c_uint,
        coded_lossless: ::core::ffi::c_uint,
        use_superres: ::core::ffi::c_uint,
        tx_mode: ::core::ffi::c_uint,
        reference_mode: ::core::ffi::c_uint,
        allow_warped_motion: ::core::ffi::c_uint,
        reduced_tx_set: ::core::ffi::c_uint,
        skip_mode: ::core::ffi::c_uint,
        reserved1_3bits: ::core::ffi::c_uint,
        num_tile_cols: ::core::ffi::c_uint,
        num_tile_rows: ::core::ffi::c_uint,
        context_update_tile_id: ::core::ffi::c_uint,
    ) -> __BindgenBitfieldUnit<[u8; 12usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 12usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 3u8, {
            let profile: u32 = unsafe { ::core::mem::transmute(profile) };
            profile as u64
        });
        __bindgen_bitfield_unit.set(3usize, 1u8, {
            let use_128x128_superblock: u32 =
                unsafe { ::core::mem::transmute(use_128x128_superblock) };
            use_128x128_superblock as u64
        });
        __bindgen_bitfield_unit.set(4usize, 1u8, {
            let subsampling_x: u32 = unsafe { ::core::mem::transmute(subsampling_x) };
            subsampling_x as u64
        });
        __bindgen_bitfield_unit.set(5usize, 1u8, {
            let subsampling_y: u32 = unsafe { ::core::mem::transmute(subsampling_y) };
            subsampling_y as u64
        });
        __bindgen_bitfield_unit.set(6usize, 1u8, {
            let mono_chrome: u32 = unsafe { ::core::mem::transmute(mono_chrome) };
            mono_chrome as u64
        });
        __bindgen_bitfield_unit.set(7usize, 4u8, {
            let bit_depth_minus8: u32 = unsafe { ::core::mem::transmute(bit_depth_minus8) };
            bit_depth_minus8 as u64
        });
        __bindgen_bitfield_unit.set(11usize, 1u8, {
            let enable_filter_intra: u32 = unsafe { ::core::mem::transmute(enable_filter_intra) };
            enable_filter_intra as u64
        });
        __bindgen_bitfield_unit.set(12usize, 1u8, {
            let enable_intra_edge_filter: u32 =
                unsafe { ::core::mem::transmute(enable_intra_edge_filter) };
            enable_intra_edge_filter as u64
        });
        __bindgen_bitfield_unit.set(13usize, 1u8, {
            let enable_interintra_compound: u32 =
                unsafe { ::core::mem::transmute(enable_interintra_compound) };
            enable_interintra_compound as u64
        });
        __bindgen_bitfield_unit.set(14usize, 1u8, {
            let enable_masked_compound: u32 =
                unsafe { ::core::mem::transmute(enable_masked_compound) };
            enable_masked_compound as u64
        });
        __bindgen_bitfield_unit.set(15usize, 1u8, {
            let enable_dual_filter: u32 = unsafe { ::core::mem::transmute(enable_dual_filter) };
            enable_dual_filter as u64
        });
        __bindgen_bitfield_unit.set(16usize, 1u8, {
            let enable_order_hint: u32 = unsafe { ::core::mem::transmute(enable_order_hint) };
            enable_order_hint as u64
        });
        __bindgen_bitfield_unit.set(17usize, 3u8, {
            let order_hint_bits_minus1: u32 =
                unsafe { ::core::mem::transmute(order_hint_bits_minus1) };
            order_hint_bits_minus1 as u64
        });
        __bindgen_bitfield_unit.set(20usize, 1u8, {
            let enable_jnt_comp: u32 = unsafe { ::core::mem::transmute(enable_jnt_comp) };
            enable_jnt_comp as u64
        });
        __bindgen_bitfield_unit.set(21usize, 1u8, {
            let enable_superres: u32 = unsafe { ::core::mem::transmute(enable_superres) };
            enable_superres as u64
        });
        __bindgen_bitfield_unit.set(22usize, 1u8, {
            let enable_cdef: u32 = unsafe { ::core::mem::transmute(enable_cdef) };
            enable_cdef as u64
        });
        __bindgen_bitfield_unit.set(23usize, 1u8, {
            let enable_restoration: u32 = unsafe { ::core::mem::transmute(enable_restoration) };
            enable_restoration as u64
        });
        __bindgen_bitfield_unit.set(24usize, 1u8, {
            let enable_fgs: u32 = unsafe { ::core::mem::transmute(enable_fgs) };
            enable_fgs as u64
        });
        __bindgen_bitfield_unit.set(25usize, 7u8, {
            let reserved0_7bits: u32 = unsafe { ::core::mem::transmute(reserved0_7bits) };
            reserved0_7bits as u64
        });
        __bindgen_bitfield_unit.set(32usize, 2u8, {
            let frame_type: u32 = unsafe { ::core::mem::transmute(frame_type) };
            frame_type as u64
        });
        __bindgen_bitfield_unit.set(34usize, 1u8, {
            let show_frame: u32 = unsafe { ::core::mem::transmute(show_frame) };
            show_frame as u64
        });
        __bindgen_bitfield_unit.set(35usize, 1u8, {
            let disable_cdf_update: u32 = unsafe { ::core::mem::transmute(disable_cdf_update) };
            disable_cdf_update as u64
        });
        __bindgen_bitfield_unit.set(36usize, 1u8, {
            let allow_screen_content_tools: u32 =
                unsafe { ::core::mem::transmute(allow_screen_content_tools) };
            allow_screen_content_tools as u64
        });
        __bindgen_bitfield_unit.set(37usize, 1u8, {
            let force_integer_mv: u32 = unsafe { ::core::mem::transmute(force_integer_mv) };
            force_integer_mv as u64
        });
        __bindgen_bitfield_unit.set(38usize, 3u8, {
            let coded_denom: u32 = unsafe { ::core::mem::transmute(coded_denom) };
            coded_denom as u64
        });
        __bindgen_bitfield_unit.set(41usize, 1u8, {
            let allow_intrabc: u32 = unsafe { ::core::mem::transmute(allow_intrabc) };
            allow_intrabc as u64
        });
        __bindgen_bitfield_unit.set(42usize, 1u8, {
            let allow_high_precision_mv: u32 =
                unsafe { ::core::mem::transmute(allow_high_precision_mv) };
            allow_high_precision_mv as u64
        });
        __bindgen_bitfield_unit.set(43usize, 3u8, {
            let interp_filter: u32 = unsafe { ::core::mem::transmute(interp_filter) };
            interp_filter as u64
        });
        __bindgen_bitfield_unit.set(46usize, 1u8, {
            let switchable_motion_mode: u32 =
                unsafe { ::core::mem::transmute(switchable_motion_mode) };
            switchable_motion_mode as u64
        });
        __bindgen_bitfield_unit.set(47usize, 1u8, {
            let use_ref_frame_mvs: u32 = unsafe { ::core::mem::transmute(use_ref_frame_mvs) };
            use_ref_frame_mvs as u64
        });
        __bindgen_bitfield_unit.set(48usize, 1u8, {
            let disable_frame_end_update_cdf: u32 =
                unsafe { ::core::mem::transmute(disable_frame_end_update_cdf) };
            disable_frame_end_update_cdf as u64
        });
        __bindgen_bitfield_unit.set(49usize, 1u8, {
            let delta_q_present: u32 = unsafe { ::core::mem::transmute(delta_q_present) };
            delta_q_present as u64
        });
        __bindgen_bitfield_unit.set(50usize, 2u8, {
            let delta_q_res: u32 = unsafe { ::core::mem::transmute(delta_q_res) };
            delta_q_res as u64
        });
        __bindgen_bitfield_unit.set(52usize, 1u8, {
            let using_qmatrix: u32 = unsafe { ::core::mem::transmute(using_qmatrix) };
            using_qmatrix as u64
        });
        __bindgen_bitfield_unit.set(53usize, 1u8, {
            let coded_lossless: u32 = unsafe { ::core::mem::transmute(coded_lossless) };
            coded_lossless as u64
        });
        __bindgen_bitfield_unit.set(54usize, 1u8, {
            let use_superres: u32 = unsafe { ::core::mem::transmute(use_superres) };
            use_superres as u64
        });
        __bindgen_bitfield_unit.set(55usize, 2u8, {
            let tx_mode: u32 = unsafe { ::core::mem::transmute(tx_mode) };
            tx_mode as u64
        });
        __bindgen_bitfield_unit.set(57usize, 1u8, {
            let reference_mode: u32 = unsafe { ::core::mem::transmute(reference_mode) };
            reference_mode as u64
        });
        __bindgen_bitfield_unit.set(58usize, 1u8, {
            let allow_warped_motion: u32 = unsafe { ::core::mem::transmute(allow_warped_motion) };
            allow_warped_motion as u64
        });
        __bindgen_bitfield_unit.set(59usize, 1u8, {
            let reduced_tx_set: u32 = unsafe { ::core::mem::transmute(reduced_tx_set) };
            reduced_tx_set as u64
        });
        __bindgen_bitfield_unit.set(60usize, 1u8, {
            let skip_mode: u32 = unsafe { ::core::mem::transmute(skip_mode) };
            skip_mode as u64
        });
        __bindgen_bitfield_unit.set(61usize, 3u8, {
            let reserved1_3bits: u32 = unsafe { ::core::mem::transmute(reserved1_3bits) };
            reserved1_3bits as u64
        });
        __bindgen_bitfield_unit.set(64usize, 8u8, {
            let num_tile_cols: u32 = unsafe { ::core::mem::transmute(num_tile_cols) };
            num_tile_cols as u64
        });
        __bindgen_bitfield_unit.set(72usize, 8u8, {
            let num_tile_rows: u32 = unsafe { ::core::mem::transmute(num_tile_rows) };
            num_tile_rows as u64
        });
        __bindgen_bitfield_unit.set(80usize, 16u8, {
            let context_update_tile_id: u32 =
                unsafe { ::core::mem::transmute(context_update_tile_id) };
            context_update_tile_id as u64
        });
        __bindgen_bitfield_unit
    }

    #[inline]
    pub fn cdef_damping_minus_3(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 2u8) as u8) }
    }

    #[inline]
    pub fn set_cdef_damping_minus_3(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(0usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn cdef_bits(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(2usize, 2u8) as u8) }
    }

    #[inline]
    pub fn set_cdef_bits(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(2usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved2_4bits(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_2.get(4usize, 4u8) as u8) }
    }

    #[inline]
    pub fn set_reserved2_4bits(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_2.set(4usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_2(
        cdef_damping_minus_3: ::core::ffi::c_uchar,
        cdef_bits: ::core::ffi::c_uchar,
        reserved2_4bits: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 2u8, {
            let cdef_damping_minus_3: u8 = unsafe { ::core::mem::transmute(cdef_damping_minus_3) };
            cdef_damping_minus_3 as u64
        });
        __bindgen_bitfield_unit.set(2usize, 2u8, {
            let cdef_bits: u8 = unsafe { ::core::mem::transmute(cdef_bits) };
            cdef_bits as u64
        });
        __bindgen_bitfield_unit.set(4usize, 4u8, {
            let reserved2_4bits: u8 = unsafe { ::core::mem::transmute(reserved2_4bits) };
            reserved2_4bits as u64
        });
        __bindgen_bitfield_unit
    }

    #[inline]
    pub fn SkipModeFrame0(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_3.get(0usize, 4u8) as u8) }
    }

    #[inline]
    pub fn set_SkipModeFrame0(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_3.set(0usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn SkipModeFrame1(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_3.get(4usize, 4u8) as u8) }
    }

    #[inline]
    pub fn set_SkipModeFrame1(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_3.set(4usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_3(
        SkipModeFrame0: ::core::ffi::c_uchar,
        SkipModeFrame1: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 4u8, {
            let SkipModeFrame0: u8 = unsafe { ::core::mem::transmute(SkipModeFrame0) };
            SkipModeFrame0 as u64
        });
        __bindgen_bitfield_unit.set(4usize, 4u8, {
            let SkipModeFrame1: u8 = unsafe { ::core::mem::transmute(SkipModeFrame1) };
            SkipModeFrame1 as u64
        });
        __bindgen_bitfield_unit
    }

    #[inline]
    pub fn segmentation_enabled(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_4.get(0usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentation_enabled(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_4.set(0usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn segmentation_update_map(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_4.get(1usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentation_update_map(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_4.set(1usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn segmentation_update_data(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_4.get(2usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentation_update_data(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_4.set(2usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn segmentation_temporal_update(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_4.get(3usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_segmentation_temporal_update(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_4.set(3usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved3_4bits(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_4.get(4usize, 4u8) as u8) }
    }

    #[inline]
    pub fn set_reserved3_4bits(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_4.set(4usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_4(
        segmentation_enabled: ::core::ffi::c_uchar,
        segmentation_update_map: ::core::ffi::c_uchar,
        segmentation_update_data: ::core::ffi::c_uchar,
        segmentation_temporal_update: ::core::ffi::c_uchar,
        reserved3_4bits: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 1u8, {
            let segmentation_enabled: u8 = unsafe { ::core::mem::transmute(segmentation_enabled) };
            segmentation_enabled as u64
        });
        __bindgen_bitfield_unit.set(1usize, 1u8, {
            let segmentation_update_map: u8 =
                unsafe { ::core::mem::transmute(segmentation_update_map) };
            segmentation_update_map as u64
        });
        __bindgen_bitfield_unit.set(2usize, 1u8, {
            let segmentation_update_data: u8 =
                unsafe { ::core::mem::transmute(segmentation_update_data) };
            segmentation_update_data as u64
        });
        __bindgen_bitfield_unit.set(3usize, 1u8, {
            let segmentation_temporal_update: u8 =
                unsafe { ::core::mem::transmute(segmentation_temporal_update) };
            segmentation_temporal_update as u64
        });
        __bindgen_bitfield_unit.set(4usize, 4u8, {
            let reserved3_4bits: u8 = unsafe { ::core::mem::transmute(reserved3_4bits) };
            reserved3_4bits as u64
        });
        __bindgen_bitfield_unit
    }

    #[inline]
    pub fn loop_filter_delta_enabled(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_5.get(0usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_loop_filter_delta_enabled(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_5.set(0usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn loop_filter_delta_update(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_5.get(1usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_loop_filter_delta_update(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_5.set(1usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn delta_lf_present(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_5.get(2usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_delta_lf_present(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_5.set(2usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn delta_lf_res(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_5.get(3usize, 2u8) as u8) }
    }

    #[inline]
    pub fn set_delta_lf_res(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_5.set(3usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn delta_lf_multi(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_5.get(5usize, 1u8) as u8) }
    }

    #[inline]
    pub fn set_delta_lf_multi(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_5.set(5usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved4_2bits(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_5.get(6usize, 2u8) as u8) }
    }

    #[inline]
    pub fn set_reserved4_2bits(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_5.set(6usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_5(
        loop_filter_delta_enabled: ::core::ffi::c_uchar,
        loop_filter_delta_update: ::core::ffi::c_uchar,
        delta_lf_present: ::core::ffi::c_uchar,
        delta_lf_res: ::core::ffi::c_uchar,
        delta_lf_multi: ::core::ffi::c_uchar,
        reserved4_2bits: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 1u8, {
            let loop_filter_delta_enabled: u8 =
                unsafe { ::core::mem::transmute(loop_filter_delta_enabled) };
            loop_filter_delta_enabled as u64
        });
        __bindgen_bitfield_unit.set(1usize, 1u8, {
            let loop_filter_delta_update: u8 =
                unsafe { ::core::mem::transmute(loop_filter_delta_update) };
            loop_filter_delta_update as u64
        });
        __bindgen_bitfield_unit.set(2usize, 1u8, {
            let delta_lf_present: u8 = unsafe { ::core::mem::transmute(delta_lf_present) };
            delta_lf_present as u64
        });
        __bindgen_bitfield_unit.set(3usize, 2u8, {
            let delta_lf_res: u8 = unsafe { ::core::mem::transmute(delta_lf_res) };
            delta_lf_res as u64
        });
        __bindgen_bitfield_unit.set(5usize, 1u8, {
            let delta_lf_multi: u8 = unsafe { ::core::mem::transmute(delta_lf_multi) };
            delta_lf_multi as u64
        });
        __bindgen_bitfield_unit.set(6usize, 2u8, {
            let reserved4_2bits: u8 = unsafe { ::core::mem::transmute(reserved4_2bits) };
            reserved4_2bits as u64
        });
        __bindgen_bitfield_unit
    }

    #[inline]
    pub fn temporal_layer_id(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_6.get(0usize, 4u8) as u8) }
    }

    #[inline]
    pub fn set_temporal_layer_id(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_6.set(0usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn spatial_layer_id(&self) -> ::core::ffi::c_uchar {
        unsafe { ::core::mem::transmute(self._bitfield_6.get(4usize, 4u8) as u8) }
    }

    #[inline]
    pub fn set_spatial_layer_id(&mut self, val: ::core::ffi::c_uchar) {
        unsafe {
            let val: u8 = ::core::mem::transmute(val);
            self._bitfield_6.set(4usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_6(
        temporal_layer_id: ::core::ffi::c_uchar,
        spatial_layer_id: ::core::ffi::c_uchar,
    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 4u8, {
            let temporal_layer_id: u8 = unsafe { ::core::mem::transmute(temporal_layer_id) };
            temporal_layer_id as u64
        });
        __bindgen_bitfield_unit.set(4usize, 4u8, {
            let spatial_layer_id: u8 = unsafe { ::core::mem::transmute(spatial_layer_id) };
            spatial_layer_id as u64
        });
        __bindgen_bitfield_unit
    }

    #[inline]
    pub fn apply_grain(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(0usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_apply_grain(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(0usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn overlap_flag(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(1usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_overlap_flag(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(1usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn scaling_shift_minus8(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(2usize, 2u8) as u16) }
    }

    #[inline]
    pub fn set_scaling_shift_minus8(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(2usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn chroma_scaling_from_luma(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(4usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_chroma_scaling_from_luma(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(4usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn ar_coeff_lag(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(5usize, 2u8) as u16) }
    }

    #[inline]
    pub fn set_ar_coeff_lag(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(5usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn ar_coeff_shift_minus6(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(7usize, 2u8) as u16) }
    }

    #[inline]
    pub fn set_ar_coeff_shift_minus6(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(7usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn grain_scale_shift(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(9usize, 2u8) as u16) }
    }

    #[inline]
    pub fn set_grain_scale_shift(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(9usize, 2u8, val as u64)
        }
    }

    #[inline]
    pub fn clip_to_restricted_range(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(11usize, 1u8) as u16) }
    }

    #[inline]
    pub fn set_clip_to_restricted_range(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(11usize, 1u8, val as u64)
        }
    }

    #[inline]
    pub fn reserved6_4bits(&self) -> ::core::ffi::c_ushort {
        unsafe { ::core::mem::transmute(self._bitfield_7.get(12usize, 4u8) as u16) }
    }

    #[inline]
    pub fn set_reserved6_4bits(&mut self, val: ::core::ffi::c_ushort) {
        unsafe {
            let val: u16 = ::core::mem::transmute(val);
            self._bitfield_7.set(12usize, 4u8, val as u64)
        }
    }

    #[inline]
    pub fn new_bitfield_7(
        apply_grain: ::core::ffi::c_ushort,
        overlap_flag: ::core::ffi::c_ushort,
        scaling_shift_minus8: ::core::ffi::c_ushort,
        chroma_scaling_from_luma: ::core::ffi::c_ushort,
        ar_coeff_lag: ::core::ffi::c_ushort,
        ar_coeff_shift_minus6: ::core::ffi::c_ushort,
        grain_scale_shift: ::core::ffi::c_ushort,
        clip_to_restricted_range: ::core::ffi::c_ushort,
        reserved6_4bits: ::core::ffi::c_ushort,
    ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 1u8, {
            let apply_grain: u16 = unsafe { ::core::mem::transmute(apply_grain) };
            apply_grain as u64
        });
        __bindgen_bitfield_unit.set(1usize, 1u8, {
            let overlap_flag: u16 = unsafe { ::core::mem::transmute(overlap_flag) };
            overlap_flag as u64
        });
        __bindgen_bitfield_unit.set(2usize, 2u8, {
            let scaling_shift_minus8: u16 = unsafe { ::core::mem::transmute(scaling_shift_minus8) };
            scaling_shift_minus8 as u64
        });
        __bindgen_bitfield_unit.set(4usize, 1u8, {
            let chroma_scaling_from_luma: u16 =
                unsafe { ::core::mem::transmute(chroma_scaling_from_luma) };
            chroma_scaling_from_luma as u64
        });
        __bindgen_bitfield_unit.set(5usize, 2u8, {
            let ar_coeff_lag: u16 = unsafe { ::core::mem::transmute(ar_coeff_lag) };
            ar_coeff_lag as u64
        });
        __bindgen_bitfield_unit.set(7usize, 2u8, {
            let ar_coeff_shift_minus6: u16 =
                unsafe { ::core::mem::transmute(ar_coeff_shift_minus6) };
            ar_coeff_shift_minus6 as u64
        });
        __bindgen_bitfield_unit.set(9usize, 2u8, {
            let grain_scale_shift: u16 = unsafe { ::core::mem::transmute(grain_scale_shift) };
            grain_scale_shift as u64
        });
        __bindgen_bitfield_unit.set(11usize, 1u8, {
            let clip_to_restricted_range: u16 =
                unsafe { ::core::mem::transmute(clip_to_restricted_range) };
            clip_to_restricted_range as u64
        });
        __bindgen_bitfield_unit.set(12usize, 4u8, {
            let reserved6_4bits: u16 = unsafe { ::core::mem::transmute(reserved6_4bits) };
            reserved6_4bits as u64
        });
        __bindgen_bitfield_unit
    }
}
impl Default for _CUVIDPICPARAMS__bindgen_ty_1 {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDPICPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDPROCPARAMS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
impl Default for _CUVIDGETDECODESTATUS {
    fn default() -> Self {
        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
pub use self::{
    cudaVideoChromaFormat_enum as cudaVideoChromaFormat,
    cudaVideoCodec_enum as cudaVideoCodec,
    cudaVideoCreateFlags_enum as cudaVideoCreateFlags,
    cudaVideoDeinterlaceMode_enum as cudaVideoDeinterlaceMode,
    cudaVideoSurfaceFormat_enum as cudaVideoSurfaceFormat,
    cuvidDecodeStatus_enum as cuvidDecodeStatus,
};
extern "C" {
    #[must_use]
    pub fn cuvidGetDecoderCaps(pdc: *mut CUVIDDECODECAPS) -> CUresult;
    #[must_use]
    pub fn cuvidCreateDecoder(
        phDecoder: *mut CUvideodecoder,
        pdci: *mut CUVIDDECODECREATEINFO,
    ) -> CUresult;
    #[must_use]
    pub fn cuvidDestroyDecoder(hDecoder: CUvideodecoder) -> CUresult;
    #[must_use]
    pub fn cuvidDecodePicture(
        hDecoder: CUvideodecoder,
        pPicParams: *mut CUVIDPICPARAMS,
    ) -> CUresult;
    #[must_use]
    pub fn cuvidGetDecodeStatus(
        hDecoder: CUvideodecoder,
        nPicIdx: ::core::ffi::c_int,
        pDecodeStatus: *mut CUVIDGETDECODESTATUS,
    ) -> CUresult;
    #[must_use]
    pub fn cuvidReconfigureDecoder(
        hDecoder: CUvideodecoder,
        pDecReconfigParams: *mut CUVIDRECONFIGUREDECODERINFO,
    ) -> CUresult;
    #[must_use]
    pub fn cuvidMapVideoFrame64(
        hDecoder: CUvideodecoder,
        nPicIdx: ::core::ffi::c_int,
        pDevPtr: *mut ::core::ffi::c_ulonglong,
        pPitch: *mut ::core::ffi::c_uint,
        pVPP: *mut CUVIDPROCPARAMS,
    ) -> CUresult;
    #[must_use]
    pub fn cuvidUnmapVideoFrame64(
        hDecoder: CUvideodecoder,
        DevPtr: ::core::ffi::c_ulonglong,
    ) -> CUresult;
    #[must_use]
    pub fn cuvidCtxLockCreate(pLock: *mut CUvideoctxlock, ctx: CUcontext) -> CUresult;
    #[must_use]
    pub fn cuvidCtxLockDestroy(lck: CUvideoctxlock) -> CUresult;
    #[must_use]
    pub fn cuvidCtxLock(lck: CUvideoctxlock, reserved_flags: ::core::ffi::c_uint) -> CUresult;
    #[must_use]
    pub fn cuvidCtxUnlock(lck: CUvideoctxlock, reserved_flags: ::core::ffi::c_uint) -> CUresult;
}

