1
2
3
/* automatically generated by rust-bindgen */

pub const LV2_PARAMETERS_URI : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/parameters\0" ; pub const LV2_PARAMETERS_PREFIX : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/parameters#\0" ; pub const LV2_PARAMETERS__CompressorControls : & 'static [ u8 ; 55usize ] = b"http://lv2plug.in/ns/ext/parameters#CompressorControls\0" ; pub const LV2_PARAMETERS__ControlGroup : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/parameters#ControlGroup\0" ; pub const LV2_PARAMETERS__EnvelopeControls : & 'static [ u8 ; 53usize ] = b"http://lv2plug.in/ns/ext/parameters#EnvelopeControls\0" ; pub const LV2_PARAMETERS__FilterControls : & 'static [ u8 ; 51usize ] = b"http://lv2plug.in/ns/ext/parameters#FilterControls\0" ; pub const LV2_PARAMETERS__OscillatorControls : & 'static [ u8 ; 55usize ] = b"http://lv2plug.in/ns/ext/parameters#OscillatorControls\0" ; pub const LV2_PARAMETERS__amplitude : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/parameters#amplitude\0" ; pub const LV2_PARAMETERS__attack : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/parameters#attack\0" ; pub const LV2_PARAMETERS__bypass : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/parameters#bypass\0" ; pub const LV2_PARAMETERS__cutoffFrequency : & 'static [ u8 ; 52usize ] = b"http://lv2plug.in/ns/ext/parameters#cutoffFrequency\0" ; pub const LV2_PARAMETERS__decay : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/parameters#decay\0" ; pub const LV2_PARAMETERS__delay : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/parameters#delay\0" ; pub const LV2_PARAMETERS__dryLevel : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/parameters#dryLevel\0" ; pub const LV2_PARAMETERS__frequency : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/parameters#frequency\0" ; pub const LV2_PARAMETERS__gain : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/parameters#gain\0" ; pub const LV2_PARAMETERS__hold : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/parameters#hold\0" ; pub const LV2_PARAMETERS__pulseWidth : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/parameters#pulseWidth\0" ; pub const LV2_PARAMETERS__ratio : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/parameters#ratio\0" ; pub const LV2_PARAMETERS__release : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/parameters#release\0" ; pub const LV2_PARAMETERS__resonance : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/parameters#resonance\0" ; pub const LV2_PARAMETERS__sampleRate : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/parameters#sampleRate\0" ; pub const LV2_PARAMETERS__sustain : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/parameters#sustain\0" ; pub const LV2_PARAMETERS__threshold : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/parameters#threshold\0" ; pub const LV2_PARAMETERS__waveform : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/parameters#waveform\0" ; pub const LV2_PARAMETERS__wetDryRatio : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/parameters#wetDryRatio\0" ; pub const LV2_PARAMETERS__wetLevel : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/parameters#wetLevel\0" ; pub const LV2_URI_MAP_URI : & 'static [ u8 ; 33usize ] = b"http://lv2plug.in/ns/ext/uri-map\0" ; pub const LV2_URI_MAP_PREFIX : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/uri-map#\0" ; pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 200809 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __STDC_NO_THREADS__ : u32 = 1 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 27 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const INT8_MIN : i32 = -128 ; pub const INT16_MIN : i32 = -32768 ; pub const INT32_MIN : i32 = -2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = -128 ; pub const INT_LEAST16_MIN : i32 = -32768 ; pub const INT_LEAST32_MIN : i32 = -2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = -128 ; pub const INT_FAST16_MIN : i64 = -9223372036854775808 ; pub const INT_FAST32_MIN : i64 = -9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = -1 ; pub const UINT_FAST32_MAX : i32 = -1 ; pub const INTPTR_MIN : i64 = -9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = -1 ; pub const PTRDIFF_MIN : i64 = -9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = -2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = -1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const LV2_DATA_ACCESS_URI : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/data-access\0" ; pub const LV2_DATA_ACCESS_PREFIX : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/data-access#\0" ; pub const LV2_CORE_URI : & 'static [ u8 ; 29usize ] = b"http://lv2plug.in/ns/lv2core\0" ; pub const LV2_CORE_PREFIX : & 'static [ u8 ; 30usize ] = b"http://lv2plug.in/ns/lv2core#\0" ; pub const LV2_CORE__AllpassPlugin : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#AllpassPlugin\0" ; pub const LV2_CORE__AmplifierPlugin : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/lv2core#AmplifierPlugin\0" ; pub const LV2_CORE__AnalyserPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#AnalyserPlugin\0" ; pub const LV2_CORE__AudioPort : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/lv2core#AudioPort\0" ; pub const LV2_CORE__BandpassPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#BandpassPlugin\0" ; pub const LV2_CORE__CVPort : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/lv2core#CVPort\0" ; pub const LV2_CORE__ChorusPlugin : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#ChorusPlugin\0" ; pub const LV2_CORE__CombPlugin : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/lv2core#CombPlugin\0" ; pub const LV2_CORE__CompressorPlugin : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/lv2core#CompressorPlugin\0" ; pub const LV2_CORE__ConstantPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#ConstantPlugin\0" ; pub const LV2_CORE__ControlPort : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/lv2core#ControlPort\0" ; pub const LV2_CORE__ConverterPlugin : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/lv2core#ConverterPlugin\0" ; pub const LV2_CORE__DelayPlugin : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/lv2core#DelayPlugin\0" ; pub const LV2_CORE__DistortionPlugin : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/lv2core#DistortionPlugin\0" ; pub const LV2_CORE__DynamicsPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#DynamicsPlugin\0" ; pub const LV2_CORE__EQPlugin : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/lv2core#EQPlugin\0" ; pub const LV2_CORE__EnvelopePlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#EnvelopePlugin\0" ; pub const LV2_CORE__ExpanderPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#ExpanderPlugin\0" ; pub const LV2_CORE__ExtensionData : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#ExtensionData\0" ; pub const LV2_CORE__Feature : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#Feature\0" ; pub const LV2_CORE__FilterPlugin : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#FilterPlugin\0" ; pub const LV2_CORE__FlangerPlugin : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#FlangerPlugin\0" ; pub const LV2_CORE__FunctionPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#FunctionPlugin\0" ; pub const LV2_CORE__GatePlugin : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/lv2core#GatePlugin\0" ; pub const LV2_CORE__GeneratorPlugin : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/lv2core#GeneratorPlugin\0" ; pub const LV2_CORE__HighpassPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#HighpassPlugin\0" ; pub const LV2_CORE__InputPort : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/lv2core#InputPort\0" ; pub const LV2_CORE__InstrumentPlugin : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/lv2core#InstrumentPlugin\0" ; pub const LV2_CORE__LimiterPlugin : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#LimiterPlugin\0" ; pub const LV2_CORE__LowpassPlugin : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#LowpassPlugin\0" ; pub const LV2_CORE__MixerPlugin : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/lv2core#MixerPlugin\0" ; pub const LV2_CORE__ModulatorPlugin : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/lv2core#ModulatorPlugin\0" ; pub const LV2_CORE__MultiEQPlugin : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#MultiEQPlugin\0" ; pub const LV2_CORE__OscillatorPlugin : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/lv2core#OscillatorPlugin\0" ; pub const LV2_CORE__OutputPort : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/lv2core#OutputPort\0" ; pub const LV2_CORE__ParaEQPlugin : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#ParaEQPlugin\0" ; pub const LV2_CORE__PhaserPlugin : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#PhaserPlugin\0" ; pub const LV2_CORE__PitchPlugin : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/lv2core#PitchPlugin\0" ; pub const LV2_CORE__Plugin : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/lv2core#Plugin\0" ; pub const LV2_CORE__PluginBase : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/lv2core#PluginBase\0" ; pub const LV2_CORE__Point : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/lv2core#Point\0" ; pub const LV2_CORE__Port : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/lv2core#Port\0" ; pub const LV2_CORE__PortProperty : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#PortProperty\0" ; pub const LV2_CORE__Resource : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/lv2core#Resource\0" ; pub const LV2_CORE__ReverbPlugin : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#ReverbPlugin\0" ; pub const LV2_CORE__ScalePoint : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/lv2core#ScalePoint\0" ; pub const LV2_CORE__SimulatorPlugin : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/lv2core#SimulatorPlugin\0" ; pub const LV2_CORE__SpatialPlugin : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#SpatialPlugin\0" ; pub const LV2_CORE__Specification : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#Specification\0" ; pub const LV2_CORE__SpectralPlugin : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#SpectralPlugin\0" ; pub const LV2_CORE__UtilityPlugin : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#UtilityPlugin\0" ; pub const LV2_CORE__WaveshaperPlugin : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/lv2core#WaveshaperPlugin\0" ; pub const LV2_CORE__appliesTo : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/lv2core#appliesTo\0" ; pub const LV2_CORE__binary : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/lv2core#binary\0" ; pub const LV2_CORE__connectionOptional : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/lv2core#connectionOptional\0" ; pub const LV2_CORE__control : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#control\0" ; pub const LV2_CORE__default : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#default\0" ; pub const LV2_CORE__designation : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/lv2core#designation\0" ; pub const LV2_CORE__documentation : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#documentation\0" ; pub const LV2_CORE__enumeration : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/lv2core#enumeration\0" ; pub const LV2_CORE__extensionData : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#extensionData\0" ; pub const LV2_CORE__freeWheeling : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#freeWheeling\0" ; pub const LV2_CORE__hardRTCapable : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#hardRTCapable\0" ; pub const LV2_CORE__inPlaceBroken : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/lv2core#inPlaceBroken\0" ; pub const LV2_CORE__index : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/lv2core#index\0" ; pub const LV2_CORE__integer : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#integer\0" ; pub const LV2_CORE__isLive : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/lv2core#isLive\0" ; pub const LV2_CORE__latency : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#latency\0" ; pub const LV2_CORE__maximum : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#maximum\0" ; pub const LV2_CORE__microVersion : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#microVersion\0" ; pub const LV2_CORE__minimum : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#minimum\0" ; pub const LV2_CORE__minorVersion : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#minorVersion\0" ; pub const LV2_CORE__name : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/lv2core#name\0" ; pub const LV2_CORE__optionalFeature : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/lv2core#optionalFeature\0" ; pub const LV2_CORE__port : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/lv2core#port\0" ; pub const LV2_CORE__portProperty : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/lv2core#portProperty\0" ; pub const LV2_CORE__project : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#project\0" ; pub const LV2_CORE__prototype : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/lv2core#prototype\0" ; pub const LV2_CORE__reportsLatency : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/lv2core#reportsLatency\0" ; pub const LV2_CORE__requiredFeature : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/lv2core#requiredFeature\0" ; pub const LV2_CORE__sampleRate : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/lv2core#sampleRate\0" ; pub const LV2_CORE__scalePoint : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/lv2core#scalePoint\0" ; pub const LV2_CORE__symbol : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/lv2core#symbol\0" ; pub const LV2_CORE__toggled : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/lv2core#toggled\0" ; pub const LV2_WORKER_URI : & 'static [ u8 ; 32usize ] = b"http://lv2plug.in/ns/ext/worker\0" ; pub const LV2_WORKER_PREFIX : & 'static [ u8 ; 33usize ] = b"http://lv2plug.in/ns/ext/worker#\0" ; pub const LV2_WORKER__interface : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/worker#interface\0" ; pub const LV2_WORKER__schedule : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/worker#schedule\0" ; pub const LV2_ATOM_URI : & 'static [ u8 ; 30usize ] = b"http://lv2plug.in/ns/ext/atom\0" ; pub const LV2_ATOM_PREFIX : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/atom#\0" ; pub const LV2_ATOM__Atom : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/atom#Atom\0" ; pub const LV2_ATOM__AtomPort : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/atom#AtomPort\0" ; pub const LV2_ATOM__Blank : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/atom#Blank\0" ; pub const LV2_ATOM__Bool : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/atom#Bool\0" ; pub const LV2_ATOM__Chunk : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/atom#Chunk\0" ; pub const LV2_ATOM__Double : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/atom#Double\0" ; pub const LV2_ATOM__Event : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/atom#Event\0" ; pub const LV2_ATOM__Float : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/atom#Float\0" ; pub const LV2_ATOM__Int : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/atom#Int\0" ; pub const LV2_ATOM__Literal : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/atom#Literal\0" ; pub const LV2_ATOM__Long : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/atom#Long\0" ; pub const LV2_ATOM__Number : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/atom#Number\0" ; pub const LV2_ATOM__Object : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/atom#Object\0" ; pub const LV2_ATOM__Path : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/atom#Path\0" ; pub const LV2_ATOM__Property : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/atom#Property\0" ; pub const LV2_ATOM__Resource : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/atom#Resource\0" ; pub const LV2_ATOM__Sequence : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/atom#Sequence\0" ; pub const LV2_ATOM__Sound : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/atom#Sound\0" ; pub const LV2_ATOM__String : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/atom#String\0" ; pub const LV2_ATOM__Tuple : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/atom#Tuple\0" ; pub const LV2_ATOM__URI : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/atom#URI\0" ; pub const LV2_ATOM__URID : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/atom#URID\0" ; pub const LV2_ATOM__Vector : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/atom#Vector\0" ; pub const LV2_ATOM__atomTransfer : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/atom#atomTransfer\0" ; pub const LV2_ATOM__beatTime : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/atom#beatTime\0" ; pub const LV2_ATOM__bufferType : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/atom#bufferType\0" ; pub const LV2_ATOM__childType : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/atom#childType\0" ; pub const LV2_ATOM__eventTransfer : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/atom#eventTransfer\0" ; pub const LV2_ATOM__frameTime : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/atom#frameTime\0" ; pub const LV2_ATOM__supports : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/atom#supports\0" ; pub const LV2_ATOM__timeUnit : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/atom#timeUnit\0" ; pub const LV2_ATOM_REFERENCE_TYPE : u32 = 0 ; pub const __GNUC_VA_LIST : u32 = 1 ; pub const true_ : u32 = 1 ; pub const false_ : u32 = 0 ; pub const __bool_true_false_are_defined : u32 = 1 ; pub const _STRING_H : u32 = 1 ; pub const _BITS_TYPES_LOCALE_T_H : u32 = 1 ; pub const _BITS_TYPES___LOCALE_T_H : u32 = 1 ; pub const _STRINGS_H : u32 = 1 ; pub const LV2_URID_URI : & 'static [ u8 ; 30usize ] = b"http://lv2plug.in/ns/ext/urid\0" ; pub const LV2_URID_PREFIX : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/urid#\0" ; pub const LV2_URID__map : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/urid#map\0" ; pub const LV2_URID__unmap : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/urid#unmap\0" ; pub const LV2_URID_MAP_URI : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/urid#map\0" ; pub const LV2_URID_UNMAP_URI : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/urid#unmap\0" ; pub const _ASSERT_H : u32 = 1 ; pub const LV2_OPTIONS_URI : & 'static [ u8 ; 33usize ] = b"http://lv2plug.in/ns/ext/options\0" ; pub const LV2_OPTIONS_PREFIX : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/options#\0" ; pub const LV2_OPTIONS__Option : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/options#Option\0" ; pub const LV2_OPTIONS__interface : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/options#interface\0" ; pub const LV2_OPTIONS__options : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/options#options\0" ; pub const LV2_OPTIONS__requiredOption : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/options#requiredOption\0" ; pub const LV2_OPTIONS__supportedOption : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/options#supportedOption\0" ; pub const LV2_UNITS_URI : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/extensions/units\0" ; pub const LV2_UNITS_PREFIX : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/extensions/units#\0" ; pub const LV2_UNITS__Conversion : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/extensions/units#Conversion\0" ; pub const LV2_UNITS__Unit : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#Unit\0" ; pub const LV2_UNITS__bar : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/units#bar\0" ; pub const LV2_UNITS__beat : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#beat\0" ; pub const LV2_UNITS__bpm : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/units#bpm\0" ; pub const LV2_UNITS__cent : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#cent\0" ; pub const LV2_UNITS__cm : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/units#cm\0" ; pub const LV2_UNITS__coef : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#coef\0" ; pub const LV2_UNITS__conversion : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/extensions/units#conversion\0" ; pub const LV2_UNITS__db : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/units#db\0" ; pub const LV2_UNITS__degree : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/extensions/units#degree\0" ; pub const LV2_UNITS__frame : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/extensions/units#frame\0" ; pub const LV2_UNITS__hz : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/units#hz\0" ; pub const LV2_UNITS__inch : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#inch\0" ; pub const LV2_UNITS__khz : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/units#khz\0" ; pub const LV2_UNITS__km : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/units#km\0" ; pub const LV2_UNITS__m : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/extensions/units#m\0" ; pub const LV2_UNITS__mhz : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/units#mhz\0" ; pub const LV2_UNITS__midiNote : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/extensions/units#midiNote\0" ; pub const LV2_UNITS__mile : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#mile\0" ; pub const LV2_UNITS__min : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/units#min\0" ; pub const LV2_UNITS__mm : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/units#mm\0" ; pub const LV2_UNITS__ms : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/units#ms\0" ; pub const LV2_UNITS__name : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#name\0" ; pub const LV2_UNITS__oct : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/units#oct\0" ; pub const LV2_UNITS__pc : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/units#pc\0" ; pub const LV2_UNITS__prefixConversion : & 'static [ u8 ; 55usize ] = b"http://lv2plug.in/ns/extensions/units#prefixConversion\0" ; pub const LV2_UNITS__render : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/extensions/units#render\0" ; pub const LV2_UNITS__s : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/extensions/units#s\0" ; pub const LV2_UNITS__semitone12TET : & 'static [ u8 ; 52usize ] = b"http://lv2plug.in/ns/extensions/units#semitone12TET\0" ; pub const LV2_UNITS__symbol : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/extensions/units#symbol\0" ; pub const LV2_UNITS__unit : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/units#unit\0" ; pub const LV2_PORT_GROUPS_URI : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/port-groups\0" ; pub const LV2_PORT_GROUPS_PREFIX : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/port-groups#\0" ; pub const LV2_PORT_GROUPS__DiscreteGroup : & 'static [ u8 ; 51usize ] = b"http://lv2plug.in/ns/ext/port-groups#DiscreteGroup\0" ; pub const LV2_PORT_GROUPS__Element : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/port-groups#Element\0" ; pub const LV2_PORT_GROUPS__FivePointOneGroup : & 'static [ u8 ; 55usize ] = b"http://lv2plug.in/ns/ext/port-groups#FivePointOneGroup\0" ; pub const LV2_PORT_GROUPS__FivePointZeroGroup : & 'static [ u8 ; 56usize ] = b"http://lv2plug.in/ns/ext/port-groups#FivePointZeroGroup\0" ; pub const LV2_PORT_GROUPS__FourPointZeroGroup : & 'static [ u8 ; 56usize ] = b"http://lv2plug.in/ns/ext/port-groups#FourPointZeroGroup\0" ; pub const LV2_PORT_GROUPS__Group : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/port-groups#Group\0" ; pub const LV2_PORT_GROUPS__InputGroup : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/port-groups#InputGroup\0" ; pub const LV2_PORT_GROUPS__MidSideGroup : & 'static [ u8 ; 50usize ] = b"http://lv2plug.in/ns/ext/port-groups#MidSideGroup\0" ; pub const LV2_PORT_GROUPS__MonoGroup : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/port-groups#MonoGroup\0" ; pub const LV2_PORT_GROUPS__OutputGroup : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/port-groups#OutputGroup\0" ; pub const LV2_PORT_GROUPS__SevenPointOneGroup : & 'static [ u8 ; 56usize ] = b"http://lv2plug.in/ns/ext/port-groups#SevenPointOneGroup\0" ; pub const LV2_PORT_GROUPS__SevenPointOneWideGroup : & 'static [ u8 ; 60usize ] = b"http://lv2plug.in/ns/ext/port-groups#SevenPointOneWideGroup\0" ; pub const LV2_PORT_GROUPS__SixPointOneGroup : & 'static [ u8 ; 54usize ] = b"http://lv2plug.in/ns/ext/port-groups#SixPointOneGroup\0" ; pub const LV2_PORT_GROUPS__StereoGroup : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/port-groups#StereoGroup\0" ; pub const LV2_PORT_GROUPS__ThreePointZeroGroup : & 'static [ u8 ; 57usize ] = b"http://lv2plug.in/ns/ext/port-groups#ThreePointZeroGroup\0" ; pub const LV2_PORT_GROUPS__center : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/port-groups#center\0" ; pub const LV2_PORT_GROUPS__centerLeft : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/port-groups#centerLeft\0" ; pub const LV2_PORT_GROUPS__centerRight : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/port-groups#centerRight\0" ; pub const LV2_PORT_GROUPS__element : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/port-groups#element\0" ; pub const LV2_PORT_GROUPS__group : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/port-groups#group\0" ; pub const LV2_PORT_GROUPS__left : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/port-groups#left\0" ; pub const LV2_PORT_GROUPS__lowFrequencyEffects : & 'static [ u8 ; 57usize ] = b"http://lv2plug.in/ns/ext/port-groups#lowFrequencyEffects\0" ; pub const LV2_PORT_GROUPS__mainInput : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/port-groups#mainInput\0" ; pub const LV2_PORT_GROUPS__mainOutput : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/port-groups#mainOutput\0" ; pub const LV2_PORT_GROUPS__rearCenter : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/port-groups#rearCenter\0" ; pub const LV2_PORT_GROUPS__rearLeft : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/port-groups#rearLeft\0" ; pub const LV2_PORT_GROUPS__rearRight : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/port-groups#rearRight\0" ; pub const LV2_PORT_GROUPS__right : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/port-groups#right\0" ; pub const LV2_PORT_GROUPS__side : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/port-groups#side\0" ; pub const LV2_PORT_GROUPS__sideChainOf : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/port-groups#sideChainOf\0" ; pub const LV2_PORT_GROUPS__sideLeft : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/port-groups#sideLeft\0" ; pub const LV2_PORT_GROUPS__sideRight : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/port-groups#sideRight\0" ; pub const LV2_PORT_GROUPS__source : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/port-groups#source\0" ; pub const LV2_PORT_GROUPS__subGroupOf : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/port-groups#subGroupOf\0" ; pub const LV2_UI_URI : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/extensions/ui\0" ; pub const LV2_UI_PREFIX : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/extensions/ui#\0" ; pub const LV2_UI__CocoaUI : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/ui#CocoaUI\0" ; pub const LV2_UI__Gtk3UI : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/ui#Gtk3UI\0" ; pub const LV2_UI__GtkUI : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/ui#GtkUI\0" ; pub const LV2_UI__PortNotification : & 'static [ u8 ; 52usize ] = b"http://lv2plug.in/ns/extensions/ui#PortNotification\0" ; pub const LV2_UI__PortProtocol : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/extensions/ui#PortProtocol\0" ; pub const LV2_UI__Qt4UI : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/ui#Qt4UI\0" ; pub const LV2_UI__Qt5UI : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/ui#Qt5UI\0" ; pub const LV2_UI__UI : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/extensions/ui#UI\0" ; pub const LV2_UI__WindowsUI : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/extensions/ui#WindowsUI\0" ; pub const LV2_UI__X11UI : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/ui#X11UI\0" ; pub const LV2_UI__binary : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/ui#binary\0" ; pub const LV2_UI__fixedSize : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/extensions/ui#fixedSize\0" ; pub const LV2_UI__idleInterface : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/extensions/ui#idleInterface\0" ; pub const LV2_UI__noUserResize : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/extensions/ui#noUserResize\0" ; pub const LV2_UI__notifyType : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/extensions/ui#notifyType\0" ; pub const LV2_UI__parent : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/ui#parent\0" ; pub const LV2_UI__plugin : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/ui#plugin\0" ; pub const LV2_UI__portIndex : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/extensions/ui#portIndex\0" ; pub const LV2_UI__portMap : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/extensions/ui#portMap\0" ; pub const LV2_UI__portNotification : & 'static [ u8 ; 52usize ] = b"http://lv2plug.in/ns/extensions/ui#portNotification\0" ; pub const LV2_UI__portSubscribe : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/extensions/ui#portSubscribe\0" ; pub const LV2_UI__protocol : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/extensions/ui#protocol\0" ; pub const LV2_UI__floatProtocol : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/extensions/ui#floatProtocol\0" ; pub const LV2_UI__peakProtocol : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/extensions/ui#peakProtocol\0" ; pub const LV2_UI__resize : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/extensions/ui#resize\0" ; pub const LV2_UI__showInterface : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/extensions/ui#showInterface\0" ; pub const LV2_UI__touch : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/extensions/ui#touch\0" ; pub const LV2_UI__ui : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/extensions/ui#ui\0" ; pub const LV2_UI__updateRate : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/extensions/ui#updateRate\0" ; pub const LV2_UI__windowTitle : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/extensions/ui#windowTitle\0" ; pub const LV2_STATE_URI : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/state\0" ; pub const LV2_STATE_PREFIX : & 'static [ u8 ; 32usize ] = b"http://lv2plug.in/ns/ext/state#\0" ; pub const LV2_STATE__State : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/state#State\0" ; pub const LV2_STATE__interface : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/state#interface\0" ; pub const LV2_STATE__loadDefaultState : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/state#loadDefaultState\0" ; pub const LV2_STATE__makePath : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/state#makePath\0" ; pub const LV2_STATE__mapPath : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/state#mapPath\0" ; pub const LV2_STATE__state : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/state#state\0" ; pub const LV2_STATE__threadSafeRestore : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/state#threadSafeRestore\0" ; pub const LV2_STATE__StateChanged : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/state#StateChanged\0" ; pub const LV2_LOG_URI : & 'static [ u8 ; 29usize ] = b"http://lv2plug.in/ns/ext/log\0" ; pub const LV2_LOG_PREFIX : & 'static [ u8 ; 30usize ] = b"http://lv2plug.in/ns/ext/log#\0" ; pub const LV2_LOG__Entry : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/log#Entry\0" ; pub const LV2_LOG__Error : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/log#Error\0" ; pub const LV2_LOG__Note : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/log#Note\0" ; pub const LV2_LOG__Trace : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/log#Trace\0" ; pub const LV2_LOG__Warning : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/log#Warning\0" ; pub const LV2_LOG__log : & 'static [ u8 ; 33usize ] = b"http://lv2plug.in/ns/ext/log#log\0" ; pub const _STDIO_H : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const _BITS_LIBIO_H : u32 = 1 ; pub const _BITS_G_CONFIG_H : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _G_HAVE_MMAP : u32 = 1 ; pub const _G_HAVE_MREMAP : u32 = 1 ; pub const _G_IO_IO_FILE_VERSION : u32 = 131073 ; pub const _G_BUFSIZ : u32 = 8192 ; pub const _IO_BUFSIZ : u32 = 8192 ; pub const _IO_UNIFIED_JUMPTABLES : u32 = 1 ; pub const EOF : i32 = -1 ; pub const _IOS_INPUT : u32 = 1 ; pub const _IOS_OUTPUT : u32 = 2 ; pub const _IOS_ATEND : u32 = 4 ; pub const _IOS_APPEND : u32 = 8 ; pub const _IOS_TRUNC : u32 = 16 ; pub const _IOS_NOCREATE : u32 = 32 ; pub const _IOS_NOREPLACE : u32 = 64 ; pub const _IOS_BIN : u32 = 128 ; pub const _IO_MAGIC : u32 = 4222418944 ; pub const _OLD_STDIO_MAGIC : u32 = 4206624768 ; pub const _IO_MAGIC_MASK : u32 = 4294901760 ; pub const _IO_USER_BUF : u32 = 1 ; pub const _IO_UNBUFFERED : u32 = 2 ; pub const _IO_NO_READS : u32 = 4 ; pub const _IO_NO_WRITES : u32 = 8 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_DELETE_DONT_CLOSE : u32 = 64 ; pub const _IO_LINKED : u32 = 128 ; pub const _IO_IN_BACKUP : u32 = 256 ; pub const _IO_LINE_BUF : u32 = 512 ; pub const _IO_TIED_PUT_GET : u32 = 1024 ; pub const _IO_CURRENTLY_PUTTING : u32 = 2048 ; pub const _IO_IS_APPENDING : u32 = 4096 ; pub const _IO_IS_FILEBUF : u32 = 8192 ; pub const _IO_BAD_SEEN : u32 = 16384 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const _IO_FLAGS2_MMAP : u32 = 1 ; pub const _IO_FLAGS2_NOTCANCEL : u32 = 2 ; pub const _IO_FLAGS2_USER_WBUF : u32 = 8 ; pub const _IO_SKIPWS : u32 = 1 ; pub const _IO_LEFT : u32 = 2 ; pub const _IO_RIGHT : u32 = 4 ; pub const _IO_INTERNAL : u32 = 8 ; pub const _IO_DEC : u32 = 16 ; pub const _IO_OCT : u32 = 32 ; pub const _IO_HEX : u32 = 64 ; pub const _IO_SHOWBASE : u32 = 128 ; pub const _IO_SHOWPOINT : u32 = 256 ; pub const _IO_UPPERCASE : u32 = 512 ; pub const _IO_SHOWPOS : u32 = 1024 ; pub const _IO_SCIENTIFIC : u32 = 2048 ; pub const _IO_FIXED : u32 = 4096 ; pub const _IO_UNITBUF : u32 = 8192 ; pub const _IO_STDIO : u32 = 16384 ; pub const _IO_DONT_CLOSE : u32 = 32768 ; pub const _IO_BOOLALPHA : u32 = 65536 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & 'static [ u8 ; 5usize ] = b"/tmp\0" ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const LV2_MIDI_URI : & 'static [ u8 ; 30usize ] = b"http://lv2plug.in/ns/ext/midi\0" ; pub const LV2_MIDI_PREFIX : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/midi#\0" ; pub const LV2_MIDI__ActiveSense : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/midi#ActiveSense\0" ; pub const LV2_MIDI__Aftertouch : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/midi#Aftertouch\0" ; pub const LV2_MIDI__Bender : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/midi#Bender\0" ; pub const LV2_MIDI__ChannelPressure : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/midi#ChannelPressure\0" ; pub const LV2_MIDI__Chunk : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/midi#Chunk\0" ; pub const LV2_MIDI__Clock : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/midi#Clock\0" ; pub const LV2_MIDI__Continue : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/midi#Continue\0" ; pub const LV2_MIDI__Controller : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/midi#Controller\0" ; pub const LV2_MIDI__MidiEvent : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/midi#MidiEvent\0" ; pub const LV2_MIDI__NoteOff : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/midi#NoteOff\0" ; pub const LV2_MIDI__NoteOn : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/midi#NoteOn\0" ; pub const LV2_MIDI__ProgramChange : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/midi#ProgramChange\0" ; pub const LV2_MIDI__QuarterFrame : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/midi#QuarterFrame\0" ; pub const LV2_MIDI__Reset : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/midi#Reset\0" ; pub const LV2_MIDI__SongPosition : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/midi#SongPosition\0" ; pub const LV2_MIDI__SongSelect : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/midi#SongSelect\0" ; pub const LV2_MIDI__Start : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/midi#Start\0" ; pub const LV2_MIDI__Stop : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/midi#Stop\0" ; pub const LV2_MIDI__SystemCommon : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/midi#SystemCommon\0" ; pub const LV2_MIDI__SystemExclusive : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/midi#SystemExclusive\0" ; pub const LV2_MIDI__SystemMessage : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/midi#SystemMessage\0" ; pub const LV2_MIDI__SystemRealtime : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/midi#SystemRealtime\0" ; pub const LV2_MIDI__Tick : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/midi#Tick\0" ; pub const LV2_MIDI__TuneRequest : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/midi#TuneRequest\0" ; pub const LV2_MIDI__VoiceMessage : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/midi#VoiceMessage\0" ; pub const LV2_MIDI__benderValue : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/midi#benderValue\0" ; pub const LV2_MIDI__binding : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/midi#binding\0" ; pub const LV2_MIDI__byteNumber : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/midi#byteNumber\0" ; pub const LV2_MIDI__channel : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/midi#channel\0" ; pub const LV2_MIDI__chunk : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/midi#chunk\0" ; pub const LV2_MIDI__controllerNumber : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/midi#controllerNumber\0" ; pub const LV2_MIDI__controllerValue : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/midi#controllerValue\0" ; pub const LV2_MIDI__noteNumber : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/midi#noteNumber\0" ; pub const LV2_MIDI__pressure : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/midi#pressure\0" ; pub const LV2_MIDI__programNumber : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/midi#programNumber\0" ; pub const LV2_MIDI__property : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/midi#property\0" ; pub const LV2_MIDI__songNumber : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/midi#songNumber\0" ; pub const LV2_MIDI__songPosition : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/midi#songPosition\0" ; pub const LV2_MIDI__status : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/midi#status\0" ; pub const LV2_MIDI__statusMask : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/midi#statusMask\0" ; pub const LV2_MIDI__velocity : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/midi#velocity\0" ; pub const LV2_INSTANCE_ACCESS_URI : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/instance-access\0" ; pub const LV2_PRESETS_URI : & 'static [ u8 ; 33usize ] = b"http://lv2plug.in/ns/ext/presets\0" ; pub const LV2_PRESETS_PREFIX : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/presets#\0" ; pub const LV2_PRESETS__Bank : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/presets#Bank\0" ; pub const LV2_PRESETS__Preset : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/presets#Preset\0" ; pub const LV2_PRESETS__bank : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/presets#bank\0" ; pub const LV2_PRESETS__preset : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/presets#preset\0" ; pub const LV2_PRESETS__value : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/presets#value\0" ; pub const LV2_DYN_MANIFEST_URI : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/dynmanifest\0" ; pub const LV2_DYN_MANIFEST_PREFIX : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/dynmanifest#\0" ; pub const LV2_TIME_URI : & 'static [ u8 ; 30usize ] = b"http://lv2plug.in/ns/ext/time\0" ; pub const LV2_TIME_PREFIX : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/time#\0" ; pub const LV2_TIME__Time : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/time#Time\0" ; pub const LV2_TIME__Position : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/time#Position\0" ; pub const LV2_TIME__Rate : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/time#Rate\0" ; pub const LV2_TIME__position : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/time#position\0" ; pub const LV2_TIME__barBeat : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/time#barBeat\0" ; pub const LV2_TIME__bar : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/time#bar\0" ; pub const LV2_TIME__beat : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/time#beat\0" ; pub const LV2_TIME__beatUnit : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/time#beatUnit\0" ; pub const LV2_TIME__beatsPerBar : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/time#beatsPerBar\0" ; pub const LV2_TIME__beatsPerMinute : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/time#beatsPerMinute\0" ; pub const LV2_TIME__frame : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/time#frame\0" ; pub const LV2_TIME__framesPerSecond : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/time#framesPerSecond\0" ; pub const LV2_TIME__speed : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/time#speed\0" ; pub const LV2_MORPH_URI : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/morph\0" ; pub const LV2_MORPH_PREFIX : & 'static [ u8 ; 32usize ] = b"http://lv2plug.in/ns/ext/morph#\0" ; pub const LV2_MORPH__AutoMorphPort : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/morph#AutoMorphPort\0" ; pub const LV2_MORPH__MorphPort : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/morph#MorphPort\0" ; pub const LV2_MORPH__interface : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/morph#interface\0" ; pub const LV2_MORPH__supportsType : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/morph#supportsType\0" ; pub const LV2_MORPH__currentType : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/morph#currentType\0" ; pub const LV2_BUF_SIZE_URI : & 'static [ u8 ; 34usize ] = b"http://lv2plug.in/ns/ext/buf-size\0" ; pub const LV2_BUF_SIZE_PREFIX : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/buf-size#\0" ; pub const LV2_BUF_SIZE__boundedBlockLength : & 'static [ u8 ; 53usize ] = b"http://lv2plug.in/ns/ext/buf-size#boundedBlockLength\0" ; pub const LV2_BUF_SIZE__fixedBlockLength : & 'static [ u8 ; 51usize ] = b"http://lv2plug.in/ns/ext/buf-size#fixedBlockLength\0" ; pub const LV2_BUF_SIZE__maxBlockLength : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/buf-size#maxBlockLength\0" ; pub const LV2_BUF_SIZE__minBlockLength : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/buf-size#minBlockLength\0" ; pub const LV2_BUF_SIZE__nominalBlockLength : & 'static [ u8 ; 53usize ] = b"http://lv2plug.in/ns/ext/buf-size#nominalBlockLength\0" ; pub const LV2_BUF_SIZE__powerOf2BlockLength : & 'static [ u8 ; 54usize ] = b"http://lv2plug.in/ns/ext/buf-size#powerOf2BlockLength\0" ; pub const LV2_BUF_SIZE__sequenceSize : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/buf-size#sequenceSize\0" ; pub const LV2_PORT_PROPS_URI : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/port-props\0" ; pub const LV2_PORT_PROPS_PREFIX : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/port-props#\0" ; pub const LV2_PORT_PROPS__causesArtifacts : & 'static [ u8 ; 52usize ] = b"http://lv2plug.in/ns/ext/port-props#causesArtifacts\0" ; pub const LV2_PORT_PROPS__continuousCV : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/port-props#continuousCV\0" ; pub const LV2_PORT_PROPS__discreteCV : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/port-props#discreteCV\0" ; pub const LV2_PORT_PROPS__displayPriority : & 'static [ u8 ; 52usize ] = b"http://lv2plug.in/ns/ext/port-props#displayPriority\0" ; pub const LV2_PORT_PROPS__expensive : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/port-props#expensive\0" ; pub const LV2_PORT_PROPS__hasStrictBounds : & 'static [ u8 ; 52usize ] = b"http://lv2plug.in/ns/ext/port-props#hasStrictBounds\0" ; pub const LV2_PORT_PROPS__logarithmic : & 'static [ u8 ; 48usize ] = b"http://lv2plug.in/ns/ext/port-props#logarithmic\0" ; pub const LV2_PORT_PROPS__notAutomatic : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/port-props#notAutomatic\0" ; pub const LV2_PORT_PROPS__notOnGUI : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/port-props#notOnGUI\0" ; pub const LV2_PORT_PROPS__rangeSteps : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/port-props#rangeSteps\0" ; pub const LV2_PORT_PROPS__supportsStrictBounds : & 'static [ u8 ; 57usize ] = b"http://lv2plug.in/ns/ext/port-props#supportsStrictBounds\0" ; pub const LV2_PORT_PROPS__trigger : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/port-props#trigger\0" ; pub const LV2_EVENT_URI : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/event\0" ; pub const LV2_EVENT_PREFIX : & 'static [ u8 ; 32usize ] = b"http://lv2plug.in/ns/ext/event#\0" ; pub const LV2_EVENT__Event : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/event#Event\0" ; pub const LV2_EVENT__EventPort : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/event#EventPort\0" ; pub const LV2_EVENT__FrameStamp : & 'static [ u8 ; 42usize ] = b"http://lv2plug.in/ns/ext/event#FrameStamp\0" ; pub const LV2_EVENT__TimeStamp : & 'static [ u8 ; 41usize ] = b"http://lv2plug.in/ns/ext/event#TimeStamp\0" ; pub const LV2_EVENT__generatesTimeStamp : & 'static [ u8 ; 50usize ] = b"http://lv2plug.in/ns/ext/event#generatesTimeStamp\0" ; pub const LV2_EVENT__generic : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/event#generic\0" ; pub const LV2_EVENT__inheritsEvent : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/event#inheritsEvent\0" ; pub const LV2_EVENT__inheritsTimeStamp : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/event#inheritsTimeStamp\0" ; pub const LV2_EVENT__supportsEvent : & 'static [ u8 ; 45usize ] = b"http://lv2plug.in/ns/ext/event#supportsEvent\0" ; pub const LV2_EVENT__supportsTimeStamp : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/event#supportsTimeStamp\0" ; pub const LV2_EVENT_AUDIO_STAMP : u32 = 0 ; pub const _STDLIB_H : u32 = 1 ; pub const WNOHANG : u32 = 1 ; pub const WUNTRACED : u32 = 2 ; pub const WSTOPPED : u32 = 2 ; pub const WEXITED : u32 = 4 ; pub const WCONTINUED : u32 = 8 ; pub const WNOWAIT : u32 = 16777216 ; pub const __WNOTHREAD : u32 = 536870912 ; pub const __WALL : u32 = 1073741824 ; pub const __WCLONE : u32 = 2147483648 ; pub const __ENUM_IDTYPE_T : u32 = 1 ; pub const __W_CONTINUED : u32 = 65535 ; pub const __WCOREFLAG : u32 = 128 ; pub const __HAVE_FLOAT128 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 0 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const __ldiv_t_defined : u32 = 1 ; pub const __lldiv_t_defined : u32 = 1 ; pub const RAND_MAX : u32 = 2147483647 ; pub const EXIT_FAILURE : u32 = 1 ; pub const EXIT_SUCCESS : u32 = 0 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __FD_ZERO_STOS : & 'static [ u8 ; 6usize ] = b"stosq\0" ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const __timespec_defined : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _SYS_SYSMACROS_H : u32 = 1 ; pub const _BITS_SYSMACROS_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const __PTHREAD_MUTEX_LOCK_ELISION : u32 = 1 ; pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND : u32 = 0 ; pub const __PTHREAD_MUTEX_USE_UNION : u32 = 0 ; pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const _ALLOCA_H : u32 = 1 ; pub const LV2_PATCH_URI : & 'static [ u8 ; 31usize ] = b"http://lv2plug.in/ns/ext/patch\0" ; pub const LV2_PATCH_PREFIX : & 'static [ u8 ; 32usize ] = b"http://lv2plug.in/ns/ext/patch#\0" ; pub const LV2_PATCH__Ack : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/patch#Ack\0" ; pub const LV2_PATCH__Delete : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/patch#Delete\0" ; pub const LV2_PATCH__Copy : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/patch#Copy\0" ; pub const LV2_PATCH__Error : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/patch#Error\0" ; pub const LV2_PATCH__Get : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/patch#Get\0" ; pub const LV2_PATCH__Message : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/patch#Message\0" ; pub const LV2_PATCH__Move : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/patch#Move\0" ; pub const LV2_PATCH__Patch : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/patch#Patch\0" ; pub const LV2_PATCH__Post : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/patch#Post\0" ; pub const LV2_PATCH__Put : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/patch#Put\0" ; pub const LV2_PATCH__Request : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/patch#Request\0" ; pub const LV2_PATCH__Response : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/patch#Response\0" ; pub const LV2_PATCH__Set : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/patch#Set\0" ; pub const LV2_PATCH__accept : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/patch#accept\0" ; pub const LV2_PATCH__add : & 'static [ u8 ; 35usize ] = b"http://lv2plug.in/ns/ext/patch#add\0" ; pub const LV2_PATCH__body : & 'static [ u8 ; 36usize ] = b"http://lv2plug.in/ns/ext/patch#body\0" ; pub const LV2_PATCH__context : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/patch#context\0" ; pub const LV2_PATCH__destination : & 'static [ u8 ; 43usize ] = b"http://lv2plug.in/ns/ext/patch#destination\0" ; pub const LV2_PATCH__property : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/patch#property\0" ; pub const LV2_PATCH__readable : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/patch#readable\0" ; pub const LV2_PATCH__remove : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/patch#remove\0" ; pub const LV2_PATCH__request : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/patch#request\0" ; pub const LV2_PATCH__subject : & 'static [ u8 ; 39usize ] = b"http://lv2plug.in/ns/ext/patch#subject\0" ; pub const LV2_PATCH__sequenceNumber : & 'static [ u8 ; 46usize ] = b"http://lv2plug.in/ns/ext/patch#sequenceNumber\0" ; pub const LV2_PATCH__value : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/patch#value\0" ; pub const LV2_PATCH__wildcard : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/patch#wildcard\0" ; pub const LV2_PATCH__writable : & 'static [ u8 ; 40usize ] = b"http://lv2plug.in/ns/ext/patch#writable\0" ; pub const LV2_RESIZE_PORT_URI : & 'static [ u8 ; 37usize ] = b"http://lv2plug.in/ns/ext/resize-port\0" ; pub const LV2_RESIZE_PORT_PREFIX : & 'static [ u8 ; 38usize ] = b"http://lv2plug.in/ns/ext/resize-port#\0" ; pub const LV2_RESIZE_PORT__asLargeAs : & 'static [ u8 ; 47usize ] = b"http://lv2plug.in/ns/ext/resize-port#asLargeAs\0" ; pub const LV2_RESIZE_PORT__minimumSize : & 'static [ u8 ; 49usize ] = b"http://lv2plug.in/ns/ext/resize-port#minimumSize\0" ; pub const LV2_RESIZE_PORT__resize : & 'static [ u8 ; 44usize ] = b"http://lv2plug.in/ns/ext/resize-port#resize\0" ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __fsid_t { pub __val : [ :: std :: os :: raw :: c_int ; 2usize ] , } # [ test ] fn bindgen_test_layout___fsid_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __fsid_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __fsid_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __fsid_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __fsid_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = :: std :: os :: raw :: c_schar ; pub type int_least16_t = :: std :: os :: raw :: c_short ; pub type int_least32_t = :: std :: os :: raw :: c_int ; pub type int_least64_t = :: std :: os :: raw :: c_long ; pub type uint_least8_t = :: std :: os :: raw :: c_uchar ; pub type uint_least16_t = :: std :: os :: raw :: c_ushort ; pub type uint_least32_t = :: std :: os :: raw :: c_uint ; pub type uint_least64_t = :: std :: os :: raw :: c_ulong ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; # [ doc = "Opaque pointer to host data." ] pub type LV2_URI_Map_Callback_Data = * mut :: std :: os :: raw :: c_void ; # [ doc = "URI Map Feature." ] # [ doc = "" ] # [ doc = "To support this feature the host must pass an LV2_Feature struct to the" ] # [ doc = "plugin's instantiate method with URI \"http://lv2plug.in/ns/ext/uri-map\"" ] # [ doc = "and data pointed to an instance of this struct." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_URI_Map_Feature { # [ doc = "Opaque pointer to host data." ] # [ doc = "" ] # [ doc = "The plugin MUST pass this to any call to functions in this struct." ] # [ doc = "Otherwise, it must not be interpreted in any way." ] pub callback_data : LV2_URI_Map_Callback_Data , # [ doc = "Get the numeric ID of a URI from the host." ] # [ doc = "" ] # [ doc = "@param callback_data Must be the callback_data member of this struct." ] # [ doc = "@param map The 'context' of this URI. Certain extensions may define a" ] # [ doc = "URI that must be passed here with certain restrictions on the return" ] # [ doc = "value (e.g. limited range). This value may be NULL if the plugin needs" ] # [ doc = "an ID for a URI in general. Extensions SHOULD NOT define a context" ] # [ doc = "unless there is a specific need to do so, e.g. to restrict the range of" ] # [ doc = "the returned value." ] # [ doc = "@param uri The URI to be mapped to an integer ID." ] # [ doc = "" ] # [ doc = "This function is referentially transparent; any number of calls with the" ] # [ doc = "same arguments is guaranteed to return the same value over the life of a" ] # [ doc = "plugin instance (though the same URI may return different values with a" ] # [ doc = "different map parameter). However, this function is not necessarily very" ] # [ doc = "fast: plugins SHOULD cache any IDs they might need in performance" ] # [ doc = "critical situations." ] # [ doc = "" ] # [ doc = "The return value 0 is reserved and indicates that an ID for that URI" ] # [ doc = "could not be created for whatever reason. Extensions MAY define more" ] # [ doc = "precisely what this means in a certain context, but in general plugins" ] # [ doc = "SHOULD handle this situation as gracefully as possible. However, hosts" ] # [ doc = "SHOULD NOT return 0 from this function in non-exceptional circumstances" ] # [ doc = "(e.g. the URI map SHOULD be dynamic). Hosts that statically support only" ] # [ doc = "a fixed set of URIs should not expect plugins to function correctly." ] pub uri_to_id : :: std :: option :: Option < unsafe extern "C" fn ( callback_data : LV2_URI_Map_Callback_Data , map : * const :: std :: os :: raw :: c_char , uri : * const :: std :: os :: raw :: c_char ) -> u32 > , } # [ test ] fn bindgen_test_layout_LV2_URI_Map_Feature ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_URI_Map_Feature > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_URI_Map_Feature ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_URI_Map_Feature > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_URI_Map_Feature ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_URI_Map_Feature > ( ) ) ) . callback_data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_URI_Map_Feature ) , "::" , stringify ! ( callback_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_URI_Map_Feature > ( ) ) ) . uri_to_id as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_URI_Map_Feature ) , "::" , stringify ! ( uri_to_id ) ) ) ; } # [ doc = "The data field of the LV2_Feature for this extension." ] # [ doc = "" ] # [ doc = "To support this feature the host must pass an LV2_Feature struct to the" ] # [ doc = "instantiate method with URI \"http://lv2plug.in/ns/ext/data-access\"" ] # [ doc = "and data pointed to an instance of this struct." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Extension_Data_Feature { # [ doc = "A pointer to a method the UI can call to get data (of a type specified" ] # [ doc = "by some other extension) from the plugin." ] # [ doc = "" ] # [ doc = "This call never is never guaranteed to return anything, UIs should" ] # [ doc = "degrade gracefully if direct access to the plugin data is not possible" ] # [ doc = "(in which case this function will return NULL)." ] # [ doc = "" ] # [ doc = "This is for access to large data that can only possibly work if the UI" ] # [ doc = "and plugin are running in the same process.  For all other things, use" ] # [ doc = "the normal LV2 UI communication system." ] pub data_access : :: std :: option :: Option < unsafe extern "C" fn ( uri : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_void > , } # [ test ] fn bindgen_test_layout_LV2_Extension_Data_Feature ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Extension_Data_Feature > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Extension_Data_Feature ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Extension_Data_Feature > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Extension_Data_Feature ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Extension_Data_Feature > ( ) ) ) . data_access as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Extension_Data_Feature ) , "::" , stringify ! ( data_access ) ) ) ; } # [ doc = "Plugin Instance Handle." ] # [ doc = "" ] # [ doc = "This is a handle for one particular instance of a plugin.  It is valid to" ] # [ doc = "compare to NULL (or 0 for C++) but otherwise the host MUST NOT attempt to" ] # [ doc = "interpret it." ] pub type LV2_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "Feature." ] # [ doc = "" ] # [ doc = "Features allow hosts to make additional functionality available to plugins" ] # [ doc = "without requiring modification to the LV2 API.  Extensions may define new" ] # [ doc = "features and specify the `URI` and `data` to be used if necessary." ] # [ doc = "Some features, such as lv2:isLive, do not require the host to pass data." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Feature { # [ doc = "A globally unique, case-sensitive identifier (URI) for this feature." ] # [ doc = "" ] # [ doc = "This MUST be a valid URI string as defined by RFC 3986." ] pub URI : * const :: std :: os :: raw :: c_char , # [ doc = "Pointer to arbitrary data." ] # [ doc = "" ] # [ doc = "The format of this data is defined by the extension which describes the" ] # [ doc = "feature with the given `URI`." ] pub data : * mut :: std :: os :: raw :: c_void , } # [ test ] fn bindgen_test_layout__LV2_Feature ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Feature > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2_Feature ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Feature > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Feature ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Feature > ( ) ) ) . URI as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Feature ) , "::" , stringify ! ( URI ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Feature > ( ) ) ) . data as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Feature ) , "::" , stringify ! ( data ) ) ) ; } pub type LV2_Feature = _LV2_Feature ; # [ doc = "Plugin Descriptor." ] # [ doc = "" ] # [ doc = "This structure provides the core functions necessary to instantiate and use" ] # [ doc = "a plugin." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Descriptor { # [ doc = "A globally unique, case-sensitive identifier for this plugin." ] # [ doc = "" ] # [ doc = "This MUST be a valid URI string as defined by RFC 3986.  All plugins with" ] # [ doc = "the same URI MUST be compatible to some degree, see" ] # [ doc = "http://lv2plug.in/ns/lv2core for details." ] pub URI : * const :: std :: os :: raw :: c_char , # [ doc = "Instantiate the plugin." ] # [ doc = "" ] # [ doc = "Note that instance initialisation should generally occur in activate()" ] # [ doc = "rather than here. If a host calls instantiate(), it MUST call cleanup()" ] # [ doc = "at some point in the future." ] # [ doc = "" ] # [ doc = "@param descriptor Descriptor of the plugin to instantiate." ] # [ doc = "" ] # [ doc = "@param sample_rate Sample rate, in Hz, for the new plugin instance." ] # [ doc = "" ] # [ doc = "@param bundle_path Path to the LV2 bundle which contains this plugin" ] # [ doc = "binary. It MUST include the trailing directory separator (e.g. '/') so" ] # [ doc = "that simply appending a filename will yield the path to that file in the" ] # [ doc = "bundle." ] # [ doc = "" ] # [ doc = "@param features A NULL terminated array of LV2_Feature structs which" ] # [ doc = "represent the features the host supports. Plugins may refuse to" ] # [ doc = "instantiate if required features are not found here. However, hosts MUST" ] # [ doc = "NOT use this as a discovery mechanism: instead, use the RDF data to" ] # [ doc = "determine which features are required and do not attempt to instantiate" ] # [ doc = "unsupported plugins at all. This parameter MUST NOT be NULL, i.e. a host" ] # [ doc = "that supports no features MUST pass a single element array containing" ] # [ doc = "NULL." ] # [ doc = "" ] # [ doc = "@return A handle for the new plugin instance, or NULL if instantiation" ] # [ doc = "has failed." ] pub instantiate : :: std :: option :: Option < unsafe extern "C" fn ( descriptor : * const _LV2_Descriptor , sample_rate : f64 , bundle_path : * const :: std :: os :: raw :: c_char , features : * const * const LV2_Feature ) -> LV2_Handle > , # [ doc = "Connect a port on a plugin instance to a memory location." ] # [ doc = "" ] # [ doc = "Plugin writers should be aware that the host may elect to use the same" ] # [ doc = "buffer for more than one port and even use the same buffer for both" ] # [ doc = "input and output (see lv2:inPlaceBroken in lv2.ttl)." ] # [ doc = "" ] # [ doc = "If the plugin has the feature lv2:hardRTCapable then there are various" ] # [ doc = "things that the plugin MUST NOT do within the connect_port() function;" ] # [ doc = "see lv2core.ttl for details." ] # [ doc = "" ] # [ doc = "connect_port() MUST be called at least once for each port before run()" ] # [ doc = "is called, unless that port is lv2:connectionOptional. The plugin must" ] # [ doc = "pay careful attention to the block size passed to run() since the block" ] # [ doc = "allocated may only just be large enough to contain the data, and is not" ] # [ doc = "guaranteed to remain constant between run() calls." ] # [ doc = "" ] # [ doc = "connect_port() may be called more than once for a plugin instance to" ] # [ doc = "allow the host to change the buffers that the plugin is reading or" ] # [ doc = "writing. These calls may be made before or after activate() or" ] # [ doc = "deactivate() calls." ] # [ doc = "" ] # [ doc = "@param instance Plugin instance containing the port." ] # [ doc = "" ] # [ doc = "@param port Index of the port to connect. The host MUST NOT try to" ] # [ doc = "connect a port index that is not defined in the plugin's RDF data. If" ] # [ doc = "it does, the plugin's behaviour is undefined (a crash is likely)." ] # [ doc = "" ] # [ doc = "@param data_location Pointer to data of the type defined by the port" ] # [ doc = "type in the plugin's RDF data (e.g. an array of float for an" ] # [ doc = "lv2:AudioPort). This pointer must be stored by the plugin instance and" ] # [ doc = "used to read/write data when run() is called. Data present at the time" ] # [ doc = "of the connect_port() call MUST NOT be considered meaningful." ] pub connect_port : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , port : u32 , data_location : * mut :: std :: os :: raw :: c_void ) > , # [ doc = "Initialise a plugin instance and activate it for use." ] # [ doc = "" ] # [ doc = "This is separated from instantiate() to aid real-time support and so" ] # [ doc = "that hosts can reinitialise a plugin instance by calling deactivate()" ] # [ doc = "and then activate(). In this case the plugin instance MUST reset all" ] # [ doc = "state information dependent on the history of the plugin instance except" ] # [ doc = "for any data locations provided by connect_port(). If there is nothing" ] # [ doc = "for activate() to do then this field may be NULL." ] # [ doc = "" ] # [ doc = "When present, hosts MUST call this function once before run() is called" ] # [ doc = "for the first time. This call SHOULD be made as close to the run() call" ] # [ doc = "as possible and indicates to real-time plugins that they are now live," ] # [ doc = "however plugins MUST NOT rely on a prompt call to run() after" ] # [ doc = "activate()." ] # [ doc = "" ] # [ doc = "The host MUST NOT call activate() again until deactivate() has been" ] # [ doc = "called first. If a host calls activate(), it MUST call deactivate() at" ] # [ doc = "some point in the future. Note that connect_port() may be called before" ] # [ doc = "or after activate()." ] pub activate : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle ) > , # [ doc = "Run a plugin instance for a block." ] # [ doc = "" ] # [ doc = "Note that if an activate() function exists then it must be called before" ] # [ doc = "run(). If deactivate() is called for a plugin instance then run() may" ] # [ doc = "not be called until activate() has been called again." ] # [ doc = "" ] # [ doc = "If the plugin has the feature lv2:hardRTCapable then there are various" ] # [ doc = "things that the plugin MUST NOT do within the run() function (see" ] # [ doc = "lv2core.ttl for details)." ] # [ doc = "" ] # [ doc = "As a special case, when `sample_count` is 0, the plugin should update" ] # [ doc = "any output ports that represent a single instant in time (e.g. control" ] # [ doc = "ports, but not audio ports). This is particularly useful for latent" ] # [ doc = "plugins, which should update their latency output port so hosts can" ] # [ doc = "pre-roll plugins to compute latency. Plugins MUST NOT crash when" ] # [ doc = "`sample_count` is 0." ] # [ doc = "" ] # [ doc = "@param instance Instance to be run." ] # [ doc = "" ] # [ doc = "@param sample_count The block size (in samples) for which the plugin" ] # [ doc = "instance must run." ] pub run : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , sample_count : u32 ) > , # [ doc = "Deactivate a plugin instance (counterpart to activate())." ] # [ doc = "" ] # [ doc = "Hosts MUST deactivate all activated instances after they have been run()" ] # [ doc = "for the last time. This call SHOULD be made as close to the last run()" ] # [ doc = "call as possible and indicates to real-time plugins that they are no" ] # [ doc = "longer live, however plugins MUST NOT rely on prompt deactivation. If" ] # [ doc = "there is nothing for deactivate() to do then this field may be NULL" ] # [ doc = "" ] # [ doc = "Deactivation is not similar to pausing since the plugin instance will be" ] # [ doc = "reinitialised by activate(). However, deactivate() itself MUST NOT fully" ] # [ doc = "reset plugin state. For example, the host may deactivate a plugin, then" ] # [ doc = "store its state (using some extension to do so)." ] # [ doc = "" ] # [ doc = "Hosts MUST NOT call deactivate() unless activate() was previously" ] # [ doc = "called. Note that connect_port() may be called before or after" ] # [ doc = "deactivate()." ] pub deactivate : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle ) > , # [ doc = "Clean up a plugin instance (counterpart to instantiate())." ] # [ doc = "" ] # [ doc = "Once an instance of a plugin has been finished with it must be deleted" ] # [ doc = "using this function. The instance handle passed ceases to be valid after" ] # [ doc = "this call." ] # [ doc = "" ] # [ doc = "If activate() was called for a plugin instance then a corresponding call" ] # [ doc = "to deactivate() MUST be made before cleanup() is called. Hosts MUST NOT" ] # [ doc = "call cleanup() unless instantiate() was previously called." ] pub cleanup : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle ) > , # [ doc = "Return additional plugin data defined by some extenion." ] # [ doc = "" ] # [ doc = "A typical use of this facility is to return a struct containing function" ] # [ doc = "pointers to extend the LV2_Descriptor API." ] # [ doc = "" ] # [ doc = "The actual type and meaning of the returned object MUST be specified" ] # [ doc = "precisely by the extension. This function MUST return NULL for any" ] # [ doc = "unsupported URI. If a plugin does not support any extension data, this" ] # [ doc = "field may be NULL." ] # [ doc = "" ] # [ doc = "The host is never responsible for freeing the returned value." ] pub extension_data : :: std :: option :: Option < unsafe extern "C" fn ( uri : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_void > , } # [ test ] fn bindgen_test_layout__LV2_Descriptor ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Descriptor > ( ) , 64usize , concat ! ( "Size of: " , stringify ! ( _LV2_Descriptor ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Descriptor > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Descriptor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . URI as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( URI ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . instantiate as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( instantiate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . connect_port as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( connect_port ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . activate as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( activate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . run as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( run ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . deactivate as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( deactivate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . cleanup as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( cleanup ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Descriptor > ( ) ) ) . extension_data as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Descriptor ) , "::" , stringify ! ( extension_data ) ) ) ; } pub type LV2_Descriptor = _LV2_Descriptor ; extern "C" { # [ doc = "Prototype for plugin accessor function." ] # [ doc = "" ] # [ doc = "Plugins are discovered by hosts using RDF data (not by loading libraries)." ] # [ doc = "See http://lv2plug.in for details on the discovery process, though most" ] # [ doc = "hosts should use an existing library to implement this functionality." ] # [ doc = "" ] # [ doc = "This is the simple plugin discovery API, suitable for most statically" ] # [ doc = "defined plugins.  Advanced plugins that need access to their bundle during" ] # [ doc = "discovery can use lv2_lib_descriptor() instead.  Plugin libraries MUST" ] # [ doc = "include a function called \"lv2_descriptor\" or \"lv2_lib_descriptor\" with" ] # [ doc = "C-style linkage, but SHOULD provide \"lv2_descriptor\" wherever possible." ] # [ doc = "" ] # [ doc = "When it is time to load a plugin (designated by its URI), the host loads the" ] # [ doc = "plugin's library, gets the lv2_descriptor() function from it, and uses this" ] # [ doc = "function to find the LV2_Descriptor for the desired plugin.  Plugins are" ] # [ doc = "accessed by index using values from 0 upwards.  This function MUST return" ] # [ doc = "NULL for out of range indices, so the host can enumerate plugins by" ] # [ doc = "increasing `index` until NULL is returned." ] # [ doc = "" ] # [ doc = "Note that `index` has no meaning, hosts MUST NOT depend on it remaining" ] # [ doc = "consistent between loads of the plugin library." ] pub fn lv2_descriptor ( index : u32 ) -> * const LV2_Descriptor ; } # [ doc = "Type of the lv2_descriptor() function in a library (old discovery API)." ] pub type LV2_Descriptor_Function = :: std :: option :: Option < unsafe extern "C" fn ( index : u32 ) -> * const LV2_Descriptor > ; # [ doc = "Handle for a library descriptor." ] pub type LV2_Lib_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "Descriptor for a plugin library." ] # [ doc = "" ] # [ doc = "To access a plugin library, the host creates an LV2_Lib_Descriptor via the" ] # [ doc = "lv2_lib_descriptor() function in the shared object." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Lib_Descriptor { # [ doc = "Opaque library data which must be passed as the first parameter to all" ] # [ doc = "the methods of this struct." ] pub handle : LV2_Lib_Handle , # [ doc = "The total size of this struct.  This allows for this struct to be" ] # [ doc = "expanded in the future if necessary.  This MUST be set by the library to" ] # [ doc = "sizeof(LV2_Lib_Descriptor).  The host MUST NOT access any fields of this" ] # [ doc = "struct beyond get_plugin() unless this field indicates they are present." ] pub size : u32 , # [ doc = "Destroy this library descriptor and free all related resources." ] pub cleanup : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Lib_Handle ) > , # [ doc = "Plugin accessor." ] # [ doc = "" ] # [ doc = "Plugins are accessed by index using values from 0 upwards.  Out of range" ] # [ doc = "indices MUST result in this function returning NULL, so the host can" ] # [ doc = "enumerate plugins by increasing `index` until NULL is returned." ] pub get_plugin : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Lib_Handle , index : u32 ) -> * const LV2_Descriptor > , } # [ test ] fn bindgen_test_layout_LV2_Lib_Descriptor ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Lib_Descriptor > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( LV2_Lib_Descriptor ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Lib_Descriptor > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Lib_Descriptor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Lib_Descriptor > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Lib_Descriptor ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Lib_Descriptor > ( ) ) ) . size as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Lib_Descriptor ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Lib_Descriptor > ( ) ) ) . cleanup as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Lib_Descriptor ) , "::" , stringify ! ( cleanup ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Lib_Descriptor > ( ) ) ) . get_plugin as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Lib_Descriptor ) , "::" , stringify ! ( get_plugin ) ) ) ; } extern "C" { # [ doc = "Prototype for library accessor function." ] # [ doc = "" ] # [ doc = "This is the more advanced discovery API, which allows plugin libraries to" ] # [ doc = "access their bundles during discovery, which makes it possible for plugins to" ] # [ doc = "be dynamically defined by files in their bundle.  This API also has an" ] # [ doc = "explicit cleanup function, removing any need for non-portable shared library" ] # [ doc = "destructors.  Simple plugins that do not require these features may use" ] # [ doc = "lv2_descriptor() instead." ] # [ doc = "" ] # [ doc = "This is the entry point for a plugin library.  Hosts load this symbol from" ] # [ doc = "the library and call this function to obtain a library descriptor which can" ] # [ doc = "be used to access all the contained plugins.  The returned object must not" ] # [ doc = "be destroyed (using LV2_Lib_Descriptor::cleanup()) until all plugins loaded" ] # [ doc = "from that library have been destroyed." ] pub fn lv2_lib_descriptor ( bundle_path : * const :: std :: os :: raw :: c_char , features : * const * const LV2_Feature ) -> * const LV2_Lib_Descriptor ; } # [ doc = "Type of the lv2_lib_descriptor() function in an LV2 library." ] pub type LV2_Lib_Descriptor_Function = :: std :: option :: Option < unsafe extern "C" fn ( bundle_path : * const :: std :: os :: raw :: c_char , features : * const * const LV2_Feature ) -> * const LV2_Lib_Descriptor > ; # [ doc = "< Completed successfully." ] pub const LV2_Worker_Status_LV2_WORKER_SUCCESS : LV2_Worker_Status = 0 ; # [ doc = "< Unknown error." ] pub const LV2_Worker_Status_LV2_WORKER_ERR_UNKNOWN : LV2_Worker_Status = 1 ; # [ doc = "< Failed due to lack of space." ] pub const LV2_Worker_Status_LV2_WORKER_ERR_NO_SPACE : LV2_Worker_Status = 2 ; # [ doc = "Status code for worker functions." ] pub type LV2_Worker_Status = u32 ; # [ doc = " Opaque handle for LV2_Worker_Interface::work()." ] pub type LV2_Worker_Respond_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "A function to respond to run() from the worker method." ] # [ doc = "" ] # [ doc = "The `data` MUST be safe for the host to copy and later pass to" ] # [ doc = "work_response(), and the host MUST guarantee that it will be eventually" ] # [ doc = "passed to work_response() if this function returns LV2_WORKER_SUCCESS." ] pub type LV2_Worker_Respond_Function = :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Worker_Respond_Handle , size : u32 , data : * const :: std :: os :: raw :: c_void ) -> LV2_Worker_Status > ; # [ doc = "Plugin Worker Interface." ] # [ doc = "" ] # [ doc = "This is the interface provided by the plugin to implement a worker method." ] # [ doc = "The plugin's extension_data() method should return an LV2_Worker_Interface" ] # [ doc = "when called with LV2_WORKER__interface as its argument." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Worker_Interface { # [ doc = "The worker method.  This is called by the host in a non-realtime context" ] # [ doc = "as requested, possibly with an arbitrary message to handle." ] # [ doc = "" ] # [ doc = "A response can be sent to run() using `respond`.  The plugin MUST NOT" ] # [ doc = "make any assumptions about which thread calls this method, except that" ] # [ doc = "there are no real-time requirements and only one call may be executed at" ] # [ doc = "a time.  That is, the host MAY call this method from any non-real-time" ] # [ doc = "thread, but MUST NOT make concurrent calls to this method from several" ] # [ doc = "threads." ] # [ doc = "" ] # [ doc = "@param instance The LV2 instance this is a method on." ] # [ doc = "@param respond  A function for sending a response to run()." ] # [ doc = "@param handle   Must be passed to `respond` if it is called." ] # [ doc = "@param size     The size of `data`." ] # [ doc = "@param data     Data from run(), or NULL." ] pub work : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , respond : LV2_Worker_Respond_Function , handle : LV2_Worker_Respond_Handle , size : u32 , data : * const :: std :: os :: raw :: c_void ) -> LV2_Worker_Status > , # [ doc = "Handle a response from the worker.  This is called by the host in the" ] # [ doc = "run() context when a response from the worker is ready." ] # [ doc = "" ] # [ doc = "@param instance The LV2 instance this is a method on." ] # [ doc = "@param size     The size of `body`." ] # [ doc = "@param body     Message body, or NULL." ] pub work_response : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , size : u32 , body : * const :: std :: os :: raw :: c_void ) -> LV2_Worker_Status > , # [ doc = "Called when all responses for this cycle have been delivered." ] # [ doc = "" ] # [ doc = "Since work_response() may be called after run() finished, this provides" ] # [ doc = "a hook for code that must run after the cycle is completed." ] # [ doc = "" ] # [ doc = "This field may be NULL if the plugin has no use for it.  Otherwise, the" ] # [ doc = "host MUST call it after every run(), regardless of whether or not any" ] # [ doc = "responses were sent that cycle." ] pub end_run : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle ) -> LV2_Worker_Status > , } # [ test ] fn bindgen_test_layout__LV2_Worker_Interface ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Worker_Interface > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( _LV2_Worker_Interface ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Worker_Interface > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Worker_Interface ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Worker_Interface > ( ) ) ) . work as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Worker_Interface ) , "::" , stringify ! ( work ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Worker_Interface > ( ) ) ) . work_response as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Worker_Interface ) , "::" , stringify ! ( work_response ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Worker_Interface > ( ) ) ) . end_run as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Worker_Interface ) , "::" , stringify ! ( end_run ) ) ) ; } pub type LV2_Worker_Interface = _LV2_Worker_Interface ; # [ doc = " Opaque handle for LV2_Worker_Schedule." ] pub type LV2_Worker_Schedule_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "Schedule Worker Host Feature." ] # [ doc = "" ] # [ doc = "The host passes this feature to provide a schedule_work() function, which" ] # [ doc = "the plugin can use to schedule a worker call from run()." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Worker_Schedule { # [ doc = "Opaque host data." ] pub handle : LV2_Worker_Schedule_Handle , # [ doc = "Request from run() that the host call the worker." ] # [ doc = "" ] # [ doc = "This function is in the audio threading class.  It should be called from" ] # [ doc = "run() to request that the host call the work() method in a non-realtime" ] # [ doc = "context with the given arguments." ] # [ doc = "" ] # [ doc = "This function is always safe to call from run(), but it is not" ] # [ doc = "guaranteed that the worker is actually called from a different thread." ] # [ doc = "In particular, when free-wheeling (e.g. for offline rendering), the" ] # [ doc = "worker may be executed immediately.  This allows single-threaded" ] # [ doc = "processing with sample accuracy and avoids timing problems when run() is" ] # [ doc = "executing much faster or slower than real-time." ] # [ doc = "" ] # [ doc = "Plugins SHOULD be written in such a way that if the worker runs" ] # [ doc = "immediately, and responses from the worker are delivered immediately," ] # [ doc = "the effect of the work takes place immediately with sample accuracy." ] # [ doc = "" ] # [ doc = "The `data` MUST be safe for the host to copy and later pass to work()," ] # [ doc = "and the host MUST guarantee that it will be eventually passed to work()" ] # [ doc = "if this function returns LV2_WORKER_SUCCESS." ] # [ doc = "" ] # [ doc = "@param handle The handle field of this struct." ] # [ doc = "@param size   The size of `data`." ] # [ doc = "@param data   Message to pass to work(), or NULL." ] pub schedule_work : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Worker_Schedule_Handle , size : u32 , data : * const :: std :: os :: raw :: c_void ) -> LV2_Worker_Status > , } # [ test ] fn bindgen_test_layout__LV2_Worker_Schedule ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Worker_Schedule > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2_Worker_Schedule ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Worker_Schedule > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Worker_Schedule ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Worker_Schedule > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Worker_Schedule ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Worker_Schedule > ( ) ) ) . schedule_work as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Worker_Schedule ) , "::" , stringify ! ( schedule_work ) ) ) ; } pub type LV2_Worker_Schedule = _LV2_Worker_Schedule ; pub type wchar_t = :: std :: os :: raw :: c_int ; pub type max_align_t = u128 ; # [ doc = " @cond */" ] pub type lv2_atom_assert_double_fits_in_64_bits = [ :: std :: os :: raw :: c_char ; 1usize ] ; # [ doc = " The header of an atom:Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom { # [ doc = "< Size in bytes, not including type and size." ] pub size : u32 , # [ doc = "< Type of this atom (mapped URI)." ] pub type_ : u32 , } # [ test ] fn bindgen_test_layout_LV2_Atom ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom > ( ) ) ) . size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom > ( ) ) ) . type_ as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom ) , "::" , stringify ! ( type_ ) ) ) ; } # [ doc = " An atom:Int or atom:Bool.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Int { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Integer value." ] pub body : i32 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Int ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Int > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Int ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Int > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Int ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Int > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Int ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Int > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Int ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " An atom:Long.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Long { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Integer value." ] pub body : i64 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Long ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Long > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Long ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Long > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Long ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Long > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Long ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Long > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Long ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " An atom:Float.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Float { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Floating point value." ] pub body : f32 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Float ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Float > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Float ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Float > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Float ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Float > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Float ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Float > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Float ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " An atom:Double.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Double { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Floating point value." ] pub body : f64 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Double ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Double > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Double ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Double > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Double ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Double > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Double ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Double > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Double ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " An atom:Bool.  May be cast to LV2_Atom." ] pub type LV2_Atom_Bool = LV2_Atom_Int ; # [ doc = " An atom:URID.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_URID { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< URID." ] pub body : u32 , } # [ test ] fn bindgen_test_layout_LV2_Atom_URID ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_URID > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_URID ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_URID > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_URID ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_URID > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_URID ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_URID > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_URID ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " An atom:String.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_String { # [ doc = "< Atom header." ] pub atom : LV2_Atom , } # [ test ] fn bindgen_test_layout_LV2_Atom_String ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_String > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_String ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_String > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_String ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_String > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_String ) , "::" , stringify ! ( atom ) ) ) ; } # [ doc = " The body of an atom:Literal." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Literal_Body { # [ doc = "< Datatype URID." ] pub datatype : u32 , # [ doc = "< Language URID." ] pub lang : u32 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Literal_Body ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Literal_Body > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Literal_Body ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Literal_Body > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Literal_Body ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Literal_Body > ( ) ) ) . datatype as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Literal_Body ) , "::" , stringify ! ( datatype ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Literal_Body > ( ) ) ) . lang as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Literal_Body ) , "::" , stringify ! ( lang ) ) ) ; } # [ doc = " An atom:Literal.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Literal { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Body." ] pub body : LV2_Atom_Literal_Body , } # [ test ] fn bindgen_test_layout_LV2_Atom_Literal ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Literal > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Literal ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Literal > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Literal ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Literal > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Literal ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Literal > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Literal ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " An atom:Tuple.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Tuple { # [ doc = "< Atom header." ] pub atom : LV2_Atom , } # [ test ] fn bindgen_test_layout_LV2_Atom_Tuple ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Tuple > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Tuple ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Tuple > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Tuple ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Tuple > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Tuple ) , "::" , stringify ! ( atom ) ) ) ; } # [ doc = " The body of an atom:Vector." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Vector_Body { # [ doc = "< The size of each element in the vector." ] pub child_size : u32 , # [ doc = "< The type of each element in the vector." ] pub child_type : u32 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Vector_Body ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Vector_Body > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Vector_Body ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Vector_Body > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Vector_Body ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Vector_Body > ( ) ) ) . child_size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Vector_Body ) , "::" , stringify ! ( child_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Vector_Body > ( ) ) ) . child_type as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Vector_Body ) , "::" , stringify ! ( child_type ) ) ) ; } # [ doc = " An atom:Vector.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Vector { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Body." ] pub body : LV2_Atom_Vector_Body , } # [ test ] fn bindgen_test_layout_LV2_Atom_Vector ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Vector > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Vector ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Vector > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Vector ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Vector > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Vector ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Vector > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Vector ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " The body of an atom:Property (e.g. in an atom:Object)." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Property_Body { # [ doc = "< Key (predicate) (mapped URI)." ] pub key : u32 , # [ doc = "< Context URID (may be, and generally is, 0)." ] pub context : u32 , # [ doc = "< Value atom header." ] pub value : LV2_Atom , } # [ test ] fn bindgen_test_layout_LV2_Atom_Property_Body ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Property_Body > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Property_Body ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Property_Body > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Property_Body ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Property_Body > ( ) ) ) . key as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Property_Body ) , "::" , stringify ! ( key ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Property_Body > ( ) ) ) . context as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Property_Body ) , "::" , stringify ! ( context ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Property_Body > ( ) ) ) . value as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Property_Body ) , "::" , stringify ! ( value ) ) ) ; } # [ doc = " An atom:Property.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Property { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Body." ] pub body : LV2_Atom_Property_Body , } # [ test ] fn bindgen_test_layout_LV2_Atom_Property ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Property > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Property ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Property > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Property ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Property > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Property ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Property > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Property ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " The body of an atom:Object. May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Object_Body { # [ doc = "< URID, or 0 for blank." ] pub id : u32 , # [ doc = "< Type URID (same as rdf:type, for fast dispatch)." ] pub otype : u32 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Object_Body ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Object_Body > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Object_Body ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Object_Body > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Object_Body ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Object_Body > ( ) ) ) . id as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Object_Body ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Object_Body > ( ) ) ) . otype as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Object_Body ) , "::" , stringify ! ( otype ) ) ) ; } # [ doc = " An atom:Object.  May be cast to LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Object { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Body." ] pub body : LV2_Atom_Object_Body , } # [ test ] fn bindgen_test_layout_LV2_Atom_Object ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Object > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Object ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Object > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Object ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Object > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Object ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Object > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Object ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = " The header of an atom:Event.  Note this type is NOT an LV2_Atom." ] # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct LV2_Atom_Event { pub time : LV2_Atom_Event__bindgen_ty_1 , # [ doc = "< Event body atom header." ] pub body : LV2_Atom , } # [ doc = " Time stamp.  Which type is valid is determined by context." ] # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union LV2_Atom_Event__bindgen_ty_1 { # [ doc = "< Time in audio frames." ] pub frames : i64 , # [ doc = "< Time in beats." ] pub beats : f64 , _bindgen_union_align : u64 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Event__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Event__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Event__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Event__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Event__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Event__bindgen_ty_1 > ( ) ) ) . frames as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Event__bindgen_ty_1 ) , "::" , stringify ! ( frames ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Event__bindgen_ty_1 > ( ) ) ) . beats as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Event__bindgen_ty_1 ) , "::" , stringify ! ( beats ) ) ) ; } # [ test ] fn bindgen_test_layout_LV2_Atom_Event ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Event > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Event ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Event > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Event ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Event > ( ) ) ) . time as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Event ) , "::" , stringify ! ( time ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Event > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Event ) , "::" , stringify ! ( body ) ) ) ; } # [ doc = "The body of an atom:Sequence (a sequence of events)." ] # [ doc = "" ] # [ doc = "The unit field is either a URID that described an appropriate time stamp" ] # [ doc = "type, or may be 0 where a default stamp type is known.  For" ] # [ doc = "LV2_Descriptor::run(), the default stamp type is audio frames." ] # [ doc = "" ] # [ doc = "The contents of a sequence is a series of LV2_Atom_Event, each aligned" ] # [ doc = "to 64-bits, e.g.:" ] # [ doc = "<pre>" ] # [ doc = "| Event 1 (size 6)                              | Event 2" ] # [ doc = "|       |       |       |       |       |       |       |       |" ] # [ doc = "| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |" ] # [ doc = "|FRAMES |SUBFRMS|TYPE   |SIZE   |DATADATADATAPAD|FRAMES |SUBFRMS|..." ] # [ doc = "</pre>" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Sequence_Body { # [ doc = "< URID of unit of event time stamps." ] pub unit : u32 , # [ doc = "< Currently unused." ] pub pad : u32 , } # [ test ] fn bindgen_test_layout_LV2_Atom_Sequence_Body ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Sequence_Body > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Sequence_Body ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Sequence_Body > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Sequence_Body ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Sequence_Body > ( ) ) ) . unit as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Sequence_Body ) , "::" , stringify ! ( unit ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Sequence_Body > ( ) ) ) . pad as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Sequence_Body ) , "::" , stringify ! ( pad ) ) ) ; } # [ doc = " An atom:Sequence." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Sequence { # [ doc = "< Atom header." ] pub atom : LV2_Atom , # [ doc = "< Body." ] pub body : LV2_Atom_Sequence_Body , } # [ test ] fn bindgen_test_layout_LV2_Atom_Sequence ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Sequence > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Sequence ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Sequence > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Sequence ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Sequence > ( ) ) ) . atom as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Sequence ) , "::" , stringify ! ( atom ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Sequence > ( ) ) ) . body as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Sequence ) , "::" , stringify ! ( body ) ) ) ; } pub type va_list = __builtin_va_list ; pub type __gnuc_va_list = __builtin_va_list ; extern "C" { pub fn memcpy ( __dest : * mut :: std :: os :: raw :: c_void , __src : * const :: std :: os :: raw :: c_void , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn memmove ( __dest : * mut :: std :: os :: raw :: c_void , __src : * const :: std :: os :: raw :: c_void , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn memccpy ( __dest : * mut :: std :: os :: raw :: c_void , __src : * const :: std :: os :: raw :: c_void , __c : :: std :: os :: raw :: c_int , __n : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn memset ( __s : * mut :: std :: os :: raw :: c_void , __c : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn memcmp ( __s1 : * const :: std :: os :: raw :: c_void , __s2 : * const :: std :: os :: raw :: c_void , __n : :: std :: os :: raw :: c_ulong ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn memchr ( __s : * const :: std :: os :: raw :: c_void , __c : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn strcpy ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strncpy ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strcat ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strncat ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strcmp ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strncmp ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_ulong ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strcoll ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strxfrm ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_ulong ) -> :: std :: os :: raw :: c_ulong ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __locale_struct { pub __locales : [ * mut __locale_data ; 13usize ] , pub __ctype_b : * const :: std :: os :: raw :: c_ushort , pub __ctype_tolower : * const :: std :: os :: raw :: c_int , pub __ctype_toupper : * const :: std :: os :: raw :: c_int , pub __names : [ * const :: std :: os :: raw :: c_char ; 13usize ] , } # [ test ] fn bindgen_test_layout___locale_struct ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __locale_struct > ( ) , 232usize , concat ! ( "Size of: " , stringify ! ( __locale_struct ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __locale_struct > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __locale_struct ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __locales as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __locales ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __ctype_b as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __ctype_b ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __ctype_tolower as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __ctype_tolower ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __ctype_toupper as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __ctype_toupper ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __locale_struct > ( ) ) ) . __names as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( __locale_struct ) , "::" , stringify ! ( __names ) ) ) ; } pub type __locale_t = * mut __locale_struct ; pub type locale_t = __locale_t ; extern "C" { pub fn strcoll_l ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char , __l : locale_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strxfrm_l ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char , __n : usize , __l : locale_t ) -> usize ; } extern "C" { pub fn strdup ( __s : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strndup ( __string : * const :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strchr ( __s : * const :: std :: os :: raw :: c_char , __c : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strrchr ( __s : * const :: std :: os :: raw :: c_char , __c : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strcspn ( __s : * const :: std :: os :: raw :: c_char , __reject : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn strspn ( __s : * const :: std :: os :: raw :: c_char , __accept : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn strpbrk ( __s : * const :: std :: os :: raw :: c_char , __accept : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strstr ( __haystack : * const :: std :: os :: raw :: c_char , __needle : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strtok ( __s : * mut :: std :: os :: raw :: c_char , __delim : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __strtok_r ( __s : * mut :: std :: os :: raw :: c_char , __delim : * const :: std :: os :: raw :: c_char , __save_ptr : * mut * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strtok_r ( __s : * mut :: std :: os :: raw :: c_char , __delim : * const :: std :: os :: raw :: c_char , __save_ptr : * mut * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strlen ( __s : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn strnlen ( __string : * const :: std :: os :: raw :: c_char , __maxlen : usize ) -> usize ; } extern "C" { pub fn strerror ( __errnum : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { # [ link_name = "\u{1}___xpg_strerror_r" ] pub fn strerror_r ( __errnum : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __buflen : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strerror_l ( __errnum : :: std :: os :: raw :: c_int , __l : locale_t ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn bcmp ( __s1 : * const :: std :: os :: raw :: c_void , __s2 : * const :: std :: os :: raw :: c_void , __n : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bcopy ( __src : * const :: std :: os :: raw :: c_void , __dest : * mut :: std :: os :: raw :: c_void , __n : usize ) ; } extern "C" { pub fn bzero ( __s : * mut :: std :: os :: raw :: c_void , __n : :: std :: os :: raw :: c_ulong ) ; } extern "C" { pub fn index ( __s : * const :: std :: os :: raw :: c_char , __c : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn rindex ( __s : * const :: std :: os :: raw :: c_char , __c : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn ffs ( __i : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ffsl ( __l : :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ffsll ( __ll : :: std :: os :: raw :: c_longlong ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strcasecmp ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strncasecmp ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_ulong ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strcasecmp_l ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char , __loc : locale_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn strncasecmp_l ( __s1 : * const :: std :: os :: raw :: c_char , __s2 : * const :: std :: os :: raw :: c_char , __n : usize , __loc : locale_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn explicit_bzero ( __s : * mut :: std :: os :: raw :: c_void , __n : usize ) ; } extern "C" { pub fn strsep ( __stringp : * mut * mut :: std :: os :: raw :: c_char , __delim : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn strsignal ( __sig : :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __stpcpy ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn stpcpy ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __stpncpy ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char , __n : usize ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn stpncpy ( __dest : * mut :: std :: os :: raw :: c_char , __src : * const :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_char ; } # [ doc = " A single entry in an Object query." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Object_Query { # [ doc = "< Key to query (input set by user)" ] pub key : u32 , # [ doc = "< Found value (output set by query function)" ] pub value : * mut * const LV2_Atom , } # [ test ] fn bindgen_test_layout_LV2_Atom_Object_Query ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Object_Query > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Object_Query ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Object_Query > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Object_Query ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Object_Query > ( ) ) ) . key as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Object_Query ) , "::" , stringify ! ( key ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Object_Query > ( ) ) ) . value as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Object_Query ) , "::" , stringify ! ( value ) ) ) ; } extern "C" { pub static LV2_ATOM_OBJECT_QUERY_END : LV2_Atom_Object_Query ; } # [ doc = "Opaque pointer to host data for LV2_URID_Map." ] pub type LV2_URID_Map_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "Opaque pointer to host data for LV2_URID_Unmap." ] pub type LV2_URID_Unmap_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "URI mapped to an integer." ] pub type LV2_URID = u32 ; # [ doc = "URID Map Feature (LV2_URID__map)" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_URID_Map { # [ doc = "Opaque pointer to host data." ] # [ doc = "" ] # [ doc = "This MUST be passed to map_uri() whenever it is called." ] # [ doc = "Otherwise, it must not be interpreted in any way." ] pub handle : LV2_URID_Map_Handle , # [ doc = "Get the numeric ID of a URI." ] # [ doc = "" ] # [ doc = "If the ID does not already exist, it will be created." ] # [ doc = "" ] # [ doc = "This function is referentially transparent; any number of calls with the" ] # [ doc = "same arguments is guaranteed to return the same value over the life of a" ] # [ doc = "plugin instance.  Note, however, that several URIs MAY resolve to the" ] # [ doc = "same ID if the host considers those URIs equivalent." ] # [ doc = "" ] # [ doc = "This function is not necessarily very fast or RT-safe: plugins SHOULD" ] # [ doc = "cache any IDs they might need in performance critical situations." ] # [ doc = "" ] # [ doc = "The return value 0 is reserved and indicates that an ID for that URI" ] # [ doc = "could not be created for whatever reason.  However, hosts SHOULD NOT" ] # [ doc = "return 0 from this function in non-exceptional circumstances (i.e. the" ] # [ doc = "URI map SHOULD be dynamic)." ] # [ doc = "" ] # [ doc = "@param handle Must be the callback_data member of this struct." ] # [ doc = "@param uri The URI to be mapped to an integer ID." ] pub map : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_URID_Map_Handle , uri : * const :: std :: os :: raw :: c_char ) -> LV2_URID > , } # [ test ] fn bindgen_test_layout__LV2_URID_Map ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_URID_Map > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2_URID_Map ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_URID_Map > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_URID_Map ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_URID_Map > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_URID_Map ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_URID_Map > ( ) ) ) . map as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_URID_Map ) , "::" , stringify ! ( map ) ) ) ; } pub type LV2_URID_Map = _LV2_URID_Map ; # [ doc = "URI Unmap Feature (LV2_URID__unmap)" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_URID_Unmap { # [ doc = "Opaque pointer to host data." ] # [ doc = "" ] # [ doc = "This MUST be passed to unmap() whenever it is called." ] # [ doc = "Otherwise, it must not be interpreted in any way." ] pub handle : LV2_URID_Unmap_Handle , # [ doc = "Get the URI for a previously mapped numeric ID." ] # [ doc = "" ] # [ doc = "Returns NULL if `urid` is not yet mapped.  Otherwise, the corresponding" ] # [ doc = "URI is returned in a canonical form.  This MAY not be the exact same" ] # [ doc = "string that was originally passed to LV2_URID_Map::map(), but it MUST be" ] # [ doc = "an identical URI according to the URI syntax specification (RFC3986).  A" ] # [ doc = "non-NULL return for a given `urid` will always be the same for the life" ] # [ doc = "of the plugin.  Plugins that intend to perform string comparison on" ] # [ doc = "unmapped URIs SHOULD first canonicalise URI strings with a call to" ] # [ doc = "map_uri() followed by a call to unmap_uri()." ] # [ doc = "" ] # [ doc = "@param handle Must be the callback_data member of this struct." ] # [ doc = "@param urid The ID to be mapped back to the URI string." ] pub unmap : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_URID_Unmap_Handle , urid : LV2_URID ) -> * const :: std :: os :: raw :: c_char > , } # [ test ] fn bindgen_test_layout__LV2_URID_Unmap ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_URID_Unmap > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2_URID_Unmap ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_URID_Unmap > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_URID_Unmap ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_URID_Unmap > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_URID_Unmap ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_URID_Unmap > ( ) ) ) . unmap as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_URID_Unmap ) , "::" , stringify ! ( unmap ) ) ) ; } pub type LV2_URID_Unmap = _LV2_URID_Unmap ; extern "C" { pub fn __assert_fail ( __assertion : * const :: std :: os :: raw :: c_char , __file : * const :: std :: os :: raw :: c_char , __line : :: std :: os :: raw :: c_uint , __function : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn __assert_perror_fail ( __errnum : :: std :: os :: raw :: c_int , __file : * const :: std :: os :: raw :: c_char , __line : :: std :: os :: raw :: c_uint , __function : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn __assert ( __assertion : * const :: std :: os :: raw :: c_char , __file : * const :: std :: os :: raw :: c_char , __line : :: std :: os :: raw :: c_int ) ; } # [ doc = " Handle for LV2_Atom_Forge_Sink." ] pub type LV2_Atom_Forge_Sink_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = " A reference to a chunk of written output." ] pub type LV2_Atom_Forge_Ref = isize ; # [ doc = " Sink function for writing output.  See lv2_atom_forge_set_sink()." ] pub type LV2_Atom_Forge_Sink = :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Atom_Forge_Sink_Handle , buf : * const :: std :: os :: raw :: c_void , size : u32 ) -> LV2_Atom_Forge_Ref > ; # [ doc = " Function for resolving a reference.  See lv2_atom_forge_set_sink()." ] pub type LV2_Atom_Forge_Deref_Func = :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Atom_Forge_Sink_Handle , ref_ : LV2_Atom_Forge_Ref ) -> * mut LV2_Atom > ; # [ doc = " A stack frame used for keeping track of nested Atom containers." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Atom_Forge_Frame { pub parent : * mut _LV2_Atom_Forge_Frame , pub ref_ : LV2_Atom_Forge_Ref , } # [ test ] fn bindgen_test_layout__LV2_Atom_Forge_Frame ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Atom_Forge_Frame > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2_Atom_Forge_Frame ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Atom_Forge_Frame > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Atom_Forge_Frame ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Atom_Forge_Frame > ( ) ) ) . parent as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Atom_Forge_Frame ) , "::" , stringify ! ( parent ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Atom_Forge_Frame > ( ) ) ) . ref_ as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Atom_Forge_Frame ) , "::" , stringify ! ( ref_ ) ) ) ; } pub type LV2_Atom_Forge_Frame = _LV2_Atom_Forge_Frame ; # [ doc = " A \"forge\" for creating atoms by appending to a buffer." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Atom_Forge { pub buf : * mut u8 , pub offset : u32 , pub size : u32 , pub sink : LV2_Atom_Forge_Sink , pub deref : LV2_Atom_Forge_Deref_Func , pub handle : LV2_Atom_Forge_Sink_Handle , pub stack : * mut LV2_Atom_Forge_Frame , pub Blank : LV2_URID , pub Bool : LV2_URID , pub Chunk : LV2_URID , pub Double : LV2_URID , pub Float : LV2_URID , pub Int : LV2_URID , pub Long : LV2_URID , pub Literal : LV2_URID , pub Object : LV2_URID , pub Path : LV2_URID , pub Property : LV2_URID , pub Resource : LV2_URID , pub Sequence : LV2_URID , pub String : LV2_URID , pub Tuple : LV2_URID , pub URI : LV2_URID , pub URID : LV2_URID , pub Vector : LV2_URID , } # [ test ] fn bindgen_test_layout_LV2_Atom_Forge ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Atom_Forge > ( ) , 120usize , concat ! ( "Size of: " , stringify ! ( LV2_Atom_Forge ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Atom_Forge > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Atom_Forge ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . buf as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( buf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . offset as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . size as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . sink as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( sink ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . deref as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( deref ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . handle as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . stack as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( stack ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Blank as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Blank ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Bool as * const _ as usize } , 52usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Bool ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Chunk as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Chunk ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Double as * const _ as usize } , 60usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Double ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Float as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Float ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Int as * const _ as usize } , 68usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Int ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Long as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Long ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Literal as * const _ as usize } , 76usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Literal ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Object as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Object ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Path as * const _ as usize } , 84usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Path ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Property as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Property ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Resource as * const _ as usize } , 92usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Resource ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Sequence as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Sequence ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . String as * const _ as usize } , 100usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( String ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Tuple as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Tuple ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . URI as * const _ as usize } , 108usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( URI ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . URID as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( URID ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Atom_Forge > ( ) ) ) . Vector as * const _ as usize } , 116usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Atom_Forge ) , "::" , stringify ! ( Vector ) ) ) ; } # [ doc = "This option applies to the instance itself.  The subject must be" ] # [ doc = "ignored." ] pub const LV2_Options_Context_LV2_OPTIONS_INSTANCE : LV2_Options_Context = 0 ; # [ doc = "This option applies to some named resource.  The subject is a URI mapped" ] # [ doc = "to an integer (a LV2_URID, like the key)" ] pub const LV2_Options_Context_LV2_OPTIONS_RESOURCE : LV2_Options_Context = 1 ; # [ doc = "This option applies to some blank node.  The subject is a blank node" ] # [ doc = "identifier, which is valid only within the current local scope." ] pub const LV2_Options_Context_LV2_OPTIONS_BLANK : LV2_Options_Context = 2 ; # [ doc = "This option applies to a port on the instance.  The subject is the" ] # [ doc = "port's index." ] pub const LV2_Options_Context_LV2_OPTIONS_PORT : LV2_Options_Context = 3 ; # [ doc = "The context of an Option, which defines the subject it applies to." ] pub type LV2_Options_Context = u32 ; # [ doc = "An option." ] # [ doc = "" ] # [ doc = "This is a property with a subject, also known as a triple or statement." ] # [ doc = "" ] # [ doc = "This struct is useful anywhere a statement needs to be passed where no" ] # [ doc = "memory ownership issues are present (since the value is a const pointer)." ] # [ doc = "" ] # [ doc = "Options can be passed to an instance via the feature LV2_OPTIONS__options" ] # [ doc = "with data pointed to an array of options terminated by a zeroed option, or" ] # [ doc = "accessed/manipulated using LV2_Options_Interface." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Options_Option { # [ doc = "< Context (type of subject)." ] pub context : LV2_Options_Context , # [ doc = "< Subject." ] pub subject : u32 , # [ doc = "< Key (property)." ] pub key : LV2_URID , # [ doc = "< Size of value in bytes." ] pub size : u32 , # [ doc = "< Type of value (datatype)." ] pub type_ : LV2_URID , # [ doc = "< Pointer to value (object)." ] pub value : * const :: std :: os :: raw :: c_void , } # [ test ] fn bindgen_test_layout__LV2_Options_Option ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Options_Option > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( _LV2_Options_Option ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Options_Option > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Options_Option ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Option > ( ) ) ) . context as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Option ) , "::" , stringify ! ( context ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Option > ( ) ) ) . subject as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Option ) , "::" , stringify ! ( subject ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Option > ( ) ) ) . key as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Option ) , "::" , stringify ! ( key ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Option > ( ) ) ) . size as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Option ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Option > ( ) ) ) . type_ as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Option ) , "::" , stringify ! ( type_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Option > ( ) ) ) . value as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Option ) , "::" , stringify ! ( value ) ) ) ; } pub type LV2_Options_Option = _LV2_Options_Option ; # [ doc = "< Completed successfully." ] pub const LV2_Options_Status_LV2_OPTIONS_SUCCESS : LV2_Options_Status = 0 ; # [ doc = "< Unknown error." ] pub const LV2_Options_Status_LV2_OPTIONS_ERR_UNKNOWN : LV2_Options_Status = 1 ; # [ doc = "< Invalid/unsupported subject." ] pub const LV2_Options_Status_LV2_OPTIONS_ERR_BAD_SUBJECT : LV2_Options_Status = 2 ; # [ doc = "< Invalid/unsupported key." ] pub const LV2_Options_Status_LV2_OPTIONS_ERR_BAD_KEY : LV2_Options_Status = 4 ; # [ doc = "< Invalid/unsupported value." ] pub const LV2_Options_Status_LV2_OPTIONS_ERR_BAD_VALUE : LV2_Options_Status = 8 ; # [ doc = " A status code for option functions." ] pub type LV2_Options_Status = u32 ; # [ doc = "Interface for dynamically setting options (LV2_OPTIONS__interface)." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Options_Interface { # [ doc = "Get the given options." ] # [ doc = "" ] # [ doc = "Each element of the passed options array MUST have type, subject, and" ] # [ doc = "key set.  All other fields (size, type, value) MUST be initialised to" ] # [ doc = "zero, and are set to the option value if such an option is found." ] # [ doc = "" ] # [ doc = "This function is in the \"instantiation\" LV2 threading class, so no other" ] # [ doc = "instance functions may be called concurrently." ] # [ doc = "" ] # [ doc = "@return Bitwise OR of LV2_Options_Status values." ] pub get : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , options : * mut LV2_Options_Option ) -> u32 > , # [ doc = "Set the given options." ] # [ doc = "" ] # [ doc = "This function is in the \"instantiation\" LV2 threading class, so no other" ] # [ doc = "instance functions may be called concurrently." ] # [ doc = "" ] # [ doc = "@return Bitwise OR of LV2_Options_Status values." ] pub set : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , options : * const LV2_Options_Option ) -> u32 > , } # [ test ] fn bindgen_test_layout__LV2_Options_Interface ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Options_Interface > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2_Options_Interface ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Options_Interface > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Options_Interface ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Interface > ( ) ) ) . get as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Interface ) , "::" , stringify ! ( get ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Options_Interface > ( ) ) ) . set as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Options_Interface ) , "::" , stringify ! ( set ) ) ) ; } pub type LV2_Options_Interface = _LV2_Options_Interface ; # [ doc = "A pointer to some widget or other type of UI handle." ] # [ doc = "" ] # [ doc = "The actual type is defined by the type of the UI." ] pub type LV2UI_Widget = * mut :: std :: os :: raw :: c_void ; # [ doc = "A pointer to UI instance internals." ] # [ doc = "" ] # [ doc = "The host may compare this to NULL, but otherwise MUST NOT interpret it." ] pub type LV2UI_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "A pointer to a controller provided by the host." ] # [ doc = "" ] # [ doc = "The UI may compare this to NULL, but otherwise MUST NOT interpret it." ] pub type LV2UI_Controller = * mut :: std :: os :: raw :: c_void ; # [ doc = "A pointer to opaque data for a feature." ] pub type LV2UI_Feature_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "A host-provided function that sends data to a plugin's input ports." ] # [ doc = "" ] # [ doc = "@param controller The opaque controller pointer passed to" ] # [ doc = "LV2UI_Descriptor::instantiate()." ] # [ doc = "" ] # [ doc = "@param port_index Index of the port to update." ] # [ doc = "" ] # [ doc = "@param buffer Buffer containing `buffer_size` bytes of data." ] # [ doc = "" ] # [ doc = "@param buffer_size Size of `buffer` in bytes." ] # [ doc = "" ] # [ doc = "@param port_protocol Either 0 or the URID for a ui:PortProtocol.  If 0, the" ] # [ doc = "protocol is implicitly ui:floatProtocol, the port MUST be an lv2:ControlPort" ] # [ doc = "input, `buffer` MUST point to a single float value, and `buffer_size` MUST" ] # [ doc = "be sizeof(float).  The UI SHOULD NOT use a protocol not supported by the" ] # [ doc = "host, but the host MUST gracefully ignore any protocol it does not" ] # [ doc = "understand." ] pub type LV2UI_Write_Function = :: std :: option :: Option < unsafe extern "C" fn ( controller : LV2UI_Controller , port_index : u32 , buffer_size : u32 , port_protocol : u32 , buffer : * const :: std :: os :: raw :: c_void ) > ; # [ doc = "A plugin UI." ] # [ doc = "" ] # [ doc = "A pointer to an object of this type is returned by the lv2ui_descriptor()" ] # [ doc = "function." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Descriptor { # [ doc = "The URI for this UI (not for the plugin it controls)." ] pub URI : * const :: std :: os :: raw :: c_char , # [ doc = "Create a new UI and return a handle to it.  This function works" ] # [ doc = "similarly to LV2_Descriptor::instantiate()." ] # [ doc = "" ] # [ doc = "@param descriptor The descriptor for the UI to instantiate." ] # [ doc = "" ] # [ doc = "@param plugin_uri The URI of the plugin that this UI will control." ] # [ doc = "" ] # [ doc = "@param bundle_path The path to the bundle containing this UI, including" ] # [ doc = "the trailing directory separator." ] # [ doc = "" ] # [ doc = "@param write_function A function that the UI can use to send data to the" ] # [ doc = "plugin's input ports." ] # [ doc = "" ] # [ doc = "@param controller A handle for the UI instance to be passed as the" ] # [ doc = "first parameter of UI methods." ] # [ doc = "" ] # [ doc = "@param widget (output) widget pointer.  The UI points this at its main" ] # [ doc = "widget, which has the type defined by the UI type in the data file." ] # [ doc = "" ] # [ doc = "@param features An array of LV2_Feature pointers.  The host must pass" ] # [ doc = "all feature URIs that it and the UI supports and any additional data, as" ] # [ doc = "in LV2_Descriptor::instantiate().  Note that UI features and plugin" ] # [ doc = "features are not necessarily the same." ] # [ doc = "" ] pub instantiate : :: std :: option :: Option < unsafe extern "C" fn ( descriptor : * const _LV2UI_Descriptor , plugin_uri : * const :: std :: os :: raw :: c_char , bundle_path : * const :: std :: os :: raw :: c_char , write_function : LV2UI_Write_Function , controller : LV2UI_Controller , widget : * mut LV2UI_Widget , features : * const * const LV2_Feature ) -> LV2UI_Handle > , # [ doc = "Destroy the UI.  The host must not try to access the widget after" ] # [ doc = "calling this function." ] pub cleanup : :: std :: option :: Option < unsafe extern "C" fn ( ui : LV2UI_Handle ) > , # [ doc = "Tell the UI that something interesting has happened at a plugin port." ] # [ doc = "" ] # [ doc = "What is \"interesting\" and how it is written to `buffer` is defined by" ] # [ doc = "`format`, which has the same meaning as in LV2UI_Write_Function()." ] # [ doc = "Format 0 is a special case for lv2:ControlPort, where this function" ] # [ doc = "should be called when the port value changes (but not necessarily for" ] # [ doc = "every change), `buffer_size` must be sizeof(float), and `buffer`" ] # [ doc = "points to a single IEEE-754 float." ] # [ doc = "" ] # [ doc = "By default, the host should only call this function for lv2:ControlPort" ] # [ doc = "inputs.  However, the UI can request updates for other ports statically" ] # [ doc = "with ui:portNotification or dynamicaly with ui:portSubscribe." ] # [ doc = "" ] # [ doc = "The UI MUST NOT retain any reference to `buffer` after this function" ] # [ doc = "returns, it is only valid for the duration of the call." ] # [ doc = "" ] # [ doc = "This member may be NULL if the UI is not interested in any port events." ] pub port_event : :: std :: option :: Option < unsafe extern "C" fn ( ui : LV2UI_Handle , port_index : u32 , buffer_size : u32 , format : u32 , buffer : * const :: std :: os :: raw :: c_void ) > , # [ doc = "Return a data structure associated with an extension URI, typically an" ] # [ doc = "interface struct with additional function pointers" ] # [ doc = "" ] # [ doc = "This member may be set to NULL if the UI is not interested in supporting" ] # [ doc = "any extensions. This is similar to LV2_Descriptor::extension_data()." ] # [ doc = "" ] pub extension_data : :: std :: option :: Option < unsafe extern "C" fn ( uri : * const :: std :: os :: raw :: c_char ) -> * const :: std :: os :: raw :: c_void > , } # [ test ] fn bindgen_test_layout__LV2UI_Descriptor ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Descriptor > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Descriptor ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Descriptor > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Descriptor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Descriptor > ( ) ) ) . URI as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Descriptor ) , "::" , stringify ! ( URI ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Descriptor > ( ) ) ) . instantiate as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Descriptor ) , "::" , stringify ! ( instantiate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Descriptor > ( ) ) ) . cleanup as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Descriptor ) , "::" , stringify ! ( cleanup ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Descriptor > ( ) ) ) . port_event as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Descriptor ) , "::" , stringify ! ( port_event ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Descriptor > ( ) ) ) . extension_data as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Descriptor ) , "::" , stringify ! ( extension_data ) ) ) ; } pub type LV2UI_Descriptor = _LV2UI_Descriptor ; # [ doc = "Feature/interface for resizable UIs (LV2_UI__resize)." ] # [ doc = "" ] # [ doc = "This structure is used in two ways: as a feature passed by the host via" ] # [ doc = "LV2UI_Descriptor::instantiate(), or as an interface provided by a UI via" ] # [ doc = "LV2UI_Descriptor::extension_data())." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Resize { # [ doc = "Pointer to opaque data which must be passed to ui_resize()." ] pub handle : LV2UI_Feature_Handle , # [ doc = "Request/advertise a size change." ] # [ doc = "" ] # [ doc = "When provided by the host, the UI may call this function to inform the" ] # [ doc = "host about the size of the UI." ] # [ doc = "" ] # [ doc = "When provided by the UI, the host may call this function to notify the" ] # [ doc = "UI that it should change its size accordingly.  In this case, the host" ] # [ doc = "must pass the LV2UI_Handle to provide access to the UI instance." ] # [ doc = "" ] # [ doc = "@return 0 on success." ] pub ui_resize : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2UI_Feature_Handle , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int > , } # [ test ] fn bindgen_test_layout__LV2UI_Resize ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Resize > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Resize ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Resize > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Resize ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Resize > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Resize ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Resize > ( ) ) ) . ui_resize as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Resize ) , "::" , stringify ! ( ui_resize ) ) ) ; } pub type LV2UI_Resize = _LV2UI_Resize ; # [ doc = "Feature to map port symbols to UIs." ] # [ doc = "" ] # [ doc = "This can be used by the UI to get the index for a port with the given" ] # [ doc = "symbol.  This makes it possible to implement and distribute a UI separately" ] # [ doc = "from the plugin (since symbol, unlike index, is a stable port identifier)." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Port_Map { # [ doc = "Pointer to opaque data which must be passed to port_index()." ] pub handle : LV2UI_Feature_Handle , # [ doc = "Get the index for the port with the given `symbol`." ] # [ doc = "" ] # [ doc = "@return The index of the port, or LV2UI_INVALID_PORT_INDEX if no such" ] # [ doc = "port is found." ] pub port_index : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2UI_Feature_Handle , symbol : * const :: std :: os :: raw :: c_char ) -> u32 > , } # [ test ] fn bindgen_test_layout__LV2UI_Port_Map ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Port_Map > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Port_Map ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Port_Map > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Port_Map ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Port_Map > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Port_Map ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Port_Map > ( ) ) ) . port_index as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Port_Map ) , "::" , stringify ! ( port_index ) ) ) ; } pub type LV2UI_Port_Map = _LV2UI_Port_Map ; # [ doc = "Feature to subscribe to port updates (LV2_UI__portSubscribe)." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Port_Subscribe { # [ doc = "Pointer to opaque data which must be passed to subscribe() and" ] # [ doc = "unsubscribe()." ] pub handle : LV2UI_Feature_Handle , # [ doc = "Subscribe to updates for a port." ] # [ doc = "" ] # [ doc = "This means that the host will call the UI's port_event() function when" ] # [ doc = "the port value changes (as defined by protocol)." ] # [ doc = "" ] # [ doc = "Calling this function with the same `port_index` and `port_protocol`" ] # [ doc = "as an already active subscription has no effect." ] # [ doc = "" ] # [ doc = "@param handle The handle field of this struct." ] # [ doc = "@param port_index The index of the port." ] # [ doc = "@param port_protocol The URID of the ui:PortProtocol." ] # [ doc = "@param features Features for this subscription." ] # [ doc = "@return 0 on success." ] pub subscribe : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2UI_Feature_Handle , port_index : u32 , port_protocol : u32 , features : * const * const LV2_Feature ) -> u32 > , # [ doc = "Unsubscribe from updates for a port." ] # [ doc = "" ] # [ doc = "This means that the host will cease calling calling port_event() when" ] # [ doc = "the port value changes." ] # [ doc = "" ] # [ doc = "Calling this function with a `port_index` and `port_protocol` that" ] # [ doc = "does not refer to an active port subscription has no effect." ] # [ doc = "" ] # [ doc = "@param handle The handle field of this struct." ] # [ doc = "@param port_index The index of the port." ] # [ doc = "@param port_protocol The URID of the ui:PortProtocol." ] # [ doc = "@param features Features for this subscription." ] # [ doc = "@return 0 on success." ] pub unsubscribe : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2UI_Feature_Handle , port_index : u32 , port_protocol : u32 , features : * const * const LV2_Feature ) -> u32 > , } # [ test ] fn bindgen_test_layout__LV2UI_Port_Subscribe ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Port_Subscribe > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Port_Subscribe ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Port_Subscribe > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Port_Subscribe ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Port_Subscribe > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Port_Subscribe ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Port_Subscribe > ( ) ) ) . subscribe as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Port_Subscribe ) , "::" , stringify ! ( subscribe ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Port_Subscribe > ( ) ) ) . unsubscribe as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Port_Subscribe ) , "::" , stringify ! ( unsubscribe ) ) ) ; } pub type LV2UI_Port_Subscribe = _LV2UI_Port_Subscribe ; # [ doc = "A feature to notify the host that the user has grabbed a UI control." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Touch { # [ doc = "Pointer to opaque data which must be passed to ui_resize()." ] pub handle : LV2UI_Feature_Handle , # [ doc = "Notify the host that a control has been grabbed or released." ] # [ doc = "" ] # [ doc = "The host should cease automating the port or otherwise manipulating the" ] # [ doc = "port value until the control has been ungrabbed." ] # [ doc = "" ] # [ doc = "@param handle The handle field of this struct." ] # [ doc = "@param port_index The index of the port associated with the control." ] # [ doc = "@param grabbed If true, the control has been grabbed, otherwise the" ] # [ doc = "control has been released." ] pub touch : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2UI_Feature_Handle , port_index : u32 , grabbed : bool ) > , } # [ test ] fn bindgen_test_layout__LV2UI_Touch ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Touch > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Touch ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Touch > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Touch ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Touch > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Touch ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Touch > ( ) ) ) . touch as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Touch ) , "::" , stringify ! ( touch ) ) ) ; } pub type LV2UI_Touch = _LV2UI_Touch ; # [ doc = "UI Idle Interface (LV2_UI__idleInterface)" ] # [ doc = "" ] # [ doc = "UIs can provide this interface to have an idle() callback called by the host" ] # [ doc = "rapidly to update the UI." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Idle_Interface { # [ doc = "Run a single iteration of the UI's idle loop." ] # [ doc = "" ] # [ doc = "This will be called rapidly in the UI thread at a rate appropriate" ] # [ doc = "for a toolkit main loop.  There are no precise timing guarantees, but" ] # [ doc = "the host should attempt to call idle() at a high enough rate for smooth" ] # [ doc = "animation, at least 30Hz." ] # [ doc = "" ] # [ doc = "@return non-zero if the UI has been closed, in which case the host" ] # [ doc = "should stop calling idle(), and can either completely destroy the UI, or" ] # [ doc = "re-show it and resume calling idle()." ] pub idle : :: std :: option :: Option < unsafe extern "C" fn ( ui : LV2UI_Handle ) -> :: std :: os :: raw :: c_int > , } # [ test ] fn bindgen_test_layout__LV2UI_Idle_Interface ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Idle_Interface > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Idle_Interface ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Idle_Interface > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Idle_Interface ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Idle_Interface > ( ) ) ) . idle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Idle_Interface ) , "::" , stringify ! ( idle ) ) ) ; } pub type LV2UI_Idle_Interface = _LV2UI_Idle_Interface ; # [ doc = "UI Show Interface (LV2_UI__showInterface)" ] # [ doc = "" ] # [ doc = "UIs can provide this interface to show and hide a window, which allows them" ] # [ doc = "to function in hosts unable to embed their widget.  This allows any UI to" ] # [ doc = "provide a fallback for embedding that works in any host." ] # [ doc = "" ] # [ doc = "If used:" ] # [ doc = "- The host MUST use LV2UI_Idle_Interface to drive the UI." ] # [ doc = "- The UI MUST return non-zero from LV2UI_Idle_Interface::idle() when it has been closed." ] # [ doc = "- If idle() returns non-zero, the host MUST call hide() and stop calling" ] # [ doc = "idle().  It MAY later call show() then resume calling idle()." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Show_Interface { # [ doc = "Show a window for this UI." ] # [ doc = "" ] # [ doc = "The window title MAY have been passed by the host to" ] # [ doc = "LV2UI_Descriptor::instantiate() as an LV2_Options_Option with key" ] # [ doc = "LV2_UI__windowTitle." ] # [ doc = "" ] # [ doc = "@return 0 on success, or anything else to stop being called." ] pub show : :: std :: option :: Option < unsafe extern "C" fn ( ui : LV2UI_Handle ) -> :: std :: os :: raw :: c_int > , # [ doc = "Hide the window for this UI." ] # [ doc = "" ] # [ doc = "@return 0 on success, or anything else to stop being called." ] pub hide : :: std :: option :: Option < unsafe extern "C" fn ( ui : LV2UI_Handle ) -> :: std :: os :: raw :: c_int > , } # [ test ] fn bindgen_test_layout__LV2UI_Show_Interface ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Show_Interface > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Show_Interface ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Show_Interface > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Show_Interface ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Show_Interface > ( ) ) ) . show as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Show_Interface ) , "::" , stringify ! ( show ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Show_Interface > ( ) ) ) . hide as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Show_Interface ) , "::" , stringify ! ( hide ) ) ) ; } pub type LV2UI_Show_Interface = _LV2UI_Show_Interface ; # [ doc = "Peak data for a slice of time, the update format for ui:peakProtocol." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2UI_Peak_Data { # [ doc = "The start of the measurement period.  This is just a running counter" ] # [ doc = "that is only meaningful in comparison to previous values and must not be" ] # [ doc = "interpreted as an absolute time." ] pub period_start : u32 , # [ doc = "The size of the measurement period, in the same units as period_start." ] pub period_size : u32 , # [ doc = "The peak value for the measurement period. This should be the maximal" ] # [ doc = "value for abs(sample) over all the samples in the period." ] pub peak : f32 , } # [ test ] fn bindgen_test_layout__LV2UI_Peak_Data ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2UI_Peak_Data > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( _LV2UI_Peak_Data ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2UI_Peak_Data > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( _LV2UI_Peak_Data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Peak_Data > ( ) ) ) . period_start as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Peak_Data ) , "::" , stringify ! ( period_start ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Peak_Data > ( ) ) ) . period_size as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Peak_Data ) , "::" , stringify ! ( period_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2UI_Peak_Data > ( ) ) ) . peak as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2UI_Peak_Data ) , "::" , stringify ! ( peak ) ) ) ; } pub type LV2UI_Peak_Data = _LV2UI_Peak_Data ; extern "C" { # [ doc = "Prototype for UI accessor function." ] # [ doc = "" ] # [ doc = "This is the entry point to a UI library, which works in the same way as" ] # [ doc = "lv2_descriptor() but for UIs rather than plugins." ] pub fn lv2ui_descriptor ( index : u32 ) -> * const LV2UI_Descriptor ; } # [ doc = "The type of the lv2ui_descriptor() function." ] pub type LV2UI_DescriptorFunction = :: std :: option :: Option < unsafe extern "C" fn ( index : u32 ) -> * const LV2UI_Descriptor > ; pub type LV2_State_Handle = * mut :: std :: os :: raw :: c_void ; pub type LV2_State_Map_Path_Handle = * mut :: std :: os :: raw :: c_void ; pub type LV2_State_Make_Path_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "Plain Old Data." ] # [ doc = "" ] # [ doc = "Values with this flag contain no pointers or references to other areas" ] # [ doc = "of memory.  It is safe to copy POD values with a simple memcpy and store" ] # [ doc = "them for the duration of the process.  A POD value is not necessarily" ] # [ doc = "safe to trasmit between processes or machines (e.g. filenames are POD)," ] # [ doc = "see LV2_STATE_IS_PORTABLE for details." ] # [ doc = "" ] # [ doc = "Implementations MUST NOT attempt to copy or serialise a non-POD value if" ] # [ doc = "they do not understand its type (and thus know how to correctly do so)." ] pub const LV2_State_Flags_LV2_STATE_IS_POD : LV2_State_Flags = 1 ; # [ doc = "Portable (architecture independent) data." ] # [ doc = "" ] # [ doc = "Values with this flag are in a format that is usable on any" ] # [ doc = "architecture.  A portable value saved on one machine can be restored on" ] # [ doc = "another machine regardless of architecture.  The format of portable" ] # [ doc = "values MUST NOT depend on architecture-specific properties like" ] # [ doc = "endianness or alignment.  Portable values MUST NOT contain filenames." ] pub const LV2_State_Flags_LV2_STATE_IS_PORTABLE : LV2_State_Flags = 2 ; # [ doc = "Native data." ] # [ doc = "" ] # [ doc = "This flag is used by the host to indicate that the saved data is only" ] # [ doc = "going to be used locally in the currently running process (e.g. for" ] # [ doc = "instance duplication or snapshots), so the plugin should use the most" ] # [ doc = "efficient representation possible and not worry about serialisation" ] # [ doc = "and portability." ] pub const LV2_State_Flags_LV2_STATE_IS_NATIVE : LV2_State_Flags = 4 ; # [ doc = "Flags describing value characteristics." ] # [ doc = "" ] # [ doc = "These flags are used along with the value's type URI to determine how to" ] # [ doc = "(de-)serialise the value data, or whether it is even possible to do so." ] pub type LV2_State_Flags = u32 ; # [ doc = "< Completed successfully." ] pub const LV2_State_Status_LV2_STATE_SUCCESS : LV2_State_Status = 0 ; # [ doc = "< Unknown error." ] pub const LV2_State_Status_LV2_STATE_ERR_UNKNOWN : LV2_State_Status = 1 ; # [ doc = "< Failed due to unsupported type." ] pub const LV2_State_Status_LV2_STATE_ERR_BAD_TYPE : LV2_State_Status = 2 ; # [ doc = "< Failed due to unsupported flags." ] pub const LV2_State_Status_LV2_STATE_ERR_BAD_FLAGS : LV2_State_Status = 3 ; # [ doc = "< Failed due to missing features." ] pub const LV2_State_Status_LV2_STATE_ERR_NO_FEATURE : LV2_State_Status = 4 ; # [ doc = "< Failed due to missing property." ] pub const LV2_State_Status_LV2_STATE_ERR_NO_PROPERTY : LV2_State_Status = 5 ; # [ doc = "< Failed due to insufficient space." ] pub const LV2_State_Status_LV2_STATE_ERR_NO_SPACE : LV2_State_Status = 6 ; # [ doc = " A status code for state functions." ] pub type LV2_State_Status = u32 ; # [ doc = "A host-provided function to store a property." ] # [ doc = "@param handle Must be the handle passed to LV2_State_Interface.save()." ] # [ doc = "@param key The key to store `value` under (URID)." ] # [ doc = "@param value Pointer to the value to be stored." ] # [ doc = "@param size The size of `value` in bytes." ] # [ doc = "@param type The type of `value` (URID)." ] # [ doc = "@param flags LV2_State_Flags for `value`." ] # [ doc = "@return 0 on success, otherwise a non-zero error code." ] # [ doc = "" ] # [ doc = "The host passes a callback of this type to LV2_State_Interface.save(). This" ] # [ doc = "callback is called repeatedly by the plugin to store all the properties that" ] # [ doc = "describe its current state." ] # [ doc = "" ] # [ doc = "DO NOT INVENT NONSENSE URI SCHEMES FOR THE KEY.  Best is to use keys from" ] # [ doc = "existing vocabularies.  If nothing appropriate is available, use http URIs" ] # [ doc = "that point to somewhere you can host documents so documentation can be made" ] # [ doc = "resolvable (e.g. a child of the plugin or project URI).  If this is not" ] # [ doc = "possible, invent a URN scheme, e.g. urn:myproj:whatever.  The plugin MUST" ] # [ doc = "NOT pass an invalid URI key." ] # [ doc = "" ] # [ doc = "The host MAY fail to store a property for whatever reason, but SHOULD" ] # [ doc = "store any property that is LV2_STATE_IS_POD and LV2_STATE_IS_PORTABLE." ] # [ doc = "Implementations SHOULD use the types from the LV2 Atom extension" ] # [ doc = "(http://lv2plug.in/ns/ext/atom) wherever possible.  The plugin SHOULD" ] # [ doc = "attempt to fall-back and avoid the error if possible." ] # [ doc = "" ] # [ doc = "Note that `size` MUST be > 0, and `value` MUST point to a valid region of" ] # [ doc = "memory `size` bytes long (this is required to make restore unambiguous)." ] # [ doc = "" ] # [ doc = "The plugin MUST NOT attempt to use this function outside of the" ] # [ doc = "LV2_State_Interface.restore() context." ] pub type LV2_State_Store_Function = :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_State_Handle , key : u32 , value : * const :: std :: os :: raw :: c_void , size : usize , type_ : u32 , flags : u32 ) -> LV2_State_Status > ; # [ doc = "A host-provided function to retrieve a property." ] # [ doc = "@param handle Must be the handle passed to LV2_State_Interface.restore()." ] # [ doc = "@param key The key of the property to retrieve (URID)." ] # [ doc = "@param size (Output) If non-NULL, set to the size of the restored value." ] # [ doc = "@param type (Output) If non-NULL, set to the type of the restored value." ] # [ doc = "@param flags (Output) If non-NULL, set to the flags for the restored value." ] # [ doc = "@return A pointer to the restored value (object), or NULL if no value" ] # [ doc = "has been stored under `key`." ] # [ doc = "" ] # [ doc = "A callback of this type is passed by the host to" ] # [ doc = "LV2_State_Interface.restore().  This callback is called repeatedly by the" ] # [ doc = "plugin to retrieve any properties it requires to restore its state." ] # [ doc = "" ] # [ doc = "The returned value MUST remain valid until LV2_State_Interface.restore()" ] # [ doc = "returns.  The plugin MUST NOT attempt to use this function, or any value" ] # [ doc = "returned from it, outside of the LV2_State_Interface.restore() context." ] pub type LV2_State_Retrieve_Function = :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_State_Handle , key : u32 , size : * mut usize , type_ : * mut u32 , flags : * mut u32 ) -> * const :: std :: os :: raw :: c_void > ; # [ doc = "LV2 Plugin State Interface." ] # [ doc = "" ] # [ doc = "When the plugin's extension_data is called with argument" ] # [ doc = "LV2_STATE__interface, the plugin MUST return an LV2_State_Interface" ] # [ doc = "structure, which remains valid for the lifetime of the plugin." ] # [ doc = "" ] # [ doc = "The host can use the contained function pointers to save and restore the" ] # [ doc = "state of a plugin instance at any time, provided the threading restrictions" ] # [ doc = "of the functions are met." ] # [ doc = "" ] # [ doc = "Stored data is only guaranteed to be compatible between instances of plugins" ] # [ doc = "with the same URI (i.e. if a change to a plugin would cause a fatal error" ] # [ doc = "when restoring state saved by a previous version of that plugin, the plugin" ] # [ doc = "URI MUST change just as it must when ports change incompatibly).  Plugin" ] # [ doc = "authors should consider this possibility, and always store sensible data" ] # [ doc = "with meaningful types to avoid such problems in the future." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_State_Interface { # [ doc = "Save plugin state using a host-provided `store` callback." ] # [ doc = "" ] # [ doc = "@param instance The instance handle of the plugin." ] # [ doc = "@param store The host-provided store callback." ] # [ doc = "@param handle An opaque pointer to host data which MUST be passed as the" ] # [ doc = "handle parameter to `store` if it is called." ] # [ doc = "@param flags Flags describing desired properties of this save.  These" ] # [ doc = "flags may be used to determine the most appropriate values to store." ] # [ doc = "@param features Extensible parameter for passing any additional" ] # [ doc = "features to be used for this save." ] # [ doc = "" ] # [ doc = "The plugin is expected to store everything necessary to completely" ] # [ doc = "restore its state later.  Plugins SHOULD store simple POD data whenever" ] # [ doc = "possible, and consider the possibility of state being restored much" ] # [ doc = "later on a different machine." ] # [ doc = "" ] # [ doc = "The `handle` pointer and `store` function MUST NOT be used" ] # [ doc = "beyond the scope of save()." ] # [ doc = "" ] # [ doc = "This function has its own special threading class: it may not be called" ] # [ doc = "concurrently with any \"Instantiation\" function, but it may be called" ] # [ doc = "concurrently with functions in any other class, unless the definition of" ] # [ doc = "that class prohibits it (e.g. it may not be called concurrently with a" ] # [ doc = "\"Discovery\" function, but it may be called concurrently with an \"Audio\"" ] # [ doc = "function.  The plugin is responsible for any locking or lock-free" ] # [ doc = "techniques necessary to make this possible." ] # [ doc = "" ] # [ doc = "Note that in the simple case where state is only modified by restore()," ] # [ doc = "there are no synchronization issues since save() is never called" ] # [ doc = "concurrently with restore() (though run() may read it during a save)." ] # [ doc = "" ] # [ doc = "Plugins that dynamically modify state while running, however, must take" ] # [ doc = "care to do so in such a way that a concurrent call to save() will save a" ] # [ doc = "consistent representation of plugin state for a single instant in time." ] pub save : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , store : LV2_State_Store_Function , handle : LV2_State_Handle , flags : u32 , features : * const * const LV2_Feature ) -> LV2_State_Status > , # [ doc = "Restore plugin state using a host-provided `retrieve` callback." ] # [ doc = "" ] # [ doc = "@param instance The instance handle of the plugin." ] # [ doc = "@param retrieve The host-provided retrieve callback." ] # [ doc = "@param handle An opaque pointer to host data which MUST be passed as the" ] # [ doc = "handle parameter to `retrieve` if it is called." ] # [ doc = "@param flags Currently unused." ] # [ doc = "@param features Extensible parameter for passing any additional" ] # [ doc = "features to be used for this restore." ] # [ doc = "" ] # [ doc = "The plugin MAY assume a restored value was set by a previous call to" ] # [ doc = "LV2_State_Interface.save() by a plugin with the same URI." ] # [ doc = "" ] # [ doc = "The plugin MUST gracefully fall back to a default value when a value can" ] # [ doc = "not be retrieved.  This allows the host to reset the plugin state with" ] # [ doc = "an empty map." ] # [ doc = "" ] # [ doc = "The `handle` pointer and `store` function MUST NOT be used" ] # [ doc = "beyond the scope of restore()." ] # [ doc = "" ] # [ doc = "This function is in the \"Instantiation\" threading class as defined by" ] # [ doc = "LV2. This means it MUST NOT be called concurrently with any other" ] # [ doc = "function on the same plugin instance." ] pub restore : :: std :: option :: Option < unsafe extern "C" fn ( instance : LV2_Handle , retrieve : LV2_State_Retrieve_Function , handle : LV2_State_Handle , flags : u32 , features : * const * const LV2_Feature ) -> LV2_State_Status > , } # [ test ] fn bindgen_test_layout__LV2_State_Interface ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_State_Interface > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _LV2_State_Interface ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_State_Interface > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_State_Interface ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_State_Interface > ( ) ) ) . save as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_State_Interface ) , "::" , stringify ! ( save ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_State_Interface > ( ) ) ) . restore as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_State_Interface ) , "::" , stringify ! ( restore ) ) ) ; } pub type LV2_State_Interface = _LV2_State_Interface ; # [ doc = "Feature data for state:mapPath (@ref LV2_STATE__mapPath)." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_State_Map_Path { # [ doc = "Opaque host data." ] pub handle : LV2_State_Map_Path_Handle , # [ doc = "Map an absolute path to an abstract path for use in plugin state." ] # [ doc = "@param handle MUST be the `handle` member of this struct." ] # [ doc = "@param absolute_path The absolute path of a file." ] # [ doc = "@return An abstract path suitable for use in plugin state." ] # [ doc = "" ] # [ doc = "The plugin MUST use this function to map any paths that will be stored" ] # [ doc = "in plugin state.  The returned value is an abstract path which MAY not" ] # [ doc = "be an actual file system path; absolute_path() MUST be used to map" ] # [ doc = "it to an actual path in order to use the file." ] # [ doc = "" ] # [ doc = "Plugins MUST NOT make any assumptions about abstract paths except that" ] # [ doc = "they can be mapped back to the absolute path of the \"same\" file (though" ] # [ doc = "not necessarily the same original path) using absolute_path()." ] # [ doc = "" ] # [ doc = "This function may only be called within the context of" ] # [ doc = "LV2_State_Interface methods.  The caller is responsible for freeing the" ] # [ doc = "returned value with free()." ] pub abstract_path : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_State_Map_Path_Handle , absolute_path : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char > , # [ doc = "Map an abstract path from plugin state to an absolute path." ] # [ doc = "@param handle MUST be the `handle` member of this struct." ] # [ doc = "@param abstract_path An abstract path (e.g. a path from plugin state)." ] # [ doc = "@return An absolute file system path." ] # [ doc = "" ] # [ doc = "The plugin MUST use this function in order to actually open or otherwise" ] # [ doc = "use any paths loaded from plugin state." ] # [ doc = "" ] # [ doc = "This function may only be called within the context of" ] # [ doc = "LV2_State_Interface methods.  The caller is responsible for freeing the" ] # [ doc = "returned value with free()." ] pub absolute_path : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_State_Map_Path_Handle , abstract_path : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char > , } # [ test ] fn bindgen_test_layout_LV2_State_Map_Path ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_State_Map_Path > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( LV2_State_Map_Path ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_State_Map_Path > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_State_Map_Path ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_State_Map_Path > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_State_Map_Path ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_State_Map_Path > ( ) ) ) . abstract_path as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_State_Map_Path ) , "::" , stringify ! ( abstract_path ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_State_Map_Path > ( ) ) ) . absolute_path as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( LV2_State_Map_Path ) , "::" , stringify ! ( absolute_path ) ) ) ; } # [ doc = "Feature data for state:makePath (@ref LV2_STATE__makePath)." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_State_Make_Path { # [ doc = "Opaque host data." ] pub handle : LV2_State_Make_Path_Handle , # [ doc = "Return a path the plugin may use to create a new file." ] # [ doc = "@param handle MUST be the `handle` member of this struct." ] # [ doc = "@param path The path of the new file within a namespace unique to this" ] # [ doc = "plugin instance." ] # [ doc = "@return The absolute path to use for the new file." ] # [ doc = "" ] # [ doc = "This function can be used by plugins to create files and directories," ] # [ doc = "either at state saving time (if this feature is passed to" ] # [ doc = "LV2_State_Interface.save()) or any time (if this feature is passed to" ] # [ doc = "LV2_Descriptor.instantiate())." ] # [ doc = "" ] # [ doc = "The host MUST do whatever is necessary for the plugin to be able to" ] # [ doc = "create a file at the returned path (e.g. using fopen), including" ] # [ doc = "creating any leading directories." ] # [ doc = "" ] # [ doc = "If this function is passed to LV2_Descriptor.instantiate(), it may be" ] # [ doc = "called from any non-realtime context.  If it is passed to" ] # [ doc = "LV2_State_Interface.save(), it may only be called within the dynamic" ] # [ doc = "scope of that function call." ] # [ doc = "" ] # [ doc = "The caller is responsible for freeing the returned value with free()." ] pub path : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_State_Make_Path_Handle , path : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char > , } # [ test ] fn bindgen_test_layout_LV2_State_Make_Path ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_State_Make_Path > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_State_Make_Path ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_State_Make_Path > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_State_Make_Path ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_State_Make_Path > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_State_Make_Path ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_State_Make_Path > ( ) ) ) . path as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_State_Make_Path ) , "::" , stringify ! ( path ) ) ) ; } # [ doc = "Opaque data to host data for LV2_Log_Log." ] pub type LV2_Log_Handle = * mut :: std :: os :: raw :: c_void ; # [ doc = "Log feature (LV2_LOG__log)" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _LV2_Log { # [ doc = "Opaque pointer to host data." ] # [ doc = "" ] # [ doc = "This MUST be passed to methods in this struct whenever they are called." ] # [ doc = "Otherwise, it must not be interpreted in any way." ] pub handle : LV2_Log_Handle , # [ doc = "Log a message, passing format parameters directly." ] # [ doc = "" ] # [ doc = "The API of this function matches that of the standard C printf function," ] # [ doc = "except for the addition of the first two parameters.  This function may" ] # [ doc = "be called from any non-realtime context, or from any context if `type`" ] # [ doc = "is @ref LV2_LOG__Trace." ] pub printf : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Log_Handle , type_ : LV2_URID , fmt : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int > , # [ doc = "Log a message, passing format parameters in a va_list." ] # [ doc = "" ] # [ doc = "The API of this function matches that of the standard C vprintf" ] # [ doc = "function, except for the addition of the first two parameters.  This" ] # [ doc = "function may be called from any non-realtime context, or from any" ] # [ doc = "context if `type` is @ref LV2_LOG__Trace." ] pub vprintf : :: std :: option :: Option < unsafe extern "C" fn ( handle : LV2_Log_Handle , type_ : LV2_URID , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int > , } # [ test ] fn bindgen_test_layout__LV2_Log ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _LV2_Log > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( _LV2_Log ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _LV2_Log > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _LV2_Log ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Log > ( ) ) ) . handle as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Log ) , "::" , stringify ! ( handle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Log > ( ) ) ) . printf as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Log ) , "::" , stringify ! ( printf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _LV2_Log > ( ) ) ) . vprintf as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _LV2_Log ) , "::" , stringify ! ( vprintf ) ) ) ; } pub type LV2_Log_Log = _LV2_Log ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_int , pub __wchb : [ :: std :: os :: raw :: c_char ; 4usize ] , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( __mbstate_t__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __mbstate_t__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t__bindgen_ty_1 > ( ) ) ) . __wch as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t__bindgen_ty_1 ) , "::" , stringify ! ( __wch ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t__bindgen_ty_1 > ( ) ) ) . __wchb as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t__bindgen_ty_1 ) , "::" , stringify ! ( __wchb ) ) ) ; } # [ test ] fn bindgen_test_layout___mbstate_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __mbstate_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __mbstate_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __mbstate_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __mbstate_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t > ( ) ) ) . __count as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t ) , "::" , stringify ! ( __count ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __mbstate_t > ( ) ) ) . __value as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __mbstate_t ) , "::" , stringify ! ( __value ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [ test ] fn bindgen_test_layout__G_fpos_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _G_fpos_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _G_fpos_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _G_fpos_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _G_fpos_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos_t > ( ) ) ) . __pos as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos_t ) , "::" , stringify ! ( __pos ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos_t > ( ) ) ) . __state as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos_t ) , "::" , stringify ! ( __state ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [ test ] fn bindgen_test_layout__G_fpos64_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _G_fpos64_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( _G_fpos64_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _G_fpos64_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _G_fpos64_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos64_t > ( ) ) ) . __pos as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos64_t ) , "::" , stringify ! ( __pos ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _G_fpos64_t > ( ) ) ) . __state as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _G_fpos64_t ) , "::" , stringify ! ( __state ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_jump_t { _unused : [ u8 ; 0 ] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_marker { pub _next : * mut _IO_marker , pub _sbuf : * mut _IO_FILE , pub _pos : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout__IO_marker ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _IO_marker > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( _IO_marker ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _IO_marker > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _IO_marker ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_marker > ( ) ) ) . _next as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _IO_marker ) , "::" , stringify ! ( _next ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_marker > ( ) ) ) . _sbuf as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _IO_marker ) , "::" , stringify ! ( _sbuf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_marker > ( ) ) ) . _pos as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _IO_marker ) , "::" , stringify ! ( _pos ) ) ) ; } pub const __codecvt_result___codecvt_ok : __codecvt_result = 0 ; pub const __codecvt_result___codecvt_partial : __codecvt_result = 1 ; pub const __codecvt_result___codecvt_error : __codecvt_result = 2 ; pub const __codecvt_result___codecvt_noconv : __codecvt_result = 3 ; pub type __codecvt_result = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _flags2 : :: std :: os :: raw :: c_int , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [ :: std :: os :: raw :: c_char ; 1usize ] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub __pad1 : * mut :: std :: os :: raw :: c_void , pub __pad2 : * mut :: std :: os :: raw :: c_void , pub __pad3 : * mut :: std :: os :: raw :: c_void , pub __pad4 : * mut :: std :: os :: raw :: c_void , pub __pad5 : usize , pub _mode : :: std :: os :: raw :: c_int , pub _unused2 : [ :: std :: os :: raw :: c_char ; 20usize ] , } # [ test ] fn bindgen_test_layout__IO_FILE ( ) { assert_eq ! ( :: std :: mem :: size_of :: < _IO_FILE > ( ) , 216usize , concat ! ( "Size of: " , stringify ! ( _IO_FILE ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < _IO_FILE > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( _IO_FILE ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _flags as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_read_ptr as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_read_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_read_end as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_read_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_read_base as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_read_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_write_base as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_write_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_write_ptr as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_write_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_write_end as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_write_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_buf_base as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_buf_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_buf_end as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_buf_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_save_base as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_save_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_backup_base as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_backup_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _IO_save_end as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _IO_save_end ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _markers as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _markers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _chain as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _chain ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _fileno as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _fileno ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _flags2 as * const _ as usize } , 116usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _flags2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _old_offset as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _old_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _cur_column as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _cur_column ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _vtable_offset as * const _ as usize } , 130usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _vtable_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _shortbuf as * const _ as usize } , 131usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _shortbuf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _lock as * const _ as usize } , 136usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _lock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _offset as * const _ as usize } , 144usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad1 as * const _ as usize } , 152usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad2 as * const _ as usize } , 160usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad3 as * const _ as usize } , 168usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad3 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad4 as * const _ as usize } , 176usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad4 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . __pad5 as * const _ as usize } , 184usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( __pad5 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _mode as * const _ as usize } , 192usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _mode ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < _IO_FILE > ( ) ) ) . _unused2 as * const _ as usize } , 196usize , concat ! ( "Offset of field: " , stringify ! ( _IO_FILE ) , "::" , stringify ! ( _unused2 ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct _IO_FILE_plus { _unused : [ u8 ; 0 ] , } extern "C" { pub static mut _IO_2_1_stdin_ : _IO_FILE_plus ; } extern "C" { pub static mut _IO_2_1_stdout_ : _IO_FILE_plus ; } extern "C" { pub static mut _IO_2_1_stderr_ : _IO_FILE_plus ; } pub type __io_read_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize ) -> __ssize_t > ; pub type __io_write_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __n : usize ) -> __ssize_t > ; pub type __io_seek_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int > ; pub type __io_close_fn = :: std :: option :: Option < unsafe extern "C" fn ( __cookie : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn __underflow ( arg1 : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __uflow ( arg1 : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow ( arg1 : * mut _IO_FILE , arg2 : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_getc ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_putc ( __c : :: std :: os :: raw :: c_int , __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_feof ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_ferror ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_peekc_locked ( __fp : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_flockfile ( arg1 : * mut _IO_FILE ) ; } extern "C" { pub fn _IO_funlockfile ( arg1 : * mut _IO_FILE ) ; } extern "C" { pub fn _IO_ftrylockfile ( arg1 : * mut _IO_FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_vfscanf ( arg1 : * mut _IO_FILE , arg2 : * const :: std :: os :: raw :: c_char , arg3 : * mut __va_list_tag , arg4 : * mut :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_vfprintf ( arg1 : * mut _IO_FILE , arg2 : * const :: std :: os :: raw :: c_char , arg3 : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn _IO_padn ( arg1 : * mut _IO_FILE , arg2 : :: std :: os :: raw :: c_int , arg3 : __ssize_t ) -> __ssize_t ; } extern "C" { pub fn _IO_sgetn ( arg1 : * mut _IO_FILE , arg2 : * mut :: std :: os :: raw :: c_void , arg3 : usize ) -> usize ; } extern "C" { pub fn _IO_seekoff ( arg1 : * mut _IO_FILE , arg2 : __off64_t , arg3 : :: std :: os :: raw :: c_int , arg4 : :: std :: os :: raw :: c_int ) -> __off64_t ; } extern "C" { pub fn _IO_seekpos ( arg1 : * mut _IO_FILE , arg2 : __off64_t , arg3 : :: std :: os :: raw :: c_int ) -> __off64_t ; } extern "C" { pub fn _IO_free_backup_area ( arg1 : * mut _IO_FILE ) ; } pub type off_t = __off_t ; pub type fpos_t = _G_fpos_t ; extern "C" { pub static mut stdin : * mut _IO_FILE ; } extern "C" { pub static mut stdout : * mut _IO_FILE ; } extern "C" { pub static mut stderr : * mut _IO_FILE ; } extern "C" { pub fn remove ( __filename : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename ( __old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat ( __oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile ( ) -> * mut FILE ; } extern "C" { pub fn tmpnam ( __s : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r ( __s : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam ( __dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fclose ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen ( __filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn freopen ( __filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE ) -> * mut FILE ; } extern "C" { pub fn fdopen ( __fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn fmemopen ( __s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn open_memstream ( __bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize ) -> * mut FILE ; } extern "C" { pub fn setbuf ( __stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char ) ; } extern "C" { pub fn setvbuf ( __stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer ( __stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize ) ; } extern "C" { pub fn setlinebuf ( __stream : * mut FILE ) ; } extern "C" { pub fn fprintf ( __stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf ( __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf ( __s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf ( __s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf ( __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf ( __s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf ( __s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf ( __s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf ( __fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf ( __fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf ( __stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf ( __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}___isoc99_fscanf" ] pub fn fscanf1 ( __stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}___isoc99_scanf" ] pub fn scanf1 ( __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}___isoc99_sscanf" ] pub fn sscanf1 ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ... ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf ( __s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf ( __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}___isoc99_vfscanf" ] pub fn vfscanf1 ( __s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}___isoc99_vscanf" ] pub fn vscanf1 ( __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ link_name = "\u{1}___isoc99_vsscanf" ] pub fn vsscanf1 ( __s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar ( __c : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked ( __c : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw ( __w : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets ( __s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim ( __lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> __ssize_t ; } extern "C" { pub fn getdelim ( __lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> __ssize_t ; } extern "C" { pub fn getline ( __lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE ) -> __ssize_t ; } extern "C" { pub fn fputs ( __s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts ( __s : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc ( __c : :: std :: os :: raw :: c_int , __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread ( __ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE ) -> usize ; } extern "C" { pub fn fwrite ( __ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __s : * mut FILE ) -> usize ; } extern "C" { pub fn fread_unlocked ( __ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE ) -> usize ; } extern "C" { pub fn fwrite_unlocked ( __ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE ) -> usize ; } extern "C" { pub fn fseek ( __stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind ( __stream : * mut FILE ) ; } extern "C" { pub fn fseeko ( __stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello ( __stream : * mut FILE ) -> __off_t ; } extern "C" { pub fn fgetpos ( __stream : * mut FILE , __pos : * mut fpos_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos ( __stream : * mut FILE , __pos : * const fpos_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr ( __stream : * mut FILE ) ; } extern "C" { pub fn feof ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked ( __stream : * mut FILE ) ; } extern "C" { pub fn feof_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror ( __s : * const :: std :: os :: raw :: c_char ) ; } extern "C" { pub static mut sys_nerr : :: std :: os :: raw :: c_int ; } extern "C" { pub static mut sys_errlist : [ * const :: std :: os :: raw :: c_char ; 0usize ] ; } extern "C" { pub fn fileno ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen ( __command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char ) -> * mut FILE ; } extern "C" { pub fn pclose ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ctermid ( __s : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile ( __stream : * mut FILE ) ; } extern "C" { pub fn ftrylockfile ( __stream : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile ( __stream : * mut FILE ) ; } # [ doc = "Logger convenience API state." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Log_Logger { pub log : * mut LV2_Log_Log , pub Error : LV2_URID , pub Note : LV2_URID , pub Trace : LV2_URID , pub Warning : LV2_URID , } # [ test ] fn bindgen_test_layout_LV2_Log_Logger ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Log_Logger > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( LV2_Log_Logger ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Log_Logger > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Log_Logger ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Log_Logger > ( ) ) ) . log as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Log_Logger ) , "::" , stringify ! ( log ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Log_Logger > ( ) ) ) . Error as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Log_Logger ) , "::" , stringify ! ( Error ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Log_Logger > ( ) ) ) . Note as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Log_Logger ) , "::" , stringify ! ( Note ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Log_Logger > ( ) ) ) . Trace as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Log_Logger ) , "::" , stringify ! ( Trace ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Log_Logger > ( ) ) ) . Warning as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Log_Logger ) , "::" , stringify ! ( Warning ) ) ) ; } # [ doc = "< Invalid Message" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_INVALID : LV2_Midi_Message_Type = 0 ; # [ doc = "< Note Off" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_NOTE_OFF : LV2_Midi_Message_Type = 128 ; # [ doc = "< Note On" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_NOTE_ON : LV2_Midi_Message_Type = 144 ; # [ doc = "< Note Pressure" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_NOTE_PRESSURE : LV2_Midi_Message_Type = 160 ; # [ doc = "< Controller" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_CONTROLLER : LV2_Midi_Message_Type = 176 ; # [ doc = "< Program Change" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_PGM_CHANGE : LV2_Midi_Message_Type = 192 ; # [ doc = "< Channel Pressure" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_CHANNEL_PRESSURE : LV2_Midi_Message_Type = 208 ; # [ doc = "< Pitch Bender" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_BENDER : LV2_Midi_Message_Type = 224 ; # [ doc = "< System Exclusive Begin" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_SYSTEM_EXCLUSIVE : LV2_Midi_Message_Type = 240 ; # [ doc = "< MTC Quarter Frame" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_MTC_QUARTER : LV2_Midi_Message_Type = 241 ; # [ doc = "< Song Position" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_SONG_POS : LV2_Midi_Message_Type = 242 ; # [ doc = "< Song Select" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_SONG_SELECT : LV2_Midi_Message_Type = 243 ; # [ doc = "< Tune Request" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_TUNE_REQUEST : LV2_Midi_Message_Type = 246 ; # [ doc = "< Clock" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_CLOCK : LV2_Midi_Message_Type = 248 ; # [ doc = "< Start" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_START : LV2_Midi_Message_Type = 250 ; # [ doc = "< Continue" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_CONTINUE : LV2_Midi_Message_Type = 251 ; # [ doc = "< Stop" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_STOP : LV2_Midi_Message_Type = 252 ; # [ doc = "< Active Sensing" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_ACTIVE_SENSE : LV2_Midi_Message_Type = 254 ; # [ doc = "< Reset" ] pub const LV2_Midi_Message_Type_LV2_MIDI_MSG_RESET : LV2_Midi_Message_Type = 255 ; # [ doc = "MIDI Message Type." ] # [ doc = "" ] # [ doc = "This includes both voice messages (which have a channel) and system messages" ] # [ doc = "(which do not), as well as a sentinel value for invalid messages.  To get" ] # [ doc = "the type of a message suitable for use in a switch statement, use" ] # [ doc = "lv2_midi_get_type() on the status byte." ] pub type LV2_Midi_Message_Type = u32 ; # [ doc = "< Bank Selection" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_BANK : LV2_Midi_Controller = 0 ; # [ doc = "< Modulation" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_MODWHEEL : LV2_Midi_Controller = 1 ; # [ doc = "< Breath" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_BREATH : LV2_Midi_Controller = 2 ; # [ doc = "< Foot" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_FOOT : LV2_Midi_Controller = 4 ; # [ doc = "< Portamento Time" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_PORTAMENTO_TIME : LV2_Midi_Controller = 5 ; # [ doc = "< Data Entry" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_DATA_ENTRY : LV2_Midi_Controller = 6 ; # [ doc = "< Main Volume" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_MAIN_VOLUME : LV2_Midi_Controller = 7 ; # [ doc = "< Balance" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_BALANCE : LV2_Midi_Controller = 8 ; # [ doc = "< Panpot" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_PAN : LV2_Midi_Controller = 10 ; # [ doc = "< Expression" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_EXPRESSION : LV2_Midi_Controller = 11 ; # [ doc = "< Effect1" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_EFFECT1 : LV2_Midi_Controller = 12 ; # [ doc = "< Effect2" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_EFFECT2 : LV2_Midi_Controller = 13 ; # [ doc = "< General Purpose 1" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_GENERAL_PURPOSE1 : LV2_Midi_Controller = 16 ; # [ doc = "< General Purpose 2" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_GENERAL_PURPOSE2 : LV2_Midi_Controller = 17 ; # [ doc = "< General Purpose 3" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_GENERAL_PURPOSE3 : LV2_Midi_Controller = 18 ; # [ doc = "< General Purpose 4" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MSB_GENERAL_PURPOSE4 : LV2_Midi_Controller = 19 ; # [ doc = "< Bank Selection" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_BANK : LV2_Midi_Controller = 32 ; # [ doc = "< Modulation" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_MODWHEEL : LV2_Midi_Controller = 33 ; # [ doc = "< Breath" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_BREATH : LV2_Midi_Controller = 34 ; # [ doc = "< Foot" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_FOOT : LV2_Midi_Controller = 36 ; # [ doc = "< Portamento Time" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_PORTAMENTO_TIME : LV2_Midi_Controller = 37 ; # [ doc = "< Data Entry" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_DATA_ENTRY : LV2_Midi_Controller = 38 ; # [ doc = "< Main Volume" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_MAIN_VOLUME : LV2_Midi_Controller = 39 ; # [ doc = "< Balance" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_BALANCE : LV2_Midi_Controller = 40 ; # [ doc = "< Panpot" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_PAN : LV2_Midi_Controller = 42 ; # [ doc = "< Expression" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_EXPRESSION : LV2_Midi_Controller = 43 ; # [ doc = "< Effect1" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_EFFECT1 : LV2_Midi_Controller = 44 ; # [ doc = "< Effect2" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_EFFECT2 : LV2_Midi_Controller = 45 ; # [ doc = "< General Purpose 1" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_GENERAL_PURPOSE1 : LV2_Midi_Controller = 48 ; # [ doc = "< General Purpose 2" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_GENERAL_PURPOSE2 : LV2_Midi_Controller = 49 ; # [ doc = "< General Purpose 3" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_GENERAL_PURPOSE3 : LV2_Midi_Controller = 50 ; # [ doc = "< General Purpose 4" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LSB_GENERAL_PURPOSE4 : LV2_Midi_Controller = 51 ; # [ doc = "< Sustain Pedal" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SUSTAIN : LV2_Midi_Controller = 64 ; # [ doc = "< Portamento" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_PORTAMENTO : LV2_Midi_Controller = 65 ; # [ doc = "< Sostenuto" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SOSTENUTO : LV2_Midi_Controller = 66 ; # [ doc = "< Soft Pedal" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SOFT_PEDAL : LV2_Midi_Controller = 67 ; # [ doc = "< Legato Foot Switch" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LEGATO_FOOTSWITCH : LV2_Midi_Controller = 68 ; # [ doc = "< Hold2" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_HOLD2 : LV2_Midi_Controller = 69 ; # [ doc = "< SC1 Sound Variation" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC1_SOUND_VARIATION : LV2_Midi_Controller = 70 ; # [ doc = "< SC2 Timbre" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC2_TIMBRE : LV2_Midi_Controller = 71 ; # [ doc = "< SC3 Release Time" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC3_RELEASE_TIME : LV2_Midi_Controller = 72 ; # [ doc = "< SC4 Attack Time" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC4_ATTACK_TIME : LV2_Midi_Controller = 73 ; # [ doc = "< SC5 Brightness" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC5_BRIGHTNESS : LV2_Midi_Controller = 74 ; # [ doc = "< SC6" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC6 : LV2_Midi_Controller = 75 ; # [ doc = "< SC7" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC7 : LV2_Midi_Controller = 76 ; # [ doc = "< SC8" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC8 : LV2_Midi_Controller = 77 ; # [ doc = "< SC9" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC9 : LV2_Midi_Controller = 78 ; # [ doc = "< SC10" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_SC10 : LV2_Midi_Controller = 79 ; # [ doc = "< General Purpose 5" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_GENERAL_PURPOSE5 : LV2_Midi_Controller = 80 ; # [ doc = "< General Purpose 6" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_GENERAL_PURPOSE6 : LV2_Midi_Controller = 81 ; # [ doc = "< General Purpose 7" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_GENERAL_PURPOSE7 : LV2_Midi_Controller = 82 ; # [ doc = "< General Purpose 8" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_GENERAL_PURPOSE8 : LV2_Midi_Controller = 83 ; # [ doc = "< Portamento Control" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_PORTAMENTO_CONTROL : LV2_Midi_Controller = 84 ; # [ doc = "< E1 Reverb Depth" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_E1_REVERB_DEPTH : LV2_Midi_Controller = 91 ; # [ doc = "< E2 Tremolo Depth" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_E2_TREMOLO_DEPTH : LV2_Midi_Controller = 92 ; # [ doc = "< E3 Chorus Depth" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_E3_CHORUS_DEPTH : LV2_Midi_Controller = 93 ; # [ doc = "< E4 Detune Depth" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_E4_DETUNE_DEPTH : LV2_Midi_Controller = 94 ; # [ doc = "< E5 Phaser Depth" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_E5_PHASER_DEPTH : LV2_Midi_Controller = 95 ; # [ doc = "< Data Increment" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_DATA_INCREMENT : LV2_Midi_Controller = 96 ; # [ doc = "< Data Decrement" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_DATA_DECREMENT : LV2_Midi_Controller = 97 ; # [ doc = "< Non-registered Parameter Number" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_NRPN_LSB : LV2_Midi_Controller = 98 ; # [ doc = "< Non-registered Parameter Number" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_NRPN_MSB : LV2_Midi_Controller = 99 ; # [ doc = "< Registered Parameter Number" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_RPN_LSB : LV2_Midi_Controller = 100 ; # [ doc = "< Registered Parameter Number" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_RPN_MSB : LV2_Midi_Controller = 101 ; # [ doc = "< All Sounds Off" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_ALL_SOUNDS_OFF : LV2_Midi_Controller = 120 ; # [ doc = "< Reset Controllers" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_RESET_CONTROLLERS : LV2_Midi_Controller = 121 ; # [ doc = "< Local Control Switch" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_LOCAL_CONTROL_SWITCH : LV2_Midi_Controller = 122 ; # [ doc = "< All Notes Off" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_ALL_NOTES_OFF : LV2_Midi_Controller = 123 ; # [ doc = "< Omni Off" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_OMNI_OFF : LV2_Midi_Controller = 124 ; # [ doc = "< Omni On" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_OMNI_ON : LV2_Midi_Controller = 125 ; # [ doc = "< Mono1" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MONO1 : LV2_Midi_Controller = 126 ; # [ doc = "< Mono2" ] pub const LV2_Midi_Controller_LV2_MIDI_CTL_MONO2 : LV2_Midi_Controller = 127 ; # [ doc = "Standard MIDI Controller Numbers." ] pub type LV2_Midi_Controller = u32 ; # [ doc = "Dynamic manifest generator handle." ] # [ doc = "" ] # [ doc = "This handle indicates a particular status of a dynamic manifest generator." ] # [ doc = "The host MUST NOT attempt to interpret it and, unlikely LV2_Handle, it is" ] # [ doc = "NOT even valid to compare this to NULL. The dynamic manifest generator MAY" ] # [ doc = "use it to reference internal data." ] pub type LV2_Dyn_Manifest_Handle = * mut :: std :: os :: raw :: c_void ; extern "C" { # [ doc = "Generate the dynamic manifest." ] # [ doc = "" ] # [ doc = "@param handle Pointer to an uninitialized dynamic manifest generator handle." ] # [ doc = "" ] # [ doc = "@param features NULL terminated array of LV2_Feature structs which represent" ] # [ doc = "the features the host supports. The dynamic manifest generator may refuse to" ] # [ doc = "(re)generate the dynamic manifest if required features are not found here" ] # [ doc = "(however hosts SHOULD NOT use this as a discovery mechanism, instead of" ] # [ doc = "reading the static manifest file). This array must always exist; if a host" ] # [ doc = "has no features, it MUST pass a single element array containing NULL." ] # [ doc = "" ] # [ doc = "@return 0 on success, otherwise a non-zero error code. The host SHOULD" ] # [ doc = "evaluate the result of the operation by examining the returned value and" ] # [ doc = "MUST NOT try to interpret the value of handle." ] pub fn lv2_dyn_manifest_open ( handle : * mut LV2_Dyn_Manifest_Handle , features : * const * const LV2_Feature ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = "Fetch a \"list\" of subject URIs described in the dynamic manifest." ] # [ doc = "" ] # [ doc = "The dynamic manifest generator has to fill the resource only with the needed" ] # [ doc = "triples to make the host aware of the \"objects\" it wants to expose. For" ] # [ doc = "example, if the plugin library exposes a regular LV2 plugin, it should" ] # [ doc = "output only a triple like the following:" ] # [ doc = "" ] # [ doc = "<http://www.example.com/plugin/uri> a lv2:Plugin ." ] # [ doc = "" ] # [ doc = "The objects that are elegible for exposure are those that would need to be" ] # [ doc = "represented by a subject node in a static manifest." ] # [ doc = "" ] # [ doc = "@param handle Dynamic manifest generator handle." ] # [ doc = "" ] # [ doc = "@param fp FILE * identifying the resource the host has to set up for the" ] # [ doc = "dynamic manifest generator. The host MUST pass a writable, empty resource to" ] # [ doc = "this function, and the dynamic manifest generator MUST ONLY perform write" ] # [ doc = "operations on it at the end of the stream (e.g., using only fprintf()," ] # [ doc = "fwrite() and similar)." ] # [ doc = "" ] # [ doc = "@return 0 on success, otherwise a non-zero error code." ] pub fn lv2_dyn_manifest_get_subjects ( handle : LV2_Dyn_Manifest_Handle , fp : * mut FILE ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = "Function that fetches data related to a specific URI." ] # [ doc = "" ] # [ doc = "The dynamic manifest generator has to fill the resource with data related to" ] # [ doc = "object represented by the given URI. For example, if the library exposes a" ] # [ doc = "regular LV2 plugin whose URI, as retrieved by the host using" ] # [ doc = "lv2_dyn_manifest_get_subjects() is http://www.example.com/plugin/uri, it" ] # [ doc = "should output something like:" ] # [ doc = "" ] # [ doc = "<pre>" ] # [ doc = "<http://www.example.com/plugin/uri>" ] # [ doc = "a lv2:Plugin ;" ] # [ doc = "doap:name \"My Plugin\" ;" ] # [ doc = "lv2:binary <mylib.so> ;" ] # [ doc = "etc:etc \"...\" ." ] # [ doc = "</pre>" ] # [ doc = "" ] # [ doc = "@param handle Dynamic manifest generator handle." ] # [ doc = "" ] # [ doc = "@param fp FILE * identifying the resource the host has to set up for the" ] # [ doc = "dynamic manifest generator. The host MUST pass a writable resource to this" ] # [ doc = "function, and the dynamic manifest generator MUST ONLY perform write" ] # [ doc = "operations on it at the current position of the stream (e.g. using only" ] # [ doc = "fprintf(), fwrite() and similar)." ] # [ doc = "" ] # [ doc = "@param uri URI to get data about (in the \"plain\" form, i.e., absolute URI" ] # [ doc = "without Turtle prefixes)." ] # [ doc = "" ] # [ doc = "@return 0 on success, otherwise a non-zero error code." ] pub fn lv2_dyn_manifest_get_data ( handle : LV2_Dyn_Manifest_Handle , fp : * mut FILE , uri : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { # [ doc = "Function that ends the operations on the dynamic manifest generator." ] # [ doc = "" ] # [ doc = "This function SHOULD be used by the dynamic manifest generator to perform" ] # [ doc = "cleanup operations, etc." ] # [ doc = "" ] # [ doc = "Once this function is called, referring to handle will cause undefined" ] # [ doc = "behavior." ] # [ doc = "" ] # [ doc = "@param handle Dynamic manifest generator handle." ] pub fn lv2_dyn_manifest_close ( handle : LV2_Dyn_Manifest_Handle ) ; } pub const LV2_EVENT_PPQN : u32 = 3136573440 ; # [ doc = "An LV2 event (header only)." ] # [ doc = "" ] # [ doc = "LV2 events are generic time-stamped containers for any type of event." ] # [ doc = "The type field defines the format of a given event's contents." ] # [ doc = "" ] # [ doc = "This struct defines the header of an LV2 event. An LV2 event is a single" ] # [ doc = "chunk of POD (plain old data), usually contained in a flat buffer (see" ] # [ doc = "LV2_EventBuffer below). Unless a required feature says otherwise, hosts may" ] # [ doc = "assume a deep copy of an LV2 event can be created safely using a simple:" ] # [ doc = "" ] # [ doc = "memcpy(ev_copy, ev, sizeof(LV2_Event) + ev->size);  (or equivalent)" ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Event { # [ doc = "The frames portion of timestamp. The units used here can optionally be" ] # [ doc = "set for a port (with the lv2ev:timeUnits property), otherwise this is" ] # [ doc = "audio frames, corresponding to the sample_count parameter of the LV2 run" ] # [ doc = "method (e.g. frame 0 is the first frame for that call to run)." ] pub frames : u32 , # [ doc = "The sub-frames portion of timestamp. The units used here can optionally" ] # [ doc = "be set for a port (with the lv2ev:timeUnits property), otherwise this is" ] # [ doc = "1/(2^32) of an audio frame." ] pub subframes : u32 , # [ doc = "The type of this event, as a number which represents some URI" ] # [ doc = "defining an event type. This value MUST be some value previously" ] # [ doc = "returned from a call to the uri_to_id function defined in the LV2" ] # [ doc = "URI map extension (see lv2_uri_map.h)." ] # [ doc = "There are special rules which must be followed depending on the type" ] # [ doc = "of an event. If the plugin recognizes an event type, the definition" ] # [ doc = "of that event type will describe how to interpret the event, and" ] # [ doc = "any required behaviour. Otherwise, if the type is 0, this event is a" ] # [ doc = "non-POD event and lv2_event_unref MUST be called if the event is" ] # [ doc = "'dropped' (see above). Even if the plugin does not understand an event," ] # [ doc = "it may pass the event through to an output by simply copying (and NOT" ] # [ doc = "calling lv2_event_unref). These rules are designed to allow for generic" ] # [ doc = "event handling plugins and large non-POD events, but with minimal hassle" ] # [ doc = "on simple plugins that \"don't care\" about these more advanced features." ] pub type_ : u16 , # [ doc = "The size of the data portion of this event in bytes, which immediately" ] # [ doc = "follows. The header size (12 bytes) is not included in this value." ] pub size : u16 , } # [ test ] fn bindgen_test_layout_LV2_Event ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Event > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( LV2_Event ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Event > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( LV2_Event ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event > ( ) ) ) . frames as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event ) , "::" , stringify ! ( frames ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event > ( ) ) ) . subframes as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event ) , "::" , stringify ! ( subframes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event > ( ) ) ) . type_ as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event ) , "::" , stringify ! ( type_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event > ( ) ) ) . size as * const _ as usize } , 10usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event ) , "::" , stringify ! ( size ) ) ) ; } # [ doc = "A buffer of LV2 events (header only)." ] # [ doc = "" ] # [ doc = "Like events (which this contains) an event buffer is a single chunk of POD:" ] # [ doc = "the entire buffer (including contents) can be copied with a single memcpy." ] # [ doc = "The first contained event begins sizeof(LV2_EventBuffer) bytes after the" ] # [ doc = "start of this struct." ] # [ doc = "" ] # [ doc = "After this header, the buffer contains an event header (defined by struct" ] # [ doc = "LV2_Event), followed by that event's contents (padded to 64 bits), followed" ] # [ doc = "by another header, etc:" ] # [ doc = "" ] # [ doc = "|       |       |       |       |       |       |" ] # [ doc = "| | | | | | | | | | | | | | | | | | | | | | | | |" ] # [ doc = "|FRAMES |SUBFRMS|TYP|LEN|DATA..DATA..PAD|FRAMES | ..." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Event_Buffer { # [ doc = "The contents of the event buffer. This may or may not reside in the" ] # [ doc = "same block of memory as this header, plugins must not assume either." ] # [ doc = "The host guarantees this points to at least capacity bytes of allocated" ] # [ doc = "memory (though only size bytes of that are valid events)." ] pub data : * mut u8 , # [ doc = "The size of this event header in bytes (including everything)." ] # [ doc = "" ] # [ doc = "This is to allow for extending this header in the future without" ] # [ doc = "breaking binary compatibility. Whenever this header is copied," ] # [ doc = "it MUST be done using this field (and NOT the sizeof this struct)." ] pub header_size : u16 , # [ doc = "The type of the time stamps for events in this buffer." ] # [ doc = "As a special exception, '0' always means audio frames and subframes" ] # [ doc = "(1/UINT32_MAX'th of a frame) in the sample rate passed to instantiate." ] # [ doc = "" ] # [ doc = "INPUTS: The host must set this field to the numeric ID of some URI" ] # [ doc = "defining the meaning of the frames/subframes fields of contained events" ] # [ doc = "(obtained by the LV2 URI Map uri_to_id function with the URI of this" ] # [ doc = "extension as the 'map' argument, see lv2_uri_map.h).  The host must" ] # [ doc = "never pass a plugin a buffer which uses a stamp type the plugin does not" ] # [ doc = "'understand'. The value of this field must never change, except when" ] # [ doc = "connect_port is called on the input port, at which time the host MUST" ] # [ doc = "have set the stamp_type field to the value that will be used for all" ] # [ doc = "subsequent run calls." ] # [ doc = "" ] # [ doc = "OUTPUTS: The plugin may set this to any value that has been returned" ] # [ doc = "from uri_to_id with the URI of this extension for a 'map' argument." ] # [ doc = "When connected to a buffer with connect_port, output ports MUST set this" ] # [ doc = "field to the type of time stamp they will be writing. On any call to" ] # [ doc = "connect_port on an event input port, the plugin may change this field on" ] # [ doc = "any output port, it is the responsibility of the host to check if any of" ] # [ doc = "these values have changed and act accordingly." ] pub stamp_type : u16 , # [ doc = "The number of events in this buffer." ] # [ doc = "" ] # [ doc = "INPUTS: The host must set this field to the number of events contained" ] # [ doc = "in the data buffer before calling run(). The plugin must not change" ] # [ doc = "this field." ] # [ doc = "" ] # [ doc = "OUTPUTS: The plugin must set this field to the number of events it has" ] # [ doc = "written to the buffer before returning from run(). Any initial value" ] # [ doc = "should be ignored by the plugin." ] pub event_count : u32 , # [ doc = "The size of the data buffer in bytes." ] # [ doc = "This is set by the host and must not be changed by the plugin." ] # [ doc = "The host is allowed to change this between run() calls." ] pub capacity : u32 , # [ doc = "The size of the initial portion of the data buffer containing data." ] # [ doc = "" ] # [ doc = "INPUTS: The host must set this field to the number of bytes used" ] # [ doc = "by all events it has written to the buffer (including headers)" ] # [ doc = "before calling the plugin's run()." ] # [ doc = "The plugin must not change this field." ] # [ doc = "" ] # [ doc = "OUTPUTS: The plugin must set this field to the number of bytes" ] # [ doc = "used by all events it has written to the buffer (including headers)" ] # [ doc = "before returning from run()." ] # [ doc = "Any initial value should be ignored by the plugin." ] pub size : u32 , } # [ test ] fn bindgen_test_layout_LV2_Event_Buffer ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Event_Buffer > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( LV2_Event_Buffer ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Event_Buffer > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Event_Buffer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Buffer > ( ) ) ) . data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Buffer ) , "::" , stringify ! ( data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Buffer > ( ) ) ) . header_size as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Buffer ) , "::" , stringify ! ( header_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Buffer > ( ) ) ) . stamp_type as * const _ as usize } , 10usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Buffer ) , "::" , stringify ! ( stamp_type ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Buffer > ( ) ) ) . event_count as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Buffer ) , "::" , stringify ! ( event_count ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Buffer > ( ) ) ) . capacity as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Buffer ) , "::" , stringify ! ( capacity ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Buffer > ( ) ) ) . size as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Buffer ) , "::" , stringify ! ( size ) ) ) ; } # [ doc = "Opaque pointer to host data." ] pub type LV2_Event_Callback_Data = * mut :: std :: os :: raw :: c_void ; # [ doc = "Non-POD events feature." ] # [ doc = "" ] # [ doc = "To support this feature the host must pass an LV2_Feature struct to the" ] # [ doc = "plugin's instantiate method with URI \"http://lv2plug.in/ns/ext/event\"" ] # [ doc = "and data pointed to an instance of this struct.  Note this feature" ] # [ doc = "is not mandatory to support the event extension." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Event_Feature { # [ doc = "Opaque pointer to host data." ] # [ doc = "" ] # [ doc = "The plugin MUST pass this to any call to functions in this struct." ] # [ doc = "Otherwise, it must not be interpreted in any way." ] pub callback_data : LV2_Event_Callback_Data , # [ doc = "Take a reference to a non-POD event." ] # [ doc = "" ] # [ doc = "If a plugin receives an event with type 0, it means the event is a" ] # [ doc = "pointer to some object in memory and not a flat sequence of bytes" ] # [ doc = "in the buffer. When receiving a non-POD event, the plugin already" ] # [ doc = "has an implicit reference to the event. If the event is stored AND" ] # [ doc = "passed to an output, lv2_event_ref MUST be called on that event." ] # [ doc = "If the event is only stored OR passed through, this is not necessary" ] # [ doc = "(as the plugin already has 1 implicit reference)." ] # [ doc = "" ] # [ doc = "@param event An event received at an input that will not be copied to" ] # [ doc = "an output or stored in any way." ] # [ doc = "" ] # [ doc = "@param context The calling context. Like event types, this is a mapped" ] # [ doc = "URI, see lv2_context.h. Simple plugin with just a run() method should" ] # [ doc = "pass 0 here (the ID of the 'standard' LV2 run context). The host" ] # [ doc = "guarantees that this function is realtime safe iff the context is" ] # [ doc = "realtime safe." ] # [ doc = "" ] # [ doc = "PLUGINS THAT VIOLATE THESE RULES MAY CAUSE CRASHES AND MEMORY LEAKS." ] pub lv2_event_ref : :: std :: option :: Option < unsafe extern "C" fn ( callback_data : LV2_Event_Callback_Data , event : * mut LV2_Event ) -> u32 > , # [ doc = "Drop a reference to a non-POD event." ] # [ doc = "" ] # [ doc = "If a plugin receives an event with type 0, it means the event is a" ] # [ doc = "pointer to some object in memory and not a flat sequence of bytes" ] # [ doc = "in the buffer. If the plugin does not pass the event through to" ] # [ doc = "an output or store it internally somehow, it MUST call this function" ] # [ doc = "on the event (more information on using non-POD events below)." ] # [ doc = "" ] # [ doc = "@param event An event received at an input that will not be copied to an" ] # [ doc = "output or stored in any way." ] # [ doc = "" ] # [ doc = "@param context The calling context. Like event types, this is a mapped" ] # [ doc = "URI, see lv2_context.h. Simple plugin with just a run() method should" ] # [ doc = "pass 0 here (the ID of the 'standard' LV2 run context). The host" ] # [ doc = "guarantees that this function is realtime safe iff the context is" ] # [ doc = "realtime safe." ] # [ doc = "" ] # [ doc = "PLUGINS THAT VIOLATE THESE RULES MAY CAUSE CRASHES AND MEMORY LEAKS." ] pub lv2_event_unref : :: std :: option :: Option < unsafe extern "C" fn ( callback_data : LV2_Event_Callback_Data , event : * mut LV2_Event ) -> u32 > , } # [ test ] fn bindgen_test_layout_LV2_Event_Feature ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Event_Feature > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( LV2_Event_Feature ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Event_Feature > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Event_Feature ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Feature > ( ) ) ) . callback_data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Feature ) , "::" , stringify ! ( callback_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Feature > ( ) ) ) . lv2_event_ref as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Feature ) , "::" , stringify ! ( lv2_event_ref ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Feature > ( ) ) ) . lv2_event_unref as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Feature ) , "::" , stringify ! ( lv2_event_unref ) ) ) ; } pub const idtype_t_P_ALL : idtype_t = 0 ; pub const idtype_t_P_PID : idtype_t = 1 ; pub const idtype_t_P_PGID : idtype_t = 2 ; pub type idtype_t = u32 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct div_t { pub quot : :: std :: os :: raw :: c_int , pub rem : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_div_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < div_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( div_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < div_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( div_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < div_t > ( ) ) ) . quot as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( div_t ) , "::" , stringify ! ( quot ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < div_t > ( ) ) ) . rem as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( div_t ) , "::" , stringify ! ( rem ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ldiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [ test ] fn bindgen_test_layout_ldiv_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ldiv_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( ldiv_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ldiv_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( ldiv_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ldiv_t > ( ) ) ) . quot as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ldiv_t ) , "::" , stringify ! ( quot ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ldiv_t > ( ) ) ) . rem as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( ldiv_t ) , "::" , stringify ! ( rem ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct lldiv_t { pub quot : :: std :: os :: raw :: c_longlong , pub rem : :: std :: os :: raw :: c_longlong , } # [ test ] fn bindgen_test_layout_lldiv_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < lldiv_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( lldiv_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < lldiv_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( lldiv_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < lldiv_t > ( ) ) ) . quot as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( lldiv_t ) , "::" , stringify ! ( quot ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < lldiv_t > ( ) ) ) . rem as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( lldiv_t ) , "::" , stringify ! ( rem ) ) ) ; } extern "C" { pub fn __ctype_get_mb_cur_max ( ) -> usize ; } extern "C" { pub fn atof ( __nptr : * const :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn atoi ( __nptr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn atol ( __nptr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn atoll ( __nptr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn strtod ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char ) -> f64 ; } extern "C" { pub fn strtof ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char ) -> f32 ; } extern "C" { pub fn strtold ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char ) -> u128 ; } extern "C" { pub fn strtol ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn strtoul ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn strtoq ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn strtouq ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_ulonglong ; } extern "C" { pub fn strtoll ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn strtoull ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_ulonglong ; } extern "C" { pub fn l64a ( __n : :: std :: os :: raw :: c_long ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn a64l ( __s : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_long ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = :: std :: os :: raw :: c_uchar ; pub type u_int16_t = :: std :: os :: raw :: c_ushort ; pub type u_int32_t = :: std :: os :: raw :: c_uint ; pub type u_int64_t = :: std :: os :: raw :: c_ulong ; pub type register_t = :: std :: os :: raw :: c_long ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __sigset_t { pub __val : [ :: std :: os :: raw :: c_ulong ; 16usize ] , } # [ test ] fn bindgen_test_layout___sigset_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __sigset_t > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __sigset_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __sigset_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __sigset_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type sigset_t = __sigset_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct timeval { pub tv_sec : __time_t , pub tv_usec : __suseconds_t , } # [ test ] fn bindgen_test_layout_timeval ( ) { assert_eq ! ( :: std :: mem :: size_of :: < timeval > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( timeval ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < timeval > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( timeval ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timeval > ( ) ) ) . tv_sec as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( timeval ) , "::" , stringify ! ( tv_sec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timeval > ( ) ) ) . tv_usec as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( timeval ) , "::" , stringify ! ( tv_usec ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [ test ] fn bindgen_test_layout_timespec ( ) { assert_eq ! ( :: std :: mem :: size_of :: < timespec > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( timespec ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < timespec > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( timespec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timespec > ( ) ) ) . tv_sec as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( timespec ) , "::" , stringify ! ( tv_sec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timespec > ( ) ) ) . tv_nsec as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( timespec ) , "::" , stringify ! ( tv_nsec ) ) ) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct fd_set { pub __fds_bits : [ __fd_mask ; 16usize ] , } # [ test ] fn bindgen_test_layout_fd_set ( ) { assert_eq ! ( :: std :: mem :: size_of :: < fd_set > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( fd_set ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < fd_set > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( fd_set ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < fd_set > ( ) ) ) . __fds_bits as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( fd_set ) , "::" , stringify ! ( __fds_bits ) ) ) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select ( __nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect ( __nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn gnu_dev_major ( __dev : __dev_t ) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn gnu_dev_minor ( __dev : __dev_t ) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn gnu_dev_makedev ( __major : :: std :: os :: raw :: c_uint , __minor : :: std :: os :: raw :: c_uint ) -> __dev_t ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __rwelision : :: std :: os :: raw :: c_schar , pub __pad1 : [ :: std :: os :: raw :: c_uchar ; 7usize ] , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_rwlock_arch_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_rwlock_arch_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( __pthread_rwlock_arch_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_rwlock_arch_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_rwlock_arch_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __readers as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __readers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __writers as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __writers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __wrphase_futex as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __wrphase_futex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __writers_futex as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __writers_futex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad3 as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad3 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad4 as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad4 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __cur_writer as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __cur_writer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __shared as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __shared ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __rwelision as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __rwelision ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad1 as * const _ as usize } , 33usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad2 as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __flags as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __flags ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_internal_list { pub __prev : * mut __pthread_internal_list , pub __next : * mut __pthread_internal_list , } # [ test ] fn bindgen_test_layout___pthread_internal_list ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_internal_list > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( __pthread_internal_list ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_internal_list > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_internal_list ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_internal_list > ( ) ) ) . __prev as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_internal_list ) , "::" , stringify ! ( __prev ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_internal_list > ( ) ) ) . __next as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_internal_list ) , "::" , stringify ! ( __next ) ) ) ; } pub type __pthread_list_t = __pthread_internal_list ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __elision : :: std :: os :: raw :: c_short , pub __list : __pthread_list_t , } # [ test ] fn bindgen_test_layout___pthread_mutex_s ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_mutex_s > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( __pthread_mutex_s ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_mutex_s > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_mutex_s ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __lock as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __lock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __count as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __count ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __owner as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __owner ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __nusers as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __nusers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __kind as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __kind ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __spins as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __spins ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __elision as * const _ as usize } , 22usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __elision ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __list as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __list ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct __pthread_cond_s { pub __bindgen_anon_1 : __pthread_cond_s__bindgen_ty_1 , pub __bindgen_anon_2 : __pthread_cond_s__bindgen_ty_2 , pub __g_refs : [ :: std :: os :: raw :: c_uint ; 2usize ] , pub __g_size : [ :: std :: os :: raw :: c_uint ; 2usize ] , pub __g1_orig_size : :: std :: os :: raw :: c_uint , pub __wrefs : :: std :: os :: raw :: c_uint , pub __g_signals : [ :: std :: os :: raw :: c_uint ; 2usize ] , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __pthread_cond_s__bindgen_ty_1 { pub __wseq : :: std :: os :: raw :: c_ulonglong , pub __wseq32 : __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 , _bindgen_union_align : u64 , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) ) ) . __low as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) , "::" , stringify ! ( __low ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) ) ) . __high as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) , "::" , stringify ! ( __high ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1 > ( ) ) ) . __wseq as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) , "::" , stringify ! ( __wseq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1 > ( ) ) ) . __wseq32 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) , "::" , stringify ! ( __wseq32 ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __pthread_cond_s__bindgen_ty_2 { pub __g1_start : :: std :: os :: raw :: c_ulonglong , pub __g1_start32 : __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 , _bindgen_union_align : u64 , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) ) ) . __low as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) , "::" , stringify ! ( __low ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) ) ) . __high as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) , "::" , stringify ! ( __high ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_2 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2 > ( ) ) ) . __g1_start as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) , "::" , stringify ! ( __g1_start ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2 > ( ) ) ) . __g1_start32 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) , "::" , stringify ! ( __g1_start32 ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_refs as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_refs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_size as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g1_orig_size as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g1_orig_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __wrefs as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __wrefs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_signals as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_signals ) ) ) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_mutexattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_mutexattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_mutexattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_mutexattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_mutexattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_mutexattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutexattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutexattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutexattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutexattr_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_condattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_condattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_condattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_condattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_condattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_condattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_condattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_condattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_condattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_condattr_t ) , "::" , stringify ! ( __align ) ) ) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_attr_t { pub __size : [ :: std :: os :: raw :: c_char ; 56usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 7usize ] , } # [ test ] fn bindgen_test_layout_pthread_attr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_attr_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( pthread_attr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_attr_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_attr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_attr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_attr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_attr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_attr_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [ :: std :: os :: raw :: c_char ; 40usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 5usize ] , } # [ test ] fn bindgen_test_layout_pthread_mutex_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_mutex_t > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( pthread_mutex_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_mutex_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_mutex_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_cond_t { pub __data : __pthread_cond_s , pub __size : [ :: std :: os :: raw :: c_char ; 48usize ] , pub __align : :: std :: os :: raw :: c_longlong , _bindgen_union_align : [ u64 ; 6usize ] , } # [ test ] fn bindgen_test_layout_pthread_cond_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_cond_t > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( pthread_cond_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_cond_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_cond_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [ :: std :: os :: raw :: c_char ; 56usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 7usize ] , } # [ test ] fn bindgen_test_layout_pthread_rwlock_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_rwlock_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( pthread_rwlock_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_rwlock_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_rwlock_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_rwlockattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 8usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : u64 , } # [ test ] fn bindgen_test_layout_pthread_rwlockattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_rwlockattr_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( pthread_rwlockattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_rwlockattr_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_rwlockattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlockattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlockattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlockattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlockattr_t ) , "::" , stringify ! ( __align ) ) ) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_barrier_t { pub __size : [ :: std :: os :: raw :: c_char ; 32usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 4usize ] , } # [ test ] fn bindgen_test_layout_pthread_barrier_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_barrier_t > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( pthread_barrier_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_barrier_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_barrier_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrier_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrier_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrier_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrier_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_barrierattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_barrierattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_barrierattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_barrierattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_barrierattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_barrierattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrierattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrierattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrierattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrierattr_t ) , "::" , stringify ! ( __align ) ) ) ; } extern "C" { pub fn random ( ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn srandom ( __seed : :: std :: os :: raw :: c_uint ) ; } extern "C" { pub fn initstate ( __seed : :: std :: os :: raw :: c_uint , __statebuf : * mut :: std :: os :: raw :: c_char , __statelen : usize ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn setstate ( __statebuf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct random_data { pub fptr : * mut i32 , pub rptr : * mut i32 , pub state : * mut i32 , pub rand_type : :: std :: os :: raw :: c_int , pub rand_deg : :: std :: os :: raw :: c_int , pub rand_sep : :: std :: os :: raw :: c_int , pub end_ptr : * mut i32 , } # [ test ] fn bindgen_test_layout_random_data ( ) { assert_eq ! ( :: std :: mem :: size_of :: < random_data > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( random_data ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < random_data > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( random_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . fptr as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( fptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rptr as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . state as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( state ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rand_type as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rand_type ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rand_deg as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rand_deg ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . rand_sep as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( rand_sep ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < random_data > ( ) ) ) . end_ptr as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( random_data ) , "::" , stringify ! ( end_ptr ) ) ) ; } extern "C" { pub fn random_r ( __buf : * mut random_data , __result : * mut i32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn srandom_r ( __seed : :: std :: os :: raw :: c_uint , __buf : * mut random_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn initstate_r ( __seed : :: std :: os :: raw :: c_uint , __statebuf : * mut :: std :: os :: raw :: c_char , __statelen : usize , __buf : * mut random_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setstate_r ( __statebuf : * mut :: std :: os :: raw :: c_char , __buf : * mut random_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rand ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn srand ( __seed : :: std :: os :: raw :: c_uint ) ; } extern "C" { pub fn rand_r ( __seed : * mut :: std :: os :: raw :: c_uint ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn drand48 ( ) -> f64 ; } extern "C" { pub fn erand48 ( __xsubi : * mut :: std :: os :: raw :: c_ushort ) -> f64 ; } extern "C" { pub fn lrand48 ( ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn nrand48 ( __xsubi : * mut :: std :: os :: raw :: c_ushort ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn mrand48 ( ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn jrand48 ( __xsubi : * mut :: std :: os :: raw :: c_ushort ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn srand48 ( __seedval : :: std :: os :: raw :: c_long ) ; } extern "C" { pub fn seed48 ( __seed16v : * mut :: std :: os :: raw :: c_ushort ) -> * mut :: std :: os :: raw :: c_ushort ; } extern "C" { pub fn lcong48 ( __param : * mut :: std :: os :: raw :: c_ushort ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct drand48_data { pub __x : [ :: std :: os :: raw :: c_ushort ; 3usize ] , pub __old_x : [ :: std :: os :: raw :: c_ushort ; 3usize ] , pub __c : :: std :: os :: raw :: c_ushort , pub __init : :: std :: os :: raw :: c_ushort , pub __a : :: std :: os :: raw :: c_ulonglong , } # [ test ] fn bindgen_test_layout_drand48_data ( ) { assert_eq ! ( :: std :: mem :: size_of :: < drand48_data > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( drand48_data ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < drand48_data > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( drand48_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __x as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __x ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __old_x as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __old_x ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __c as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __c ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __init as * const _ as usize } , 14usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __init ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < drand48_data > ( ) ) ) . __a as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( drand48_data ) , "::" , stringify ! ( __a ) ) ) ; } extern "C" { pub fn drand48_r ( __buffer : * mut drand48_data , __result : * mut f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn erand48_r ( __xsubi : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data , __result : * mut f64 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lrand48_r ( __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn nrand48_r ( __xsubi : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mrand48_r ( __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn jrand48_r ( __xsubi : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data , __result : * mut :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn srand48_r ( __seedval : :: std :: os :: raw :: c_long , __buffer : * mut drand48_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn seed48_r ( __seed16v : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lcong48_r ( __param : * mut :: std :: os :: raw :: c_ushort , __buffer : * mut drand48_data ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn malloc ( __size : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn calloc ( __nmemb : :: std :: os :: raw :: c_ulong , __size : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn realloc ( __ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn free ( __ptr : * mut :: std :: os :: raw :: c_void ) ; } extern "C" { pub fn alloca ( __size : :: std :: os :: raw :: c_ulong ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn valloc ( __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn posix_memalign ( __memptr : * mut * mut :: std :: os :: raw :: c_void , __alignment : usize , __size : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn aligned_alloc ( __alignment : usize , __size : usize ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn abort ( ) ; } extern "C" { pub fn atexit ( __func : :: std :: option :: Option < unsafe extern "C" fn ( ) > ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn at_quick_exit ( __func : :: std :: option :: Option < unsafe extern "C" fn ( ) > ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn on_exit ( __func : :: std :: option :: Option < unsafe extern "C" fn ( __status : :: std :: os :: raw :: c_int , __arg : * mut :: std :: os :: raw :: c_void ) > , __arg : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn exit ( __status : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn quick_exit ( __status : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn _Exit ( __status : :: std :: os :: raw :: c_int ) ; } extern "C" { pub fn getenv ( __name : * const :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn putenv ( __string : * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setenv ( __name : * const :: std :: os :: raw :: c_char , __value : * const :: std :: os :: raw :: c_char , __replace : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn unsetenv ( __name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearenv ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mktemp ( __template : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn mkstemp ( __template : * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mkstemps ( __template : * mut :: std :: os :: raw :: c_char , __suffixlen : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mkdtemp ( __template : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn system ( __command : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn realpath ( __name : * const :: std :: os :: raw :: c_char , __resolved : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } pub type __compar_fn_t = :: std :: option :: Option < unsafe extern "C" fn ( arg1 : * const :: std :: os :: raw :: c_void , arg2 : * const :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn bsearch ( __key : * const :: std :: os :: raw :: c_void , __base : * const :: std :: os :: raw :: c_void , __nmemb : usize , __size : usize , __compar : __compar_fn_t ) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn qsort ( __base : * mut :: std :: os :: raw :: c_void , __nmemb : usize , __size : usize , __compar : __compar_fn_t ) ; } extern "C" { pub fn abs ( __x : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn labs ( __x : :: std :: os :: raw :: c_long ) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn llabs ( __x : :: std :: os :: raw :: c_longlong ) -> :: std :: os :: raw :: c_longlong ; } extern "C" { pub fn div ( __numer : :: std :: os :: raw :: c_int , __denom : :: std :: os :: raw :: c_int ) -> div_t ; } extern "C" { pub fn ldiv ( __numer : :: std :: os :: raw :: c_long , __denom : :: std :: os :: raw :: c_long ) -> ldiv_t ; } extern "C" { pub fn lldiv ( __numer : :: std :: os :: raw :: c_longlong , __denom : :: std :: os :: raw :: c_longlong ) -> lldiv_t ; } extern "C" { pub fn ecvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fcvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn gcvt ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn qecvt ( __value : u128 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn qfcvt ( __value : u128 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn qgcvt ( __value : u128 , __ndigit : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char ) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn ecvt_r ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fcvt_r ( __value : f64 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn qecvt_r ( __value : u128 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn qfcvt_r ( __value : u128 , __ndigit : :: std :: os :: raw :: c_int , __decpt : * mut :: std :: os :: raw :: c_int , __sign : * mut :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mblen ( __s : * const :: std :: os :: raw :: c_char , __n : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mbtowc ( __pwc : * mut wchar_t , __s : * const :: std :: os :: raw :: c_char , __n : usize ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn wctomb ( __s : * mut :: std :: os :: raw :: c_char , __wchar : wchar_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn mbstowcs ( __pwcs : * mut wchar_t , __s : * const :: std :: os :: raw :: c_char , __n : usize ) -> usize ; } extern "C" { pub fn wcstombs ( __s : * mut :: std :: os :: raw :: c_char , __pwcs : * const wchar_t , __n : usize ) -> usize ; } extern "C" { pub fn rpmatch ( __response : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsubopt ( __optionp : * mut * mut :: std :: os :: raw :: c_char , __tokens : * const * mut :: std :: os :: raw :: c_char , __valuep : * mut * mut :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getloadavg ( __loadavg : * mut f64 , __nelem : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } # [ doc = " An iterator over an LV2_Event_Buffer." ] # [ doc = "" ] # [ doc = " Multiple simultaneous read iterators over a single buffer is fine," ] # [ doc = " but changing the buffer invalidates all iterators (e.g. RW Lock)." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Event_Iterator { pub buf : * mut LV2_Event_Buffer , pub offset : u32 , } # [ test ] fn bindgen_test_layout_LV2_Event_Iterator ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Event_Iterator > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Event_Iterator ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Event_Iterator > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Event_Iterator ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Iterator > ( ) ) ) . buf as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Iterator ) , "::" , stringify ! ( buf ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Event_Iterator > ( ) ) ) . offset as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Event_Iterator ) , "::" , stringify ! ( offset ) ) ) ; } # [ doc = "< Completed successfully." ] pub const LV2_Resize_Port_Status_LV2_RESIZE_PORT_SUCCESS : LV2_Resize_Port_Status = 0 ; # [ doc = "< Unknown error." ] pub const LV2_Resize_Port_Status_LV2_RESIZE_PORT_ERR_UNKNOWN : LV2_Resize_Port_Status = 1 ; # [ doc = "< Insufficient space." ] pub const LV2_Resize_Port_Status_LV2_RESIZE_PORT_ERR_NO_SPACE : LV2_Resize_Port_Status = 2 ; # [ doc = " A status code for state functions." ] pub type LV2_Resize_Port_Status = u32 ; # [ doc = " Opaque data for resize method." ] pub type LV2_Resize_Port_Feature_Data = * mut :: std :: os :: raw :: c_void ; # [ doc = " Host feature to allow plugins to resize their port buffers." ] # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct LV2_Resize_Port_Resize { # [ doc = " Opaque data for resize method." ] pub data : LV2_Resize_Port_Feature_Data , # [ doc = "Resize a port buffer to at least `size` bytes." ] # [ doc = "" ] # [ doc = "This function MAY return an error, in which case the port buffer was not" ] # [ doc = "resized and the port is still connected to the same location.  Plugins" ] # [ doc = "MUST gracefully handle this situation." ] # [ doc = "" ] # [ doc = "This function is in the audio threading class." ] # [ doc = "" ] # [ doc = "The host MUST preserve the contents of the port buffer when resizing." ] # [ doc = "" ] # [ doc = "Plugins MAY resize a port many times in a single run callback.  Hosts" ] # [ doc = "SHOULD make this as inexpensive as possible." ] pub resize : :: std :: option :: Option < unsafe extern "C" fn ( data : LV2_Resize_Port_Feature_Data , index : u32 , size : usize ) -> LV2_Resize_Port_Status > , } # [ test ] fn bindgen_test_layout_LV2_Resize_Port_Resize ( ) { assert_eq ! ( :: std :: mem :: size_of :: < LV2_Resize_Port_Resize > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( LV2_Resize_Port_Resize ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < LV2_Resize_Port_Resize > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( LV2_Resize_Port_Resize ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Resize_Port_Resize > ( ) ) ) . data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Resize_Port_Resize ) , "::" , stringify ! ( data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < LV2_Resize_Port_Resize > ( ) ) ) . resize as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( LV2_Resize_Port_Resize ) , "::" , stringify ! ( resize ) ) ) ; } pub type __builtin_va_list = [ __va_list_tag ; 1usize ] ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __va_list_tag { pub gp_offset : :: std :: os :: raw :: c_uint , pub fp_offset : :: std :: os :: raw :: c_uint , pub overflow_arg_area : * mut :: std :: os :: raw :: c_void , pub reg_save_area : * mut :: std :: os :: raw :: c_void , } # [ test ] fn bindgen_test_layout___va_list_tag ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __va_list_tag > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( __va_list_tag ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __va_list_tag > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __va_list_tag ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . gp_offset as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( gp_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . fp_offset as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( fp_offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . overflow_arg_area as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( overflow_arg_area ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __va_list_tag > ( ) ) ) . reg_save_area as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __va_list_tag ) , "::" , stringify ! ( reg_save_area ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __locale_data { pub _address : u8 , }