1#[repr(C)]
4#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
5pub struct __BindgenBitfieldUnit<Storage> {
6 storage: Storage,
7}
8impl<Storage> __BindgenBitfieldUnit<Storage> {
9 #[inline]
10 pub const fn new(storage: Storage) -> Self {
11 Self { storage }
12 }
13}
14impl<Storage> __BindgenBitfieldUnit<Storage>
15where
16 Storage: AsRef<[u8]> + AsMut<[u8]>,
17{
18 #[inline]
19 fn extract_bit(byte: u8, index: usize) -> bool {
20 let bit_index = if cfg!(target_endian = "big") {
21 7 - (index % 8)
22 } else {
23 index % 8
24 };
25 let mask = 1 << bit_index;
26 byte & mask == mask
27 }
28 #[inline]
29 pub fn get_bit(&self, index: usize) -> bool {
30 debug_assert!(index / 8 < self.storage.as_ref().len());
31 let byte_index = index / 8;
32 let byte = self.storage.as_ref()[byte_index];
33 Self::extract_bit(byte, index)
34 }
35 #[inline]
36 pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
37 debug_assert!(index / 8 < core::mem::size_of::<Storage>());
38 let byte_index = index / 8;
39 let byte = unsafe {
40 *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize)
41 };
42 Self::extract_bit(byte, index)
43 }
44 #[inline]
45 fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
46 let bit_index = if cfg!(target_endian = "big") {
47 7 - (index % 8)
48 } else {
49 index % 8
50 };
51 let mask = 1 << bit_index;
52 if val { byte | mask } else { byte & !mask }
53 }
54 #[inline]
55 pub fn set_bit(&mut self, index: usize, val: bool) {
56 debug_assert!(index / 8 < self.storage.as_ref().len());
57 let byte_index = index / 8;
58 let byte = &mut self.storage.as_mut()[byte_index];
59 *byte = Self::change_bit(*byte, index, val);
60 }
61 #[inline]
62 pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
63 debug_assert!(index / 8 < core::mem::size_of::<Storage>());
64 let byte_index = index / 8;
65 let byte = unsafe {
66 (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize)
67 };
68 unsafe { *byte = Self::change_bit(*byte, index, val) };
69 }
70 #[inline]
71 pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
72 debug_assert!(bit_width <= 64);
73 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
74 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
75 let mut val = 0;
76 for i in 0..(bit_width as usize) {
77 if self.get_bit(i + bit_offset) {
78 let index = if cfg!(target_endian = "big") {
79 bit_width as usize - 1 - i
80 } else {
81 i
82 };
83 val |= 1 << index;
84 }
85 }
86 val
87 }
88 #[inline]
89 pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
90 debug_assert!(bit_width <= 64);
91 debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
92 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
93 let mut val = 0;
94 for i in 0..(bit_width as usize) {
95 if unsafe { Self::raw_get_bit(this, i + bit_offset) } {
96 let index = if cfg!(target_endian = "big") {
97 bit_width as usize - 1 - i
98 } else {
99 i
100 };
101 val |= 1 << index;
102 }
103 }
104 val
105 }
106 #[inline]
107 pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
108 debug_assert!(bit_width <= 64);
109 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
110 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
111 for i in 0..(bit_width as usize) {
112 let mask = 1 << i;
113 let val_bit_is_set = val & mask == mask;
114 let index = if cfg!(target_endian = "big") {
115 bit_width as usize - 1 - i
116 } else {
117 i
118 };
119 self.set_bit(index + bit_offset, val_bit_is_set);
120 }
121 }
122 #[inline]
123 pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
124 debug_assert!(bit_width <= 64);
125 debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
126 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
127 for i in 0..(bit_width as usize) {
128 let mask = 1 << i;
129 let val_bit_is_set = val & mask == mask;
130 let index = if cfg!(target_endian = "big") {
131 bit_width as usize - 1 - i
132 } else {
133 i
134 };
135 unsafe { Self::raw_set_bit(this, index + bit_offset, val_bit_is_set) };
136 }
137 }
138}
139#[repr(C)]
140#[derive(Default)]
141pub struct __IncompleteArrayField<T>(::core::marker::PhantomData<T>, [T; 0]);
142impl<T> __IncompleteArrayField<T> {
143 #[inline]
144 pub const fn new() -> Self {
145 __IncompleteArrayField(::core::marker::PhantomData, [])
146 }
147 #[inline]
148 pub fn as_ptr(&self) -> *const T {
149 self as *const _ as *const T
150 }
151 #[inline]
152 pub fn as_mut_ptr(&mut self) -> *mut T {
153 self as *mut _ as *mut T
154 }
155 #[inline]
156 pub unsafe fn as_slice(&self, len: usize) -> &[T] {
157 ::core::slice::from_raw_parts(self.as_ptr(), len)
158 }
159 #[inline]
160 pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
161 ::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
162 }
163}
164impl<T> ::core::fmt::Debug for __IncompleteArrayField<T> {
165 fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
166 fmt.write_str("__IncompleteArrayField")
167 }
168}
169pub const SND_LIB_MAJOR: u32 = 1;
170pub const SND_LIB_MINOR: u32 = 2;
171pub const SND_LIB_SUBMINOR: u32 = 15;
172pub const SND_LIB_EXTRAVER: u32 = 1000000;
173pub const SND_LIB_VERSION_STR: &[u8; 9] = b"1.2.15.3\0";
174pub const SND_ERROR_BEGIN: u32 = 500000;
175pub const SND_ERROR_INCOMPATIBLE_VERSION: u32 = 500000;
176pub const SND_LOG_ERROR: u32 = 1;
177pub const SND_LOG_WARN: u32 = 2;
178pub const SND_LOG_INFO: u32 = 3;
179pub const SND_LOG_DEBUG: u32 = 4;
180pub const SND_LOG_TRACE: u32 = 5;
181pub const SND_LOG_LAST: u32 = 5;
182pub const SND_ILOG_CORE: u32 = 1;
183pub const SND_ILOG_CONFIG: u32 = 2;
184pub const SND_ILOG_CONTROL: u32 = 3;
185pub const SND_ILOG_HWDEP: u32 = 4;
186pub const SND_ILOG_TIMER: u32 = 5;
187pub const SND_ILOG_RAWMIDI: u32 = 6;
188pub const SND_ILOG_PCM: u32 = 7;
189pub const SND_ILOG_MIXER: u32 = 8;
190pub const SND_ILOG_SEQUENCER: u32 = 9;
191pub const SND_ILOG_UCM: u32 = 10;
192pub const SND_ILOG_TOPOLOGY: u32 = 11;
193pub const SND_ILOG_ASERVER: u32 = 12;
194pub const SND_ILOG_LAST: u32 = 12;
195pub const SND_PCM_NONBLOCK: u32 = 1;
196pub const SND_PCM_ASYNC: u32 = 2;
197pub const SND_PCM_EINTR: u32 = 128;
198pub const SND_PCM_ABORT: u32 = 32768;
199pub const SND_PCM_NO_AUTO_RESAMPLE: u32 = 65536;
200pub const SND_PCM_NO_AUTO_CHANNELS: u32 = 131072;
201pub const SND_PCM_NO_AUTO_FORMAT: u32 = 262144;
202pub const SND_PCM_NO_SOFTVOL: u32 = 524288;
203pub const SND_PCM_HW_PARAMS_SYNC_SIZE: u32 = 16;
204pub const SND_PCM_WAIT_INFINITE: i32 = -1;
205pub const SND_PCM_WAIT_IO: i32 = -10001;
206pub const SND_PCM_WAIT_DRAIN: i32 = -10002;
207pub const SND_CHMAP_API_VERSION: u32 = 65537;
208pub const SND_CHMAP_POSITION_MASK: u32 = 65535;
209pub const SND_CHMAP_PHASE_INVERSE: u32 = 65536;
210pub const SND_CHMAP_DRIVER_SPEC: u32 = 131072;
211pub const SND_RAWMIDI_APPEND: u32 = 1;
212pub const SND_RAWMIDI_NONBLOCK: u32 = 2;
213pub const SND_RAWMIDI_SYNC: u32 = 4;
214pub const SND_RAWMIDI_INFO_UMP: u32 = 8;
215pub const SND_RAWMIDI_INFO_STREAM_INACTIVE: u32 = 16;
216pub const SND_UMP_MAX_GROUPS: u32 = 16;
217pub const SND_UMP_MAX_BLOCKS: u32 = 32;
218pub const SND_UMP_EP_INFO_STATIC_BLOCKS: u32 = 1;
219pub const SND_UMP_EP_INFO_PROTO_MIDI_MASK: u32 = 768;
220pub const SND_UMP_EP_INFO_PROTO_MIDI1: u32 = 256;
221pub const SND_UMP_EP_INFO_PROTO_MIDI2: u32 = 512;
222pub const SND_UMP_EP_INFO_PROTO_JRTS_MASK: u32 = 3;
223pub const SND_UMP_EP_INFO_PROTO_JRTS_TX: u32 = 1;
224pub const SND_UMP_EP_INFO_PROTO_JRTS_RX: u32 = 2;
225pub const SND_UMP_EP_INFO_DEFAULT_VERSION: u32 = 257;
226pub const SND_UMP_BLOCK_IS_MIDI1: u32 = 1;
227pub const SND_UMP_BLOCK_IS_LOWSPEED: u32 = 2;
228pub const SND_UMP_BLOCK_INFO_DEFAULT_MIDI_CI_VERSION: u32 = 1;
229pub const SND_TIMER_GLOBAL_SYSTEM: u32 = 0;
230pub const SND_TIMER_GLOBAL_RTC: u32 = 1;
231pub const SND_TIMER_GLOBAL_HPET: u32 = 2;
232pub const SND_TIMER_GLOBAL_HRTIMER: u32 = 3;
233pub const SND_TIMER_OPEN_NONBLOCK: u32 = 1;
234pub const SND_TIMER_OPEN_TREAD: u32 = 2;
235pub const SND_HWDEP_OPEN_READ: u32 = 0;
236pub const SND_HWDEP_OPEN_WRITE: u32 = 1;
237pub const SND_HWDEP_OPEN_DUPLEX: u32 = 2;
238pub const SND_HWDEP_OPEN_NONBLOCK: u32 = 2048;
239pub const SND_CTL_EVENT_MASK_REMOVE: i32 = -1;
240pub const SND_CTL_EVENT_MASK_VALUE: u32 = 1;
241pub const SND_CTL_EVENT_MASK_INFO: u32 = 2;
242pub const SND_CTL_EVENT_MASK_ADD: u32 = 4;
243pub const SND_CTL_EVENT_MASK_TLV: u32 = 8;
244pub const SND_CTL_NAME_NONE: &[u8; 1] = b"\0";
245pub const SND_CTL_NAME_PLAYBACK: &[u8; 10] = b"Playback \0";
246pub const SND_CTL_NAME_CAPTURE: &[u8; 9] = b"Capture \0";
247pub const SND_CTL_NAME_IEC958_NONE: &[u8; 1] = b"\0";
248pub const SND_CTL_NAME_IEC958_SWITCH: &[u8; 7] = b"Switch\0";
249pub const SND_CTL_NAME_IEC958_VOLUME: &[u8; 7] = b"Volume\0";
250pub const SND_CTL_NAME_IEC958_DEFAULT: &[u8; 8] = b"Default\0";
251pub const SND_CTL_NAME_IEC958_MASK: &[u8; 5] = b"Mask\0";
252pub const SND_CTL_NAME_IEC958_CON_MASK: &[u8; 9] = b"Con Mask\0";
253pub const SND_CTL_NAME_IEC958_PRO_MASK: &[u8; 9] = b"Pro Mask\0";
254pub const SND_CTL_NAME_IEC958_PCM_STREAM: &[u8; 11] = b"PCM Stream\0";
255pub const SND_CTL_POWER_MASK: u32 = 65280;
256pub const SND_CTL_POWER_D0: u32 = 0;
257pub const SND_CTL_POWER_D1: u32 = 256;
258pub const SND_CTL_POWER_D2: u32 = 512;
259pub const SND_CTL_POWER_D3: u32 = 768;
260pub const SND_CTL_POWER_D3hot: u32 = 768;
261pub const SND_CTL_POWER_D3cold: u32 = 769;
262pub const SND_CTL_TLVT_CONTAINER: u32 = 0;
263pub const SND_CTL_TLVT_DB_SCALE: u32 = 1;
264pub const SND_CTL_TLVT_DB_LINEAR: u32 = 2;
265pub const SND_CTL_TLVT_DB_RANGE: u32 = 3;
266pub const SND_CTL_TLVT_DB_MINMAX: u32 = 4;
267pub const SND_CTL_TLVT_DB_MINMAX_MUTE: u32 = 5;
268pub const SND_CTL_TLV_DB_GAIN_MUTE: i32 = -9999999;
269pub const SND_CTL_TLVT_CHMAP_FIXED: u32 = 257;
270pub const SND_CTL_TLVT_CHMAP_VAR: u32 = 258;
271pub const SND_CTL_TLVT_CHMAP_PAIRED: u32 = 259;
272pub const SND_CTL_NONBLOCK: u32 = 1;
273pub const SND_CTL_ASYNC: u32 = 2;
274pub const SND_CTL_READONLY: u32 = 4;
275pub const SND_CTL_EINTR: u32 = 128;
276pub const SND_SCTL_NOFREE: u32 = 1;
277pub const SND_SEQ_TIME_STAMP_TICK: u32 = 0;
278pub const SND_SEQ_TIME_STAMP_REAL: u32 = 1;
279pub const SND_SEQ_TIME_STAMP_MASK: u32 = 1;
280pub const SND_SEQ_TIME_MODE_ABS: u32 = 0;
281pub const SND_SEQ_TIME_MODE_REL: u32 = 2;
282pub const SND_SEQ_TIME_MODE_MASK: u32 = 2;
283pub const SND_SEQ_EVENT_LENGTH_FIXED: u32 = 0;
284pub const SND_SEQ_EVENT_LENGTH_VARIABLE: u32 = 4;
285pub const SND_SEQ_EVENT_LENGTH_VARUSR: u32 = 8;
286pub const SND_SEQ_EVENT_LENGTH_MASK: u32 = 12;
287pub const SND_SEQ_PRIORITY_NORMAL: u32 = 0;
288pub const SND_SEQ_PRIORITY_HIGH: u32 = 16;
289pub const SND_SEQ_PRIORITY_MASK: u32 = 16;
290pub const SND_SEQ_EVENT_UMP: u32 = 32;
291pub const SND_SEQ_OPEN_OUTPUT: u32 = 1;
292pub const SND_SEQ_OPEN_INPUT: u32 = 2;
293pub const SND_SEQ_OPEN_DUPLEX: u32 = 3;
294pub const SND_SEQ_NONBLOCK: u32 = 1;
295pub const SND_SEQ_ADDRESS_UNKNOWN: u32 = 253;
296pub const SND_SEQ_ADDRESS_SUBSCRIBERS: u32 = 254;
297pub const SND_SEQ_ADDRESS_BROADCAST: u32 = 255;
298pub const SND_SEQ_CLIENT_SYSTEM: u32 = 0;
299pub const SND_SEQ_PORT_SYSTEM_TIMER: u32 = 0;
300pub const SND_SEQ_PORT_SYSTEM_ANNOUNCE: u32 = 1;
301pub const SND_SEQ_PORT_CAP_READ: u32 = 1;
302pub const SND_SEQ_PORT_CAP_WRITE: u32 = 2;
303pub const SND_SEQ_PORT_CAP_SYNC_READ: u32 = 4;
304pub const SND_SEQ_PORT_CAP_SYNC_WRITE: u32 = 8;
305pub const SND_SEQ_PORT_CAP_DUPLEX: u32 = 16;
306pub const SND_SEQ_PORT_CAP_SUBS_READ: u32 = 32;
307pub const SND_SEQ_PORT_CAP_SUBS_WRITE: u32 = 64;
308pub const SND_SEQ_PORT_CAP_NO_EXPORT: u32 = 128;
309pub const SND_SEQ_PORT_CAP_INACTIVE: u32 = 256;
310pub const SND_SEQ_PORT_CAP_UMP_ENDPOINT: u32 = 512;
311pub const SND_SEQ_PORT_DIR_UNKNOWN: u32 = 0;
312pub const SND_SEQ_PORT_DIR_INPUT: u32 = 1;
313pub const SND_SEQ_PORT_DIR_OUTPUT: u32 = 2;
314pub const SND_SEQ_PORT_DIR_BIDIRECTION: u32 = 3;
315pub const SND_SEQ_PORT_TYPE_SPECIFIC: u32 = 1;
316pub const SND_SEQ_PORT_TYPE_MIDI_GENERIC: u32 = 2;
317pub const SND_SEQ_PORT_TYPE_MIDI_GM: u32 = 4;
318pub const SND_SEQ_PORT_TYPE_MIDI_GS: u32 = 8;
319pub const SND_SEQ_PORT_TYPE_MIDI_XG: u32 = 16;
320pub const SND_SEQ_PORT_TYPE_MIDI_MT32: u32 = 32;
321pub const SND_SEQ_PORT_TYPE_MIDI_GM2: u32 = 64;
322pub const SND_SEQ_PORT_TYPE_MIDI_UMP: u32 = 128;
323pub const SND_SEQ_PORT_TYPE_SYNTH: u32 = 1024;
324pub const SND_SEQ_PORT_TYPE_DIRECT_SAMPLE: u32 = 2048;
325pub const SND_SEQ_PORT_TYPE_SAMPLE: u32 = 4096;
326pub const SND_SEQ_PORT_TYPE_HARDWARE: u32 = 65536;
327pub const SND_SEQ_PORT_TYPE_SOFTWARE: u32 = 131072;
328pub const SND_SEQ_PORT_TYPE_SYNTHESIZER: u32 = 262144;
329pub const SND_SEQ_PORT_TYPE_PORT: u32 = 524288;
330pub const SND_SEQ_PORT_TYPE_APPLICATION: u32 = 1048576;
331pub const SND_SEQ_QUEUE_DIRECT: u32 = 253;
332pub const SND_SEQ_REMOVE_INPUT: u32 = 1;
333pub const SND_SEQ_REMOVE_OUTPUT: u32 = 2;
334pub const SND_SEQ_REMOVE_DEST: u32 = 4;
335pub const SND_SEQ_REMOVE_DEST_CHANNEL: u32 = 8;
336pub const SND_SEQ_REMOVE_TIME_BEFORE: u32 = 16;
337pub const SND_SEQ_REMOVE_TIME_AFTER: u32 = 32;
338pub const SND_SEQ_REMOVE_TIME_TICK: u32 = 64;
339pub const SND_SEQ_REMOVE_EVENT_TYPE: u32 = 128;
340pub const SND_SEQ_REMOVE_IGNORE_OFF: u32 = 256;
341pub const SND_SEQ_REMOVE_TAG_MATCH: u32 = 512;
342pub type __gnuc_va_list = __builtin_va_list;
343pub type va_list = __gnuc_va_list;
344unsafe extern "C" {
345 pub fn snd_asoundlib_version() -> *const ::core::ffi::c_char;
346}
347#[repr(C)]
348#[derive(Debug, Copy, Clone)]
349pub struct snd_dlsym_link {
350 pub next: *mut snd_dlsym_link,
351 pub dlsym_name: *const ::core::ffi::c_char,
352 pub dlsym_ptr: *const ::core::ffi::c_void,
353}
354unsafe extern "C" {
355 pub fn snd_dlpath(
356 path: *mut ::core::ffi::c_char,
357 path_len: usize,
358 name: *const ::core::ffi::c_char,
359 ) -> ::core::ffi::c_int;
360}
361unsafe extern "C" {
362 pub fn snd_dlopen(
363 file: *const ::core::ffi::c_char,
364 mode: ::core::ffi::c_int,
365 errbuf: *mut ::core::ffi::c_char,
366 errbuflen: usize,
367 ) -> *mut ::core::ffi::c_void;
368}
369unsafe extern "C" {
370 pub fn snd_dlsym(
371 handle: *mut ::core::ffi::c_void,
372 name: *const ::core::ffi::c_char,
373 version: *const ::core::ffi::c_char,
374 ) -> *mut ::core::ffi::c_void;
375}
376unsafe extern "C" {
377 pub fn snd_dlclose(handle: *mut ::core::ffi::c_void) -> ::core::ffi::c_int;
378}
379#[repr(C)]
380#[derive(Debug, Copy, Clone)]
381pub struct _snd_async_handler {
382 _unused: [u8; 0],
383}
384pub type snd_async_handler_t = _snd_async_handler;
385pub type snd_async_callback_t =
386 ::core::option::Option<unsafe extern "C" fn(handler: *mut snd_async_handler_t)>;
387unsafe extern "C" {
388 pub fn snd_async_add_handler(
389 handler: *mut *mut snd_async_handler_t,
390 fd: ::core::ffi::c_int,
391 callback: snd_async_callback_t,
392 private_data: *mut ::core::ffi::c_void,
393 ) -> ::core::ffi::c_int;
394}
395unsafe extern "C" {
396 pub fn snd_async_del_handler(handler: *mut snd_async_handler_t) -> ::core::ffi::c_int;
397}
398unsafe extern "C" {
399 pub fn snd_async_handler_get_fd(handler: *mut snd_async_handler_t) -> ::core::ffi::c_int;
400}
401unsafe extern "C" {
402 pub fn snd_async_handler_get_signo(handler: *mut snd_async_handler_t) -> ::core::ffi::c_int;
403}
404unsafe extern "C" {
405 pub fn snd_async_handler_get_callback_private(
406 handler: *mut snd_async_handler_t,
407 ) -> *mut ::core::ffi::c_void;
408}
409#[repr(C)]
410#[derive(Debug, Copy, Clone)]
411pub struct snd_shm_area {
412 _unused: [u8; 0],
413}
414unsafe extern "C" {
415 pub fn snd_shm_area_create(
416 shmid: ::core::ffi::c_int,
417 ptr: *mut ::core::ffi::c_void,
418 ) -> *mut snd_shm_area;
419}
420unsafe extern "C" {
421 pub fn snd_shm_area_share(area: *mut snd_shm_area) -> *mut snd_shm_area;
422}
423unsafe extern "C" {
424 pub fn snd_shm_area_destroy(area: *mut snd_shm_area) -> ::core::ffi::c_int;
425}
426unsafe extern "C" {
427 pub fn snd_user_file(
428 file: *const ::core::ffi::c_char,
429 result: *mut *mut ::core::ffi::c_char,
430 ) -> ::core::ffi::c_int;
431}
432pub type snd_timestamp_t = timeval;
433pub type snd_htimestamp_t = timespec;
434#[repr(C)]
435#[derive(Debug, Copy, Clone)]
436pub struct _snd_input {
437 _unused: [u8; 0],
438}
439pub type snd_input_t = _snd_input;
440pub const SND_INPUT_STDIO: _snd_input_type = 0;
441pub const SND_INPUT_BUFFER: _snd_input_type = 1;
442pub type _snd_input_type = ::core::ffi::c_uint;
443pub use self::_snd_input_type as snd_input_type_t;
444unsafe extern "C" {
445 pub fn snd_input_stdio_open(
446 inputp: *mut *mut snd_input_t,
447 file: *const ::core::ffi::c_char,
448 mode: *const ::core::ffi::c_char,
449 ) -> ::core::ffi::c_int;
450}
451unsafe extern "C" {
452 pub fn snd_input_stdio_attach(
453 inputp: *mut *mut snd_input_t,
454 fp: *mut FILE,
455 _close: ::core::ffi::c_int,
456 ) -> ::core::ffi::c_int;
457}
458unsafe extern "C" {
459 pub fn snd_input_buffer_open(
460 inputp: *mut *mut snd_input_t,
461 buffer: *const ::core::ffi::c_char,
462 size: isize,
463 ) -> ::core::ffi::c_int;
464}
465unsafe extern "C" {
466 pub fn snd_input_close(input: *mut snd_input_t) -> ::core::ffi::c_int;
467}
468unsafe extern "C" {
469 pub fn snd_input_scanf(
470 input: *mut snd_input_t,
471 format: *const ::core::ffi::c_char,
472 ...
473 ) -> ::core::ffi::c_int;
474}
475unsafe extern "C" {
476 pub fn snd_input_gets(
477 input: *mut snd_input_t,
478 str_: *mut ::core::ffi::c_char,
479 size: usize,
480 ) -> *mut ::core::ffi::c_char;
481}
482unsafe extern "C" {
483 pub fn snd_input_getc(input: *mut snd_input_t) -> ::core::ffi::c_int;
484}
485unsafe extern "C" {
486 pub fn snd_input_ungetc(input: *mut snd_input_t, c: ::core::ffi::c_int) -> ::core::ffi::c_int;
487}
488#[repr(C)]
489#[derive(Debug, Copy, Clone)]
490pub struct _snd_output {
491 _unused: [u8; 0],
492}
493pub type snd_output_t = _snd_output;
494pub const SND_OUTPUT_STDIO: _snd_output_type = 0;
495pub const SND_OUTPUT_BUFFER: _snd_output_type = 1;
496pub type _snd_output_type = ::core::ffi::c_uint;
497pub use self::_snd_output_type as snd_output_type_t;
498unsafe extern "C" {
499 pub fn snd_output_stdio_open(
500 outputp: *mut *mut snd_output_t,
501 file: *const ::core::ffi::c_char,
502 mode: *const ::core::ffi::c_char,
503 ) -> ::core::ffi::c_int;
504}
505unsafe extern "C" {
506 pub fn snd_output_stdio_attach(
507 outputp: *mut *mut snd_output_t,
508 fp: *mut FILE,
509 _close: ::core::ffi::c_int,
510 ) -> ::core::ffi::c_int;
511}
512unsafe extern "C" {
513 pub fn snd_output_buffer_open(outputp: *mut *mut snd_output_t) -> ::core::ffi::c_int;
514}
515unsafe extern "C" {
516 pub fn snd_output_buffer_string(
517 output: *mut snd_output_t,
518 buf: *mut *mut ::core::ffi::c_char,
519 ) -> usize;
520}
521unsafe extern "C" {
522 pub fn snd_output_buffer_steal(
523 output: *mut snd_output_t,
524 buf: *mut *mut ::core::ffi::c_char,
525 ) -> usize;
526}
527unsafe extern "C" {
528 pub fn snd_output_close(output: *mut snd_output_t) -> ::core::ffi::c_int;
529}
530unsafe extern "C" {
531 pub fn snd_output_printf(
532 output: *mut snd_output_t,
533 format: *const ::core::ffi::c_char,
534 ...
535 ) -> ::core::ffi::c_int;
536}
537unsafe extern "C" {
538 pub fn snd_output_vprintf(
539 output: *mut snd_output_t,
540 format: *const ::core::ffi::c_char,
541 args: *mut __va_list_tag,
542 ) -> ::core::ffi::c_int;
543}
544unsafe extern "C" {
545 pub fn snd_output_puts(
546 output: *mut snd_output_t,
547 str_: *const ::core::ffi::c_char,
548 ) -> ::core::ffi::c_int;
549}
550unsafe extern "C" {
551 pub fn snd_output_putc(output: *mut snd_output_t, c: ::core::ffi::c_int) -> ::core::ffi::c_int;
552}
553unsafe extern "C" {
554 pub fn snd_output_flush(output: *mut snd_output_t) -> ::core::ffi::c_int;
555}
556unsafe extern "C" {
557 pub fn snd_strerror(errnum: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
558}
559pub type snd_lib_log_handler_t = ::core::option::Option<
560 unsafe extern "C" fn(
561 prio: ::core::ffi::c_int,
562 interface: ::core::ffi::c_int,
563 file: *const ::core::ffi::c_char,
564 line: ::core::ffi::c_int,
565 function: *const ::core::ffi::c_char,
566 errcode: ::core::ffi::c_int,
567 fmt: *const ::core::ffi::c_char,
568 arg: *mut __va_list_tag,
569 ),
570>;
571unsafe extern "C" {
572 pub fn snd_lib_log_filter(
573 prio: ::core::ffi::c_int,
574 interface: ::core::ffi::c_int,
575 configstr: *const ::core::ffi::c_char,
576 ) -> ::core::ffi::c_int;
577}
578unsafe extern "C" {
579 pub fn snd_lib_log(
580 prio: ::core::ffi::c_int,
581 interface: ::core::ffi::c_int,
582 file: *const ::core::ffi::c_char,
583 line: ::core::ffi::c_int,
584 function: *const ::core::ffi::c_char,
585 errcode: ::core::ffi::c_int,
586 fmt: *const ::core::ffi::c_char,
587 ...
588 );
589}
590unsafe extern "C" {
591 pub fn snd_lib_check(
592 interface: ::core::ffi::c_int,
593 file: *const ::core::ffi::c_char,
594 line: ::core::ffi::c_int,
595 function: *const ::core::ffi::c_char,
596 errcode: ::core::ffi::c_int,
597 fmt: *const ::core::ffi::c_char,
598 ...
599 );
600}
601unsafe extern "C" {
602 pub fn snd_lib_log_set_handler(handler: snd_lib_log_handler_t) -> snd_lib_log_handler_t;
603}
604unsafe extern "C" {
605 pub fn snd_lib_log_set_local(handler: snd_lib_log_handler_t) -> snd_lib_log_handler_t;
606}
607unsafe extern "C" {
608 pub fn snd_lib_log_priority(prio: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
609}
610unsafe extern "C" {
611 pub fn snd_lib_log_interface(interface: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
612}
613pub type snd_lib_error_handler_t = ::core::option::Option<
614 unsafe extern "C" fn(
615 file: *const ::core::ffi::c_char,
616 line: ::core::ffi::c_int,
617 function: *const ::core::ffi::c_char,
618 errcode: ::core::ffi::c_int,
619 fmt: *const ::core::ffi::c_char,
620 ...
621 ),
622>;
623unsafe extern "C" {
624 pub fn snd_lib_error_set_handler(handler: snd_lib_error_handler_t) -> ::core::ffi::c_int;
625}
626pub type snd_local_error_handler_t = ::core::option::Option<
627 unsafe extern "C" fn(
628 file: *const ::core::ffi::c_char,
629 line: ::core::ffi::c_int,
630 func: *const ::core::ffi::c_char,
631 errcode: ::core::ffi::c_int,
632 fmt: *const ::core::ffi::c_char,
633 arg: *mut __va_list_tag,
634 ),
635>;
636unsafe extern "C" {
637 pub fn snd_lib_error_set_local(func: snd_local_error_handler_t) -> snd_local_error_handler_t;
638}
639pub const SND_CONFIG_TYPE_INTEGER: _snd_config_type = 0;
640pub const SND_CONFIG_TYPE_INTEGER64: _snd_config_type = 1;
641pub const SND_CONFIG_TYPE_REAL: _snd_config_type = 2;
642pub const SND_CONFIG_TYPE_STRING: _snd_config_type = 3;
643pub const SND_CONFIG_TYPE_POINTER: _snd_config_type = 4;
644pub const SND_CONFIG_TYPE_COMPOUND: _snd_config_type = 1024;
645pub type _snd_config_type = ::core::ffi::c_uint;
646pub use self::_snd_config_type as snd_config_type_t;
647#[repr(C)]
648#[derive(Debug, Copy, Clone)]
649pub struct _snd_config {
650 _unused: [u8; 0],
651}
652pub type snd_config_t = _snd_config;
653#[repr(C)]
654#[derive(Debug, Copy, Clone)]
655pub struct _snd_config_iterator {
656 _unused: [u8; 0],
657}
658pub type snd_config_iterator_t = *mut _snd_config_iterator;
659#[repr(C)]
660#[derive(Debug, Copy, Clone)]
661pub struct _snd_config_update {
662 _unused: [u8; 0],
663}
664pub type snd_config_update_t = _snd_config_update;
665unsafe extern "C" {
666 pub fn snd_config_topdir() -> *const ::core::ffi::c_char;
667}
668unsafe extern "C" {
669 pub fn snd_config_top(config: *mut *mut snd_config_t) -> ::core::ffi::c_int;
670}
671unsafe extern "C" {
672 pub fn snd_config_load(config: *mut snd_config_t, in_: *mut snd_input_t) -> ::core::ffi::c_int;
673}
674unsafe extern "C" {
675 pub fn snd_config_load_string(
676 config: *mut *mut snd_config_t,
677 s: *const ::core::ffi::c_char,
678 size: usize,
679 ) -> ::core::ffi::c_int;
680}
681unsafe extern "C" {
682 pub fn snd_config_load_override(
683 config: *mut snd_config_t,
684 in_: *mut snd_input_t,
685 ) -> ::core::ffi::c_int;
686}
687unsafe extern "C" {
688 pub fn snd_config_save(config: *mut snd_config_t, out: *mut snd_output_t)
689 -> ::core::ffi::c_int;
690}
691unsafe extern "C" {
692 pub fn snd_config_update() -> ::core::ffi::c_int;
693}
694unsafe extern "C" {
695 pub fn snd_config_update_r(
696 top: *mut *mut snd_config_t,
697 update: *mut *mut snd_config_update_t,
698 path: *const ::core::ffi::c_char,
699 ) -> ::core::ffi::c_int;
700}
701unsafe extern "C" {
702 pub fn snd_config_update_free(update: *mut snd_config_update_t) -> ::core::ffi::c_int;
703}
704unsafe extern "C" {
705 pub fn snd_config_update_free_global() -> ::core::ffi::c_int;
706}
707unsafe extern "C" {
708 pub fn snd_config_update_ref(top: *mut *mut snd_config_t) -> ::core::ffi::c_int;
709}
710unsafe extern "C" {
711 pub fn snd_config_ref(top: *mut snd_config_t);
712}
713unsafe extern "C" {
714 pub fn snd_config_unref(top: *mut snd_config_t);
715}
716unsafe extern "C" {
717 pub fn snd_config_search(
718 config: *mut snd_config_t,
719 key: *const ::core::ffi::c_char,
720 result: *mut *mut snd_config_t,
721 ) -> ::core::ffi::c_int;
722}
723unsafe extern "C" {
724 pub fn snd_config_searchv(
725 config: *mut snd_config_t,
726 result: *mut *mut snd_config_t,
727 ...
728 ) -> ::core::ffi::c_int;
729}
730unsafe extern "C" {
731 pub fn snd_config_search_definition(
732 config: *mut snd_config_t,
733 base: *const ::core::ffi::c_char,
734 key: *const ::core::ffi::c_char,
735 result: *mut *mut snd_config_t,
736 ) -> ::core::ffi::c_int;
737}
738pub type snd_config_expand_fcn_t = ::core::option::Option<
739 unsafe extern "C" fn(
740 dst: *mut *mut snd_config_t,
741 s: *const ::core::ffi::c_char,
742 private_data: *mut ::core::ffi::c_void,
743 ) -> ::core::ffi::c_int,
744>;
745unsafe extern "C" {
746 pub fn snd_config_expand_custom(
747 config: *mut snd_config_t,
748 root: *mut snd_config_t,
749 fcn: snd_config_expand_fcn_t,
750 private_data: *mut ::core::ffi::c_void,
751 result: *mut *mut snd_config_t,
752 ) -> ::core::ffi::c_int;
753}
754unsafe extern "C" {
755 pub fn snd_config_expand(
756 config: *mut snd_config_t,
757 root: *mut snd_config_t,
758 args: *const ::core::ffi::c_char,
759 private_data: *mut snd_config_t,
760 result: *mut *mut snd_config_t,
761 ) -> ::core::ffi::c_int;
762}
763unsafe extern "C" {
764 pub fn snd_config_evaluate(
765 config: *mut snd_config_t,
766 root: *mut snd_config_t,
767 private_data: *mut snd_config_t,
768 result: *mut *mut snd_config_t,
769 ) -> ::core::ffi::c_int;
770}
771unsafe extern "C" {
772 pub fn snd_config_evaluate_string(
773 dst: *mut *mut snd_config_t,
774 s: *const ::core::ffi::c_char,
775 fcn: snd_config_expand_fcn_t,
776 private_data: *mut ::core::ffi::c_void,
777 ) -> ::core::ffi::c_int;
778}
779unsafe extern "C" {
780 pub fn snd_config_add(
781 config: *mut snd_config_t,
782 child: *mut snd_config_t,
783 ) -> ::core::ffi::c_int;
784}
785unsafe extern "C" {
786 pub fn snd_config_add_before(
787 before: *mut snd_config_t,
788 child: *mut snd_config_t,
789 ) -> ::core::ffi::c_int;
790}
791unsafe extern "C" {
792 pub fn snd_config_add_after(
793 after: *mut snd_config_t,
794 child: *mut snd_config_t,
795 ) -> ::core::ffi::c_int;
796}
797unsafe extern "C" {
798 pub fn snd_config_remove(config: *mut snd_config_t) -> ::core::ffi::c_int;
799}
800unsafe extern "C" {
801 pub fn snd_config_delete(config: *mut snd_config_t) -> ::core::ffi::c_int;
802}
803unsafe extern "C" {
804 pub fn snd_config_delete_compound_members(config: *const snd_config_t) -> ::core::ffi::c_int;
805}
806unsafe extern "C" {
807 pub fn snd_config_copy(
808 dst: *mut *mut snd_config_t,
809 src: *mut snd_config_t,
810 ) -> ::core::ffi::c_int;
811}
812unsafe extern "C" {
813 pub fn snd_config_substitute(
814 dst: *mut snd_config_t,
815 src: *mut snd_config_t,
816 ) -> ::core::ffi::c_int;
817}
818unsafe extern "C" {
819 pub fn snd_config_merge(
820 dst: *mut snd_config_t,
821 src: *mut snd_config_t,
822 override_: ::core::ffi::c_int,
823 ) -> ::core::ffi::c_int;
824}
825unsafe extern "C" {
826 pub fn snd_config_make(
827 config: *mut *mut snd_config_t,
828 key: *const ::core::ffi::c_char,
829 type_: snd_config_type_t,
830 ) -> ::core::ffi::c_int;
831}
832unsafe extern "C" {
833 pub fn snd_config_make_integer(
834 config: *mut *mut snd_config_t,
835 key: *const ::core::ffi::c_char,
836 ) -> ::core::ffi::c_int;
837}
838unsafe extern "C" {
839 pub fn snd_config_make_integer64(
840 config: *mut *mut snd_config_t,
841 key: *const ::core::ffi::c_char,
842 ) -> ::core::ffi::c_int;
843}
844unsafe extern "C" {
845 pub fn snd_config_make_real(
846 config: *mut *mut snd_config_t,
847 key: *const ::core::ffi::c_char,
848 ) -> ::core::ffi::c_int;
849}
850unsafe extern "C" {
851 pub fn snd_config_make_string(
852 config: *mut *mut snd_config_t,
853 key: *const ::core::ffi::c_char,
854 ) -> ::core::ffi::c_int;
855}
856unsafe extern "C" {
857 pub fn snd_config_make_pointer(
858 config: *mut *mut snd_config_t,
859 key: *const ::core::ffi::c_char,
860 ) -> ::core::ffi::c_int;
861}
862unsafe extern "C" {
863 pub fn snd_config_make_compound(
864 config: *mut *mut snd_config_t,
865 key: *const ::core::ffi::c_char,
866 join: ::core::ffi::c_int,
867 ) -> ::core::ffi::c_int;
868}
869unsafe extern "C" {
870 pub fn snd_config_make_path(
871 config: *mut *mut snd_config_t,
872 root: *mut snd_config_t,
873 key: *const ::core::ffi::c_char,
874 join: ::core::ffi::c_int,
875 override_: ::core::ffi::c_int,
876 ) -> ::core::ffi::c_int;
877}
878unsafe extern "C" {
879 pub fn snd_config_imake_integer(
880 config: *mut *mut snd_config_t,
881 key: *const ::core::ffi::c_char,
882 value: ::core::ffi::c_long,
883 ) -> ::core::ffi::c_int;
884}
885unsafe extern "C" {
886 pub fn snd_config_imake_integer64(
887 config: *mut *mut snd_config_t,
888 key: *const ::core::ffi::c_char,
889 value: ::core::ffi::c_longlong,
890 ) -> ::core::ffi::c_int;
891}
892unsafe extern "C" {
893 pub fn snd_config_imake_real(
894 config: *mut *mut snd_config_t,
895 key: *const ::core::ffi::c_char,
896 value: f64,
897 ) -> ::core::ffi::c_int;
898}
899unsafe extern "C" {
900 pub fn snd_config_imake_string(
901 config: *mut *mut snd_config_t,
902 key: *const ::core::ffi::c_char,
903 ascii: *const ::core::ffi::c_char,
904 ) -> ::core::ffi::c_int;
905}
906unsafe extern "C" {
907 pub fn snd_config_imake_safe_string(
908 config: *mut *mut snd_config_t,
909 key: *const ::core::ffi::c_char,
910 ascii: *const ::core::ffi::c_char,
911 ) -> ::core::ffi::c_int;
912}
913unsafe extern "C" {
914 pub fn snd_config_imake_pointer(
915 config: *mut *mut snd_config_t,
916 key: *const ::core::ffi::c_char,
917 ptr: *const ::core::ffi::c_void,
918 ) -> ::core::ffi::c_int;
919}
920unsafe extern "C" {
921 pub fn snd_config_get_type(config: *const snd_config_t) -> snd_config_type_t;
922}
923unsafe extern "C" {
924 pub fn snd_config_is_array(config: *const snd_config_t) -> ::core::ffi::c_int;
925}
926unsafe extern "C" {
927 pub fn snd_config_is_empty(config: *const snd_config_t) -> ::core::ffi::c_int;
928}
929unsafe extern "C" {
930 pub fn snd_config_set_id(
931 config: *mut snd_config_t,
932 id: *const ::core::ffi::c_char,
933 ) -> ::core::ffi::c_int;
934}
935unsafe extern "C" {
936 pub fn snd_config_set_integer(
937 config: *mut snd_config_t,
938 value: ::core::ffi::c_long,
939 ) -> ::core::ffi::c_int;
940}
941unsafe extern "C" {
942 pub fn snd_config_set_integer64(
943 config: *mut snd_config_t,
944 value: ::core::ffi::c_longlong,
945 ) -> ::core::ffi::c_int;
946}
947unsafe extern "C" {
948 pub fn snd_config_set_real(config: *mut snd_config_t, value: f64) -> ::core::ffi::c_int;
949}
950unsafe extern "C" {
951 pub fn snd_config_set_string(
952 config: *mut snd_config_t,
953 value: *const ::core::ffi::c_char,
954 ) -> ::core::ffi::c_int;
955}
956unsafe extern "C" {
957 pub fn snd_config_set_ascii(
958 config: *mut snd_config_t,
959 ascii: *const ::core::ffi::c_char,
960 ) -> ::core::ffi::c_int;
961}
962unsafe extern "C" {
963 pub fn snd_config_set_pointer(
964 config: *mut snd_config_t,
965 ptr: *const ::core::ffi::c_void,
966 ) -> ::core::ffi::c_int;
967}
968unsafe extern "C" {
969 pub fn snd_config_get_id(
970 config: *const snd_config_t,
971 value: *mut *const ::core::ffi::c_char,
972 ) -> ::core::ffi::c_int;
973}
974unsafe extern "C" {
975 pub fn snd_config_get_integer(
976 config: *const snd_config_t,
977 value: *mut ::core::ffi::c_long,
978 ) -> ::core::ffi::c_int;
979}
980unsafe extern "C" {
981 pub fn snd_config_get_integer64(
982 config: *const snd_config_t,
983 value: *mut ::core::ffi::c_longlong,
984 ) -> ::core::ffi::c_int;
985}
986unsafe extern "C" {
987 pub fn snd_config_get_real(config: *const snd_config_t, value: *mut f64) -> ::core::ffi::c_int;
988}
989unsafe extern "C" {
990 pub fn snd_config_get_ireal(config: *const snd_config_t, value: *mut f64)
991 -> ::core::ffi::c_int;
992}
993unsafe extern "C" {
994 pub fn snd_config_get_string(
995 config: *const snd_config_t,
996 value: *mut *const ::core::ffi::c_char,
997 ) -> ::core::ffi::c_int;
998}
999unsafe extern "C" {
1000 pub fn snd_config_get_ascii(
1001 config: *const snd_config_t,
1002 value: *mut *mut ::core::ffi::c_char,
1003 ) -> ::core::ffi::c_int;
1004}
1005unsafe extern "C" {
1006 pub fn snd_config_get_pointer(
1007 config: *const snd_config_t,
1008 value: *mut *const ::core::ffi::c_void,
1009 ) -> ::core::ffi::c_int;
1010}
1011unsafe extern "C" {
1012 pub fn snd_config_test_id(
1013 config: *const snd_config_t,
1014 id: *const ::core::ffi::c_char,
1015 ) -> ::core::ffi::c_int;
1016}
1017unsafe extern "C" {
1018 pub fn snd_config_iterator_first(node: *const snd_config_t) -> snd_config_iterator_t;
1019}
1020unsafe extern "C" {
1021 pub fn snd_config_iterator_next(iterator: snd_config_iterator_t) -> snd_config_iterator_t;
1022}
1023unsafe extern "C" {
1024 pub fn snd_config_iterator_end(node: *const snd_config_t) -> snd_config_iterator_t;
1025}
1026unsafe extern "C" {
1027 pub fn snd_config_iterator_entry(iterator: snd_config_iterator_t) -> *mut snd_config_t;
1028}
1029unsafe extern "C" {
1030 pub fn snd_config_get_bool_ascii(ascii: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
1031}
1032unsafe extern "C" {
1033 pub fn snd_config_get_bool(conf: *const snd_config_t) -> ::core::ffi::c_int;
1034}
1035unsafe extern "C" {
1036 pub fn snd_config_get_card(conf: *const snd_config_t) -> ::core::ffi::c_int;
1037}
1038unsafe extern "C" {
1039 pub fn snd_config_get_ctl_iface_ascii(ascii: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
1040}
1041unsafe extern "C" {
1042 pub fn snd_config_get_ctl_iface(conf: *const snd_config_t) -> ::core::ffi::c_int;
1043}
1044pub type snd_devname_t = snd_devname;
1045#[repr(C)]
1046#[derive(Debug, Copy, Clone)]
1047pub struct snd_devname {
1048 pub name: *mut ::core::ffi::c_char,
1049 pub comment: *mut ::core::ffi::c_char,
1050 pub next: *mut snd_devname_t,
1051}
1052unsafe extern "C" {
1053 pub fn snd_names_list(
1054 iface: *const ::core::ffi::c_char,
1055 list: *mut *mut snd_devname_t,
1056 ) -> ::core::ffi::c_int;
1057}
1058unsafe extern "C" {
1059 pub fn snd_names_list_free(list: *mut snd_devname_t);
1060}
1061#[repr(C)]
1062#[derive(Debug, Copy, Clone)]
1063pub struct _snd_pcm_info {
1064 _unused: [u8; 0],
1065}
1066pub type snd_pcm_info_t = _snd_pcm_info;
1067#[repr(C)]
1068#[derive(Debug, Copy, Clone)]
1069pub struct _snd_pcm_hw_params {
1070 _unused: [u8; 0],
1071}
1072pub type snd_pcm_hw_params_t = _snd_pcm_hw_params;
1073#[repr(C)]
1074#[derive(Debug, Copy, Clone)]
1075pub struct _snd_pcm_sw_params {
1076 _unused: [u8; 0],
1077}
1078pub type snd_pcm_sw_params_t = _snd_pcm_sw_params;
1079#[repr(C)]
1080#[derive(Debug, Copy, Clone)]
1081pub struct _snd_pcm_status {
1082 _unused: [u8; 0],
1083}
1084pub type snd_pcm_status_t = _snd_pcm_status;
1085#[repr(C)]
1086#[derive(Debug, Copy, Clone)]
1087pub struct _snd_pcm_access_mask {
1088 _unused: [u8; 0],
1089}
1090pub type snd_pcm_access_mask_t = _snd_pcm_access_mask;
1091#[repr(C)]
1092#[derive(Debug, Copy, Clone)]
1093pub struct _snd_pcm_format_mask {
1094 _unused: [u8; 0],
1095}
1096pub type snd_pcm_format_mask_t = _snd_pcm_format_mask;
1097#[repr(C)]
1098#[derive(Debug, Copy, Clone)]
1099pub struct _snd_pcm_subformat_mask {
1100 _unused: [u8; 0],
1101}
1102pub type snd_pcm_subformat_mask_t = _snd_pcm_subformat_mask;
1103pub const SND_PCM_CLASS_GENERIC: _snd_pcm_class = 0;
1104pub const SND_PCM_CLASS_MULTI: _snd_pcm_class = 1;
1105pub const SND_PCM_CLASS_MODEM: _snd_pcm_class = 2;
1106pub const SND_PCM_CLASS_DIGITIZER: _snd_pcm_class = 3;
1107pub const SND_PCM_CLASS_LAST: _snd_pcm_class = 3;
1108pub type _snd_pcm_class = ::core::ffi::c_uint;
1109pub use self::_snd_pcm_class as snd_pcm_class_t;
1110pub const SND_PCM_SUBCLASS_GENERIC_MIX: _snd_pcm_subclass = 0;
1111pub const SND_PCM_SUBCLASS_MULTI_MIX: _snd_pcm_subclass = 1;
1112pub const SND_PCM_SUBCLASS_LAST: _snd_pcm_subclass = 1;
1113pub type _snd_pcm_subclass = ::core::ffi::c_uint;
1114pub use self::_snd_pcm_subclass as snd_pcm_subclass_t;
1115pub const SND_PCM_STREAM_PLAYBACK: _snd_pcm_stream = 0;
1116pub const SND_PCM_STREAM_CAPTURE: _snd_pcm_stream = 1;
1117pub const SND_PCM_STREAM_LAST: _snd_pcm_stream = 1;
1118pub type _snd_pcm_stream = ::core::ffi::c_uint;
1119pub use self::_snd_pcm_stream as snd_pcm_stream_t;
1120pub const SND_PCM_ACCESS_MMAP_INTERLEAVED: _snd_pcm_access = 0;
1121pub const SND_PCM_ACCESS_MMAP_NONINTERLEAVED: _snd_pcm_access = 1;
1122pub const SND_PCM_ACCESS_MMAP_COMPLEX: _snd_pcm_access = 2;
1123pub const SND_PCM_ACCESS_RW_INTERLEAVED: _snd_pcm_access = 3;
1124pub const SND_PCM_ACCESS_RW_NONINTERLEAVED: _snd_pcm_access = 4;
1125pub const SND_PCM_ACCESS_LAST: _snd_pcm_access = 4;
1126pub type _snd_pcm_access = ::core::ffi::c_uint;
1127pub use self::_snd_pcm_access as snd_pcm_access_t;
1128pub const SND_PCM_FORMAT_UNKNOWN: _snd_pcm_format = -1;
1129pub const SND_PCM_FORMAT_S8: _snd_pcm_format = 0;
1130pub const SND_PCM_FORMAT_U8: _snd_pcm_format = 1;
1131pub const SND_PCM_FORMAT_S16_LE: _snd_pcm_format = 2;
1132pub const SND_PCM_FORMAT_S16_BE: _snd_pcm_format = 3;
1133pub const SND_PCM_FORMAT_U16_LE: _snd_pcm_format = 4;
1134pub const SND_PCM_FORMAT_U16_BE: _snd_pcm_format = 5;
1135pub const SND_PCM_FORMAT_S24_LE: _snd_pcm_format = 6;
1136pub const SND_PCM_FORMAT_S24_BE: _snd_pcm_format = 7;
1137pub const SND_PCM_FORMAT_U24_LE: _snd_pcm_format = 8;
1138pub const SND_PCM_FORMAT_U24_BE: _snd_pcm_format = 9;
1139pub const SND_PCM_FORMAT_S32_LE: _snd_pcm_format = 10;
1140pub const SND_PCM_FORMAT_S32_BE: _snd_pcm_format = 11;
1141pub const SND_PCM_FORMAT_U32_LE: _snd_pcm_format = 12;
1142pub const SND_PCM_FORMAT_U32_BE: _snd_pcm_format = 13;
1143pub const SND_PCM_FORMAT_FLOAT_LE: _snd_pcm_format = 14;
1144pub const SND_PCM_FORMAT_FLOAT_BE: _snd_pcm_format = 15;
1145pub const SND_PCM_FORMAT_FLOAT64_LE: _snd_pcm_format = 16;
1146pub const SND_PCM_FORMAT_FLOAT64_BE: _snd_pcm_format = 17;
1147pub const SND_PCM_FORMAT_IEC958_SUBFRAME_LE: _snd_pcm_format = 18;
1148pub const SND_PCM_FORMAT_IEC958_SUBFRAME_BE: _snd_pcm_format = 19;
1149pub const SND_PCM_FORMAT_MU_LAW: _snd_pcm_format = 20;
1150pub const SND_PCM_FORMAT_A_LAW: _snd_pcm_format = 21;
1151pub const SND_PCM_FORMAT_IMA_ADPCM: _snd_pcm_format = 22;
1152pub const SND_PCM_FORMAT_MPEG: _snd_pcm_format = 23;
1153pub const SND_PCM_FORMAT_GSM: _snd_pcm_format = 24;
1154pub const SND_PCM_FORMAT_S20_LE: _snd_pcm_format = 25;
1155pub const SND_PCM_FORMAT_S20_BE: _snd_pcm_format = 26;
1156pub const SND_PCM_FORMAT_U20_LE: _snd_pcm_format = 27;
1157pub const SND_PCM_FORMAT_U20_BE: _snd_pcm_format = 28;
1158pub const SND_PCM_FORMAT_SPECIAL: _snd_pcm_format = 31;
1159pub const SND_PCM_FORMAT_S24_3LE: _snd_pcm_format = 32;
1160pub const SND_PCM_FORMAT_S24_3BE: _snd_pcm_format = 33;
1161pub const SND_PCM_FORMAT_U24_3LE: _snd_pcm_format = 34;
1162pub const SND_PCM_FORMAT_U24_3BE: _snd_pcm_format = 35;
1163pub const SND_PCM_FORMAT_S20_3LE: _snd_pcm_format = 36;
1164pub const SND_PCM_FORMAT_S20_3BE: _snd_pcm_format = 37;
1165pub const SND_PCM_FORMAT_U20_3LE: _snd_pcm_format = 38;
1166pub const SND_PCM_FORMAT_U20_3BE: _snd_pcm_format = 39;
1167pub const SND_PCM_FORMAT_S18_3LE: _snd_pcm_format = 40;
1168pub const SND_PCM_FORMAT_S18_3BE: _snd_pcm_format = 41;
1169pub const SND_PCM_FORMAT_U18_3LE: _snd_pcm_format = 42;
1170pub const SND_PCM_FORMAT_U18_3BE: _snd_pcm_format = 43;
1171pub const SND_PCM_FORMAT_G723_24: _snd_pcm_format = 44;
1172pub const SND_PCM_FORMAT_G723_24_1B: _snd_pcm_format = 45;
1173pub const SND_PCM_FORMAT_G723_40: _snd_pcm_format = 46;
1174pub const SND_PCM_FORMAT_G723_40_1B: _snd_pcm_format = 47;
1175pub const SND_PCM_FORMAT_DSD_U8: _snd_pcm_format = 48;
1176pub const SND_PCM_FORMAT_DSD_U16_LE: _snd_pcm_format = 49;
1177pub const SND_PCM_FORMAT_DSD_U32_LE: _snd_pcm_format = 50;
1178pub const SND_PCM_FORMAT_DSD_U16_BE: _snd_pcm_format = 51;
1179pub const SND_PCM_FORMAT_DSD_U32_BE: _snd_pcm_format = 52;
1180pub const SND_PCM_FORMAT_LAST: _snd_pcm_format = 52;
1181pub const SND_PCM_FORMAT_S16: _snd_pcm_format = 2;
1182pub const SND_PCM_FORMAT_U16: _snd_pcm_format = 4;
1183pub const SND_PCM_FORMAT_S24: _snd_pcm_format = 6;
1184pub const SND_PCM_FORMAT_U24: _snd_pcm_format = 8;
1185pub const SND_PCM_FORMAT_S32: _snd_pcm_format = 10;
1186pub const SND_PCM_FORMAT_U32: _snd_pcm_format = 12;
1187pub const SND_PCM_FORMAT_FLOAT: _snd_pcm_format = 14;
1188pub const SND_PCM_FORMAT_FLOAT64: _snd_pcm_format = 16;
1189pub const SND_PCM_FORMAT_IEC958_SUBFRAME: _snd_pcm_format = 18;
1190pub const SND_PCM_FORMAT_S20: _snd_pcm_format = 25;
1191pub const SND_PCM_FORMAT_U20: _snd_pcm_format = 27;
1192pub type _snd_pcm_format = ::core::ffi::c_int;
1193pub use self::_snd_pcm_format as snd_pcm_format_t;
1194pub const SND_PCM_SUBFORMAT_UNKNOWN: _snd_pcm_subformat = -1;
1195pub const SND_PCM_SUBFORMAT_STD: _snd_pcm_subformat = 0;
1196pub const SND_PCM_SUBFORMAT_MSBITS_MAX: _snd_pcm_subformat = 1;
1197pub const SND_PCM_SUBFORMAT_MSBITS_20: _snd_pcm_subformat = 2;
1198pub const SND_PCM_SUBFORMAT_MSBITS_24: _snd_pcm_subformat = 3;
1199pub const SND_PCM_SUBFORMAT_LAST: _snd_pcm_subformat = 3;
1200pub type _snd_pcm_subformat = ::core::ffi::c_int;
1201pub use self::_snd_pcm_subformat as snd_pcm_subformat_t;
1202pub const SND_PCM_STATE_OPEN: _snd_pcm_state = 0;
1203pub const SND_PCM_STATE_SETUP: _snd_pcm_state = 1;
1204pub const SND_PCM_STATE_PREPARED: _snd_pcm_state = 2;
1205pub const SND_PCM_STATE_RUNNING: _snd_pcm_state = 3;
1206pub const SND_PCM_STATE_XRUN: _snd_pcm_state = 4;
1207pub const SND_PCM_STATE_DRAINING: _snd_pcm_state = 5;
1208pub const SND_PCM_STATE_PAUSED: _snd_pcm_state = 6;
1209pub const SND_PCM_STATE_SUSPENDED: _snd_pcm_state = 7;
1210pub const SND_PCM_STATE_DISCONNECTED: _snd_pcm_state = 8;
1211pub const SND_PCM_STATE_LAST: _snd_pcm_state = 8;
1212pub const SND_PCM_STATE_PRIVATE1: _snd_pcm_state = 1024;
1213pub type _snd_pcm_state = ::core::ffi::c_uint;
1214pub use self::_snd_pcm_state as snd_pcm_state_t;
1215pub const SND_PCM_START_DATA: _snd_pcm_start = 0;
1216pub const SND_PCM_START_EXPLICIT: _snd_pcm_start = 1;
1217pub const SND_PCM_START_LAST: _snd_pcm_start = 1;
1218pub type _snd_pcm_start = ::core::ffi::c_uint;
1219pub use self::_snd_pcm_start as snd_pcm_start_t;
1220pub const SND_PCM_XRUN_NONE: _snd_pcm_xrun = 0;
1221pub const SND_PCM_XRUN_STOP: _snd_pcm_xrun = 1;
1222pub const SND_PCM_XRUN_LAST: _snd_pcm_xrun = 1;
1223pub type _snd_pcm_xrun = ::core::ffi::c_uint;
1224pub use self::_snd_pcm_xrun as snd_pcm_xrun_t;
1225pub const SND_PCM_TSTAMP_NONE: _snd_pcm_tstamp = 0;
1226pub const SND_PCM_TSTAMP_ENABLE: _snd_pcm_tstamp = 1;
1227pub const SND_PCM_TSTAMP_MMAP: _snd_pcm_tstamp = 1;
1228pub const SND_PCM_TSTAMP_LAST: _snd_pcm_tstamp = 1;
1229pub type _snd_pcm_tstamp = ::core::ffi::c_uint;
1230pub use self::_snd_pcm_tstamp as snd_pcm_tstamp_t;
1231pub const SND_PCM_TSTAMP_TYPE_GETTIMEOFDAY: _snd_pcm_tstamp_type = 0;
1232pub const SND_PCM_TSTAMP_TYPE_MONOTONIC: _snd_pcm_tstamp_type = 1;
1233pub const SND_PCM_TSTAMP_TYPE_MONOTONIC_RAW: _snd_pcm_tstamp_type = 2;
1234pub const SND_PCM_TSTAMP_TYPE_LAST: _snd_pcm_tstamp_type = 2;
1235pub type _snd_pcm_tstamp_type = ::core::ffi::c_uint;
1236pub use self::_snd_pcm_tstamp_type as snd_pcm_tstamp_type_t;
1237pub const SND_PCM_AUDIO_TSTAMP_TYPE_COMPAT: _snd_pcm_audio_tstamp_type = 0;
1238pub const SND_PCM_AUDIO_TSTAMP_TYPE_DEFAULT: _snd_pcm_audio_tstamp_type = 1;
1239pub const SND_PCM_AUDIO_TSTAMP_TYPE_LINK: _snd_pcm_audio_tstamp_type = 2;
1240pub const SND_PCM_AUDIO_TSTAMP_TYPE_LINK_ABSOLUTE: _snd_pcm_audio_tstamp_type = 3;
1241pub const SND_PCM_AUDIO_TSTAMP_TYPE_LINK_ESTIMATED: _snd_pcm_audio_tstamp_type = 4;
1242pub const SND_PCM_AUDIO_TSTAMP_TYPE_LINK_SYNCHRONIZED: _snd_pcm_audio_tstamp_type = 5;
1243pub const SND_PCM_AUDIO_TSTAMP_TYPE_LAST: _snd_pcm_audio_tstamp_type = 5;
1244pub type _snd_pcm_audio_tstamp_type = ::core::ffi::c_uint;
1245pub use self::_snd_pcm_audio_tstamp_type as snd_pcm_audio_tstamp_type_t;
1246#[repr(C)]
1247#[repr(align(4))]
1248#[derive(Debug, Copy, Clone)]
1249pub struct _snd_pcm_audio_tstamp_config {
1250 pub _bitfield_align_1: [u8; 0],
1251 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
1252 pub __bindgen_padding_0: [u8; 3usize],
1253}
1254impl _snd_pcm_audio_tstamp_config {
1255 #[inline]
1256 pub fn type_requested(&self) -> ::core::ffi::c_uint {
1257 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u32) }
1258 }
1259 #[inline]
1260 pub fn set_type_requested(&mut self, val: ::core::ffi::c_uint) {
1261 unsafe {
1262 let val: u32 = ::core::mem::transmute(val);
1263 self._bitfield_1.set(0usize, 4u8, val as u64)
1264 }
1265 }
1266 #[inline]
1267 pub unsafe fn type_requested_raw(this: *const Self) -> ::core::ffi::c_uint {
1268 unsafe {
1269 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
1270 ::core::ptr::addr_of!((*this)._bitfield_1),
1271 0usize,
1272 4u8,
1273 ) as u32)
1274 }
1275 }
1276 #[inline]
1277 pub unsafe fn set_type_requested_raw(this: *mut Self, val: ::core::ffi::c_uint) {
1278 unsafe {
1279 let val: u32 = ::core::mem::transmute(val);
1280 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
1281 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
1282 0usize,
1283 4u8,
1284 val as u64,
1285 )
1286 }
1287 }
1288 #[inline]
1289 pub fn report_delay(&self) -> ::core::ffi::c_uint {
1290 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
1291 }
1292 #[inline]
1293 pub fn set_report_delay(&mut self, val: ::core::ffi::c_uint) {
1294 unsafe {
1295 let val: u32 = ::core::mem::transmute(val);
1296 self._bitfield_1.set(4usize, 1u8, val as u64)
1297 }
1298 }
1299 #[inline]
1300 pub unsafe fn report_delay_raw(this: *const Self) -> ::core::ffi::c_uint {
1301 unsafe {
1302 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
1303 ::core::ptr::addr_of!((*this)._bitfield_1),
1304 4usize,
1305 1u8,
1306 ) as u32)
1307 }
1308 }
1309 #[inline]
1310 pub unsafe fn set_report_delay_raw(this: *mut Self, val: ::core::ffi::c_uint) {
1311 unsafe {
1312 let val: u32 = ::core::mem::transmute(val);
1313 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
1314 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
1315 4usize,
1316 1u8,
1317 val as u64,
1318 )
1319 }
1320 }
1321 #[inline]
1322 pub fn new_bitfield_1(
1323 type_requested: ::core::ffi::c_uint,
1324 report_delay: ::core::ffi::c_uint,
1325 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
1326 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
1327 __bindgen_bitfield_unit.set(0usize, 4u8, {
1328 let type_requested: u32 = unsafe { ::core::mem::transmute(type_requested) };
1329 type_requested as u64
1330 });
1331 __bindgen_bitfield_unit.set(4usize, 1u8, {
1332 let report_delay: u32 = unsafe { ::core::mem::transmute(report_delay) };
1333 report_delay as u64
1334 });
1335 __bindgen_bitfield_unit
1336 }
1337}
1338pub type snd_pcm_audio_tstamp_config_t = _snd_pcm_audio_tstamp_config;
1339#[repr(C)]
1340#[derive(Debug, Copy, Clone)]
1341pub struct _snd_pcm_audio_tstamp_report {
1342 pub _bitfield_align_1: [u8; 0],
1343 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
1344 pub accuracy: ::core::ffi::c_uint,
1345}
1346impl _snd_pcm_audio_tstamp_report {
1347 #[inline]
1348 pub fn valid(&self) -> ::core::ffi::c_uint {
1349 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
1350 }
1351 #[inline]
1352 pub fn set_valid(&mut self, val: ::core::ffi::c_uint) {
1353 unsafe {
1354 let val: u32 = ::core::mem::transmute(val);
1355 self._bitfield_1.set(0usize, 1u8, val as u64)
1356 }
1357 }
1358 #[inline]
1359 pub unsafe fn valid_raw(this: *const Self) -> ::core::ffi::c_uint {
1360 unsafe {
1361 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
1362 ::core::ptr::addr_of!((*this)._bitfield_1),
1363 0usize,
1364 1u8,
1365 ) as u32)
1366 }
1367 }
1368 #[inline]
1369 pub unsafe fn set_valid_raw(this: *mut Self, val: ::core::ffi::c_uint) {
1370 unsafe {
1371 let val: u32 = ::core::mem::transmute(val);
1372 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
1373 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
1374 0usize,
1375 1u8,
1376 val as u64,
1377 )
1378 }
1379 }
1380 #[inline]
1381 pub fn actual_type(&self) -> ::core::ffi::c_uint {
1382 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 4u8) as u32) }
1383 }
1384 #[inline]
1385 pub fn set_actual_type(&mut self, val: ::core::ffi::c_uint) {
1386 unsafe {
1387 let val: u32 = ::core::mem::transmute(val);
1388 self._bitfield_1.set(1usize, 4u8, val as u64)
1389 }
1390 }
1391 #[inline]
1392 pub unsafe fn actual_type_raw(this: *const Self) -> ::core::ffi::c_uint {
1393 unsafe {
1394 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
1395 ::core::ptr::addr_of!((*this)._bitfield_1),
1396 1usize,
1397 4u8,
1398 ) as u32)
1399 }
1400 }
1401 #[inline]
1402 pub unsafe fn set_actual_type_raw(this: *mut Self, val: ::core::ffi::c_uint) {
1403 unsafe {
1404 let val: u32 = ::core::mem::transmute(val);
1405 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
1406 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
1407 1usize,
1408 4u8,
1409 val as u64,
1410 )
1411 }
1412 }
1413 #[inline]
1414 pub fn accuracy_report(&self) -> ::core::ffi::c_uint {
1415 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
1416 }
1417 #[inline]
1418 pub fn set_accuracy_report(&mut self, val: ::core::ffi::c_uint) {
1419 unsafe {
1420 let val: u32 = ::core::mem::transmute(val);
1421 self._bitfield_1.set(5usize, 1u8, val as u64)
1422 }
1423 }
1424 #[inline]
1425 pub unsafe fn accuracy_report_raw(this: *const Self) -> ::core::ffi::c_uint {
1426 unsafe {
1427 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
1428 ::core::ptr::addr_of!((*this)._bitfield_1),
1429 5usize,
1430 1u8,
1431 ) as u32)
1432 }
1433 }
1434 #[inline]
1435 pub unsafe fn set_accuracy_report_raw(this: *mut Self, val: ::core::ffi::c_uint) {
1436 unsafe {
1437 let val: u32 = ::core::mem::transmute(val);
1438 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
1439 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
1440 5usize,
1441 1u8,
1442 val as u64,
1443 )
1444 }
1445 }
1446 #[inline]
1447 pub fn new_bitfield_1(
1448 valid: ::core::ffi::c_uint,
1449 actual_type: ::core::ffi::c_uint,
1450 accuracy_report: ::core::ffi::c_uint,
1451 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
1452 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
1453 __bindgen_bitfield_unit.set(0usize, 1u8, {
1454 let valid: u32 = unsafe { ::core::mem::transmute(valid) };
1455 valid as u64
1456 });
1457 __bindgen_bitfield_unit.set(1usize, 4u8, {
1458 let actual_type: u32 = unsafe { ::core::mem::transmute(actual_type) };
1459 actual_type as u64
1460 });
1461 __bindgen_bitfield_unit.set(5usize, 1u8, {
1462 let accuracy_report: u32 = unsafe { ::core::mem::transmute(accuracy_report) };
1463 accuracy_report as u64
1464 });
1465 __bindgen_bitfield_unit
1466 }
1467}
1468pub type snd_pcm_audio_tstamp_report_t = _snd_pcm_audio_tstamp_report;
1469pub type snd_pcm_uframes_t = ::core::ffi::c_ulong;
1470pub type snd_pcm_sframes_t = ::core::ffi::c_long;
1471#[repr(C)]
1472#[derive(Debug, Copy, Clone)]
1473pub struct _snd_pcm {
1474 _unused: [u8; 0],
1475}
1476pub type snd_pcm_t = _snd_pcm;
1477pub const SND_PCM_TYPE_HW: _snd_pcm_type = 0;
1478pub const SND_PCM_TYPE_HOOKS: _snd_pcm_type = 1;
1479pub const SND_PCM_TYPE_MULTI: _snd_pcm_type = 2;
1480pub const SND_PCM_TYPE_FILE: _snd_pcm_type = 3;
1481pub const SND_PCM_TYPE_NULL: _snd_pcm_type = 4;
1482pub const SND_PCM_TYPE_SHM: _snd_pcm_type = 5;
1483pub const SND_PCM_TYPE_INET: _snd_pcm_type = 6;
1484pub const SND_PCM_TYPE_COPY: _snd_pcm_type = 7;
1485pub const SND_PCM_TYPE_LINEAR: _snd_pcm_type = 8;
1486pub const SND_PCM_TYPE_ALAW: _snd_pcm_type = 9;
1487pub const SND_PCM_TYPE_MULAW: _snd_pcm_type = 10;
1488pub const SND_PCM_TYPE_ADPCM: _snd_pcm_type = 11;
1489pub const SND_PCM_TYPE_RATE: _snd_pcm_type = 12;
1490pub const SND_PCM_TYPE_ROUTE: _snd_pcm_type = 13;
1491pub const SND_PCM_TYPE_PLUG: _snd_pcm_type = 14;
1492pub const SND_PCM_TYPE_SHARE: _snd_pcm_type = 15;
1493pub const SND_PCM_TYPE_METER: _snd_pcm_type = 16;
1494pub const SND_PCM_TYPE_MIX: _snd_pcm_type = 17;
1495pub const SND_PCM_TYPE_DROUTE: _snd_pcm_type = 18;
1496pub const SND_PCM_TYPE_LBSERVER: _snd_pcm_type = 19;
1497pub const SND_PCM_TYPE_LINEAR_FLOAT: _snd_pcm_type = 20;
1498pub const SND_PCM_TYPE_LADSPA: _snd_pcm_type = 21;
1499pub const SND_PCM_TYPE_DMIX: _snd_pcm_type = 22;
1500pub const SND_PCM_TYPE_JACK: _snd_pcm_type = 23;
1501pub const SND_PCM_TYPE_DSNOOP: _snd_pcm_type = 24;
1502pub const SND_PCM_TYPE_DSHARE: _snd_pcm_type = 25;
1503pub const SND_PCM_TYPE_IEC958: _snd_pcm_type = 26;
1504pub const SND_PCM_TYPE_SOFTVOL: _snd_pcm_type = 27;
1505pub const SND_PCM_TYPE_IOPLUG: _snd_pcm_type = 28;
1506pub const SND_PCM_TYPE_EXTPLUG: _snd_pcm_type = 29;
1507pub const SND_PCM_TYPE_MMAP_EMUL: _snd_pcm_type = 30;
1508pub const SND_PCM_TYPE_LAST: _snd_pcm_type = 30;
1509pub type _snd_pcm_type = ::core::ffi::c_uint;
1510pub use self::_snd_pcm_type as snd_pcm_type_t;
1511#[repr(C)]
1512#[derive(Debug, Copy, Clone)]
1513pub struct _snd_pcm_channel_area {
1514 pub addr: *mut ::core::ffi::c_void,
1515 pub first: ::core::ffi::c_uint,
1516 pub step: ::core::ffi::c_uint,
1517}
1518pub type snd_pcm_channel_area_t = _snd_pcm_channel_area;
1519#[repr(C)]
1520#[derive(Copy, Clone)]
1521pub union _snd_pcm_sync_id {
1522 pub id: [::core::ffi::c_uchar; 16usize],
1523 pub id16: [::core::ffi::c_ushort; 8usize],
1524 pub id32: [::core::ffi::c_uint; 4usize],
1525}
1526pub type snd_pcm_sync_id_t = _snd_pcm_sync_id;
1527#[repr(C)]
1528#[derive(Debug, Copy, Clone)]
1529pub struct _snd_pcm_scope {
1530 _unused: [u8; 0],
1531}
1532pub type snd_pcm_scope_t = _snd_pcm_scope;
1533unsafe extern "C" {
1534 pub fn snd_pcm_open(
1535 pcm: *mut *mut snd_pcm_t,
1536 name: *const ::core::ffi::c_char,
1537 stream: snd_pcm_stream_t,
1538 mode: ::core::ffi::c_int,
1539 ) -> ::core::ffi::c_int;
1540}
1541unsafe extern "C" {
1542 pub fn snd_pcm_open_lconf(
1543 pcm: *mut *mut snd_pcm_t,
1544 name: *const ::core::ffi::c_char,
1545 stream: snd_pcm_stream_t,
1546 mode: ::core::ffi::c_int,
1547 lconf: *mut snd_config_t,
1548 ) -> ::core::ffi::c_int;
1549}
1550unsafe extern "C" {
1551 pub fn snd_pcm_open_fallback(
1552 pcm: *mut *mut snd_pcm_t,
1553 root: *mut snd_config_t,
1554 name: *const ::core::ffi::c_char,
1555 orig_name: *const ::core::ffi::c_char,
1556 stream: snd_pcm_stream_t,
1557 mode: ::core::ffi::c_int,
1558 ) -> ::core::ffi::c_int;
1559}
1560unsafe extern "C" {
1561 pub fn snd_pcm_close(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1562}
1563unsafe extern "C" {
1564 pub fn snd_pcm_name(pcm: *mut snd_pcm_t) -> *const ::core::ffi::c_char;
1565}
1566unsafe extern "C" {
1567 pub fn snd_pcm_type(pcm: *mut snd_pcm_t) -> snd_pcm_type_t;
1568}
1569unsafe extern "C" {
1570 pub fn snd_pcm_stream(pcm: *mut snd_pcm_t) -> snd_pcm_stream_t;
1571}
1572unsafe extern "C" {
1573 pub fn snd_pcm_poll_descriptors_count(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1574}
1575unsafe extern "C" {
1576 pub fn snd_pcm_poll_descriptors(
1577 pcm: *mut snd_pcm_t,
1578 pfds: *mut pollfd,
1579 space: ::core::ffi::c_uint,
1580 ) -> ::core::ffi::c_int;
1581}
1582unsafe extern "C" {
1583 pub fn snd_pcm_poll_descriptors_revents(
1584 pcm: *mut snd_pcm_t,
1585 pfds: *mut pollfd,
1586 nfds: ::core::ffi::c_uint,
1587 revents: *mut ::core::ffi::c_ushort,
1588 ) -> ::core::ffi::c_int;
1589}
1590unsafe extern "C" {
1591 pub fn snd_pcm_nonblock(
1592 pcm: *mut snd_pcm_t,
1593 nonblock: ::core::ffi::c_int,
1594 ) -> ::core::ffi::c_int;
1595}
1596unsafe extern "C" {
1597 pub fn snd_async_add_pcm_handler(
1598 handler: *mut *mut snd_async_handler_t,
1599 pcm: *mut snd_pcm_t,
1600 callback: snd_async_callback_t,
1601 private_data: *mut ::core::ffi::c_void,
1602 ) -> ::core::ffi::c_int;
1603}
1604unsafe extern "C" {
1605 pub fn snd_async_handler_get_pcm(handler: *mut snd_async_handler_t) -> *mut snd_pcm_t;
1606}
1607unsafe extern "C" {
1608 pub fn snd_pcm_info(pcm: *mut snd_pcm_t, info: *mut snd_pcm_info_t) -> ::core::ffi::c_int;
1609}
1610unsafe extern "C" {
1611 pub fn snd_pcm_hw_params_current(
1612 pcm: *mut snd_pcm_t,
1613 params: *mut snd_pcm_hw_params_t,
1614 ) -> ::core::ffi::c_int;
1615}
1616unsafe extern "C" {
1617 pub fn snd_pcm_hw_params(
1618 pcm: *mut snd_pcm_t,
1619 params: *mut snd_pcm_hw_params_t,
1620 ) -> ::core::ffi::c_int;
1621}
1622unsafe extern "C" {
1623 pub fn snd_pcm_hw_free(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1624}
1625unsafe extern "C" {
1626 pub fn snd_pcm_sw_params_current(
1627 pcm: *mut snd_pcm_t,
1628 params: *mut snd_pcm_sw_params_t,
1629 ) -> ::core::ffi::c_int;
1630}
1631unsafe extern "C" {
1632 pub fn snd_pcm_sw_params(
1633 pcm: *mut snd_pcm_t,
1634 params: *mut snd_pcm_sw_params_t,
1635 ) -> ::core::ffi::c_int;
1636}
1637unsafe extern "C" {
1638 pub fn snd_pcm_prepare(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1639}
1640unsafe extern "C" {
1641 pub fn snd_pcm_reset(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1642}
1643unsafe extern "C" {
1644 pub fn snd_pcm_status(pcm: *mut snd_pcm_t, status: *mut snd_pcm_status_t)
1645 -> ::core::ffi::c_int;
1646}
1647unsafe extern "C" {
1648 pub fn snd_pcm_start(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1649}
1650unsafe extern "C" {
1651 pub fn snd_pcm_drop(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1652}
1653unsafe extern "C" {
1654 pub fn snd_pcm_drain(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1655}
1656unsafe extern "C" {
1657 pub fn snd_pcm_pause(pcm: *mut snd_pcm_t, enable: ::core::ffi::c_int) -> ::core::ffi::c_int;
1658}
1659unsafe extern "C" {
1660 pub fn snd_pcm_state(pcm: *mut snd_pcm_t) -> snd_pcm_state_t;
1661}
1662unsafe extern "C" {
1663 pub fn snd_pcm_hwsync(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1664}
1665unsafe extern "C" {
1666 pub fn snd_pcm_delay(pcm: *mut snd_pcm_t, delayp: *mut snd_pcm_sframes_t)
1667 -> ::core::ffi::c_int;
1668}
1669unsafe extern "C" {
1670 pub fn snd_pcm_resume(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1671}
1672unsafe extern "C" {
1673 pub fn snd_pcm_htimestamp(
1674 pcm: *mut snd_pcm_t,
1675 avail: *mut snd_pcm_uframes_t,
1676 tstamp: *mut snd_htimestamp_t,
1677 ) -> ::core::ffi::c_int;
1678}
1679unsafe extern "C" {
1680 pub fn snd_pcm_avail(pcm: *mut snd_pcm_t) -> snd_pcm_sframes_t;
1681}
1682unsafe extern "C" {
1683 pub fn snd_pcm_avail_update(pcm: *mut snd_pcm_t) -> snd_pcm_sframes_t;
1684}
1685unsafe extern "C" {
1686 pub fn snd_pcm_avail_delay(
1687 pcm: *mut snd_pcm_t,
1688 availp: *mut snd_pcm_sframes_t,
1689 delayp: *mut snd_pcm_sframes_t,
1690 ) -> ::core::ffi::c_int;
1691}
1692unsafe extern "C" {
1693 pub fn snd_pcm_rewindable(pcm: *mut snd_pcm_t) -> snd_pcm_sframes_t;
1694}
1695unsafe extern "C" {
1696 pub fn snd_pcm_rewind(pcm: *mut snd_pcm_t, frames: snd_pcm_uframes_t) -> snd_pcm_sframes_t;
1697}
1698unsafe extern "C" {
1699 pub fn snd_pcm_forwardable(pcm: *mut snd_pcm_t) -> snd_pcm_sframes_t;
1700}
1701unsafe extern "C" {
1702 pub fn snd_pcm_forward(pcm: *mut snd_pcm_t, frames: snd_pcm_uframes_t) -> snd_pcm_sframes_t;
1703}
1704unsafe extern "C" {
1705 pub fn snd_pcm_writei(
1706 pcm: *mut snd_pcm_t,
1707 buffer: *const ::core::ffi::c_void,
1708 size: snd_pcm_uframes_t,
1709 ) -> snd_pcm_sframes_t;
1710}
1711unsafe extern "C" {
1712 pub fn snd_pcm_readi(
1713 pcm: *mut snd_pcm_t,
1714 buffer: *mut ::core::ffi::c_void,
1715 size: snd_pcm_uframes_t,
1716 ) -> snd_pcm_sframes_t;
1717}
1718unsafe extern "C" {
1719 pub fn snd_pcm_writen(
1720 pcm: *mut snd_pcm_t,
1721 bufs: *mut *mut ::core::ffi::c_void,
1722 size: snd_pcm_uframes_t,
1723 ) -> snd_pcm_sframes_t;
1724}
1725unsafe extern "C" {
1726 pub fn snd_pcm_readn(
1727 pcm: *mut snd_pcm_t,
1728 bufs: *mut *mut ::core::ffi::c_void,
1729 size: snd_pcm_uframes_t,
1730 ) -> snd_pcm_sframes_t;
1731}
1732unsafe extern "C" {
1733 pub fn snd_pcm_wait(pcm: *mut snd_pcm_t, timeout: ::core::ffi::c_int) -> ::core::ffi::c_int;
1734}
1735unsafe extern "C" {
1736 pub fn snd_pcm_link(pcm1: *mut snd_pcm_t, pcm2: *mut snd_pcm_t) -> ::core::ffi::c_int;
1737}
1738unsafe extern "C" {
1739 pub fn snd_pcm_unlink(pcm: *mut snd_pcm_t) -> ::core::ffi::c_int;
1740}
1741pub const SND_CHMAP_TYPE_NONE: snd_pcm_chmap_type = 0;
1742pub const SND_CHMAP_TYPE_FIXED: snd_pcm_chmap_type = 1;
1743pub const SND_CHMAP_TYPE_VAR: snd_pcm_chmap_type = 2;
1744pub const SND_CHMAP_TYPE_PAIRED: snd_pcm_chmap_type = 3;
1745pub const SND_CHMAP_TYPE_LAST: snd_pcm_chmap_type = 3;
1746pub type snd_pcm_chmap_type = ::core::ffi::c_uint;
1747pub const SND_CHMAP_UNKNOWN: snd_pcm_chmap_position = 0;
1748pub const SND_CHMAP_NA: snd_pcm_chmap_position = 1;
1749pub const SND_CHMAP_MONO: snd_pcm_chmap_position = 2;
1750pub const SND_CHMAP_FL: snd_pcm_chmap_position = 3;
1751pub const SND_CHMAP_FR: snd_pcm_chmap_position = 4;
1752pub const SND_CHMAP_RL: snd_pcm_chmap_position = 5;
1753pub const SND_CHMAP_RR: snd_pcm_chmap_position = 6;
1754pub const SND_CHMAP_FC: snd_pcm_chmap_position = 7;
1755pub const SND_CHMAP_LFE: snd_pcm_chmap_position = 8;
1756pub const SND_CHMAP_SL: snd_pcm_chmap_position = 9;
1757pub const SND_CHMAP_SR: snd_pcm_chmap_position = 10;
1758pub const SND_CHMAP_RC: snd_pcm_chmap_position = 11;
1759pub const SND_CHMAP_FLC: snd_pcm_chmap_position = 12;
1760pub const SND_CHMAP_FRC: snd_pcm_chmap_position = 13;
1761pub const SND_CHMAP_RLC: snd_pcm_chmap_position = 14;
1762pub const SND_CHMAP_RRC: snd_pcm_chmap_position = 15;
1763pub const SND_CHMAP_FLW: snd_pcm_chmap_position = 16;
1764pub const SND_CHMAP_FRW: snd_pcm_chmap_position = 17;
1765pub const SND_CHMAP_FLH: snd_pcm_chmap_position = 18;
1766pub const SND_CHMAP_FCH: snd_pcm_chmap_position = 19;
1767pub const SND_CHMAP_FRH: snd_pcm_chmap_position = 20;
1768pub const SND_CHMAP_TC: snd_pcm_chmap_position = 21;
1769pub const SND_CHMAP_TFL: snd_pcm_chmap_position = 22;
1770pub const SND_CHMAP_TFR: snd_pcm_chmap_position = 23;
1771pub const SND_CHMAP_TFC: snd_pcm_chmap_position = 24;
1772pub const SND_CHMAP_TRL: snd_pcm_chmap_position = 25;
1773pub const SND_CHMAP_TRR: snd_pcm_chmap_position = 26;
1774pub const SND_CHMAP_TRC: snd_pcm_chmap_position = 27;
1775pub const SND_CHMAP_TFLC: snd_pcm_chmap_position = 28;
1776pub const SND_CHMAP_TFRC: snd_pcm_chmap_position = 29;
1777pub const SND_CHMAP_TSL: snd_pcm_chmap_position = 30;
1778pub const SND_CHMAP_TSR: snd_pcm_chmap_position = 31;
1779pub const SND_CHMAP_LLFE: snd_pcm_chmap_position = 32;
1780pub const SND_CHMAP_RLFE: snd_pcm_chmap_position = 33;
1781pub const SND_CHMAP_BC: snd_pcm_chmap_position = 34;
1782pub const SND_CHMAP_BLC: snd_pcm_chmap_position = 35;
1783pub const SND_CHMAP_BRC: snd_pcm_chmap_position = 36;
1784pub const SND_CHMAP_LAST: snd_pcm_chmap_position = 36;
1785pub type snd_pcm_chmap_position = ::core::ffi::c_uint;
1786#[repr(C)]
1787#[derive(Debug)]
1788pub struct snd_pcm_chmap {
1789 pub channels: ::core::ffi::c_uint,
1790 pub pos: __IncompleteArrayField<::core::ffi::c_uint>,
1791}
1792pub type snd_pcm_chmap_t = snd_pcm_chmap;
1793#[repr(C)]
1794#[derive(Debug)]
1795pub struct snd_pcm_chmap_query {
1796 pub type_: snd_pcm_chmap_type,
1797 pub map: snd_pcm_chmap_t,
1798}
1799pub type snd_pcm_chmap_query_t = snd_pcm_chmap_query;
1800unsafe extern "C" {
1801 pub fn snd_pcm_query_chmaps(pcm: *mut snd_pcm_t) -> *mut *mut snd_pcm_chmap_query_t;
1802}
1803unsafe extern "C" {
1804 pub fn snd_pcm_query_chmaps_from_hw(
1805 card: ::core::ffi::c_int,
1806 dev: ::core::ffi::c_int,
1807 subdev: ::core::ffi::c_int,
1808 stream: snd_pcm_stream_t,
1809 ) -> *mut *mut snd_pcm_chmap_query_t;
1810}
1811unsafe extern "C" {
1812 pub fn snd_pcm_free_chmaps(maps: *mut *mut snd_pcm_chmap_query_t);
1813}
1814unsafe extern "C" {
1815 pub fn snd_pcm_get_chmap(pcm: *mut snd_pcm_t) -> *mut snd_pcm_chmap_t;
1816}
1817unsafe extern "C" {
1818 pub fn snd_pcm_set_chmap(
1819 pcm: *mut snd_pcm_t,
1820 map: *const snd_pcm_chmap_t,
1821 ) -> ::core::ffi::c_int;
1822}
1823unsafe extern "C" {
1824 pub fn snd_pcm_chmap_type_name(val: snd_pcm_chmap_type) -> *const ::core::ffi::c_char;
1825}
1826unsafe extern "C" {
1827 pub fn snd_pcm_chmap_name(val: snd_pcm_chmap_position) -> *const ::core::ffi::c_char;
1828}
1829unsafe extern "C" {
1830 pub fn snd_pcm_chmap_long_name(val: snd_pcm_chmap_position) -> *const ::core::ffi::c_char;
1831}
1832unsafe extern "C" {
1833 pub fn snd_pcm_chmap_print(
1834 map: *const snd_pcm_chmap_t,
1835 maxlen: usize,
1836 buf: *mut ::core::ffi::c_char,
1837 ) -> ::core::ffi::c_int;
1838}
1839unsafe extern "C" {
1840 pub fn snd_pcm_chmap_from_string(str_: *const ::core::ffi::c_char) -> ::core::ffi::c_uint;
1841}
1842unsafe extern "C" {
1843 pub fn snd_pcm_chmap_parse_string(str_: *const ::core::ffi::c_char) -> *mut snd_pcm_chmap_t;
1844}
1845unsafe extern "C" {
1846 pub fn snd_pcm_recover(
1847 pcm: *mut snd_pcm_t,
1848 err: ::core::ffi::c_int,
1849 silent: ::core::ffi::c_int,
1850 ) -> ::core::ffi::c_int;
1851}
1852unsafe extern "C" {
1853 pub fn snd_pcm_set_params(
1854 pcm: *mut snd_pcm_t,
1855 format: snd_pcm_format_t,
1856 access: snd_pcm_access_t,
1857 channels: ::core::ffi::c_uint,
1858 rate: ::core::ffi::c_uint,
1859 soft_resample: ::core::ffi::c_int,
1860 latency: ::core::ffi::c_uint,
1861 ) -> ::core::ffi::c_int;
1862}
1863unsafe extern "C" {
1864 pub fn snd_pcm_get_params(
1865 pcm: *mut snd_pcm_t,
1866 buffer_size: *mut snd_pcm_uframes_t,
1867 period_size: *mut snd_pcm_uframes_t,
1868 ) -> ::core::ffi::c_int;
1869}
1870unsafe extern "C" {
1871 pub fn snd_pcm_info_sizeof() -> usize;
1872}
1873unsafe extern "C" {
1874 pub fn snd_pcm_info_malloc(ptr: *mut *mut snd_pcm_info_t) -> ::core::ffi::c_int;
1875}
1876unsafe extern "C" {
1877 pub fn snd_pcm_info_free(obj: *mut snd_pcm_info_t);
1878}
1879unsafe extern "C" {
1880 pub fn snd_pcm_info_copy(dst: *mut snd_pcm_info_t, src: *const snd_pcm_info_t);
1881}
1882unsafe extern "C" {
1883 pub fn snd_pcm_info_get_device(obj: *const snd_pcm_info_t) -> ::core::ffi::c_uint;
1884}
1885unsafe extern "C" {
1886 pub fn snd_pcm_info_get_subdevice(obj: *const snd_pcm_info_t) -> ::core::ffi::c_uint;
1887}
1888unsafe extern "C" {
1889 pub fn snd_pcm_info_get_stream(obj: *const snd_pcm_info_t) -> snd_pcm_stream_t;
1890}
1891unsafe extern "C" {
1892 pub fn snd_pcm_info_get_card(obj: *const snd_pcm_info_t) -> ::core::ffi::c_int;
1893}
1894unsafe extern "C" {
1895 pub fn snd_pcm_info_get_id(obj: *const snd_pcm_info_t) -> *const ::core::ffi::c_char;
1896}
1897unsafe extern "C" {
1898 pub fn snd_pcm_info_get_name(obj: *const snd_pcm_info_t) -> *const ::core::ffi::c_char;
1899}
1900unsafe extern "C" {
1901 pub fn snd_pcm_info_get_subdevice_name(
1902 obj: *const snd_pcm_info_t,
1903 ) -> *const ::core::ffi::c_char;
1904}
1905unsafe extern "C" {
1906 pub fn snd_pcm_info_get_class(obj: *const snd_pcm_info_t) -> snd_pcm_class_t;
1907}
1908unsafe extern "C" {
1909 pub fn snd_pcm_info_get_subclass(obj: *const snd_pcm_info_t) -> snd_pcm_subclass_t;
1910}
1911unsafe extern "C" {
1912 pub fn snd_pcm_info_get_subdevices_count(obj: *const snd_pcm_info_t) -> ::core::ffi::c_uint;
1913}
1914unsafe extern "C" {
1915 pub fn snd_pcm_info_get_subdevices_avail(obj: *const snd_pcm_info_t) -> ::core::ffi::c_uint;
1916}
1917unsafe extern "C" {
1918 pub fn snd_pcm_info_get_sync(obj: *const snd_pcm_info_t) -> snd_pcm_sync_id_t;
1919}
1920unsafe extern "C" {
1921 pub fn snd_pcm_info_set_device(obj: *mut snd_pcm_info_t, val: ::core::ffi::c_uint);
1922}
1923unsafe extern "C" {
1924 pub fn snd_pcm_info_set_subdevice(obj: *mut snd_pcm_info_t, val: ::core::ffi::c_uint);
1925}
1926unsafe extern "C" {
1927 pub fn snd_pcm_info_set_stream(obj: *mut snd_pcm_info_t, val: snd_pcm_stream_t);
1928}
1929unsafe extern "C" {
1930 pub fn snd_pcm_hw_params_any(
1931 pcm: *mut snd_pcm_t,
1932 params: *mut snd_pcm_hw_params_t,
1933 ) -> ::core::ffi::c_int;
1934}
1935unsafe extern "C" {
1936 pub fn snd_pcm_hw_params_can_mmap_sample_resolution(
1937 params: *const snd_pcm_hw_params_t,
1938 ) -> ::core::ffi::c_int;
1939}
1940unsafe extern "C" {
1941 pub fn snd_pcm_hw_params_is_double(params: *const snd_pcm_hw_params_t) -> ::core::ffi::c_int;
1942}
1943unsafe extern "C" {
1944 pub fn snd_pcm_hw_params_is_batch(params: *const snd_pcm_hw_params_t) -> ::core::ffi::c_int;
1945}
1946unsafe extern "C" {
1947 pub fn snd_pcm_hw_params_is_block_transfer(
1948 params: *const snd_pcm_hw_params_t,
1949 ) -> ::core::ffi::c_int;
1950}
1951unsafe extern "C" {
1952 pub fn snd_pcm_hw_params_is_monotonic(params: *const snd_pcm_hw_params_t)
1953 -> ::core::ffi::c_int;
1954}
1955unsafe extern "C" {
1956 pub fn snd_pcm_hw_params_can_overrange(
1957 params: *const snd_pcm_hw_params_t,
1958 ) -> ::core::ffi::c_int;
1959}
1960unsafe extern "C" {
1961 pub fn snd_pcm_hw_params_can_pause(params: *const snd_pcm_hw_params_t) -> ::core::ffi::c_int;
1962}
1963unsafe extern "C" {
1964 pub fn snd_pcm_hw_params_can_resume(params: *const snd_pcm_hw_params_t) -> ::core::ffi::c_int;
1965}
1966unsafe extern "C" {
1967 pub fn snd_pcm_hw_params_is_half_duplex(
1968 params: *const snd_pcm_hw_params_t,
1969 ) -> ::core::ffi::c_int;
1970}
1971unsafe extern "C" {
1972 pub fn snd_pcm_hw_params_is_joint_duplex(
1973 params: *const snd_pcm_hw_params_t,
1974 ) -> ::core::ffi::c_int;
1975}
1976unsafe extern "C" {
1977 pub fn snd_pcm_hw_params_can_sync_start(
1978 params: *const snd_pcm_hw_params_t,
1979 ) -> ::core::ffi::c_int;
1980}
1981unsafe extern "C" {
1982 pub fn snd_pcm_hw_params_can_disable_period_wakeup(
1983 params: *const snd_pcm_hw_params_t,
1984 ) -> ::core::ffi::c_int;
1985}
1986unsafe extern "C" {
1987 pub fn snd_pcm_hw_params_is_perfect_drain(
1988 params: *const snd_pcm_hw_params_t,
1989 ) -> ::core::ffi::c_int;
1990}
1991unsafe extern "C" {
1992 pub fn snd_pcm_hw_params_supports_audio_wallclock_ts(
1993 params: *const snd_pcm_hw_params_t,
1994 ) -> ::core::ffi::c_int;
1995}
1996unsafe extern "C" {
1997 pub fn snd_pcm_hw_params_supports_audio_ts_type(
1998 params: *const snd_pcm_hw_params_t,
1999 type_: ::core::ffi::c_int,
2000 ) -> ::core::ffi::c_int;
2001}
2002unsafe extern "C" {
2003 pub fn snd_pcm_hw_params_get_rate_numden(
2004 params: *const snd_pcm_hw_params_t,
2005 rate_num: *mut ::core::ffi::c_uint,
2006 rate_den: *mut ::core::ffi::c_uint,
2007 ) -> ::core::ffi::c_int;
2008}
2009unsafe extern "C" {
2010 pub fn snd_pcm_hw_params_get_sbits(params: *const snd_pcm_hw_params_t) -> ::core::ffi::c_int;
2011}
2012unsafe extern "C" {
2013 pub fn snd_pcm_hw_params_get_fifo_size(
2014 params: *const snd_pcm_hw_params_t,
2015 ) -> ::core::ffi::c_int;
2016}
2017unsafe extern "C" {
2018 pub fn snd_pcm_hw_params_get_sync(
2019 params: *const snd_pcm_hw_params_t,
2020 ) -> *const ::core::ffi::c_uchar;
2021}
2022unsafe extern "C" {
2023 pub fn snd_pcm_hw_params_sizeof() -> usize;
2024}
2025unsafe extern "C" {
2026 pub fn snd_pcm_hw_params_malloc(ptr: *mut *mut snd_pcm_hw_params_t) -> ::core::ffi::c_int;
2027}
2028unsafe extern "C" {
2029 pub fn snd_pcm_hw_params_free(obj: *mut snd_pcm_hw_params_t);
2030}
2031unsafe extern "C" {
2032 pub fn snd_pcm_hw_params_copy(dst: *mut snd_pcm_hw_params_t, src: *const snd_pcm_hw_params_t);
2033}
2034unsafe extern "C" {
2035 pub fn snd_pcm_hw_params_get_access(
2036 params: *const snd_pcm_hw_params_t,
2037 _access: *mut snd_pcm_access_t,
2038 ) -> ::core::ffi::c_int;
2039}
2040unsafe extern "C" {
2041 pub fn snd_pcm_hw_params_test_access(
2042 pcm: *mut snd_pcm_t,
2043 params: *mut snd_pcm_hw_params_t,
2044 _access: snd_pcm_access_t,
2045 ) -> ::core::ffi::c_int;
2046}
2047unsafe extern "C" {
2048 pub fn snd_pcm_hw_params_set_access(
2049 pcm: *mut snd_pcm_t,
2050 params: *mut snd_pcm_hw_params_t,
2051 _access: snd_pcm_access_t,
2052 ) -> ::core::ffi::c_int;
2053}
2054unsafe extern "C" {
2055 pub fn snd_pcm_hw_params_set_access_first(
2056 pcm: *mut snd_pcm_t,
2057 params: *mut snd_pcm_hw_params_t,
2058 _access: *mut snd_pcm_access_t,
2059 ) -> ::core::ffi::c_int;
2060}
2061unsafe extern "C" {
2062 pub fn snd_pcm_hw_params_set_access_last(
2063 pcm: *mut snd_pcm_t,
2064 params: *mut snd_pcm_hw_params_t,
2065 _access: *mut snd_pcm_access_t,
2066 ) -> ::core::ffi::c_int;
2067}
2068unsafe extern "C" {
2069 pub fn snd_pcm_hw_params_set_access_mask(
2070 pcm: *mut snd_pcm_t,
2071 params: *mut snd_pcm_hw_params_t,
2072 mask: *mut snd_pcm_access_mask_t,
2073 ) -> ::core::ffi::c_int;
2074}
2075unsafe extern "C" {
2076 pub fn snd_pcm_hw_params_get_access_mask(
2077 params: *mut snd_pcm_hw_params_t,
2078 mask: *mut snd_pcm_access_mask_t,
2079 ) -> ::core::ffi::c_int;
2080}
2081unsafe extern "C" {
2082 pub fn snd_pcm_hw_params_get_format(
2083 params: *const snd_pcm_hw_params_t,
2084 val: *mut snd_pcm_format_t,
2085 ) -> ::core::ffi::c_int;
2086}
2087unsafe extern "C" {
2088 pub fn snd_pcm_hw_params_test_format(
2089 pcm: *mut snd_pcm_t,
2090 params: *mut snd_pcm_hw_params_t,
2091 val: snd_pcm_format_t,
2092 ) -> ::core::ffi::c_int;
2093}
2094unsafe extern "C" {
2095 pub fn snd_pcm_hw_params_set_format(
2096 pcm: *mut snd_pcm_t,
2097 params: *mut snd_pcm_hw_params_t,
2098 val: snd_pcm_format_t,
2099 ) -> ::core::ffi::c_int;
2100}
2101unsafe extern "C" {
2102 pub fn snd_pcm_hw_params_set_format_first(
2103 pcm: *mut snd_pcm_t,
2104 params: *mut snd_pcm_hw_params_t,
2105 format: *mut snd_pcm_format_t,
2106 ) -> ::core::ffi::c_int;
2107}
2108unsafe extern "C" {
2109 pub fn snd_pcm_hw_params_set_format_last(
2110 pcm: *mut snd_pcm_t,
2111 params: *mut snd_pcm_hw_params_t,
2112 format: *mut snd_pcm_format_t,
2113 ) -> ::core::ffi::c_int;
2114}
2115unsafe extern "C" {
2116 pub fn snd_pcm_hw_params_set_format_mask(
2117 pcm: *mut snd_pcm_t,
2118 params: *mut snd_pcm_hw_params_t,
2119 mask: *mut snd_pcm_format_mask_t,
2120 ) -> ::core::ffi::c_int;
2121}
2122unsafe extern "C" {
2123 pub fn snd_pcm_hw_params_get_format_mask(
2124 params: *mut snd_pcm_hw_params_t,
2125 mask: *mut snd_pcm_format_mask_t,
2126 );
2127}
2128unsafe extern "C" {
2129 pub fn snd_pcm_hw_params_get_subformat(
2130 params: *const snd_pcm_hw_params_t,
2131 subformat: *mut snd_pcm_subformat_t,
2132 ) -> ::core::ffi::c_int;
2133}
2134unsafe extern "C" {
2135 pub fn snd_pcm_hw_params_test_subformat(
2136 pcm: *mut snd_pcm_t,
2137 params: *mut snd_pcm_hw_params_t,
2138 subformat: snd_pcm_subformat_t,
2139 ) -> ::core::ffi::c_int;
2140}
2141unsafe extern "C" {
2142 pub fn snd_pcm_hw_params_set_subformat(
2143 pcm: *mut snd_pcm_t,
2144 params: *mut snd_pcm_hw_params_t,
2145 subformat: snd_pcm_subformat_t,
2146 ) -> ::core::ffi::c_int;
2147}
2148unsafe extern "C" {
2149 pub fn snd_pcm_hw_params_set_subformat_first(
2150 pcm: *mut snd_pcm_t,
2151 params: *mut snd_pcm_hw_params_t,
2152 subformat: *mut snd_pcm_subformat_t,
2153 ) -> ::core::ffi::c_int;
2154}
2155unsafe extern "C" {
2156 pub fn snd_pcm_hw_params_set_subformat_last(
2157 pcm: *mut snd_pcm_t,
2158 params: *mut snd_pcm_hw_params_t,
2159 subformat: *mut snd_pcm_subformat_t,
2160 ) -> ::core::ffi::c_int;
2161}
2162unsafe extern "C" {
2163 pub fn snd_pcm_hw_params_set_subformat_mask(
2164 pcm: *mut snd_pcm_t,
2165 params: *mut snd_pcm_hw_params_t,
2166 mask: *mut snd_pcm_subformat_mask_t,
2167 ) -> ::core::ffi::c_int;
2168}
2169unsafe extern "C" {
2170 pub fn snd_pcm_hw_params_get_subformat_mask(
2171 params: *mut snd_pcm_hw_params_t,
2172 mask: *mut snd_pcm_subformat_mask_t,
2173 );
2174}
2175unsafe extern "C" {
2176 pub fn snd_pcm_hw_params_get_channels(
2177 params: *const snd_pcm_hw_params_t,
2178 val: *mut ::core::ffi::c_uint,
2179 ) -> ::core::ffi::c_int;
2180}
2181unsafe extern "C" {
2182 pub fn snd_pcm_hw_params_get_channels_min(
2183 params: *const snd_pcm_hw_params_t,
2184 val: *mut ::core::ffi::c_uint,
2185 ) -> ::core::ffi::c_int;
2186}
2187unsafe extern "C" {
2188 pub fn snd_pcm_hw_params_get_channels_max(
2189 params: *const snd_pcm_hw_params_t,
2190 val: *mut ::core::ffi::c_uint,
2191 ) -> ::core::ffi::c_int;
2192}
2193unsafe extern "C" {
2194 pub fn snd_pcm_hw_params_test_channels(
2195 pcm: *mut snd_pcm_t,
2196 params: *mut snd_pcm_hw_params_t,
2197 val: ::core::ffi::c_uint,
2198 ) -> ::core::ffi::c_int;
2199}
2200unsafe extern "C" {
2201 pub fn snd_pcm_hw_params_set_channels(
2202 pcm: *mut snd_pcm_t,
2203 params: *mut snd_pcm_hw_params_t,
2204 val: ::core::ffi::c_uint,
2205 ) -> ::core::ffi::c_int;
2206}
2207unsafe extern "C" {
2208 pub fn snd_pcm_hw_params_set_channels_min(
2209 pcm: *mut snd_pcm_t,
2210 params: *mut snd_pcm_hw_params_t,
2211 val: *mut ::core::ffi::c_uint,
2212 ) -> ::core::ffi::c_int;
2213}
2214unsafe extern "C" {
2215 pub fn snd_pcm_hw_params_set_channels_max(
2216 pcm: *mut snd_pcm_t,
2217 params: *mut snd_pcm_hw_params_t,
2218 val: *mut ::core::ffi::c_uint,
2219 ) -> ::core::ffi::c_int;
2220}
2221unsafe extern "C" {
2222 pub fn snd_pcm_hw_params_set_channels_minmax(
2223 pcm: *mut snd_pcm_t,
2224 params: *mut snd_pcm_hw_params_t,
2225 min: *mut ::core::ffi::c_uint,
2226 max: *mut ::core::ffi::c_uint,
2227 ) -> ::core::ffi::c_int;
2228}
2229unsafe extern "C" {
2230 pub fn snd_pcm_hw_params_set_channels_near(
2231 pcm: *mut snd_pcm_t,
2232 params: *mut snd_pcm_hw_params_t,
2233 val: *mut ::core::ffi::c_uint,
2234 ) -> ::core::ffi::c_int;
2235}
2236unsafe extern "C" {
2237 pub fn snd_pcm_hw_params_set_channels_first(
2238 pcm: *mut snd_pcm_t,
2239 params: *mut snd_pcm_hw_params_t,
2240 val: *mut ::core::ffi::c_uint,
2241 ) -> ::core::ffi::c_int;
2242}
2243unsafe extern "C" {
2244 pub fn snd_pcm_hw_params_set_channels_last(
2245 pcm: *mut snd_pcm_t,
2246 params: *mut snd_pcm_hw_params_t,
2247 val: *mut ::core::ffi::c_uint,
2248 ) -> ::core::ffi::c_int;
2249}
2250unsafe extern "C" {
2251 pub fn snd_pcm_hw_params_get_rate(
2252 params: *const snd_pcm_hw_params_t,
2253 val: *mut ::core::ffi::c_uint,
2254 dir: *mut ::core::ffi::c_int,
2255 ) -> ::core::ffi::c_int;
2256}
2257unsafe extern "C" {
2258 pub fn snd_pcm_hw_params_get_rate_min(
2259 params: *const snd_pcm_hw_params_t,
2260 val: *mut ::core::ffi::c_uint,
2261 dir: *mut ::core::ffi::c_int,
2262 ) -> ::core::ffi::c_int;
2263}
2264unsafe extern "C" {
2265 pub fn snd_pcm_hw_params_get_rate_max(
2266 params: *const snd_pcm_hw_params_t,
2267 val: *mut ::core::ffi::c_uint,
2268 dir: *mut ::core::ffi::c_int,
2269 ) -> ::core::ffi::c_int;
2270}
2271unsafe extern "C" {
2272 pub fn snd_pcm_hw_params_test_rate(
2273 pcm: *mut snd_pcm_t,
2274 params: *mut snd_pcm_hw_params_t,
2275 val: ::core::ffi::c_uint,
2276 dir: ::core::ffi::c_int,
2277 ) -> ::core::ffi::c_int;
2278}
2279unsafe extern "C" {
2280 pub fn snd_pcm_hw_params_set_rate(
2281 pcm: *mut snd_pcm_t,
2282 params: *mut snd_pcm_hw_params_t,
2283 val: ::core::ffi::c_uint,
2284 dir: ::core::ffi::c_int,
2285 ) -> ::core::ffi::c_int;
2286}
2287unsafe extern "C" {
2288 pub fn snd_pcm_hw_params_set_rate_min(
2289 pcm: *mut snd_pcm_t,
2290 params: *mut snd_pcm_hw_params_t,
2291 val: *mut ::core::ffi::c_uint,
2292 dir: *mut ::core::ffi::c_int,
2293 ) -> ::core::ffi::c_int;
2294}
2295unsafe extern "C" {
2296 pub fn snd_pcm_hw_params_set_rate_max(
2297 pcm: *mut snd_pcm_t,
2298 params: *mut snd_pcm_hw_params_t,
2299 val: *mut ::core::ffi::c_uint,
2300 dir: *mut ::core::ffi::c_int,
2301 ) -> ::core::ffi::c_int;
2302}
2303unsafe extern "C" {
2304 pub fn snd_pcm_hw_params_set_rate_minmax(
2305 pcm: *mut snd_pcm_t,
2306 params: *mut snd_pcm_hw_params_t,
2307 min: *mut ::core::ffi::c_uint,
2308 mindir: *mut ::core::ffi::c_int,
2309 max: *mut ::core::ffi::c_uint,
2310 maxdir: *mut ::core::ffi::c_int,
2311 ) -> ::core::ffi::c_int;
2312}
2313unsafe extern "C" {
2314 pub fn snd_pcm_hw_params_set_rate_near(
2315 pcm: *mut snd_pcm_t,
2316 params: *mut snd_pcm_hw_params_t,
2317 val: *mut ::core::ffi::c_uint,
2318 dir: *mut ::core::ffi::c_int,
2319 ) -> ::core::ffi::c_int;
2320}
2321unsafe extern "C" {
2322 pub fn snd_pcm_hw_params_set_rate_first(
2323 pcm: *mut snd_pcm_t,
2324 params: *mut snd_pcm_hw_params_t,
2325 val: *mut ::core::ffi::c_uint,
2326 dir: *mut ::core::ffi::c_int,
2327 ) -> ::core::ffi::c_int;
2328}
2329unsafe extern "C" {
2330 pub fn snd_pcm_hw_params_set_rate_last(
2331 pcm: *mut snd_pcm_t,
2332 params: *mut snd_pcm_hw_params_t,
2333 val: *mut ::core::ffi::c_uint,
2334 dir: *mut ::core::ffi::c_int,
2335 ) -> ::core::ffi::c_int;
2336}
2337unsafe extern "C" {
2338 pub fn snd_pcm_hw_params_set_rate_resample(
2339 pcm: *mut snd_pcm_t,
2340 params: *mut snd_pcm_hw_params_t,
2341 val: ::core::ffi::c_uint,
2342 ) -> ::core::ffi::c_int;
2343}
2344unsafe extern "C" {
2345 pub fn snd_pcm_hw_params_get_rate_resample(
2346 pcm: *mut snd_pcm_t,
2347 params: *mut snd_pcm_hw_params_t,
2348 val: *mut ::core::ffi::c_uint,
2349 ) -> ::core::ffi::c_int;
2350}
2351unsafe extern "C" {
2352 pub fn snd_pcm_hw_params_set_export_buffer(
2353 pcm: *mut snd_pcm_t,
2354 params: *mut snd_pcm_hw_params_t,
2355 val: ::core::ffi::c_uint,
2356 ) -> ::core::ffi::c_int;
2357}
2358unsafe extern "C" {
2359 pub fn snd_pcm_hw_params_get_export_buffer(
2360 pcm: *mut snd_pcm_t,
2361 params: *mut snd_pcm_hw_params_t,
2362 val: *mut ::core::ffi::c_uint,
2363 ) -> ::core::ffi::c_int;
2364}
2365unsafe extern "C" {
2366 pub fn snd_pcm_hw_params_set_period_wakeup(
2367 pcm: *mut snd_pcm_t,
2368 params: *mut snd_pcm_hw_params_t,
2369 val: ::core::ffi::c_uint,
2370 ) -> ::core::ffi::c_int;
2371}
2372unsafe extern "C" {
2373 pub fn snd_pcm_hw_params_get_period_wakeup(
2374 pcm: *mut snd_pcm_t,
2375 params: *mut snd_pcm_hw_params_t,
2376 val: *mut ::core::ffi::c_uint,
2377 ) -> ::core::ffi::c_int;
2378}
2379unsafe extern "C" {
2380 pub fn snd_pcm_hw_params_set_drain_silence(
2381 pcm: *mut snd_pcm_t,
2382 params: *mut snd_pcm_hw_params_t,
2383 val: ::core::ffi::c_uint,
2384 ) -> ::core::ffi::c_int;
2385}
2386unsafe extern "C" {
2387 pub fn snd_pcm_hw_params_get_drain_silence(
2388 pcm: *mut snd_pcm_t,
2389 params: *mut snd_pcm_hw_params_t,
2390 val: *mut ::core::ffi::c_uint,
2391 ) -> ::core::ffi::c_int;
2392}
2393unsafe extern "C" {
2394 pub fn snd_pcm_hw_params_get_period_time(
2395 params: *const snd_pcm_hw_params_t,
2396 val: *mut ::core::ffi::c_uint,
2397 dir: *mut ::core::ffi::c_int,
2398 ) -> ::core::ffi::c_int;
2399}
2400unsafe extern "C" {
2401 pub fn snd_pcm_hw_params_get_period_time_min(
2402 params: *const snd_pcm_hw_params_t,
2403 val: *mut ::core::ffi::c_uint,
2404 dir: *mut ::core::ffi::c_int,
2405 ) -> ::core::ffi::c_int;
2406}
2407unsafe extern "C" {
2408 pub fn snd_pcm_hw_params_get_period_time_max(
2409 params: *const snd_pcm_hw_params_t,
2410 val: *mut ::core::ffi::c_uint,
2411 dir: *mut ::core::ffi::c_int,
2412 ) -> ::core::ffi::c_int;
2413}
2414unsafe extern "C" {
2415 pub fn snd_pcm_hw_params_test_period_time(
2416 pcm: *mut snd_pcm_t,
2417 params: *mut snd_pcm_hw_params_t,
2418 val: ::core::ffi::c_uint,
2419 dir: ::core::ffi::c_int,
2420 ) -> ::core::ffi::c_int;
2421}
2422unsafe extern "C" {
2423 pub fn snd_pcm_hw_params_set_period_time(
2424 pcm: *mut snd_pcm_t,
2425 params: *mut snd_pcm_hw_params_t,
2426 val: ::core::ffi::c_uint,
2427 dir: ::core::ffi::c_int,
2428 ) -> ::core::ffi::c_int;
2429}
2430unsafe extern "C" {
2431 pub fn snd_pcm_hw_params_set_period_time_min(
2432 pcm: *mut snd_pcm_t,
2433 params: *mut snd_pcm_hw_params_t,
2434 val: *mut ::core::ffi::c_uint,
2435 dir: *mut ::core::ffi::c_int,
2436 ) -> ::core::ffi::c_int;
2437}
2438unsafe extern "C" {
2439 pub fn snd_pcm_hw_params_set_period_time_max(
2440 pcm: *mut snd_pcm_t,
2441 params: *mut snd_pcm_hw_params_t,
2442 val: *mut ::core::ffi::c_uint,
2443 dir: *mut ::core::ffi::c_int,
2444 ) -> ::core::ffi::c_int;
2445}
2446unsafe extern "C" {
2447 pub fn snd_pcm_hw_params_set_period_time_minmax(
2448 pcm: *mut snd_pcm_t,
2449 params: *mut snd_pcm_hw_params_t,
2450 min: *mut ::core::ffi::c_uint,
2451 mindir: *mut ::core::ffi::c_int,
2452 max: *mut ::core::ffi::c_uint,
2453 maxdir: *mut ::core::ffi::c_int,
2454 ) -> ::core::ffi::c_int;
2455}
2456unsafe extern "C" {
2457 pub fn snd_pcm_hw_params_set_period_time_near(
2458 pcm: *mut snd_pcm_t,
2459 params: *mut snd_pcm_hw_params_t,
2460 val: *mut ::core::ffi::c_uint,
2461 dir: *mut ::core::ffi::c_int,
2462 ) -> ::core::ffi::c_int;
2463}
2464unsafe extern "C" {
2465 pub fn snd_pcm_hw_params_set_period_time_first(
2466 pcm: *mut snd_pcm_t,
2467 params: *mut snd_pcm_hw_params_t,
2468 val: *mut ::core::ffi::c_uint,
2469 dir: *mut ::core::ffi::c_int,
2470 ) -> ::core::ffi::c_int;
2471}
2472unsafe extern "C" {
2473 pub fn snd_pcm_hw_params_set_period_time_last(
2474 pcm: *mut snd_pcm_t,
2475 params: *mut snd_pcm_hw_params_t,
2476 val: *mut ::core::ffi::c_uint,
2477 dir: *mut ::core::ffi::c_int,
2478 ) -> ::core::ffi::c_int;
2479}
2480unsafe extern "C" {
2481 pub fn snd_pcm_hw_params_get_period_size(
2482 params: *const snd_pcm_hw_params_t,
2483 frames: *mut snd_pcm_uframes_t,
2484 dir: *mut ::core::ffi::c_int,
2485 ) -> ::core::ffi::c_int;
2486}
2487unsafe extern "C" {
2488 pub fn snd_pcm_hw_params_get_period_size_min(
2489 params: *const snd_pcm_hw_params_t,
2490 frames: *mut snd_pcm_uframes_t,
2491 dir: *mut ::core::ffi::c_int,
2492 ) -> ::core::ffi::c_int;
2493}
2494unsafe extern "C" {
2495 pub fn snd_pcm_hw_params_get_period_size_max(
2496 params: *const snd_pcm_hw_params_t,
2497 frames: *mut snd_pcm_uframes_t,
2498 dir: *mut ::core::ffi::c_int,
2499 ) -> ::core::ffi::c_int;
2500}
2501unsafe extern "C" {
2502 pub fn snd_pcm_hw_params_test_period_size(
2503 pcm: *mut snd_pcm_t,
2504 params: *mut snd_pcm_hw_params_t,
2505 val: snd_pcm_uframes_t,
2506 dir: ::core::ffi::c_int,
2507 ) -> ::core::ffi::c_int;
2508}
2509unsafe extern "C" {
2510 pub fn snd_pcm_hw_params_set_period_size(
2511 pcm: *mut snd_pcm_t,
2512 params: *mut snd_pcm_hw_params_t,
2513 val: snd_pcm_uframes_t,
2514 dir: ::core::ffi::c_int,
2515 ) -> ::core::ffi::c_int;
2516}
2517unsafe extern "C" {
2518 pub fn snd_pcm_hw_params_set_period_size_min(
2519 pcm: *mut snd_pcm_t,
2520 params: *mut snd_pcm_hw_params_t,
2521 val: *mut snd_pcm_uframes_t,
2522 dir: *mut ::core::ffi::c_int,
2523 ) -> ::core::ffi::c_int;
2524}
2525unsafe extern "C" {
2526 pub fn snd_pcm_hw_params_set_period_size_max(
2527 pcm: *mut snd_pcm_t,
2528 params: *mut snd_pcm_hw_params_t,
2529 val: *mut snd_pcm_uframes_t,
2530 dir: *mut ::core::ffi::c_int,
2531 ) -> ::core::ffi::c_int;
2532}
2533unsafe extern "C" {
2534 pub fn snd_pcm_hw_params_set_period_size_minmax(
2535 pcm: *mut snd_pcm_t,
2536 params: *mut snd_pcm_hw_params_t,
2537 min: *mut snd_pcm_uframes_t,
2538 mindir: *mut ::core::ffi::c_int,
2539 max: *mut snd_pcm_uframes_t,
2540 maxdir: *mut ::core::ffi::c_int,
2541 ) -> ::core::ffi::c_int;
2542}
2543unsafe extern "C" {
2544 pub fn snd_pcm_hw_params_set_period_size_near(
2545 pcm: *mut snd_pcm_t,
2546 params: *mut snd_pcm_hw_params_t,
2547 val: *mut snd_pcm_uframes_t,
2548 dir: *mut ::core::ffi::c_int,
2549 ) -> ::core::ffi::c_int;
2550}
2551unsafe extern "C" {
2552 pub fn snd_pcm_hw_params_set_period_size_first(
2553 pcm: *mut snd_pcm_t,
2554 params: *mut snd_pcm_hw_params_t,
2555 val: *mut snd_pcm_uframes_t,
2556 dir: *mut ::core::ffi::c_int,
2557 ) -> ::core::ffi::c_int;
2558}
2559unsafe extern "C" {
2560 pub fn snd_pcm_hw_params_set_period_size_last(
2561 pcm: *mut snd_pcm_t,
2562 params: *mut snd_pcm_hw_params_t,
2563 val: *mut snd_pcm_uframes_t,
2564 dir: *mut ::core::ffi::c_int,
2565 ) -> ::core::ffi::c_int;
2566}
2567unsafe extern "C" {
2568 pub fn snd_pcm_hw_params_set_period_size_integer(
2569 pcm: *mut snd_pcm_t,
2570 params: *mut snd_pcm_hw_params_t,
2571 ) -> ::core::ffi::c_int;
2572}
2573unsafe extern "C" {
2574 pub fn snd_pcm_hw_params_get_periods(
2575 params: *const snd_pcm_hw_params_t,
2576 val: *mut ::core::ffi::c_uint,
2577 dir: *mut ::core::ffi::c_int,
2578 ) -> ::core::ffi::c_int;
2579}
2580unsafe extern "C" {
2581 pub fn snd_pcm_hw_params_get_periods_min(
2582 params: *const snd_pcm_hw_params_t,
2583 val: *mut ::core::ffi::c_uint,
2584 dir: *mut ::core::ffi::c_int,
2585 ) -> ::core::ffi::c_int;
2586}
2587unsafe extern "C" {
2588 pub fn snd_pcm_hw_params_get_periods_max(
2589 params: *const snd_pcm_hw_params_t,
2590 val: *mut ::core::ffi::c_uint,
2591 dir: *mut ::core::ffi::c_int,
2592 ) -> ::core::ffi::c_int;
2593}
2594unsafe extern "C" {
2595 pub fn snd_pcm_hw_params_test_periods(
2596 pcm: *mut snd_pcm_t,
2597 params: *mut snd_pcm_hw_params_t,
2598 val: ::core::ffi::c_uint,
2599 dir: ::core::ffi::c_int,
2600 ) -> ::core::ffi::c_int;
2601}
2602unsafe extern "C" {
2603 pub fn snd_pcm_hw_params_set_periods(
2604 pcm: *mut snd_pcm_t,
2605 params: *mut snd_pcm_hw_params_t,
2606 val: ::core::ffi::c_uint,
2607 dir: ::core::ffi::c_int,
2608 ) -> ::core::ffi::c_int;
2609}
2610unsafe extern "C" {
2611 pub fn snd_pcm_hw_params_set_periods_min(
2612 pcm: *mut snd_pcm_t,
2613 params: *mut snd_pcm_hw_params_t,
2614 val: *mut ::core::ffi::c_uint,
2615 dir: *mut ::core::ffi::c_int,
2616 ) -> ::core::ffi::c_int;
2617}
2618unsafe extern "C" {
2619 pub fn snd_pcm_hw_params_set_periods_max(
2620 pcm: *mut snd_pcm_t,
2621 params: *mut snd_pcm_hw_params_t,
2622 val: *mut ::core::ffi::c_uint,
2623 dir: *mut ::core::ffi::c_int,
2624 ) -> ::core::ffi::c_int;
2625}
2626unsafe extern "C" {
2627 pub fn snd_pcm_hw_params_set_periods_minmax(
2628 pcm: *mut snd_pcm_t,
2629 params: *mut snd_pcm_hw_params_t,
2630 min: *mut ::core::ffi::c_uint,
2631 mindir: *mut ::core::ffi::c_int,
2632 max: *mut ::core::ffi::c_uint,
2633 maxdir: *mut ::core::ffi::c_int,
2634 ) -> ::core::ffi::c_int;
2635}
2636unsafe extern "C" {
2637 pub fn snd_pcm_hw_params_set_periods_near(
2638 pcm: *mut snd_pcm_t,
2639 params: *mut snd_pcm_hw_params_t,
2640 val: *mut ::core::ffi::c_uint,
2641 dir: *mut ::core::ffi::c_int,
2642 ) -> ::core::ffi::c_int;
2643}
2644unsafe extern "C" {
2645 pub fn snd_pcm_hw_params_set_periods_first(
2646 pcm: *mut snd_pcm_t,
2647 params: *mut snd_pcm_hw_params_t,
2648 val: *mut ::core::ffi::c_uint,
2649 dir: *mut ::core::ffi::c_int,
2650 ) -> ::core::ffi::c_int;
2651}
2652unsafe extern "C" {
2653 pub fn snd_pcm_hw_params_set_periods_last(
2654 pcm: *mut snd_pcm_t,
2655 params: *mut snd_pcm_hw_params_t,
2656 val: *mut ::core::ffi::c_uint,
2657 dir: *mut ::core::ffi::c_int,
2658 ) -> ::core::ffi::c_int;
2659}
2660unsafe extern "C" {
2661 pub fn snd_pcm_hw_params_set_periods_integer(
2662 pcm: *mut snd_pcm_t,
2663 params: *mut snd_pcm_hw_params_t,
2664 ) -> ::core::ffi::c_int;
2665}
2666unsafe extern "C" {
2667 pub fn snd_pcm_hw_params_get_buffer_time(
2668 params: *const snd_pcm_hw_params_t,
2669 val: *mut ::core::ffi::c_uint,
2670 dir: *mut ::core::ffi::c_int,
2671 ) -> ::core::ffi::c_int;
2672}
2673unsafe extern "C" {
2674 pub fn snd_pcm_hw_params_get_buffer_time_min(
2675 params: *const snd_pcm_hw_params_t,
2676 val: *mut ::core::ffi::c_uint,
2677 dir: *mut ::core::ffi::c_int,
2678 ) -> ::core::ffi::c_int;
2679}
2680unsafe extern "C" {
2681 pub fn snd_pcm_hw_params_get_buffer_time_max(
2682 params: *const snd_pcm_hw_params_t,
2683 val: *mut ::core::ffi::c_uint,
2684 dir: *mut ::core::ffi::c_int,
2685 ) -> ::core::ffi::c_int;
2686}
2687unsafe extern "C" {
2688 pub fn snd_pcm_hw_params_test_buffer_time(
2689 pcm: *mut snd_pcm_t,
2690 params: *mut snd_pcm_hw_params_t,
2691 val: ::core::ffi::c_uint,
2692 dir: ::core::ffi::c_int,
2693 ) -> ::core::ffi::c_int;
2694}
2695unsafe extern "C" {
2696 pub fn snd_pcm_hw_params_set_buffer_time(
2697 pcm: *mut snd_pcm_t,
2698 params: *mut snd_pcm_hw_params_t,
2699 val: ::core::ffi::c_uint,
2700 dir: ::core::ffi::c_int,
2701 ) -> ::core::ffi::c_int;
2702}
2703unsafe extern "C" {
2704 pub fn snd_pcm_hw_params_set_buffer_time_min(
2705 pcm: *mut snd_pcm_t,
2706 params: *mut snd_pcm_hw_params_t,
2707 val: *mut ::core::ffi::c_uint,
2708 dir: *mut ::core::ffi::c_int,
2709 ) -> ::core::ffi::c_int;
2710}
2711unsafe extern "C" {
2712 pub fn snd_pcm_hw_params_set_buffer_time_max(
2713 pcm: *mut snd_pcm_t,
2714 params: *mut snd_pcm_hw_params_t,
2715 val: *mut ::core::ffi::c_uint,
2716 dir: *mut ::core::ffi::c_int,
2717 ) -> ::core::ffi::c_int;
2718}
2719unsafe extern "C" {
2720 pub fn snd_pcm_hw_params_set_buffer_time_minmax(
2721 pcm: *mut snd_pcm_t,
2722 params: *mut snd_pcm_hw_params_t,
2723 min: *mut ::core::ffi::c_uint,
2724 mindir: *mut ::core::ffi::c_int,
2725 max: *mut ::core::ffi::c_uint,
2726 maxdir: *mut ::core::ffi::c_int,
2727 ) -> ::core::ffi::c_int;
2728}
2729unsafe extern "C" {
2730 pub fn snd_pcm_hw_params_set_buffer_time_near(
2731 pcm: *mut snd_pcm_t,
2732 params: *mut snd_pcm_hw_params_t,
2733 val: *mut ::core::ffi::c_uint,
2734 dir: *mut ::core::ffi::c_int,
2735 ) -> ::core::ffi::c_int;
2736}
2737unsafe extern "C" {
2738 pub fn snd_pcm_hw_params_set_buffer_time_first(
2739 pcm: *mut snd_pcm_t,
2740 params: *mut snd_pcm_hw_params_t,
2741 val: *mut ::core::ffi::c_uint,
2742 dir: *mut ::core::ffi::c_int,
2743 ) -> ::core::ffi::c_int;
2744}
2745unsafe extern "C" {
2746 pub fn snd_pcm_hw_params_set_buffer_time_last(
2747 pcm: *mut snd_pcm_t,
2748 params: *mut snd_pcm_hw_params_t,
2749 val: *mut ::core::ffi::c_uint,
2750 dir: *mut ::core::ffi::c_int,
2751 ) -> ::core::ffi::c_int;
2752}
2753unsafe extern "C" {
2754 pub fn snd_pcm_hw_params_get_buffer_size(
2755 params: *const snd_pcm_hw_params_t,
2756 val: *mut snd_pcm_uframes_t,
2757 ) -> ::core::ffi::c_int;
2758}
2759unsafe extern "C" {
2760 pub fn snd_pcm_hw_params_get_buffer_size_min(
2761 params: *const snd_pcm_hw_params_t,
2762 val: *mut snd_pcm_uframes_t,
2763 ) -> ::core::ffi::c_int;
2764}
2765unsafe extern "C" {
2766 pub fn snd_pcm_hw_params_get_buffer_size_max(
2767 params: *const snd_pcm_hw_params_t,
2768 val: *mut snd_pcm_uframes_t,
2769 ) -> ::core::ffi::c_int;
2770}
2771unsafe extern "C" {
2772 pub fn snd_pcm_hw_params_test_buffer_size(
2773 pcm: *mut snd_pcm_t,
2774 params: *mut snd_pcm_hw_params_t,
2775 val: snd_pcm_uframes_t,
2776 ) -> ::core::ffi::c_int;
2777}
2778unsafe extern "C" {
2779 pub fn snd_pcm_hw_params_set_buffer_size(
2780 pcm: *mut snd_pcm_t,
2781 params: *mut snd_pcm_hw_params_t,
2782 val: snd_pcm_uframes_t,
2783 ) -> ::core::ffi::c_int;
2784}
2785unsafe extern "C" {
2786 pub fn snd_pcm_hw_params_set_buffer_size_min(
2787 pcm: *mut snd_pcm_t,
2788 params: *mut snd_pcm_hw_params_t,
2789 val: *mut snd_pcm_uframes_t,
2790 ) -> ::core::ffi::c_int;
2791}
2792unsafe extern "C" {
2793 pub fn snd_pcm_hw_params_set_buffer_size_max(
2794 pcm: *mut snd_pcm_t,
2795 params: *mut snd_pcm_hw_params_t,
2796 val: *mut snd_pcm_uframes_t,
2797 ) -> ::core::ffi::c_int;
2798}
2799unsafe extern "C" {
2800 pub fn snd_pcm_hw_params_set_buffer_size_minmax(
2801 pcm: *mut snd_pcm_t,
2802 params: *mut snd_pcm_hw_params_t,
2803 min: *mut snd_pcm_uframes_t,
2804 max: *mut snd_pcm_uframes_t,
2805 ) -> ::core::ffi::c_int;
2806}
2807unsafe extern "C" {
2808 pub fn snd_pcm_hw_params_set_buffer_size_near(
2809 pcm: *mut snd_pcm_t,
2810 params: *mut snd_pcm_hw_params_t,
2811 val: *mut snd_pcm_uframes_t,
2812 ) -> ::core::ffi::c_int;
2813}
2814unsafe extern "C" {
2815 pub fn snd_pcm_hw_params_set_buffer_size_first(
2816 pcm: *mut snd_pcm_t,
2817 params: *mut snd_pcm_hw_params_t,
2818 val: *mut snd_pcm_uframes_t,
2819 ) -> ::core::ffi::c_int;
2820}
2821unsafe extern "C" {
2822 pub fn snd_pcm_hw_params_set_buffer_size_last(
2823 pcm: *mut snd_pcm_t,
2824 params: *mut snd_pcm_hw_params_t,
2825 val: *mut snd_pcm_uframes_t,
2826 ) -> ::core::ffi::c_int;
2827}
2828unsafe extern "C" {
2829 pub fn snd_pcm_hw_params_get_min_align(
2830 params: *const snd_pcm_hw_params_t,
2831 val: *mut snd_pcm_uframes_t,
2832 ) -> ::core::ffi::c_int;
2833}
2834unsafe extern "C" {
2835 pub fn snd_pcm_sw_params_sizeof() -> usize;
2836}
2837unsafe extern "C" {
2838 pub fn snd_pcm_sw_params_malloc(ptr: *mut *mut snd_pcm_sw_params_t) -> ::core::ffi::c_int;
2839}
2840unsafe extern "C" {
2841 pub fn snd_pcm_sw_params_free(obj: *mut snd_pcm_sw_params_t);
2842}
2843unsafe extern "C" {
2844 pub fn snd_pcm_sw_params_copy(dst: *mut snd_pcm_sw_params_t, src: *const snd_pcm_sw_params_t);
2845}
2846unsafe extern "C" {
2847 pub fn snd_pcm_sw_params_get_boundary(
2848 params: *const snd_pcm_sw_params_t,
2849 val: *mut snd_pcm_uframes_t,
2850 ) -> ::core::ffi::c_int;
2851}
2852unsafe extern "C" {
2853 pub fn snd_pcm_sw_params_set_tstamp_mode(
2854 pcm: *mut snd_pcm_t,
2855 params: *mut snd_pcm_sw_params_t,
2856 val: snd_pcm_tstamp_t,
2857 ) -> ::core::ffi::c_int;
2858}
2859unsafe extern "C" {
2860 pub fn snd_pcm_sw_params_get_tstamp_mode(
2861 params: *const snd_pcm_sw_params_t,
2862 val: *mut snd_pcm_tstamp_t,
2863 ) -> ::core::ffi::c_int;
2864}
2865unsafe extern "C" {
2866 pub fn snd_pcm_sw_params_set_tstamp_type(
2867 pcm: *mut snd_pcm_t,
2868 params: *mut snd_pcm_sw_params_t,
2869 val: snd_pcm_tstamp_type_t,
2870 ) -> ::core::ffi::c_int;
2871}
2872unsafe extern "C" {
2873 pub fn snd_pcm_sw_params_get_tstamp_type(
2874 params: *const snd_pcm_sw_params_t,
2875 val: *mut snd_pcm_tstamp_type_t,
2876 ) -> ::core::ffi::c_int;
2877}
2878unsafe extern "C" {
2879 pub fn snd_pcm_sw_params_set_avail_min(
2880 pcm: *mut snd_pcm_t,
2881 params: *mut snd_pcm_sw_params_t,
2882 val: snd_pcm_uframes_t,
2883 ) -> ::core::ffi::c_int;
2884}
2885unsafe extern "C" {
2886 pub fn snd_pcm_sw_params_get_avail_min(
2887 params: *const snd_pcm_sw_params_t,
2888 val: *mut snd_pcm_uframes_t,
2889 ) -> ::core::ffi::c_int;
2890}
2891unsafe extern "C" {
2892 pub fn snd_pcm_sw_params_set_period_event(
2893 pcm: *mut snd_pcm_t,
2894 params: *mut snd_pcm_sw_params_t,
2895 val: ::core::ffi::c_int,
2896 ) -> ::core::ffi::c_int;
2897}
2898unsafe extern "C" {
2899 pub fn snd_pcm_sw_params_get_period_event(
2900 params: *const snd_pcm_sw_params_t,
2901 val: *mut ::core::ffi::c_int,
2902 ) -> ::core::ffi::c_int;
2903}
2904unsafe extern "C" {
2905 pub fn snd_pcm_sw_params_set_start_threshold(
2906 pcm: *mut snd_pcm_t,
2907 params: *mut snd_pcm_sw_params_t,
2908 val: snd_pcm_uframes_t,
2909 ) -> ::core::ffi::c_int;
2910}
2911unsafe extern "C" {
2912 pub fn snd_pcm_sw_params_get_start_threshold(
2913 paramsm: *const snd_pcm_sw_params_t,
2914 val: *mut snd_pcm_uframes_t,
2915 ) -> ::core::ffi::c_int;
2916}
2917unsafe extern "C" {
2918 pub fn snd_pcm_sw_params_set_stop_threshold(
2919 pcm: *mut snd_pcm_t,
2920 params: *mut snd_pcm_sw_params_t,
2921 val: snd_pcm_uframes_t,
2922 ) -> ::core::ffi::c_int;
2923}
2924unsafe extern "C" {
2925 pub fn snd_pcm_sw_params_get_stop_threshold(
2926 params: *const snd_pcm_sw_params_t,
2927 val: *mut snd_pcm_uframes_t,
2928 ) -> ::core::ffi::c_int;
2929}
2930unsafe extern "C" {
2931 pub fn snd_pcm_sw_params_set_silence_threshold(
2932 pcm: *mut snd_pcm_t,
2933 params: *mut snd_pcm_sw_params_t,
2934 val: snd_pcm_uframes_t,
2935 ) -> ::core::ffi::c_int;
2936}
2937unsafe extern "C" {
2938 pub fn snd_pcm_sw_params_get_silence_threshold(
2939 params: *const snd_pcm_sw_params_t,
2940 val: *mut snd_pcm_uframes_t,
2941 ) -> ::core::ffi::c_int;
2942}
2943unsafe extern "C" {
2944 pub fn snd_pcm_sw_params_set_silence_size(
2945 pcm: *mut snd_pcm_t,
2946 params: *mut snd_pcm_sw_params_t,
2947 val: snd_pcm_uframes_t,
2948 ) -> ::core::ffi::c_int;
2949}
2950unsafe extern "C" {
2951 pub fn snd_pcm_sw_params_get_silence_size(
2952 params: *const snd_pcm_sw_params_t,
2953 val: *mut snd_pcm_uframes_t,
2954 ) -> ::core::ffi::c_int;
2955}
2956unsafe extern "C" {
2957 pub fn snd_pcm_access_mask_sizeof() -> usize;
2958}
2959unsafe extern "C" {
2960 pub fn snd_pcm_access_mask_malloc(ptr: *mut *mut snd_pcm_access_mask_t) -> ::core::ffi::c_int;
2961}
2962unsafe extern "C" {
2963 pub fn snd_pcm_access_mask_free(obj: *mut snd_pcm_access_mask_t);
2964}
2965unsafe extern "C" {
2966 pub fn snd_pcm_access_mask_copy(
2967 dst: *mut snd_pcm_access_mask_t,
2968 src: *const snd_pcm_access_mask_t,
2969 );
2970}
2971unsafe extern "C" {
2972 pub fn snd_pcm_access_mask_none(mask: *mut snd_pcm_access_mask_t);
2973}
2974unsafe extern "C" {
2975 pub fn snd_pcm_access_mask_any(mask: *mut snd_pcm_access_mask_t);
2976}
2977unsafe extern "C" {
2978 pub fn snd_pcm_access_mask_test(
2979 mask: *const snd_pcm_access_mask_t,
2980 val: snd_pcm_access_t,
2981 ) -> ::core::ffi::c_int;
2982}
2983unsafe extern "C" {
2984 pub fn snd_pcm_access_mask_empty(mask: *const snd_pcm_access_mask_t) -> ::core::ffi::c_int;
2985}
2986unsafe extern "C" {
2987 pub fn snd_pcm_access_mask_set(mask: *mut snd_pcm_access_mask_t, val: snd_pcm_access_t);
2988}
2989unsafe extern "C" {
2990 pub fn snd_pcm_access_mask_reset(mask: *mut snd_pcm_access_mask_t, val: snd_pcm_access_t);
2991}
2992unsafe extern "C" {
2993 pub fn snd_pcm_format_mask_sizeof() -> usize;
2994}
2995unsafe extern "C" {
2996 pub fn snd_pcm_format_mask_malloc(ptr: *mut *mut snd_pcm_format_mask_t) -> ::core::ffi::c_int;
2997}
2998unsafe extern "C" {
2999 pub fn snd_pcm_format_mask_free(obj: *mut snd_pcm_format_mask_t);
3000}
3001unsafe extern "C" {
3002 pub fn snd_pcm_format_mask_copy(
3003 dst: *mut snd_pcm_format_mask_t,
3004 src: *const snd_pcm_format_mask_t,
3005 );
3006}
3007unsafe extern "C" {
3008 pub fn snd_pcm_format_mask_none(mask: *mut snd_pcm_format_mask_t);
3009}
3010unsafe extern "C" {
3011 pub fn snd_pcm_format_mask_any(mask: *mut snd_pcm_format_mask_t);
3012}
3013unsafe extern "C" {
3014 pub fn snd_pcm_format_mask_test(
3015 mask: *const snd_pcm_format_mask_t,
3016 val: snd_pcm_format_t,
3017 ) -> ::core::ffi::c_int;
3018}
3019unsafe extern "C" {
3020 pub fn snd_pcm_format_mask_empty(mask: *const snd_pcm_format_mask_t) -> ::core::ffi::c_int;
3021}
3022unsafe extern "C" {
3023 pub fn snd_pcm_format_mask_set(mask: *mut snd_pcm_format_mask_t, val: snd_pcm_format_t);
3024}
3025unsafe extern "C" {
3026 pub fn snd_pcm_format_mask_reset(mask: *mut snd_pcm_format_mask_t, val: snd_pcm_format_t);
3027}
3028unsafe extern "C" {
3029 pub fn snd_pcm_subformat_mask_sizeof() -> usize;
3030}
3031unsafe extern "C" {
3032 pub fn snd_pcm_subformat_mask_malloc(
3033 ptr: *mut *mut snd_pcm_subformat_mask_t,
3034 ) -> ::core::ffi::c_int;
3035}
3036unsafe extern "C" {
3037 pub fn snd_pcm_subformat_mask_free(obj: *mut snd_pcm_subformat_mask_t);
3038}
3039unsafe extern "C" {
3040 pub fn snd_pcm_subformat_mask_copy(
3041 dst: *mut snd_pcm_subformat_mask_t,
3042 src: *const snd_pcm_subformat_mask_t,
3043 );
3044}
3045unsafe extern "C" {
3046 pub fn snd_pcm_subformat_mask_none(mask: *mut snd_pcm_subformat_mask_t);
3047}
3048unsafe extern "C" {
3049 pub fn snd_pcm_subformat_mask_any(mask: *mut snd_pcm_subformat_mask_t);
3050}
3051unsafe extern "C" {
3052 pub fn snd_pcm_subformat_mask_test(
3053 mask: *const snd_pcm_subformat_mask_t,
3054 val: snd_pcm_subformat_t,
3055 ) -> ::core::ffi::c_int;
3056}
3057unsafe extern "C" {
3058 pub fn snd_pcm_subformat_mask_empty(
3059 mask: *const snd_pcm_subformat_mask_t,
3060 ) -> ::core::ffi::c_int;
3061}
3062unsafe extern "C" {
3063 pub fn snd_pcm_subformat_mask_set(
3064 mask: *mut snd_pcm_subformat_mask_t,
3065 val: snd_pcm_subformat_t,
3066 );
3067}
3068unsafe extern "C" {
3069 pub fn snd_pcm_subformat_mask_reset(
3070 mask: *mut snd_pcm_subformat_mask_t,
3071 val: snd_pcm_subformat_t,
3072 );
3073}
3074unsafe extern "C" {
3075 pub fn snd_pcm_status_sizeof() -> usize;
3076}
3077unsafe extern "C" {
3078 pub fn snd_pcm_status_malloc(ptr: *mut *mut snd_pcm_status_t) -> ::core::ffi::c_int;
3079}
3080unsafe extern "C" {
3081 pub fn snd_pcm_status_free(obj: *mut snd_pcm_status_t);
3082}
3083unsafe extern "C" {
3084 pub fn snd_pcm_status_copy(dst: *mut snd_pcm_status_t, src: *const snd_pcm_status_t);
3085}
3086unsafe extern "C" {
3087 pub fn snd_pcm_status_get_state(obj: *const snd_pcm_status_t) -> snd_pcm_state_t;
3088}
3089unsafe extern "C" {
3090 pub fn snd_pcm_status_get_trigger_tstamp(
3091 obj: *const snd_pcm_status_t,
3092 ptr: *mut snd_timestamp_t,
3093 );
3094}
3095unsafe extern "C" {
3096 pub fn snd_pcm_status_get_trigger_htstamp(
3097 obj: *const snd_pcm_status_t,
3098 ptr: *mut snd_htimestamp_t,
3099 );
3100}
3101unsafe extern "C" {
3102 pub fn snd_pcm_status_get_tstamp(obj: *const snd_pcm_status_t, ptr: *mut snd_timestamp_t);
3103}
3104unsafe extern "C" {
3105 pub fn snd_pcm_status_get_htstamp(obj: *const snd_pcm_status_t, ptr: *mut snd_htimestamp_t);
3106}
3107unsafe extern "C" {
3108 pub fn snd_pcm_status_get_audio_htstamp(
3109 obj: *const snd_pcm_status_t,
3110 ptr: *mut snd_htimestamp_t,
3111 );
3112}
3113unsafe extern "C" {
3114 pub fn snd_pcm_status_get_driver_htstamp(
3115 obj: *const snd_pcm_status_t,
3116 ptr: *mut snd_htimestamp_t,
3117 );
3118}
3119unsafe extern "C" {
3120 pub fn snd_pcm_status_get_audio_htstamp_report(
3121 obj: *const snd_pcm_status_t,
3122 audio_tstamp_report: *mut snd_pcm_audio_tstamp_report_t,
3123 );
3124}
3125unsafe extern "C" {
3126 pub fn snd_pcm_status_set_audio_htstamp_config(
3127 obj: *mut snd_pcm_status_t,
3128 audio_tstamp_config: *mut snd_pcm_audio_tstamp_config_t,
3129 );
3130}
3131unsafe extern "C" {
3132 pub fn snd_pcm_status_get_delay(obj: *const snd_pcm_status_t) -> snd_pcm_sframes_t;
3133}
3134unsafe extern "C" {
3135 pub fn snd_pcm_status_get_avail(obj: *const snd_pcm_status_t) -> snd_pcm_uframes_t;
3136}
3137unsafe extern "C" {
3138 pub fn snd_pcm_status_get_avail_max(obj: *const snd_pcm_status_t) -> snd_pcm_uframes_t;
3139}
3140unsafe extern "C" {
3141 pub fn snd_pcm_status_get_overrange(obj: *const snd_pcm_status_t) -> snd_pcm_uframes_t;
3142}
3143unsafe extern "C" {
3144 pub fn snd_pcm_type_name(type_: snd_pcm_type_t) -> *const ::core::ffi::c_char;
3145}
3146unsafe extern "C" {
3147 pub fn snd_pcm_stream_name(stream: snd_pcm_stream_t) -> *const ::core::ffi::c_char;
3148}
3149unsafe extern "C" {
3150 pub fn snd_pcm_access_name(_access: snd_pcm_access_t) -> *const ::core::ffi::c_char;
3151}
3152unsafe extern "C" {
3153 pub fn snd_pcm_format_name(format: snd_pcm_format_t) -> *const ::core::ffi::c_char;
3154}
3155unsafe extern "C" {
3156 pub fn snd_pcm_format_description(format: snd_pcm_format_t) -> *const ::core::ffi::c_char;
3157}
3158unsafe extern "C" {
3159 pub fn snd_pcm_subformat_name(subformat: snd_pcm_subformat_t) -> *const ::core::ffi::c_char;
3160}
3161unsafe extern "C" {
3162 pub fn snd_pcm_subformat_description(
3163 subformat: snd_pcm_subformat_t,
3164 ) -> *const ::core::ffi::c_char;
3165}
3166unsafe extern "C" {
3167 pub fn snd_pcm_subformat_value(name: *const ::core::ffi::c_char) -> snd_pcm_subformat_t;
3168}
3169unsafe extern "C" {
3170 pub fn snd_pcm_format_value(name: *const ::core::ffi::c_char) -> snd_pcm_format_t;
3171}
3172unsafe extern "C" {
3173 pub fn snd_pcm_tstamp_mode_name(mode: snd_pcm_tstamp_t) -> *const ::core::ffi::c_char;
3174}
3175unsafe extern "C" {
3176 pub fn snd_pcm_state_name(state: snd_pcm_state_t) -> *const ::core::ffi::c_char;
3177}
3178unsafe extern "C" {
3179 pub fn snd_pcm_dump(pcm: *mut snd_pcm_t, out: *mut snd_output_t) -> ::core::ffi::c_int;
3180}
3181unsafe extern "C" {
3182 pub fn snd_pcm_dump_hw_setup(pcm: *mut snd_pcm_t, out: *mut snd_output_t)
3183 -> ::core::ffi::c_int;
3184}
3185unsafe extern "C" {
3186 pub fn snd_pcm_dump_sw_setup(pcm: *mut snd_pcm_t, out: *mut snd_output_t)
3187 -> ::core::ffi::c_int;
3188}
3189unsafe extern "C" {
3190 pub fn snd_pcm_dump_setup(pcm: *mut snd_pcm_t, out: *mut snd_output_t) -> ::core::ffi::c_int;
3191}
3192unsafe extern "C" {
3193 pub fn snd_pcm_hw_params_dump(
3194 params: *mut snd_pcm_hw_params_t,
3195 out: *mut snd_output_t,
3196 ) -> ::core::ffi::c_int;
3197}
3198unsafe extern "C" {
3199 pub fn snd_pcm_sw_params_dump(
3200 params: *mut snd_pcm_sw_params_t,
3201 out: *mut snd_output_t,
3202 ) -> ::core::ffi::c_int;
3203}
3204unsafe extern "C" {
3205 pub fn snd_pcm_status_dump(
3206 status: *mut snd_pcm_status_t,
3207 out: *mut snd_output_t,
3208 ) -> ::core::ffi::c_int;
3209}
3210unsafe extern "C" {
3211 pub fn snd_pcm_mmap_begin(
3212 pcm: *mut snd_pcm_t,
3213 areas: *mut *const snd_pcm_channel_area_t,
3214 offset: *mut snd_pcm_uframes_t,
3215 frames: *mut snd_pcm_uframes_t,
3216 ) -> ::core::ffi::c_int;
3217}
3218unsafe extern "C" {
3219 pub fn snd_pcm_mmap_commit(
3220 pcm: *mut snd_pcm_t,
3221 offset: snd_pcm_uframes_t,
3222 frames: snd_pcm_uframes_t,
3223 ) -> snd_pcm_sframes_t;
3224}
3225unsafe extern "C" {
3226 pub fn snd_pcm_mmap_writei(
3227 pcm: *mut snd_pcm_t,
3228 buffer: *const ::core::ffi::c_void,
3229 size: snd_pcm_uframes_t,
3230 ) -> snd_pcm_sframes_t;
3231}
3232unsafe extern "C" {
3233 pub fn snd_pcm_mmap_readi(
3234 pcm: *mut snd_pcm_t,
3235 buffer: *mut ::core::ffi::c_void,
3236 size: snd_pcm_uframes_t,
3237 ) -> snd_pcm_sframes_t;
3238}
3239unsafe extern "C" {
3240 pub fn snd_pcm_mmap_writen(
3241 pcm: *mut snd_pcm_t,
3242 bufs: *mut *mut ::core::ffi::c_void,
3243 size: snd_pcm_uframes_t,
3244 ) -> snd_pcm_sframes_t;
3245}
3246unsafe extern "C" {
3247 pub fn snd_pcm_mmap_readn(
3248 pcm: *mut snd_pcm_t,
3249 bufs: *mut *mut ::core::ffi::c_void,
3250 size: snd_pcm_uframes_t,
3251 ) -> snd_pcm_sframes_t;
3252}
3253unsafe extern "C" {
3254 pub fn snd_pcm_format_signed(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3255}
3256unsafe extern "C" {
3257 pub fn snd_pcm_format_unsigned(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3258}
3259unsafe extern "C" {
3260 pub fn snd_pcm_format_linear(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3261}
3262unsafe extern "C" {
3263 pub fn snd_pcm_format_float(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3264}
3265unsafe extern "C" {
3266 pub fn snd_pcm_format_little_endian(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3267}
3268unsafe extern "C" {
3269 pub fn snd_pcm_format_big_endian(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3270}
3271unsafe extern "C" {
3272 pub fn snd_pcm_format_cpu_endian(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3273}
3274unsafe extern "C" {
3275 pub fn snd_pcm_format_width(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3276}
3277unsafe extern "C" {
3278 pub fn snd_pcm_format_physical_width(format: snd_pcm_format_t) -> ::core::ffi::c_int;
3279}
3280unsafe extern "C" {
3281 pub fn snd_pcm_build_linear_format(
3282 width: ::core::ffi::c_int,
3283 pwidth: ::core::ffi::c_int,
3284 unsignd: ::core::ffi::c_int,
3285 big_endian: ::core::ffi::c_int,
3286 ) -> snd_pcm_format_t;
3287}
3288unsafe extern "C" {
3289 pub fn snd_pcm_format_size(format: snd_pcm_format_t, samples: usize) -> isize;
3290}
3291unsafe extern "C" {
3292 pub fn snd_pcm_format_silence(format: snd_pcm_format_t) -> u8;
3293}
3294unsafe extern "C" {
3295 pub fn snd_pcm_format_silence_16(format: snd_pcm_format_t) -> u16;
3296}
3297unsafe extern "C" {
3298 pub fn snd_pcm_format_silence_32(format: snd_pcm_format_t) -> u32;
3299}
3300unsafe extern "C" {
3301 pub fn snd_pcm_format_silence_64(format: snd_pcm_format_t) -> u64;
3302}
3303unsafe extern "C" {
3304 pub fn snd_pcm_format_set_silence(
3305 format: snd_pcm_format_t,
3306 buf: *mut ::core::ffi::c_void,
3307 samples: ::core::ffi::c_uint,
3308 ) -> ::core::ffi::c_int;
3309}
3310unsafe extern "C" {
3311 pub fn snd_pcm_bytes_to_frames(pcm: *mut snd_pcm_t, bytes: isize) -> snd_pcm_sframes_t;
3312}
3313unsafe extern "C" {
3314 pub fn snd_pcm_frames_to_bytes(pcm: *mut snd_pcm_t, frames: snd_pcm_sframes_t) -> isize;
3315}
3316unsafe extern "C" {
3317 pub fn snd_pcm_bytes_to_samples(pcm: *mut snd_pcm_t, bytes: isize) -> ::core::ffi::c_long;
3318}
3319unsafe extern "C" {
3320 pub fn snd_pcm_samples_to_bytes(pcm: *mut snd_pcm_t, samples: ::core::ffi::c_long) -> isize;
3321}
3322unsafe extern "C" {
3323 pub fn snd_pcm_area_silence(
3324 dst_channel: *const snd_pcm_channel_area_t,
3325 dst_offset: snd_pcm_uframes_t,
3326 samples: ::core::ffi::c_uint,
3327 format: snd_pcm_format_t,
3328 ) -> ::core::ffi::c_int;
3329}
3330unsafe extern "C" {
3331 pub fn snd_pcm_areas_silence(
3332 dst_channels: *const snd_pcm_channel_area_t,
3333 dst_offset: snd_pcm_uframes_t,
3334 channels: ::core::ffi::c_uint,
3335 frames: snd_pcm_uframes_t,
3336 format: snd_pcm_format_t,
3337 ) -> ::core::ffi::c_int;
3338}
3339unsafe extern "C" {
3340 pub fn snd_pcm_area_copy(
3341 dst_channel: *const snd_pcm_channel_area_t,
3342 dst_offset: snd_pcm_uframes_t,
3343 src_channel: *const snd_pcm_channel_area_t,
3344 src_offset: snd_pcm_uframes_t,
3345 samples: ::core::ffi::c_uint,
3346 format: snd_pcm_format_t,
3347 ) -> ::core::ffi::c_int;
3348}
3349unsafe extern "C" {
3350 pub fn snd_pcm_areas_copy(
3351 dst_channels: *const snd_pcm_channel_area_t,
3352 dst_offset: snd_pcm_uframes_t,
3353 src_channels: *const snd_pcm_channel_area_t,
3354 src_offset: snd_pcm_uframes_t,
3355 channels: ::core::ffi::c_uint,
3356 frames: snd_pcm_uframes_t,
3357 format: snd_pcm_format_t,
3358 ) -> ::core::ffi::c_int;
3359}
3360unsafe extern "C" {
3361 pub fn snd_pcm_areas_copy_wrap(
3362 dst_channels: *const snd_pcm_channel_area_t,
3363 dst_offset: snd_pcm_uframes_t,
3364 dst_size: snd_pcm_uframes_t,
3365 src_channels: *const snd_pcm_channel_area_t,
3366 src_offset: snd_pcm_uframes_t,
3367 src_size: snd_pcm_uframes_t,
3368 channels: ::core::ffi::c_uint,
3369 frames: snd_pcm_uframes_t,
3370 format: snd_pcm_format_t,
3371 ) -> ::core::ffi::c_int;
3372}
3373pub const SND_PCM_HOOK_TYPE_HW_PARAMS: _snd_pcm_hook_type = 0;
3374pub const SND_PCM_HOOK_TYPE_HW_FREE: _snd_pcm_hook_type = 1;
3375pub const SND_PCM_HOOK_TYPE_CLOSE: _snd_pcm_hook_type = 2;
3376pub const SND_PCM_HOOK_TYPE_LAST: _snd_pcm_hook_type = 2;
3377pub type _snd_pcm_hook_type = ::core::ffi::c_uint;
3378pub use self::_snd_pcm_hook_type as snd_pcm_hook_type_t;
3379#[repr(C)]
3380#[derive(Debug, Copy, Clone)]
3381pub struct _snd_pcm_hook {
3382 _unused: [u8; 0],
3383}
3384pub type snd_pcm_hook_t = _snd_pcm_hook;
3385pub type snd_pcm_hook_func_t =
3386 ::core::option::Option<unsafe extern "C" fn(hook: *mut snd_pcm_hook_t) -> ::core::ffi::c_int>;
3387unsafe extern "C" {
3388 pub fn snd_pcm_hook_get_pcm(hook: *mut snd_pcm_hook_t) -> *mut snd_pcm_t;
3389}
3390unsafe extern "C" {
3391 pub fn snd_pcm_hook_get_private(hook: *mut snd_pcm_hook_t) -> *mut ::core::ffi::c_void;
3392}
3393unsafe extern "C" {
3394 pub fn snd_pcm_hook_set_private(
3395 hook: *mut snd_pcm_hook_t,
3396 private_data: *mut ::core::ffi::c_void,
3397 );
3398}
3399unsafe extern "C" {
3400 pub fn snd_pcm_hook_add(
3401 hookp: *mut *mut snd_pcm_hook_t,
3402 pcm: *mut snd_pcm_t,
3403 type_: snd_pcm_hook_type_t,
3404 func: snd_pcm_hook_func_t,
3405 private_data: *mut ::core::ffi::c_void,
3406 ) -> ::core::ffi::c_int;
3407}
3408unsafe extern "C" {
3409 pub fn snd_pcm_hook_remove(hook: *mut snd_pcm_hook_t) -> ::core::ffi::c_int;
3410}
3411#[repr(C)]
3412#[derive(Debug, Copy, Clone)]
3413pub struct _snd_pcm_scope_ops {
3414 pub enable: ::core::option::Option<
3415 unsafe extern "C" fn(scope: *mut snd_pcm_scope_t) -> ::core::ffi::c_int,
3416 >,
3417 pub disable: ::core::option::Option<unsafe extern "C" fn(scope: *mut snd_pcm_scope_t)>,
3418 pub start: ::core::option::Option<unsafe extern "C" fn(scope: *mut snd_pcm_scope_t)>,
3419 pub stop: ::core::option::Option<unsafe extern "C" fn(scope: *mut snd_pcm_scope_t)>,
3420 pub update: ::core::option::Option<unsafe extern "C" fn(scope: *mut snd_pcm_scope_t)>,
3421 pub reset: ::core::option::Option<unsafe extern "C" fn(scope: *mut snd_pcm_scope_t)>,
3422 pub close: ::core::option::Option<unsafe extern "C" fn(scope: *mut snd_pcm_scope_t)>,
3423}
3424pub type snd_pcm_scope_ops_t = _snd_pcm_scope_ops;
3425unsafe extern "C" {
3426 pub fn snd_pcm_meter_get_bufsize(pcm: *mut snd_pcm_t) -> snd_pcm_uframes_t;
3427}
3428unsafe extern "C" {
3429 pub fn snd_pcm_meter_get_channels(pcm: *mut snd_pcm_t) -> ::core::ffi::c_uint;
3430}
3431unsafe extern "C" {
3432 pub fn snd_pcm_meter_get_rate(pcm: *mut snd_pcm_t) -> ::core::ffi::c_uint;
3433}
3434unsafe extern "C" {
3435 pub fn snd_pcm_meter_get_now(pcm: *mut snd_pcm_t) -> snd_pcm_uframes_t;
3436}
3437unsafe extern "C" {
3438 pub fn snd_pcm_meter_get_boundary(pcm: *mut snd_pcm_t) -> snd_pcm_uframes_t;
3439}
3440unsafe extern "C" {
3441 pub fn snd_pcm_meter_add_scope(
3442 pcm: *mut snd_pcm_t,
3443 scope: *mut snd_pcm_scope_t,
3444 ) -> ::core::ffi::c_int;
3445}
3446unsafe extern "C" {
3447 pub fn snd_pcm_meter_search_scope(
3448 pcm: *mut snd_pcm_t,
3449 name: *const ::core::ffi::c_char,
3450 ) -> *mut snd_pcm_scope_t;
3451}
3452unsafe extern "C" {
3453 pub fn snd_pcm_scope_malloc(ptr: *mut *mut snd_pcm_scope_t) -> ::core::ffi::c_int;
3454}
3455unsafe extern "C" {
3456 pub fn snd_pcm_scope_set_ops(scope: *mut snd_pcm_scope_t, val: *const snd_pcm_scope_ops_t);
3457}
3458unsafe extern "C" {
3459 pub fn snd_pcm_scope_set_name(scope: *mut snd_pcm_scope_t, val: *const ::core::ffi::c_char);
3460}
3461unsafe extern "C" {
3462 pub fn snd_pcm_scope_get_name(scope: *mut snd_pcm_scope_t) -> *const ::core::ffi::c_char;
3463}
3464unsafe extern "C" {
3465 pub fn snd_pcm_scope_get_callback_private(
3466 scope: *mut snd_pcm_scope_t,
3467 ) -> *mut ::core::ffi::c_void;
3468}
3469unsafe extern "C" {
3470 pub fn snd_pcm_scope_set_callback_private(
3471 scope: *mut snd_pcm_scope_t,
3472 val: *mut ::core::ffi::c_void,
3473 );
3474}
3475unsafe extern "C" {
3476 pub fn snd_pcm_scope_s16_open(
3477 pcm: *mut snd_pcm_t,
3478 name: *const ::core::ffi::c_char,
3479 scopep: *mut *mut snd_pcm_scope_t,
3480 ) -> ::core::ffi::c_int;
3481}
3482unsafe extern "C" {
3483 pub fn snd_pcm_scope_s16_get_channel_buffer(
3484 scope: *mut snd_pcm_scope_t,
3485 channel: ::core::ffi::c_uint,
3486 ) -> *mut i16;
3487}
3488pub const SND_SPCM_LATENCY_STANDARD: _snd_spcm_latency = 0;
3489pub const SND_SPCM_LATENCY_MEDIUM: _snd_spcm_latency = 1;
3490pub const SND_SPCM_LATENCY_REALTIME: _snd_spcm_latency = 2;
3491pub type _snd_spcm_latency = ::core::ffi::c_uint;
3492pub use self::_snd_spcm_latency as snd_spcm_latency_t;
3493pub const SND_SPCM_XRUN_IGNORE: _snd_spcm_xrun_type = 0;
3494pub const SND_SPCM_XRUN_STOP: _snd_spcm_xrun_type = 1;
3495pub type _snd_spcm_xrun_type = ::core::ffi::c_uint;
3496pub use self::_snd_spcm_xrun_type as snd_spcm_xrun_type_t;
3497pub const SND_SPCM_DUPLEX_LIBERAL: _snd_spcm_duplex_type = 0;
3498pub const SND_SPCM_DUPLEX_PEDANTIC: _snd_spcm_duplex_type = 1;
3499pub type _snd_spcm_duplex_type = ::core::ffi::c_uint;
3500pub use self::_snd_spcm_duplex_type as snd_spcm_duplex_type_t;
3501unsafe extern "C" {
3502 pub fn snd_spcm_init(
3503 pcm: *mut snd_pcm_t,
3504 rate: ::core::ffi::c_uint,
3505 channels: ::core::ffi::c_uint,
3506 format: snd_pcm_format_t,
3507 subformat: snd_pcm_subformat_t,
3508 latency: snd_spcm_latency_t,
3509 _access: snd_pcm_access_t,
3510 xrun_type: snd_spcm_xrun_type_t,
3511 ) -> ::core::ffi::c_int;
3512}
3513unsafe extern "C" {
3514 pub fn snd_spcm_init_duplex(
3515 playback_pcm: *mut snd_pcm_t,
3516 capture_pcm: *mut snd_pcm_t,
3517 rate: ::core::ffi::c_uint,
3518 channels: ::core::ffi::c_uint,
3519 format: snd_pcm_format_t,
3520 subformat: snd_pcm_subformat_t,
3521 latency: snd_spcm_latency_t,
3522 _access: snd_pcm_access_t,
3523 xrun_type: snd_spcm_xrun_type_t,
3524 duplex_type: snd_spcm_duplex_type_t,
3525 ) -> ::core::ffi::c_int;
3526}
3527unsafe extern "C" {
3528 pub fn snd_spcm_init_get_params(
3529 pcm: *mut snd_pcm_t,
3530 rate: *mut ::core::ffi::c_uint,
3531 buffer_size: *mut snd_pcm_uframes_t,
3532 period_size: *mut snd_pcm_uframes_t,
3533 ) -> ::core::ffi::c_int;
3534}
3535unsafe extern "C" {
3536 pub fn snd_pcm_start_mode_name(mode: snd_pcm_start_t) -> *const ::core::ffi::c_char;
3537}
3538unsafe extern "C" {
3539 pub fn snd_pcm_xrun_mode_name(mode: snd_pcm_xrun_t) -> *const ::core::ffi::c_char;
3540}
3541unsafe extern "C" {
3542 pub fn snd_pcm_sw_params_set_start_mode(
3543 pcm: *mut snd_pcm_t,
3544 params: *mut snd_pcm_sw_params_t,
3545 val: snd_pcm_start_t,
3546 ) -> ::core::ffi::c_int;
3547}
3548unsafe extern "C" {
3549 pub fn snd_pcm_sw_params_get_start_mode(params: *const snd_pcm_sw_params_t) -> snd_pcm_start_t;
3550}
3551unsafe extern "C" {
3552 pub fn snd_pcm_sw_params_set_xrun_mode(
3553 pcm: *mut snd_pcm_t,
3554 params: *mut snd_pcm_sw_params_t,
3555 val: snd_pcm_xrun_t,
3556 ) -> ::core::ffi::c_int;
3557}
3558unsafe extern "C" {
3559 pub fn snd_pcm_sw_params_get_xrun_mode(params: *const snd_pcm_sw_params_t) -> snd_pcm_xrun_t;
3560}
3561unsafe extern "C" {
3562 pub fn snd_pcm_sw_params_set_xfer_align(
3563 pcm: *mut snd_pcm_t,
3564 params: *mut snd_pcm_sw_params_t,
3565 val: snd_pcm_uframes_t,
3566 ) -> ::core::ffi::c_int;
3567}
3568unsafe extern "C" {
3569 pub fn snd_pcm_sw_params_get_xfer_align(
3570 params: *const snd_pcm_sw_params_t,
3571 val: *mut snd_pcm_uframes_t,
3572 ) -> ::core::ffi::c_int;
3573}
3574unsafe extern "C" {
3575 pub fn snd_pcm_sw_params_set_sleep_min(
3576 pcm: *mut snd_pcm_t,
3577 params: *mut snd_pcm_sw_params_t,
3578 val: ::core::ffi::c_uint,
3579 ) -> ::core::ffi::c_int;
3580}
3581unsafe extern "C" {
3582 pub fn snd_pcm_sw_params_get_sleep_min(
3583 params: *const snd_pcm_sw_params_t,
3584 val: *mut ::core::ffi::c_uint,
3585 ) -> ::core::ffi::c_int;
3586}
3587unsafe extern "C" {
3588 pub fn snd_pcm_hw_params_get_tick_time(
3589 params: *const snd_pcm_hw_params_t,
3590 val: *mut ::core::ffi::c_uint,
3591 dir: *mut ::core::ffi::c_int,
3592 ) -> ::core::ffi::c_int;
3593}
3594unsafe extern "C" {
3595 pub fn snd_pcm_hw_params_get_tick_time_min(
3596 params: *const snd_pcm_hw_params_t,
3597 val: *mut ::core::ffi::c_uint,
3598 dir: *mut ::core::ffi::c_int,
3599 ) -> ::core::ffi::c_int;
3600}
3601unsafe extern "C" {
3602 pub fn snd_pcm_hw_params_get_tick_time_max(
3603 params: *const snd_pcm_hw_params_t,
3604 val: *mut ::core::ffi::c_uint,
3605 dir: *mut ::core::ffi::c_int,
3606 ) -> ::core::ffi::c_int;
3607}
3608unsafe extern "C" {
3609 pub fn snd_pcm_hw_params_test_tick_time(
3610 pcm: *mut snd_pcm_t,
3611 params: *mut snd_pcm_hw_params_t,
3612 val: ::core::ffi::c_uint,
3613 dir: ::core::ffi::c_int,
3614 ) -> ::core::ffi::c_int;
3615}
3616unsafe extern "C" {
3617 pub fn snd_pcm_hw_params_set_tick_time(
3618 pcm: *mut snd_pcm_t,
3619 params: *mut snd_pcm_hw_params_t,
3620 val: ::core::ffi::c_uint,
3621 dir: ::core::ffi::c_int,
3622 ) -> ::core::ffi::c_int;
3623}
3624unsafe extern "C" {
3625 pub fn snd_pcm_hw_params_set_tick_time_min(
3626 pcm: *mut snd_pcm_t,
3627 params: *mut snd_pcm_hw_params_t,
3628 val: *mut ::core::ffi::c_uint,
3629 dir: *mut ::core::ffi::c_int,
3630 ) -> ::core::ffi::c_int;
3631}
3632unsafe extern "C" {
3633 pub fn snd_pcm_hw_params_set_tick_time_max(
3634 pcm: *mut snd_pcm_t,
3635 params: *mut snd_pcm_hw_params_t,
3636 val: *mut ::core::ffi::c_uint,
3637 dir: *mut ::core::ffi::c_int,
3638 ) -> ::core::ffi::c_int;
3639}
3640unsafe extern "C" {
3641 pub fn snd_pcm_hw_params_set_tick_time_minmax(
3642 pcm: *mut snd_pcm_t,
3643 params: *mut snd_pcm_hw_params_t,
3644 min: *mut ::core::ffi::c_uint,
3645 mindir: *mut ::core::ffi::c_int,
3646 max: *mut ::core::ffi::c_uint,
3647 maxdir: *mut ::core::ffi::c_int,
3648 ) -> ::core::ffi::c_int;
3649}
3650unsafe extern "C" {
3651 pub fn snd_pcm_hw_params_set_tick_time_near(
3652 pcm: *mut snd_pcm_t,
3653 params: *mut snd_pcm_hw_params_t,
3654 val: *mut ::core::ffi::c_uint,
3655 dir: *mut ::core::ffi::c_int,
3656 ) -> ::core::ffi::c_int;
3657}
3658unsafe extern "C" {
3659 pub fn snd_pcm_hw_params_set_tick_time_first(
3660 pcm: *mut snd_pcm_t,
3661 params: *mut snd_pcm_hw_params_t,
3662 val: *mut ::core::ffi::c_uint,
3663 dir: *mut ::core::ffi::c_int,
3664 ) -> ::core::ffi::c_int;
3665}
3666unsafe extern "C" {
3667 pub fn snd_pcm_hw_params_set_tick_time_last(
3668 pcm: *mut snd_pcm_t,
3669 params: *mut snd_pcm_hw_params_t,
3670 val: *mut ::core::ffi::c_uint,
3671 dir: *mut ::core::ffi::c_int,
3672 ) -> ::core::ffi::c_int;
3673}
3674#[repr(C)]
3675#[derive(Debug, Copy, Clone)]
3676pub struct _snd_rawmidi_info {
3677 _unused: [u8; 0],
3678}
3679pub type snd_rawmidi_info_t = _snd_rawmidi_info;
3680#[repr(C)]
3681#[derive(Debug, Copy, Clone)]
3682pub struct _snd_rawmidi_params {
3683 _unused: [u8; 0],
3684}
3685pub type snd_rawmidi_params_t = _snd_rawmidi_params;
3686#[repr(C)]
3687#[derive(Debug, Copy, Clone)]
3688pub struct _snd_rawmidi_status {
3689 _unused: [u8; 0],
3690}
3691pub type snd_rawmidi_status_t = _snd_rawmidi_status;
3692pub const SND_RAWMIDI_STREAM_OUTPUT: _snd_rawmidi_stream = 0;
3693pub const SND_RAWMIDI_STREAM_INPUT: _snd_rawmidi_stream = 1;
3694pub const SND_RAWMIDI_STREAM_LAST: _snd_rawmidi_stream = 1;
3695pub type _snd_rawmidi_stream = ::core::ffi::c_uint;
3696pub use self::_snd_rawmidi_stream as snd_rawmidi_stream_t;
3697#[repr(C)]
3698#[derive(Debug, Copy, Clone)]
3699pub struct _snd_rawmidi {
3700 _unused: [u8; 0],
3701}
3702pub type snd_rawmidi_t = _snd_rawmidi;
3703pub const SND_RAWMIDI_TYPE_HW: _snd_rawmidi_type = 0;
3704pub const SND_RAWMIDI_TYPE_SHM: _snd_rawmidi_type = 1;
3705pub const SND_RAWMIDI_TYPE_INET: _snd_rawmidi_type = 2;
3706pub const SND_RAWMIDI_TYPE_VIRTUAL: _snd_rawmidi_type = 3;
3707pub type _snd_rawmidi_type = ::core::ffi::c_uint;
3708pub use self::_snd_rawmidi_type as snd_rawmidi_type_t;
3709pub const SND_RAWMIDI_CLOCK_NONE: _snd_rawmidi_clock = 0;
3710pub const SND_RAWMIDI_CLOCK_REALTIME: _snd_rawmidi_clock = 1;
3711pub const SND_RAWMIDI_CLOCK_MONOTONIC: _snd_rawmidi_clock = 2;
3712pub const SND_RAWMIDI_CLOCK_MONOTONIC_RAW: _snd_rawmidi_clock = 3;
3713pub type _snd_rawmidi_clock = ::core::ffi::c_uint;
3714pub use self::_snd_rawmidi_clock as snd_rawmidi_clock_t;
3715pub const SND_RAWMIDI_READ_STANDARD: _snd_rawmidi_read_mode = 0;
3716pub const SND_RAWMIDI_READ_TSTAMP: _snd_rawmidi_read_mode = 1;
3717pub type _snd_rawmidi_read_mode = ::core::ffi::c_uint;
3718pub use self::_snd_rawmidi_read_mode as snd_rawmidi_read_mode_t;
3719unsafe extern "C" {
3720 pub fn snd_rawmidi_open(
3721 in_rmidi: *mut *mut snd_rawmidi_t,
3722 out_rmidi: *mut *mut snd_rawmidi_t,
3723 name: *const ::core::ffi::c_char,
3724 mode: ::core::ffi::c_int,
3725 ) -> ::core::ffi::c_int;
3726}
3727unsafe extern "C" {
3728 pub fn snd_rawmidi_open_lconf(
3729 in_rmidi: *mut *mut snd_rawmidi_t,
3730 out_rmidi: *mut *mut snd_rawmidi_t,
3731 name: *const ::core::ffi::c_char,
3732 mode: ::core::ffi::c_int,
3733 lconf: *mut snd_config_t,
3734 ) -> ::core::ffi::c_int;
3735}
3736unsafe extern "C" {
3737 pub fn snd_rawmidi_close(rmidi: *mut snd_rawmidi_t) -> ::core::ffi::c_int;
3738}
3739unsafe extern "C" {
3740 pub fn snd_rawmidi_poll_descriptors_count(rmidi: *mut snd_rawmidi_t) -> ::core::ffi::c_int;
3741}
3742unsafe extern "C" {
3743 pub fn snd_rawmidi_poll_descriptors(
3744 rmidi: *mut snd_rawmidi_t,
3745 pfds: *mut pollfd,
3746 space: ::core::ffi::c_uint,
3747 ) -> ::core::ffi::c_int;
3748}
3749unsafe extern "C" {
3750 pub fn snd_rawmidi_poll_descriptors_revents(
3751 rawmidi: *mut snd_rawmidi_t,
3752 pfds: *mut pollfd,
3753 nfds: ::core::ffi::c_uint,
3754 revent: *mut ::core::ffi::c_ushort,
3755 ) -> ::core::ffi::c_int;
3756}
3757unsafe extern "C" {
3758 pub fn snd_rawmidi_nonblock(
3759 rmidi: *mut snd_rawmidi_t,
3760 nonblock: ::core::ffi::c_int,
3761 ) -> ::core::ffi::c_int;
3762}
3763unsafe extern "C" {
3764 pub fn snd_rawmidi_info_sizeof() -> usize;
3765}
3766unsafe extern "C" {
3767 pub fn snd_rawmidi_info_malloc(ptr: *mut *mut snd_rawmidi_info_t) -> ::core::ffi::c_int;
3768}
3769unsafe extern "C" {
3770 pub fn snd_rawmidi_info_free(obj: *mut snd_rawmidi_info_t);
3771}
3772unsafe extern "C" {
3773 pub fn snd_rawmidi_info_copy(dst: *mut snd_rawmidi_info_t, src: *const snd_rawmidi_info_t);
3774}
3775unsafe extern "C" {
3776 pub fn snd_rawmidi_info_get_device(obj: *const snd_rawmidi_info_t) -> ::core::ffi::c_uint;
3777}
3778unsafe extern "C" {
3779 pub fn snd_rawmidi_info_get_subdevice(obj: *const snd_rawmidi_info_t) -> ::core::ffi::c_uint;
3780}
3781unsafe extern "C" {
3782 pub fn snd_rawmidi_info_get_stream(obj: *const snd_rawmidi_info_t) -> snd_rawmidi_stream_t;
3783}
3784unsafe extern "C" {
3785 pub fn snd_rawmidi_info_get_card(obj: *const snd_rawmidi_info_t) -> ::core::ffi::c_int;
3786}
3787unsafe extern "C" {
3788 pub fn snd_rawmidi_info_get_flags(obj: *const snd_rawmidi_info_t) -> ::core::ffi::c_uint;
3789}
3790unsafe extern "C" {
3791 pub fn snd_rawmidi_info_get_id(obj: *const snd_rawmidi_info_t) -> *const ::core::ffi::c_char;
3792}
3793unsafe extern "C" {
3794 pub fn snd_rawmidi_info_get_name(obj: *const snd_rawmidi_info_t) -> *const ::core::ffi::c_char;
3795}
3796unsafe extern "C" {
3797 pub fn snd_rawmidi_info_get_subdevice_name(
3798 obj: *const snd_rawmidi_info_t,
3799 ) -> *const ::core::ffi::c_char;
3800}
3801unsafe extern "C" {
3802 pub fn snd_rawmidi_info_get_subdevices_count(
3803 obj: *const snd_rawmidi_info_t,
3804 ) -> ::core::ffi::c_uint;
3805}
3806unsafe extern "C" {
3807 pub fn snd_rawmidi_info_get_subdevices_avail(
3808 obj: *const snd_rawmidi_info_t,
3809 ) -> ::core::ffi::c_uint;
3810}
3811unsafe extern "C" {
3812 pub fn snd_rawmidi_info_get_tied_device(obj: *const snd_rawmidi_info_t) -> ::core::ffi::c_int;
3813}
3814unsafe extern "C" {
3815 pub fn snd_rawmidi_info_set_device(obj: *mut snd_rawmidi_info_t, val: ::core::ffi::c_uint);
3816}
3817unsafe extern "C" {
3818 pub fn snd_rawmidi_info_set_subdevice(obj: *mut snd_rawmidi_info_t, val: ::core::ffi::c_uint);
3819}
3820unsafe extern "C" {
3821 pub fn snd_rawmidi_info_set_stream(obj: *mut snd_rawmidi_info_t, val: snd_rawmidi_stream_t);
3822}
3823unsafe extern "C" {
3824 pub fn snd_rawmidi_info(
3825 rmidi: *mut snd_rawmidi_t,
3826 info: *mut snd_rawmidi_info_t,
3827 ) -> ::core::ffi::c_int;
3828}
3829unsafe extern "C" {
3830 pub fn snd_rawmidi_params_sizeof() -> usize;
3831}
3832unsafe extern "C" {
3833 pub fn snd_rawmidi_params_malloc(ptr: *mut *mut snd_rawmidi_params_t) -> ::core::ffi::c_int;
3834}
3835unsafe extern "C" {
3836 pub fn snd_rawmidi_params_free(obj: *mut snd_rawmidi_params_t);
3837}
3838unsafe extern "C" {
3839 pub fn snd_rawmidi_params_copy(
3840 dst: *mut snd_rawmidi_params_t,
3841 src: *const snd_rawmidi_params_t,
3842 );
3843}
3844unsafe extern "C" {
3845 pub fn snd_rawmidi_params_set_buffer_size(
3846 rmidi: *mut snd_rawmidi_t,
3847 params: *mut snd_rawmidi_params_t,
3848 val: usize,
3849 ) -> ::core::ffi::c_int;
3850}
3851unsafe extern "C" {
3852 pub fn snd_rawmidi_params_get_buffer_size(params: *const snd_rawmidi_params_t) -> usize;
3853}
3854unsafe extern "C" {
3855 pub fn snd_rawmidi_params_set_avail_min(
3856 rmidi: *mut snd_rawmidi_t,
3857 params: *mut snd_rawmidi_params_t,
3858 val: usize,
3859 ) -> ::core::ffi::c_int;
3860}
3861unsafe extern "C" {
3862 pub fn snd_rawmidi_params_get_avail_min(params: *const snd_rawmidi_params_t) -> usize;
3863}
3864unsafe extern "C" {
3865 pub fn snd_rawmidi_params_set_no_active_sensing(
3866 rmidi: *mut snd_rawmidi_t,
3867 params: *mut snd_rawmidi_params_t,
3868 val: ::core::ffi::c_int,
3869 ) -> ::core::ffi::c_int;
3870}
3871unsafe extern "C" {
3872 pub fn snd_rawmidi_params_get_no_active_sensing(
3873 params: *const snd_rawmidi_params_t,
3874 ) -> ::core::ffi::c_int;
3875}
3876unsafe extern "C" {
3877 pub fn snd_rawmidi_params_set_read_mode(
3878 rawmidi: *const snd_rawmidi_t,
3879 params: *mut snd_rawmidi_params_t,
3880 val: snd_rawmidi_read_mode_t,
3881 ) -> ::core::ffi::c_int;
3882}
3883unsafe extern "C" {
3884 pub fn snd_rawmidi_params_get_read_mode(
3885 params: *const snd_rawmidi_params_t,
3886 ) -> snd_rawmidi_read_mode_t;
3887}
3888unsafe extern "C" {
3889 pub fn snd_rawmidi_params_set_clock_type(
3890 rawmidi: *const snd_rawmidi_t,
3891 params: *mut snd_rawmidi_params_t,
3892 val: snd_rawmidi_clock_t,
3893 ) -> ::core::ffi::c_int;
3894}
3895unsafe extern "C" {
3896 pub fn snd_rawmidi_params_get_clock_type(
3897 params: *const snd_rawmidi_params_t,
3898 ) -> snd_rawmidi_clock_t;
3899}
3900unsafe extern "C" {
3901 pub fn snd_rawmidi_params(
3902 rmidi: *mut snd_rawmidi_t,
3903 params: *mut snd_rawmidi_params_t,
3904 ) -> ::core::ffi::c_int;
3905}
3906unsafe extern "C" {
3907 pub fn snd_rawmidi_params_current(
3908 rmidi: *mut snd_rawmidi_t,
3909 params: *mut snd_rawmidi_params_t,
3910 ) -> ::core::ffi::c_int;
3911}
3912unsafe extern "C" {
3913 pub fn snd_rawmidi_status_sizeof() -> usize;
3914}
3915unsafe extern "C" {
3916 pub fn snd_rawmidi_status_malloc(ptr: *mut *mut snd_rawmidi_status_t) -> ::core::ffi::c_int;
3917}
3918unsafe extern "C" {
3919 pub fn snd_rawmidi_status_free(obj: *mut snd_rawmidi_status_t);
3920}
3921unsafe extern "C" {
3922 pub fn snd_rawmidi_status_copy(
3923 dst: *mut snd_rawmidi_status_t,
3924 src: *const snd_rawmidi_status_t,
3925 );
3926}
3927unsafe extern "C" {
3928 pub fn snd_rawmidi_status_get_tstamp(
3929 obj: *const snd_rawmidi_status_t,
3930 ptr: *mut snd_htimestamp_t,
3931 );
3932}
3933unsafe extern "C" {
3934 pub fn snd_rawmidi_status_get_avail(obj: *const snd_rawmidi_status_t) -> usize;
3935}
3936unsafe extern "C" {
3937 pub fn snd_rawmidi_status_get_xruns(obj: *const snd_rawmidi_status_t) -> usize;
3938}
3939unsafe extern "C" {
3940 pub fn snd_rawmidi_status(
3941 rmidi: *mut snd_rawmidi_t,
3942 status: *mut snd_rawmidi_status_t,
3943 ) -> ::core::ffi::c_int;
3944}
3945unsafe extern "C" {
3946 pub fn snd_rawmidi_drain(rmidi: *mut snd_rawmidi_t) -> ::core::ffi::c_int;
3947}
3948unsafe extern "C" {
3949 pub fn snd_rawmidi_drop(rmidi: *mut snd_rawmidi_t) -> ::core::ffi::c_int;
3950}
3951unsafe extern "C" {
3952 pub fn snd_rawmidi_write(
3953 rmidi: *mut snd_rawmidi_t,
3954 buffer: *const ::core::ffi::c_void,
3955 size: usize,
3956 ) -> isize;
3957}
3958unsafe extern "C" {
3959 pub fn snd_rawmidi_read(
3960 rmidi: *mut snd_rawmidi_t,
3961 buffer: *mut ::core::ffi::c_void,
3962 size: usize,
3963 ) -> isize;
3964}
3965unsafe extern "C" {
3966 pub fn snd_rawmidi_tread(
3967 rmidi: *mut snd_rawmidi_t,
3968 tstamp: *mut timespec,
3969 buffer: *mut ::core::ffi::c_void,
3970 size: usize,
3971 ) -> isize;
3972}
3973unsafe extern "C" {
3974 pub fn snd_rawmidi_name(rmidi: *mut snd_rawmidi_t) -> *const ::core::ffi::c_char;
3975}
3976unsafe extern "C" {
3977 pub fn snd_rawmidi_type(rmidi: *mut snd_rawmidi_t) -> snd_rawmidi_type_t;
3978}
3979unsafe extern "C" {
3980 pub fn snd_rawmidi_stream(rawmidi: *mut snd_rawmidi_t) -> snd_rawmidi_stream_t;
3981}
3982#[repr(C)]
3983#[derive(Debug, Copy, Clone)]
3984pub struct _snd_ump {
3985 _unused: [u8; 0],
3986}
3987pub type snd_ump_t = _snd_ump;
3988#[repr(C)]
3989#[derive(Debug, Copy, Clone)]
3990pub struct snd_ump_endpoint_info {
3991 _unused: [u8; 0],
3992}
3993pub type snd_ump_endpoint_info_t = snd_ump_endpoint_info;
3994#[repr(C)]
3995#[derive(Debug, Copy, Clone)]
3996pub struct snd_ump_block_info {
3997 _unused: [u8; 0],
3998}
3999pub type snd_ump_block_info_t = snd_ump_block_info;
4000unsafe extern "C" {
4001 pub fn snd_ump_open(
4002 inputp: *mut *mut snd_ump_t,
4003 outputp: *mut *mut snd_ump_t,
4004 name: *const ::core::ffi::c_char,
4005 mode: ::core::ffi::c_int,
4006 ) -> ::core::ffi::c_int;
4007}
4008unsafe extern "C" {
4009 pub fn snd_ump_close(ump: *mut snd_ump_t) -> ::core::ffi::c_int;
4010}
4011unsafe extern "C" {
4012 pub fn snd_ump_rawmidi(ump: *mut snd_ump_t) -> *mut snd_rawmidi_t;
4013}
4014unsafe extern "C" {
4015 pub fn snd_ump_name(ump: *mut snd_ump_t) -> *const ::core::ffi::c_char;
4016}
4017unsafe extern "C" {
4018 pub fn snd_ump_poll_descriptors_count(ump: *mut snd_ump_t) -> ::core::ffi::c_int;
4019}
4020unsafe extern "C" {
4021 pub fn snd_ump_poll_descriptors(
4022 ump: *mut snd_ump_t,
4023 pfds: *mut pollfd,
4024 space: ::core::ffi::c_uint,
4025 ) -> ::core::ffi::c_int;
4026}
4027unsafe extern "C" {
4028 pub fn snd_ump_poll_descriptors_revents(
4029 ump: *mut snd_ump_t,
4030 pfds: *mut pollfd,
4031 nfds: ::core::ffi::c_uint,
4032 revents: *mut ::core::ffi::c_ushort,
4033 ) -> ::core::ffi::c_int;
4034}
4035unsafe extern "C" {
4036 pub fn snd_ump_nonblock(
4037 ump: *mut snd_ump_t,
4038 nonblock: ::core::ffi::c_int,
4039 ) -> ::core::ffi::c_int;
4040}
4041unsafe extern "C" {
4042 pub fn snd_ump_rawmidi_info(
4043 ump: *mut snd_ump_t,
4044 info: *mut snd_rawmidi_info_t,
4045 ) -> ::core::ffi::c_int;
4046}
4047unsafe extern "C" {
4048 pub fn snd_ump_rawmidi_params(
4049 ump: *mut snd_ump_t,
4050 params: *mut snd_rawmidi_params_t,
4051 ) -> ::core::ffi::c_int;
4052}
4053unsafe extern "C" {
4054 pub fn snd_ump_rawmidi_params_current(
4055 ump: *mut snd_ump_t,
4056 params: *mut snd_rawmidi_params_t,
4057 ) -> ::core::ffi::c_int;
4058}
4059unsafe extern "C" {
4060 pub fn snd_ump_rawmidi_status(
4061 ump: *mut snd_ump_t,
4062 status: *mut snd_rawmidi_status_t,
4063 ) -> ::core::ffi::c_int;
4064}
4065unsafe extern "C" {
4066 pub fn snd_ump_drop(ump: *mut snd_ump_t) -> ::core::ffi::c_int;
4067}
4068unsafe extern "C" {
4069 pub fn snd_ump_drain(ump: *mut snd_ump_t) -> ::core::ffi::c_int;
4070}
4071unsafe extern "C" {
4072 pub fn snd_ump_write(
4073 ump: *mut snd_ump_t,
4074 buffer: *const ::core::ffi::c_void,
4075 size: usize,
4076 ) -> isize;
4077}
4078unsafe extern "C" {
4079 pub fn snd_ump_read(
4080 ump: *mut snd_ump_t,
4081 buffer: *mut ::core::ffi::c_void,
4082 size: usize,
4083 ) -> isize;
4084}
4085unsafe extern "C" {
4086 pub fn snd_ump_tread(
4087 ump: *mut snd_ump_t,
4088 tstamp: *mut timespec,
4089 buffer: *mut ::core::ffi::c_void,
4090 size: usize,
4091 ) -> isize;
4092}
4093pub const SND_UMP_DIR_INPUT: _snd_ump_direction = 1;
4094pub const SND_UMP_DIR_OUTPUT: _snd_ump_direction = 2;
4095pub const SND_UMP_DIR_BIDIRECTION: _snd_ump_direction = 3;
4096pub type _snd_ump_direction = ::core::ffi::c_uint;
4097unsafe extern "C" {
4098 pub fn snd_ump_endpoint_info_sizeof() -> usize;
4099}
4100unsafe extern "C" {
4101 pub fn snd_ump_endpoint_info_malloc(
4102 info: *mut *mut snd_ump_endpoint_info_t,
4103 ) -> ::core::ffi::c_int;
4104}
4105unsafe extern "C" {
4106 pub fn snd_ump_endpoint_info_free(info: *mut snd_ump_endpoint_info_t);
4107}
4108unsafe extern "C" {
4109 pub fn snd_ump_endpoint_info_clear(info: *mut snd_ump_endpoint_info_t);
4110}
4111unsafe extern "C" {
4112 pub fn snd_ump_endpoint_info_copy(
4113 dst: *mut snd_ump_endpoint_info_t,
4114 src: *const snd_ump_endpoint_info_t,
4115 );
4116}
4117unsafe extern "C" {
4118 pub fn snd_ump_endpoint_info_get_card(
4119 info: *const snd_ump_endpoint_info_t,
4120 ) -> ::core::ffi::c_int;
4121}
4122unsafe extern "C" {
4123 pub fn snd_ump_endpoint_info_get_device(
4124 info: *const snd_ump_endpoint_info_t,
4125 ) -> ::core::ffi::c_int;
4126}
4127unsafe extern "C" {
4128 pub fn snd_ump_endpoint_info_get_flags(
4129 info: *const snd_ump_endpoint_info_t,
4130 ) -> ::core::ffi::c_uint;
4131}
4132unsafe extern "C" {
4133 pub fn snd_ump_endpoint_info_get_protocol_caps(
4134 info: *const snd_ump_endpoint_info_t,
4135 ) -> ::core::ffi::c_uint;
4136}
4137unsafe extern "C" {
4138 pub fn snd_ump_endpoint_info_get_protocol(
4139 info: *const snd_ump_endpoint_info_t,
4140 ) -> ::core::ffi::c_uint;
4141}
4142unsafe extern "C" {
4143 pub fn snd_ump_endpoint_info_get_num_blocks(
4144 info: *const snd_ump_endpoint_info_t,
4145 ) -> ::core::ffi::c_uint;
4146}
4147unsafe extern "C" {
4148 pub fn snd_ump_endpoint_info_get_version(
4149 info: *const snd_ump_endpoint_info_t,
4150 ) -> ::core::ffi::c_uint;
4151}
4152unsafe extern "C" {
4153 pub fn snd_ump_endpoint_info_get_manufacturer_id(
4154 info: *const snd_ump_endpoint_info_t,
4155 ) -> ::core::ffi::c_uint;
4156}
4157unsafe extern "C" {
4158 pub fn snd_ump_endpoint_info_get_family_id(
4159 info: *const snd_ump_endpoint_info_t,
4160 ) -> ::core::ffi::c_uint;
4161}
4162unsafe extern "C" {
4163 pub fn snd_ump_endpoint_info_get_model_id(
4164 info: *const snd_ump_endpoint_info_t,
4165 ) -> ::core::ffi::c_uint;
4166}
4167unsafe extern "C" {
4168 pub fn snd_ump_endpoint_info_get_sw_revision(
4169 info: *const snd_ump_endpoint_info_t,
4170 ) -> *const ::core::ffi::c_uchar;
4171}
4172unsafe extern "C" {
4173 pub fn snd_ump_endpoint_info_get_name(
4174 info: *const snd_ump_endpoint_info_t,
4175 ) -> *const ::core::ffi::c_char;
4176}
4177unsafe extern "C" {
4178 pub fn snd_ump_endpoint_info_get_product_id(
4179 info: *const snd_ump_endpoint_info_t,
4180 ) -> *const ::core::ffi::c_char;
4181}
4182unsafe extern "C" {
4183 pub fn snd_ump_endpoint_info(
4184 ump: *mut snd_ump_t,
4185 info: *mut snd_ump_endpoint_info_t,
4186 ) -> ::core::ffi::c_int;
4187}
4188unsafe extern "C" {
4189 pub fn snd_ump_endpoint_info_set_card(
4190 info: *mut snd_ump_endpoint_info_t,
4191 card: ::core::ffi::c_uint,
4192 );
4193}
4194unsafe extern "C" {
4195 pub fn snd_ump_endpoint_info_set_device(
4196 info: *mut snd_ump_endpoint_info_t,
4197 device: ::core::ffi::c_uint,
4198 );
4199}
4200unsafe extern "C" {
4201 pub fn snd_ump_endpoint_info_set_flags(
4202 info: *mut snd_ump_endpoint_info_t,
4203 flags: ::core::ffi::c_uint,
4204 );
4205}
4206unsafe extern "C" {
4207 pub fn snd_ump_endpoint_info_set_protocol_caps(
4208 info: *mut snd_ump_endpoint_info_t,
4209 caps: ::core::ffi::c_uint,
4210 );
4211}
4212unsafe extern "C" {
4213 pub fn snd_ump_endpoint_info_set_protocol(
4214 info: *mut snd_ump_endpoint_info_t,
4215 protocols: ::core::ffi::c_uint,
4216 );
4217}
4218unsafe extern "C" {
4219 pub fn snd_ump_endpoint_info_set_num_blocks(
4220 info: *mut snd_ump_endpoint_info_t,
4221 num_blocks: ::core::ffi::c_uint,
4222 );
4223}
4224unsafe extern "C" {
4225 pub fn snd_ump_endpoint_info_set_version(
4226 info: *mut snd_ump_endpoint_info_t,
4227 version: ::core::ffi::c_uint,
4228 );
4229}
4230unsafe extern "C" {
4231 pub fn snd_ump_endpoint_info_set_manufacturer_id(
4232 info: *mut snd_ump_endpoint_info_t,
4233 id: ::core::ffi::c_uint,
4234 );
4235}
4236unsafe extern "C" {
4237 pub fn snd_ump_endpoint_info_set_family_id(
4238 info: *mut snd_ump_endpoint_info_t,
4239 id: ::core::ffi::c_uint,
4240 );
4241}
4242unsafe extern "C" {
4243 pub fn snd_ump_endpoint_info_set_model_id(
4244 info: *mut snd_ump_endpoint_info_t,
4245 id: ::core::ffi::c_uint,
4246 );
4247}
4248unsafe extern "C" {
4249 pub fn snd_ump_endpoint_info_set_sw_revision(
4250 info: *mut snd_ump_endpoint_info_t,
4251 id: *const ::core::ffi::c_uchar,
4252 );
4253}
4254unsafe extern "C" {
4255 pub fn snd_ump_endpoint_info_set_name(
4256 info: *mut snd_ump_endpoint_info_t,
4257 name: *const ::core::ffi::c_char,
4258 );
4259}
4260unsafe extern "C" {
4261 pub fn snd_ump_endpoint_info_set_product_id(
4262 info: *mut snd_ump_endpoint_info_t,
4263 id: *const ::core::ffi::c_char,
4264 );
4265}
4266pub const SND_UMP_BLOCK_UI_HINT_UNKNOWN: _snd_ump_block_ui_hint = 0;
4267pub const SND_UMP_BLOCK_UI_HINT_RECEIVER: _snd_ump_block_ui_hint = 1;
4268pub const SND_UMP_BLOCK_UI_HINT_SENDER: _snd_ump_block_ui_hint = 2;
4269pub const SND_UMP_BLOCK_UI_HINT_BOTH: _snd_ump_block_ui_hint = 3;
4270pub type _snd_ump_block_ui_hint = ::core::ffi::c_uint;
4271unsafe extern "C" {
4272 pub fn snd_ump_block_info_sizeof() -> usize;
4273}
4274unsafe extern "C" {
4275 pub fn snd_ump_block_info_malloc(info: *mut *mut snd_ump_block_info_t) -> ::core::ffi::c_int;
4276}
4277unsafe extern "C" {
4278 pub fn snd_ump_block_info_free(info: *mut snd_ump_block_info_t);
4279}
4280unsafe extern "C" {
4281 pub fn snd_ump_block_info_clear(info: *mut snd_ump_block_info_t);
4282}
4283unsafe extern "C" {
4284 pub fn snd_ump_block_info_copy(
4285 dst: *mut snd_ump_block_info_t,
4286 src: *const snd_ump_block_info_t,
4287 );
4288}
4289unsafe extern "C" {
4290 pub fn snd_ump_block_info_get_card(info: *const snd_ump_block_info_t) -> ::core::ffi::c_int;
4291}
4292unsafe extern "C" {
4293 pub fn snd_ump_block_info_get_device(info: *const snd_ump_block_info_t) -> ::core::ffi::c_int;
4294}
4295unsafe extern "C" {
4296 pub fn snd_ump_block_info_get_block_id(
4297 info: *const snd_ump_block_info_t,
4298 ) -> ::core::ffi::c_uint;
4299}
4300unsafe extern "C" {
4301 pub fn snd_ump_block_info_get_active(info: *const snd_ump_block_info_t) -> ::core::ffi::c_uint;
4302}
4303unsafe extern "C" {
4304 pub fn snd_ump_block_info_get_flags(info: *const snd_ump_block_info_t) -> ::core::ffi::c_uint;
4305}
4306unsafe extern "C" {
4307 pub fn snd_ump_block_info_get_direction(
4308 info: *const snd_ump_block_info_t,
4309 ) -> ::core::ffi::c_uint;
4310}
4311unsafe extern "C" {
4312 pub fn snd_ump_block_info_get_first_group(
4313 info: *const snd_ump_block_info_t,
4314 ) -> ::core::ffi::c_uint;
4315}
4316unsafe extern "C" {
4317 pub fn snd_ump_block_info_get_num_groups(
4318 info: *const snd_ump_block_info_t,
4319 ) -> ::core::ffi::c_uint;
4320}
4321unsafe extern "C" {
4322 pub fn snd_ump_block_info_get_midi_ci_version(
4323 info: *const snd_ump_block_info_t,
4324 ) -> ::core::ffi::c_uint;
4325}
4326unsafe extern "C" {
4327 pub fn snd_ump_block_info_get_sysex8_streams(
4328 info: *const snd_ump_block_info_t,
4329 ) -> ::core::ffi::c_uint;
4330}
4331unsafe extern "C" {
4332 pub fn snd_ump_block_info_get_ui_hint(info: *const snd_ump_block_info_t)
4333 -> ::core::ffi::c_uint;
4334}
4335unsafe extern "C" {
4336 pub fn snd_ump_block_info_get_name(
4337 info: *const snd_ump_block_info_t,
4338 ) -> *const ::core::ffi::c_char;
4339}
4340unsafe extern "C" {
4341 pub fn snd_ump_block_info(
4342 ump: *mut snd_ump_t,
4343 info: *mut snd_ump_block_info_t,
4344 ) -> ::core::ffi::c_int;
4345}
4346unsafe extern "C" {
4347 pub fn snd_ump_block_info_set_card(info: *mut snd_ump_block_info_t, card: ::core::ffi::c_uint);
4348}
4349unsafe extern "C" {
4350 pub fn snd_ump_block_info_set_device(
4351 info: *mut snd_ump_block_info_t,
4352 device: ::core::ffi::c_uint,
4353 );
4354}
4355unsafe extern "C" {
4356 pub fn snd_ump_block_info_set_block_id(
4357 info: *mut snd_ump_block_info_t,
4358 id: ::core::ffi::c_uint,
4359 );
4360}
4361unsafe extern "C" {
4362 pub fn snd_ump_block_info_set_active(
4363 info: *mut snd_ump_block_info_t,
4364 active: ::core::ffi::c_uint,
4365 );
4366}
4367unsafe extern "C" {
4368 pub fn snd_ump_block_info_set_flags(
4369 info: *mut snd_ump_block_info_t,
4370 flags: ::core::ffi::c_uint,
4371 );
4372}
4373unsafe extern "C" {
4374 pub fn snd_ump_block_info_set_direction(
4375 info: *mut snd_ump_block_info_t,
4376 direction: ::core::ffi::c_uint,
4377 );
4378}
4379unsafe extern "C" {
4380 pub fn snd_ump_block_info_set_first_group(
4381 info: *mut snd_ump_block_info_t,
4382 first_group: ::core::ffi::c_uint,
4383 );
4384}
4385unsafe extern "C" {
4386 pub fn snd_ump_block_info_set_num_groups(
4387 info: *mut snd_ump_block_info_t,
4388 num_groups: ::core::ffi::c_uint,
4389 );
4390}
4391unsafe extern "C" {
4392 pub fn snd_ump_block_info_set_midi_ci_version(
4393 info: *mut snd_ump_block_info_t,
4394 version: ::core::ffi::c_uint,
4395 );
4396}
4397unsafe extern "C" {
4398 pub fn snd_ump_block_info_set_sysex8_streams(
4399 info: *mut snd_ump_block_info_t,
4400 streams: ::core::ffi::c_uint,
4401 );
4402}
4403unsafe extern "C" {
4404 pub fn snd_ump_block_info_set_ui_hint(
4405 info: *mut snd_ump_block_info_t,
4406 hint: ::core::ffi::c_uint,
4407 );
4408}
4409unsafe extern "C" {
4410 pub fn snd_ump_block_info_set_name(
4411 info: *mut snd_ump_block_info_t,
4412 name: *const ::core::ffi::c_char,
4413 );
4414}
4415#[repr(C)]
4416#[derive(Debug, Copy, Clone)]
4417pub struct _snd_timer_id {
4418 _unused: [u8; 0],
4419}
4420pub type snd_timer_id_t = _snd_timer_id;
4421#[repr(C)]
4422#[derive(Debug, Copy, Clone)]
4423pub struct _snd_timer_ginfo {
4424 _unused: [u8; 0],
4425}
4426pub type snd_timer_ginfo_t = _snd_timer_ginfo;
4427#[repr(C)]
4428#[derive(Debug, Copy, Clone)]
4429pub struct _snd_timer_gparams {
4430 _unused: [u8; 0],
4431}
4432pub type snd_timer_gparams_t = _snd_timer_gparams;
4433#[repr(C)]
4434#[derive(Debug, Copy, Clone)]
4435pub struct _snd_timer_gstatus {
4436 _unused: [u8; 0],
4437}
4438pub type snd_timer_gstatus_t = _snd_timer_gstatus;
4439#[repr(C)]
4440#[derive(Debug, Copy, Clone)]
4441pub struct _snd_timer_info {
4442 _unused: [u8; 0],
4443}
4444pub type snd_timer_info_t = _snd_timer_info;
4445#[repr(C)]
4446#[derive(Debug, Copy, Clone)]
4447pub struct _snd_timer_params {
4448 _unused: [u8; 0],
4449}
4450pub type snd_timer_params_t = _snd_timer_params;
4451#[repr(C)]
4452#[derive(Debug, Copy, Clone)]
4453pub struct _snd_timer_status {
4454 _unused: [u8; 0],
4455}
4456pub type snd_timer_status_t = _snd_timer_status;
4457pub const SND_TIMER_CLASS_NONE: _snd_timer_class = -1;
4458pub const SND_TIMER_CLASS_SLAVE: _snd_timer_class = 0;
4459pub const SND_TIMER_CLASS_GLOBAL: _snd_timer_class = 1;
4460pub const SND_TIMER_CLASS_CARD: _snd_timer_class = 2;
4461pub const SND_TIMER_CLASS_PCM: _snd_timer_class = 3;
4462pub const SND_TIMER_CLASS_LAST: _snd_timer_class = 3;
4463pub type _snd_timer_class = ::core::ffi::c_int;
4464pub use self::_snd_timer_class as snd_timer_class_t;
4465pub const SND_TIMER_SCLASS_NONE: _snd_timer_slave_class = 0;
4466pub const SND_TIMER_SCLASS_APPLICATION: _snd_timer_slave_class = 1;
4467pub const SND_TIMER_SCLASS_SEQUENCER: _snd_timer_slave_class = 2;
4468pub const SND_TIMER_SCLASS_OSS_SEQUENCER: _snd_timer_slave_class = 3;
4469pub const SND_TIMER_SCLASS_LAST: _snd_timer_slave_class = 3;
4470pub type _snd_timer_slave_class = ::core::ffi::c_uint;
4471pub use self::_snd_timer_slave_class as snd_timer_slave_class_t;
4472pub const SND_TIMER_EVENT_RESOLUTION: _snd_timer_event = 0;
4473pub const SND_TIMER_EVENT_TICK: _snd_timer_event = 1;
4474pub const SND_TIMER_EVENT_START: _snd_timer_event = 2;
4475pub const SND_TIMER_EVENT_STOP: _snd_timer_event = 3;
4476pub const SND_TIMER_EVENT_CONTINUE: _snd_timer_event = 4;
4477pub const SND_TIMER_EVENT_PAUSE: _snd_timer_event = 5;
4478pub const SND_TIMER_EVENT_EARLY: _snd_timer_event = 6;
4479pub const SND_TIMER_EVENT_SUSPEND: _snd_timer_event = 7;
4480pub const SND_TIMER_EVENT_RESUME: _snd_timer_event = 8;
4481pub const SND_TIMER_EVENT_MSTART: _snd_timer_event = 12;
4482pub const SND_TIMER_EVENT_MSTOP: _snd_timer_event = 13;
4483pub const SND_TIMER_EVENT_MCONTINUE: _snd_timer_event = 14;
4484pub const SND_TIMER_EVENT_MPAUSE: _snd_timer_event = 15;
4485pub const SND_TIMER_EVENT_MSUSPEND: _snd_timer_event = 17;
4486pub const SND_TIMER_EVENT_MRESUME: _snd_timer_event = 18;
4487pub type _snd_timer_event = ::core::ffi::c_uint;
4488pub use self::_snd_timer_event as snd_timer_event_t;
4489#[repr(C)]
4490#[derive(Debug, Copy, Clone)]
4491pub struct _snd_timer_read {
4492 pub resolution: ::core::ffi::c_uint,
4493 pub ticks: ::core::ffi::c_uint,
4494}
4495pub type snd_timer_read_t = _snd_timer_read;
4496#[repr(C)]
4497pub struct _snd_timer_tread {
4498 pub event: snd_timer_event_t,
4499 pub tstamp: snd_htimestamp_t,
4500 pub val: ::core::ffi::c_uint,
4501}
4502pub type snd_timer_tread_t = _snd_timer_tread;
4503pub const SND_TIMER_TYPE_HW: _snd_timer_type = 0;
4504pub const SND_TIMER_TYPE_SHM: _snd_timer_type = 1;
4505pub const SND_TIMER_TYPE_INET: _snd_timer_type = 2;
4506pub type _snd_timer_type = ::core::ffi::c_uint;
4507pub use self::_snd_timer_type as snd_timer_type_t;
4508#[repr(C)]
4509#[derive(Debug, Copy, Clone)]
4510pub struct _snd_timer_query {
4511 _unused: [u8; 0],
4512}
4513pub type snd_timer_query_t = _snd_timer_query;
4514#[repr(C)]
4515#[derive(Debug, Copy, Clone)]
4516pub struct _snd_timer {
4517 _unused: [u8; 0],
4518}
4519pub type snd_timer_t = _snd_timer;
4520unsafe extern "C" {
4521 pub fn snd_timer_query_open(
4522 handle: *mut *mut snd_timer_query_t,
4523 name: *const ::core::ffi::c_char,
4524 mode: ::core::ffi::c_int,
4525 ) -> ::core::ffi::c_int;
4526}
4527unsafe extern "C" {
4528 pub fn snd_timer_query_open_lconf(
4529 handle: *mut *mut snd_timer_query_t,
4530 name: *const ::core::ffi::c_char,
4531 mode: ::core::ffi::c_int,
4532 lconf: *mut snd_config_t,
4533 ) -> ::core::ffi::c_int;
4534}
4535unsafe extern "C" {
4536 pub fn snd_timer_query_close(handle: *mut snd_timer_query_t) -> ::core::ffi::c_int;
4537}
4538unsafe extern "C" {
4539 pub fn snd_timer_query_next_device(
4540 handle: *mut snd_timer_query_t,
4541 tid: *mut snd_timer_id_t,
4542 ) -> ::core::ffi::c_int;
4543}
4544unsafe extern "C" {
4545 pub fn snd_timer_query_info(
4546 handle: *mut snd_timer_query_t,
4547 info: *mut snd_timer_ginfo_t,
4548 ) -> ::core::ffi::c_int;
4549}
4550unsafe extern "C" {
4551 pub fn snd_timer_query_params(
4552 handle: *mut snd_timer_query_t,
4553 params: *mut snd_timer_gparams_t,
4554 ) -> ::core::ffi::c_int;
4555}
4556unsafe extern "C" {
4557 pub fn snd_timer_query_status(
4558 handle: *mut snd_timer_query_t,
4559 status: *mut snd_timer_gstatus_t,
4560 ) -> ::core::ffi::c_int;
4561}
4562unsafe extern "C" {
4563 pub fn snd_timer_open(
4564 handle: *mut *mut snd_timer_t,
4565 name: *const ::core::ffi::c_char,
4566 mode: ::core::ffi::c_int,
4567 ) -> ::core::ffi::c_int;
4568}
4569unsafe extern "C" {
4570 pub fn snd_timer_open_lconf(
4571 handle: *mut *mut snd_timer_t,
4572 name: *const ::core::ffi::c_char,
4573 mode: ::core::ffi::c_int,
4574 lconf: *mut snd_config_t,
4575 ) -> ::core::ffi::c_int;
4576}
4577unsafe extern "C" {
4578 pub fn snd_timer_close(handle: *mut snd_timer_t) -> ::core::ffi::c_int;
4579}
4580unsafe extern "C" {
4581 pub fn snd_async_add_timer_handler(
4582 handler: *mut *mut snd_async_handler_t,
4583 timer: *mut snd_timer_t,
4584 callback: snd_async_callback_t,
4585 private_data: *mut ::core::ffi::c_void,
4586 ) -> ::core::ffi::c_int;
4587}
4588unsafe extern "C" {
4589 pub fn snd_async_handler_get_timer(handler: *mut snd_async_handler_t) -> *mut snd_timer_t;
4590}
4591unsafe extern "C" {
4592 pub fn snd_timer_poll_descriptors_count(handle: *mut snd_timer_t) -> ::core::ffi::c_int;
4593}
4594unsafe extern "C" {
4595 pub fn snd_timer_poll_descriptors(
4596 handle: *mut snd_timer_t,
4597 pfds: *mut pollfd,
4598 space: ::core::ffi::c_uint,
4599 ) -> ::core::ffi::c_int;
4600}
4601unsafe extern "C" {
4602 pub fn snd_timer_poll_descriptors_revents(
4603 timer: *mut snd_timer_t,
4604 pfds: *mut pollfd,
4605 nfds: ::core::ffi::c_uint,
4606 revents: *mut ::core::ffi::c_ushort,
4607 ) -> ::core::ffi::c_int;
4608}
4609unsafe extern "C" {
4610 pub fn snd_timer_info(
4611 handle: *mut snd_timer_t,
4612 timer: *mut snd_timer_info_t,
4613 ) -> ::core::ffi::c_int;
4614}
4615unsafe extern "C" {
4616 pub fn snd_timer_params(
4617 handle: *mut snd_timer_t,
4618 params: *mut snd_timer_params_t,
4619 ) -> ::core::ffi::c_int;
4620}
4621unsafe extern "C" {
4622 pub fn snd_timer_status(
4623 handle: *mut snd_timer_t,
4624 status: *mut snd_timer_status_t,
4625 ) -> ::core::ffi::c_int;
4626}
4627unsafe extern "C" {
4628 pub fn snd_timer_start(handle: *mut snd_timer_t) -> ::core::ffi::c_int;
4629}
4630unsafe extern "C" {
4631 pub fn snd_timer_stop(handle: *mut snd_timer_t) -> ::core::ffi::c_int;
4632}
4633unsafe extern "C" {
4634 pub fn snd_timer_continue(handle: *mut snd_timer_t) -> ::core::ffi::c_int;
4635}
4636unsafe extern "C" {
4637 pub fn snd_timer_read(
4638 handle: *mut snd_timer_t,
4639 buffer: *mut ::core::ffi::c_void,
4640 size: usize,
4641 ) -> isize;
4642}
4643unsafe extern "C" {
4644 pub fn snd_timer_id_sizeof() -> usize;
4645}
4646unsafe extern "C" {
4647 pub fn snd_timer_id_malloc(ptr: *mut *mut snd_timer_id_t) -> ::core::ffi::c_int;
4648}
4649unsafe extern "C" {
4650 pub fn snd_timer_id_free(obj: *mut snd_timer_id_t);
4651}
4652unsafe extern "C" {
4653 pub fn snd_timer_id_copy(dst: *mut snd_timer_id_t, src: *const snd_timer_id_t);
4654}
4655unsafe extern "C" {
4656 pub fn snd_timer_id_set_class(id: *mut snd_timer_id_t, dev_class: ::core::ffi::c_int);
4657}
4658unsafe extern "C" {
4659 pub fn snd_timer_id_get_class(id: *mut snd_timer_id_t) -> ::core::ffi::c_int;
4660}
4661unsafe extern "C" {
4662 pub fn snd_timer_id_set_sclass(id: *mut snd_timer_id_t, dev_sclass: ::core::ffi::c_int);
4663}
4664unsafe extern "C" {
4665 pub fn snd_timer_id_get_sclass(id: *mut snd_timer_id_t) -> ::core::ffi::c_int;
4666}
4667unsafe extern "C" {
4668 pub fn snd_timer_id_set_card(id: *mut snd_timer_id_t, card: ::core::ffi::c_int);
4669}
4670unsafe extern "C" {
4671 pub fn snd_timer_id_get_card(id: *mut snd_timer_id_t) -> ::core::ffi::c_int;
4672}
4673unsafe extern "C" {
4674 pub fn snd_timer_id_set_device(id: *mut snd_timer_id_t, device: ::core::ffi::c_int);
4675}
4676unsafe extern "C" {
4677 pub fn snd_timer_id_get_device(id: *mut snd_timer_id_t) -> ::core::ffi::c_int;
4678}
4679unsafe extern "C" {
4680 pub fn snd_timer_id_set_subdevice(id: *mut snd_timer_id_t, subdevice: ::core::ffi::c_int);
4681}
4682unsafe extern "C" {
4683 pub fn snd_timer_id_get_subdevice(id: *mut snd_timer_id_t) -> ::core::ffi::c_int;
4684}
4685unsafe extern "C" {
4686 pub fn snd_timer_ginfo_sizeof() -> usize;
4687}
4688unsafe extern "C" {
4689 pub fn snd_timer_ginfo_malloc(ptr: *mut *mut snd_timer_ginfo_t) -> ::core::ffi::c_int;
4690}
4691unsafe extern "C" {
4692 pub fn snd_timer_ginfo_free(obj: *mut snd_timer_ginfo_t);
4693}
4694unsafe extern "C" {
4695 pub fn snd_timer_ginfo_copy(dst: *mut snd_timer_ginfo_t, src: *const snd_timer_ginfo_t);
4696}
4697unsafe extern "C" {
4698 pub fn snd_timer_ginfo_set_tid(
4699 obj: *mut snd_timer_ginfo_t,
4700 tid: *mut snd_timer_id_t,
4701 ) -> ::core::ffi::c_int;
4702}
4703unsafe extern "C" {
4704 pub fn snd_timer_ginfo_get_tid(obj: *mut snd_timer_ginfo_t) -> *mut snd_timer_id_t;
4705}
4706unsafe extern "C" {
4707 pub fn snd_timer_ginfo_get_flags(obj: *mut snd_timer_ginfo_t) -> ::core::ffi::c_uint;
4708}
4709unsafe extern "C" {
4710 pub fn snd_timer_ginfo_get_card(obj: *mut snd_timer_ginfo_t) -> ::core::ffi::c_int;
4711}
4712unsafe extern "C" {
4713 pub fn snd_timer_ginfo_get_id(obj: *mut snd_timer_ginfo_t) -> *mut ::core::ffi::c_char;
4714}
4715unsafe extern "C" {
4716 pub fn snd_timer_ginfo_get_name(obj: *mut snd_timer_ginfo_t) -> *mut ::core::ffi::c_char;
4717}
4718unsafe extern "C" {
4719 pub fn snd_timer_ginfo_get_resolution(obj: *mut snd_timer_ginfo_t) -> ::core::ffi::c_ulong;
4720}
4721unsafe extern "C" {
4722 pub fn snd_timer_ginfo_get_resolution_min(obj: *mut snd_timer_ginfo_t) -> ::core::ffi::c_ulong;
4723}
4724unsafe extern "C" {
4725 pub fn snd_timer_ginfo_get_resolution_max(obj: *mut snd_timer_ginfo_t) -> ::core::ffi::c_ulong;
4726}
4727unsafe extern "C" {
4728 pub fn snd_timer_ginfo_get_clients(obj: *mut snd_timer_ginfo_t) -> ::core::ffi::c_uint;
4729}
4730unsafe extern "C" {
4731 pub fn snd_timer_info_sizeof() -> usize;
4732}
4733unsafe extern "C" {
4734 pub fn snd_timer_info_malloc(ptr: *mut *mut snd_timer_info_t) -> ::core::ffi::c_int;
4735}
4736unsafe extern "C" {
4737 pub fn snd_timer_info_free(obj: *mut snd_timer_info_t);
4738}
4739unsafe extern "C" {
4740 pub fn snd_timer_info_copy(dst: *mut snd_timer_info_t, src: *const snd_timer_info_t);
4741}
4742unsafe extern "C" {
4743 pub fn snd_timer_info_is_slave(info: *mut snd_timer_info_t) -> ::core::ffi::c_int;
4744}
4745unsafe extern "C" {
4746 pub fn snd_timer_info_get_card(info: *mut snd_timer_info_t) -> ::core::ffi::c_int;
4747}
4748unsafe extern "C" {
4749 pub fn snd_timer_info_get_id(info: *mut snd_timer_info_t) -> *const ::core::ffi::c_char;
4750}
4751unsafe extern "C" {
4752 pub fn snd_timer_info_get_name(info: *mut snd_timer_info_t) -> *const ::core::ffi::c_char;
4753}
4754unsafe extern "C" {
4755 pub fn snd_timer_info_get_resolution(info: *mut snd_timer_info_t) -> ::core::ffi::c_long;
4756}
4757unsafe extern "C" {
4758 pub fn snd_timer_params_sizeof() -> usize;
4759}
4760unsafe extern "C" {
4761 pub fn snd_timer_params_malloc(ptr: *mut *mut snd_timer_params_t) -> ::core::ffi::c_int;
4762}
4763unsafe extern "C" {
4764 pub fn snd_timer_params_free(obj: *mut snd_timer_params_t);
4765}
4766unsafe extern "C" {
4767 pub fn snd_timer_params_copy(dst: *mut snd_timer_params_t, src: *const snd_timer_params_t);
4768}
4769unsafe extern "C" {
4770 pub fn snd_timer_params_set_auto_start(
4771 params: *mut snd_timer_params_t,
4772 auto_start: ::core::ffi::c_int,
4773 ) -> ::core::ffi::c_int;
4774}
4775unsafe extern "C" {
4776 pub fn snd_timer_params_get_auto_start(params: *mut snd_timer_params_t) -> ::core::ffi::c_int;
4777}
4778unsafe extern "C" {
4779 pub fn snd_timer_params_set_exclusive(
4780 params: *mut snd_timer_params_t,
4781 exclusive: ::core::ffi::c_int,
4782 ) -> ::core::ffi::c_int;
4783}
4784unsafe extern "C" {
4785 pub fn snd_timer_params_get_exclusive(params: *mut snd_timer_params_t) -> ::core::ffi::c_int;
4786}
4787unsafe extern "C" {
4788 pub fn snd_timer_params_set_early_event(
4789 params: *mut snd_timer_params_t,
4790 early_event: ::core::ffi::c_int,
4791 ) -> ::core::ffi::c_int;
4792}
4793unsafe extern "C" {
4794 pub fn snd_timer_params_get_early_event(params: *mut snd_timer_params_t) -> ::core::ffi::c_int;
4795}
4796unsafe extern "C" {
4797 pub fn snd_timer_params_set_ticks(params: *mut snd_timer_params_t, ticks: ::core::ffi::c_long);
4798}
4799unsafe extern "C" {
4800 pub fn snd_timer_params_get_ticks(params: *mut snd_timer_params_t) -> ::core::ffi::c_long;
4801}
4802unsafe extern "C" {
4803 pub fn snd_timer_params_set_queue_size(
4804 params: *mut snd_timer_params_t,
4805 queue_size: ::core::ffi::c_long,
4806 );
4807}
4808unsafe extern "C" {
4809 pub fn snd_timer_params_get_queue_size(params: *mut snd_timer_params_t) -> ::core::ffi::c_long;
4810}
4811unsafe extern "C" {
4812 pub fn snd_timer_params_set_filter(
4813 params: *mut snd_timer_params_t,
4814 filter: ::core::ffi::c_uint,
4815 );
4816}
4817unsafe extern "C" {
4818 pub fn snd_timer_params_get_filter(params: *mut snd_timer_params_t) -> ::core::ffi::c_uint;
4819}
4820unsafe extern "C" {
4821 pub fn snd_timer_status_sizeof() -> usize;
4822}
4823unsafe extern "C" {
4824 pub fn snd_timer_status_malloc(ptr: *mut *mut snd_timer_status_t) -> ::core::ffi::c_int;
4825}
4826unsafe extern "C" {
4827 pub fn snd_timer_status_free(obj: *mut snd_timer_status_t);
4828}
4829unsafe extern "C" {
4830 pub fn snd_timer_status_copy(dst: *mut snd_timer_status_t, src: *const snd_timer_status_t);
4831}
4832unsafe extern "C" {
4833 pub fn snd_timer_status_get_timestamp(status: *mut snd_timer_status_t) -> snd_htimestamp_t;
4834}
4835unsafe extern "C" {
4836 pub fn snd_timer_status_get_resolution(status: *mut snd_timer_status_t) -> ::core::ffi::c_long;
4837}
4838unsafe extern "C" {
4839 pub fn snd_timer_status_get_lost(status: *mut snd_timer_status_t) -> ::core::ffi::c_long;
4840}
4841unsafe extern "C" {
4842 pub fn snd_timer_status_get_overrun(status: *mut snd_timer_status_t) -> ::core::ffi::c_long;
4843}
4844unsafe extern "C" {
4845 pub fn snd_timer_status_get_queue(status: *mut snd_timer_status_t) -> ::core::ffi::c_long;
4846}
4847unsafe extern "C" {
4848 pub fn snd_timer_info_get_ticks(info: *mut snd_timer_info_t) -> ::core::ffi::c_long;
4849}
4850#[repr(C)]
4851#[derive(Debug, Copy, Clone)]
4852pub struct _snd_hwdep_info {
4853 _unused: [u8; 0],
4854}
4855pub type snd_hwdep_info_t = _snd_hwdep_info;
4856#[repr(C)]
4857#[derive(Debug, Copy, Clone)]
4858pub struct _snd_hwdep_dsp_status {
4859 _unused: [u8; 0],
4860}
4861pub type snd_hwdep_dsp_status_t = _snd_hwdep_dsp_status;
4862#[repr(C)]
4863#[derive(Debug, Copy, Clone)]
4864pub struct _snd_hwdep_dsp_image {
4865 _unused: [u8; 0],
4866}
4867pub type snd_hwdep_dsp_image_t = _snd_hwdep_dsp_image;
4868pub const SND_HWDEP_IFACE_OPL2: _snd_hwdep_iface = 0;
4869pub const SND_HWDEP_IFACE_OPL3: _snd_hwdep_iface = 1;
4870pub const SND_HWDEP_IFACE_OPL4: _snd_hwdep_iface = 2;
4871pub const SND_HWDEP_IFACE_SB16CSP: _snd_hwdep_iface = 3;
4872pub const SND_HWDEP_IFACE_EMU10K1: _snd_hwdep_iface = 4;
4873pub const SND_HWDEP_IFACE_YSS225: _snd_hwdep_iface = 5;
4874pub const SND_HWDEP_IFACE_ICS2115: _snd_hwdep_iface = 6;
4875pub const SND_HWDEP_IFACE_SSCAPE: _snd_hwdep_iface = 7;
4876pub const SND_HWDEP_IFACE_VX: _snd_hwdep_iface = 8;
4877pub const SND_HWDEP_IFACE_MIXART: _snd_hwdep_iface = 9;
4878pub const SND_HWDEP_IFACE_USX2Y: _snd_hwdep_iface = 10;
4879pub const SND_HWDEP_IFACE_EMUX_WAVETABLE: _snd_hwdep_iface = 11;
4880pub const SND_HWDEP_IFACE_BLUETOOTH: _snd_hwdep_iface = 12;
4881pub const SND_HWDEP_IFACE_USX2Y_PCM: _snd_hwdep_iface = 13;
4882pub const SND_HWDEP_IFACE_PCXHR: _snd_hwdep_iface = 14;
4883pub const SND_HWDEP_IFACE_SB_RC: _snd_hwdep_iface = 15;
4884pub const SND_HWDEP_IFACE_HDA: _snd_hwdep_iface = 16;
4885pub const SND_HWDEP_IFACE_USB_STREAM: _snd_hwdep_iface = 17;
4886pub const SND_HWDEP_IFACE_FW_DICE: _snd_hwdep_iface = 18;
4887pub const SND_HWDEP_IFACE_FW_FIREWORKS: _snd_hwdep_iface = 19;
4888pub const SND_HWDEP_IFACE_FW_BEBOB: _snd_hwdep_iface = 20;
4889pub const SND_HWDEP_IFACE_FW_OXFW: _snd_hwdep_iface = 21;
4890pub const SND_HWDEP_IFACE_FW_DIGI00X: _snd_hwdep_iface = 22;
4891pub const SND_HWDEP_IFACE_FW_TASCAM: _snd_hwdep_iface = 23;
4892pub const SND_HWDEP_IFACE_LINE6: _snd_hwdep_iface = 24;
4893pub const SND_HWDEP_IFACE_FW_MOTU: _snd_hwdep_iface = 25;
4894pub const SND_HWDEP_IFACE_FW_FIREFACE: _snd_hwdep_iface = 26;
4895pub const SND_HWDEP_IFACE_LAST: _snd_hwdep_iface = 26;
4896pub type _snd_hwdep_iface = ::core::ffi::c_uint;
4897pub use self::_snd_hwdep_iface as snd_hwdep_iface_t;
4898pub const SND_HWDEP_TYPE_HW: _snd_hwdep_type = 0;
4899pub const SND_HWDEP_TYPE_SHM: _snd_hwdep_type = 1;
4900pub const SND_HWDEP_TYPE_INET: _snd_hwdep_type = 2;
4901pub type _snd_hwdep_type = ::core::ffi::c_uint;
4902pub use self::_snd_hwdep_type as snd_hwdep_type_t;
4903#[repr(C)]
4904#[derive(Debug, Copy, Clone)]
4905pub struct _snd_hwdep {
4906 _unused: [u8; 0],
4907}
4908pub type snd_hwdep_t = _snd_hwdep;
4909unsafe extern "C" {
4910 pub fn snd_hwdep_open(
4911 hwdep: *mut *mut snd_hwdep_t,
4912 name: *const ::core::ffi::c_char,
4913 mode: ::core::ffi::c_int,
4914 ) -> ::core::ffi::c_int;
4915}
4916unsafe extern "C" {
4917 pub fn snd_hwdep_close(hwdep: *mut snd_hwdep_t) -> ::core::ffi::c_int;
4918}
4919unsafe extern "C" {
4920 pub fn snd_hwdep_poll_descriptors(
4921 hwdep: *mut snd_hwdep_t,
4922 pfds: *mut pollfd,
4923 space: ::core::ffi::c_uint,
4924 ) -> ::core::ffi::c_int;
4925}
4926unsafe extern "C" {
4927 pub fn snd_hwdep_poll_descriptors_count(hwdep: *mut snd_hwdep_t) -> ::core::ffi::c_int;
4928}
4929unsafe extern "C" {
4930 pub fn snd_hwdep_poll_descriptors_revents(
4931 hwdep: *mut snd_hwdep_t,
4932 pfds: *mut pollfd,
4933 nfds: ::core::ffi::c_uint,
4934 revents: *mut ::core::ffi::c_ushort,
4935 ) -> ::core::ffi::c_int;
4936}
4937unsafe extern "C" {
4938 pub fn snd_hwdep_nonblock(
4939 hwdep: *mut snd_hwdep_t,
4940 nonblock: ::core::ffi::c_int,
4941 ) -> ::core::ffi::c_int;
4942}
4943unsafe extern "C" {
4944 pub fn snd_hwdep_info(
4945 hwdep: *mut snd_hwdep_t,
4946 info: *mut snd_hwdep_info_t,
4947 ) -> ::core::ffi::c_int;
4948}
4949unsafe extern "C" {
4950 pub fn snd_hwdep_dsp_status(
4951 hwdep: *mut snd_hwdep_t,
4952 status: *mut snd_hwdep_dsp_status_t,
4953 ) -> ::core::ffi::c_int;
4954}
4955unsafe extern "C" {
4956 pub fn snd_hwdep_dsp_load(
4957 hwdep: *mut snd_hwdep_t,
4958 block: *mut snd_hwdep_dsp_image_t,
4959 ) -> ::core::ffi::c_int;
4960}
4961unsafe extern "C" {
4962 pub fn snd_hwdep_ioctl(
4963 hwdep: *mut snd_hwdep_t,
4964 request: ::core::ffi::c_uint,
4965 arg: *mut ::core::ffi::c_void,
4966 ) -> ::core::ffi::c_int;
4967}
4968unsafe extern "C" {
4969 pub fn snd_hwdep_write(
4970 hwdep: *mut snd_hwdep_t,
4971 buffer: *const ::core::ffi::c_void,
4972 size: usize,
4973 ) -> isize;
4974}
4975unsafe extern "C" {
4976 pub fn snd_hwdep_read(
4977 hwdep: *mut snd_hwdep_t,
4978 buffer: *mut ::core::ffi::c_void,
4979 size: usize,
4980 ) -> isize;
4981}
4982unsafe extern "C" {
4983 pub fn snd_hwdep_info_sizeof() -> usize;
4984}
4985unsafe extern "C" {
4986 pub fn snd_hwdep_info_malloc(ptr: *mut *mut snd_hwdep_info_t) -> ::core::ffi::c_int;
4987}
4988unsafe extern "C" {
4989 pub fn snd_hwdep_info_free(obj: *mut snd_hwdep_info_t);
4990}
4991unsafe extern "C" {
4992 pub fn snd_hwdep_info_copy(dst: *mut snd_hwdep_info_t, src: *const snd_hwdep_info_t);
4993}
4994unsafe extern "C" {
4995 pub fn snd_hwdep_info_get_device(obj: *const snd_hwdep_info_t) -> ::core::ffi::c_uint;
4996}
4997unsafe extern "C" {
4998 pub fn snd_hwdep_info_get_card(obj: *const snd_hwdep_info_t) -> ::core::ffi::c_int;
4999}
5000unsafe extern "C" {
5001 pub fn snd_hwdep_info_get_id(obj: *const snd_hwdep_info_t) -> *const ::core::ffi::c_char;
5002}
5003unsafe extern "C" {
5004 pub fn snd_hwdep_info_get_name(obj: *const snd_hwdep_info_t) -> *const ::core::ffi::c_char;
5005}
5006unsafe extern "C" {
5007 pub fn snd_hwdep_info_get_iface(obj: *const snd_hwdep_info_t) -> snd_hwdep_iface_t;
5008}
5009unsafe extern "C" {
5010 pub fn snd_hwdep_info_set_device(obj: *mut snd_hwdep_info_t, val: ::core::ffi::c_uint);
5011}
5012unsafe extern "C" {
5013 pub fn snd_hwdep_dsp_status_sizeof() -> usize;
5014}
5015unsafe extern "C" {
5016 pub fn snd_hwdep_dsp_status_malloc(ptr: *mut *mut snd_hwdep_dsp_status_t)
5017 -> ::core::ffi::c_int;
5018}
5019unsafe extern "C" {
5020 pub fn snd_hwdep_dsp_status_free(obj: *mut snd_hwdep_dsp_status_t);
5021}
5022unsafe extern "C" {
5023 pub fn snd_hwdep_dsp_status_copy(
5024 dst: *mut snd_hwdep_dsp_status_t,
5025 src: *const snd_hwdep_dsp_status_t,
5026 );
5027}
5028unsafe extern "C" {
5029 pub fn snd_hwdep_dsp_status_get_version(
5030 obj: *const snd_hwdep_dsp_status_t,
5031 ) -> ::core::ffi::c_uint;
5032}
5033unsafe extern "C" {
5034 pub fn snd_hwdep_dsp_status_get_id(
5035 obj: *const snd_hwdep_dsp_status_t,
5036 ) -> *const ::core::ffi::c_char;
5037}
5038unsafe extern "C" {
5039 pub fn snd_hwdep_dsp_status_get_num_dsps(
5040 obj: *const snd_hwdep_dsp_status_t,
5041 ) -> ::core::ffi::c_uint;
5042}
5043unsafe extern "C" {
5044 pub fn snd_hwdep_dsp_status_get_dsp_loaded(
5045 obj: *const snd_hwdep_dsp_status_t,
5046 ) -> ::core::ffi::c_uint;
5047}
5048unsafe extern "C" {
5049 pub fn snd_hwdep_dsp_status_get_chip_ready(
5050 obj: *const snd_hwdep_dsp_status_t,
5051 ) -> ::core::ffi::c_uint;
5052}
5053unsafe extern "C" {
5054 pub fn snd_hwdep_dsp_image_sizeof() -> usize;
5055}
5056unsafe extern "C" {
5057 pub fn snd_hwdep_dsp_image_malloc(ptr: *mut *mut snd_hwdep_dsp_image_t) -> ::core::ffi::c_int;
5058}
5059unsafe extern "C" {
5060 pub fn snd_hwdep_dsp_image_free(obj: *mut snd_hwdep_dsp_image_t);
5061}
5062unsafe extern "C" {
5063 pub fn snd_hwdep_dsp_image_copy(
5064 dst: *mut snd_hwdep_dsp_image_t,
5065 src: *const snd_hwdep_dsp_image_t,
5066 );
5067}
5068unsafe extern "C" {
5069 pub fn snd_hwdep_dsp_image_get_index(obj: *const snd_hwdep_dsp_image_t) -> ::core::ffi::c_uint;
5070}
5071unsafe extern "C" {
5072 pub fn snd_hwdep_dsp_image_get_name(
5073 obj: *const snd_hwdep_dsp_image_t,
5074 ) -> *const ::core::ffi::c_char;
5075}
5076unsafe extern "C" {
5077 pub fn snd_hwdep_dsp_image_get_image(
5078 obj: *const snd_hwdep_dsp_image_t,
5079 ) -> *const ::core::ffi::c_void;
5080}
5081unsafe extern "C" {
5082 pub fn snd_hwdep_dsp_image_get_length(obj: *const snd_hwdep_dsp_image_t) -> usize;
5083}
5084unsafe extern "C" {
5085 pub fn snd_hwdep_dsp_image_set_index(
5086 obj: *mut snd_hwdep_dsp_image_t,
5087 _index: ::core::ffi::c_uint,
5088 );
5089}
5090unsafe extern "C" {
5091 pub fn snd_hwdep_dsp_image_set_name(
5092 obj: *mut snd_hwdep_dsp_image_t,
5093 name: *const ::core::ffi::c_char,
5094 );
5095}
5096unsafe extern "C" {
5097 pub fn snd_hwdep_dsp_image_set_image(
5098 obj: *mut snd_hwdep_dsp_image_t,
5099 buffer: *mut ::core::ffi::c_void,
5100 );
5101}
5102unsafe extern "C" {
5103 pub fn snd_hwdep_dsp_image_set_length(obj: *mut snd_hwdep_dsp_image_t, length: usize);
5104}
5105#[repr(C)]
5106#[derive(Debug, Copy, Clone)]
5107pub struct snd_aes_iec958 {
5108 pub status: [::core::ffi::c_uchar; 24usize],
5109 pub subcode: [::core::ffi::c_uchar; 147usize],
5110 pub pad: ::core::ffi::c_uchar,
5111 pub dig_subframe: [::core::ffi::c_uchar; 4usize],
5112}
5113pub type snd_aes_iec958_t = snd_aes_iec958;
5114#[repr(C)]
5115#[derive(Debug, Copy, Clone)]
5116pub struct _snd_ctl_card_info {
5117 _unused: [u8; 0],
5118}
5119pub type snd_ctl_card_info_t = _snd_ctl_card_info;
5120#[repr(C)]
5121#[derive(Debug, Copy, Clone)]
5122pub struct _snd_ctl_elem_id {
5123 _unused: [u8; 0],
5124}
5125pub type snd_ctl_elem_id_t = _snd_ctl_elem_id;
5126#[repr(C)]
5127#[derive(Debug, Copy, Clone)]
5128pub struct _snd_ctl_elem_list {
5129 _unused: [u8; 0],
5130}
5131pub type snd_ctl_elem_list_t = _snd_ctl_elem_list;
5132#[repr(C)]
5133#[derive(Debug, Copy, Clone)]
5134pub struct _snd_ctl_elem_info {
5135 _unused: [u8; 0],
5136}
5137pub type snd_ctl_elem_info_t = _snd_ctl_elem_info;
5138#[repr(C)]
5139#[derive(Debug, Copy, Clone)]
5140pub struct _snd_ctl_elem_value {
5141 _unused: [u8; 0],
5142}
5143pub type snd_ctl_elem_value_t = _snd_ctl_elem_value;
5144#[repr(C)]
5145#[derive(Debug, Copy, Clone)]
5146pub struct _snd_ctl_event {
5147 _unused: [u8; 0],
5148}
5149pub type snd_ctl_event_t = _snd_ctl_event;
5150pub const SND_CTL_ELEM_TYPE_NONE: _snd_ctl_elem_type = 0;
5151pub const SND_CTL_ELEM_TYPE_BOOLEAN: _snd_ctl_elem_type = 1;
5152pub const SND_CTL_ELEM_TYPE_INTEGER: _snd_ctl_elem_type = 2;
5153pub const SND_CTL_ELEM_TYPE_ENUMERATED: _snd_ctl_elem_type = 3;
5154pub const SND_CTL_ELEM_TYPE_BYTES: _snd_ctl_elem_type = 4;
5155pub const SND_CTL_ELEM_TYPE_IEC958: _snd_ctl_elem_type = 5;
5156pub const SND_CTL_ELEM_TYPE_INTEGER64: _snd_ctl_elem_type = 6;
5157pub const SND_CTL_ELEM_TYPE_LAST: _snd_ctl_elem_type = 6;
5158pub type _snd_ctl_elem_type = ::core::ffi::c_uint;
5159pub use self::_snd_ctl_elem_type as snd_ctl_elem_type_t;
5160pub const SND_CTL_ELEM_IFACE_CARD: _snd_ctl_elem_iface = 0;
5161pub const SND_CTL_ELEM_IFACE_HWDEP: _snd_ctl_elem_iface = 1;
5162pub const SND_CTL_ELEM_IFACE_MIXER: _snd_ctl_elem_iface = 2;
5163pub const SND_CTL_ELEM_IFACE_PCM: _snd_ctl_elem_iface = 3;
5164pub const SND_CTL_ELEM_IFACE_RAWMIDI: _snd_ctl_elem_iface = 4;
5165pub const SND_CTL_ELEM_IFACE_TIMER: _snd_ctl_elem_iface = 5;
5166pub const SND_CTL_ELEM_IFACE_SEQUENCER: _snd_ctl_elem_iface = 6;
5167pub const SND_CTL_ELEM_IFACE_LAST: _snd_ctl_elem_iface = 6;
5168pub type _snd_ctl_elem_iface = ::core::ffi::c_uint;
5169pub use self::_snd_ctl_elem_iface as snd_ctl_elem_iface_t;
5170pub const SND_CTL_EVENT_ELEM: _snd_ctl_event_type = 0;
5171pub const SND_CTL_EVENT_LAST: _snd_ctl_event_type = 0;
5172pub type _snd_ctl_event_type = ::core::ffi::c_uint;
5173pub use self::_snd_ctl_event_type as snd_ctl_event_type_t;
5174pub const SND_CTL_TYPE_HW: _snd_ctl_type = 0;
5175pub const SND_CTL_TYPE_SHM: _snd_ctl_type = 1;
5176pub const SND_CTL_TYPE_INET: _snd_ctl_type = 2;
5177pub const SND_CTL_TYPE_EXT: _snd_ctl_type = 3;
5178pub const SND_CTL_TYPE_REMAP: _snd_ctl_type = 4;
5179pub type _snd_ctl_type = ::core::ffi::c_uint;
5180pub use self::_snd_ctl_type as snd_ctl_type_t;
5181#[repr(C)]
5182#[derive(Debug, Copy, Clone)]
5183pub struct _snd_ctl {
5184 _unused: [u8; 0],
5185}
5186pub type snd_ctl_t = _snd_ctl;
5187#[repr(C)]
5188#[derive(Debug, Copy, Clone)]
5189pub struct _snd_sctl {
5190 _unused: [u8; 0],
5191}
5192pub type snd_sctl_t = _snd_sctl;
5193unsafe extern "C" {
5194 pub fn snd_card_load(card: ::core::ffi::c_int) -> ::core::ffi::c_int;
5195}
5196unsafe extern "C" {
5197 pub fn snd_card_next(card: *mut ::core::ffi::c_int) -> ::core::ffi::c_int;
5198}
5199unsafe extern "C" {
5200 pub fn snd_card_get_index(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
5201}
5202unsafe extern "C" {
5203 pub fn snd_card_get_name(
5204 card: ::core::ffi::c_int,
5205 name: *mut *mut ::core::ffi::c_char,
5206 ) -> ::core::ffi::c_int;
5207}
5208unsafe extern "C" {
5209 pub fn snd_card_get_longname(
5210 card: ::core::ffi::c_int,
5211 name: *mut *mut ::core::ffi::c_char,
5212 ) -> ::core::ffi::c_int;
5213}
5214unsafe extern "C" {
5215 pub fn snd_ctl_open(
5216 ctl: *mut *mut snd_ctl_t,
5217 name: *const ::core::ffi::c_char,
5218 mode: ::core::ffi::c_int,
5219 ) -> ::core::ffi::c_int;
5220}
5221unsafe extern "C" {
5222 pub fn snd_ctl_open_lconf(
5223 ctl: *mut *mut snd_ctl_t,
5224 name: *const ::core::ffi::c_char,
5225 mode: ::core::ffi::c_int,
5226 lconf: *mut snd_config_t,
5227 ) -> ::core::ffi::c_int;
5228}
5229unsafe extern "C" {
5230 pub fn snd_ctl_open_fallback(
5231 ctl: *mut *mut snd_ctl_t,
5232 root: *mut snd_config_t,
5233 name: *const ::core::ffi::c_char,
5234 orig_name: *const ::core::ffi::c_char,
5235 mode: ::core::ffi::c_int,
5236 ) -> ::core::ffi::c_int;
5237}
5238unsafe extern "C" {
5239 pub fn snd_ctl_close(ctl: *mut snd_ctl_t) -> ::core::ffi::c_int;
5240}
5241unsafe extern "C" {
5242 pub fn snd_ctl_nonblock(
5243 ctl: *mut snd_ctl_t,
5244 nonblock: ::core::ffi::c_int,
5245 ) -> ::core::ffi::c_int;
5246}
5247unsafe extern "C" {
5248 pub fn snd_async_add_ctl_handler(
5249 handler: *mut *mut snd_async_handler_t,
5250 ctl: *mut snd_ctl_t,
5251 callback: snd_async_callback_t,
5252 private_data: *mut ::core::ffi::c_void,
5253 ) -> ::core::ffi::c_int;
5254}
5255unsafe extern "C" {
5256 pub fn snd_async_handler_get_ctl(handler: *mut snd_async_handler_t) -> *mut snd_ctl_t;
5257}
5258unsafe extern "C" {
5259 pub fn snd_ctl_poll_descriptors_count(ctl: *mut snd_ctl_t) -> ::core::ffi::c_int;
5260}
5261unsafe extern "C" {
5262 pub fn snd_ctl_poll_descriptors(
5263 ctl: *mut snd_ctl_t,
5264 pfds: *mut pollfd,
5265 space: ::core::ffi::c_uint,
5266 ) -> ::core::ffi::c_int;
5267}
5268unsafe extern "C" {
5269 pub fn snd_ctl_poll_descriptors_revents(
5270 ctl: *mut snd_ctl_t,
5271 pfds: *mut pollfd,
5272 nfds: ::core::ffi::c_uint,
5273 revents: *mut ::core::ffi::c_ushort,
5274 ) -> ::core::ffi::c_int;
5275}
5276unsafe extern "C" {
5277 pub fn snd_ctl_subscribe_events(
5278 ctl: *mut snd_ctl_t,
5279 subscribe: ::core::ffi::c_int,
5280 ) -> ::core::ffi::c_int;
5281}
5282unsafe extern "C" {
5283 pub fn snd_ctl_card_info(
5284 ctl: *mut snd_ctl_t,
5285 info: *mut snd_ctl_card_info_t,
5286 ) -> ::core::ffi::c_int;
5287}
5288unsafe extern "C" {
5289 pub fn snd_ctl_elem_list(
5290 ctl: *mut snd_ctl_t,
5291 list: *mut snd_ctl_elem_list_t,
5292 ) -> ::core::ffi::c_int;
5293}
5294unsafe extern "C" {
5295 pub fn snd_ctl_elem_info(
5296 ctl: *mut snd_ctl_t,
5297 info: *mut snd_ctl_elem_info_t,
5298 ) -> ::core::ffi::c_int;
5299}
5300unsafe extern "C" {
5301 pub fn snd_ctl_elem_read(
5302 ctl: *mut snd_ctl_t,
5303 data: *mut snd_ctl_elem_value_t,
5304 ) -> ::core::ffi::c_int;
5305}
5306unsafe extern "C" {
5307 pub fn snd_ctl_elem_write(
5308 ctl: *mut snd_ctl_t,
5309 data: *mut snd_ctl_elem_value_t,
5310 ) -> ::core::ffi::c_int;
5311}
5312unsafe extern "C" {
5313 pub fn snd_ctl_elem_lock(ctl: *mut snd_ctl_t, id: *mut snd_ctl_elem_id_t)
5314 -> ::core::ffi::c_int;
5315}
5316unsafe extern "C" {
5317 pub fn snd_ctl_elem_unlock(
5318 ctl: *mut snd_ctl_t,
5319 id: *mut snd_ctl_elem_id_t,
5320 ) -> ::core::ffi::c_int;
5321}
5322unsafe extern "C" {
5323 pub fn snd_ctl_elem_tlv_read(
5324 ctl: *mut snd_ctl_t,
5325 id: *const snd_ctl_elem_id_t,
5326 tlv: *mut ::core::ffi::c_uint,
5327 tlv_size: ::core::ffi::c_uint,
5328 ) -> ::core::ffi::c_int;
5329}
5330unsafe extern "C" {
5331 pub fn snd_ctl_elem_tlv_write(
5332 ctl: *mut snd_ctl_t,
5333 id: *const snd_ctl_elem_id_t,
5334 tlv: *const ::core::ffi::c_uint,
5335 ) -> ::core::ffi::c_int;
5336}
5337unsafe extern "C" {
5338 pub fn snd_ctl_elem_tlv_command(
5339 ctl: *mut snd_ctl_t,
5340 id: *const snd_ctl_elem_id_t,
5341 tlv: *const ::core::ffi::c_uint,
5342 ) -> ::core::ffi::c_int;
5343}
5344unsafe extern "C" {
5345 pub fn snd_ctl_hwdep_next_device(
5346 ctl: *mut snd_ctl_t,
5347 device: *mut ::core::ffi::c_int,
5348 ) -> ::core::ffi::c_int;
5349}
5350unsafe extern "C" {
5351 pub fn snd_ctl_hwdep_info(
5352 ctl: *mut snd_ctl_t,
5353 info: *mut snd_hwdep_info_t,
5354 ) -> ::core::ffi::c_int;
5355}
5356unsafe extern "C" {
5357 pub fn snd_ctl_pcm_next_device(
5358 ctl: *mut snd_ctl_t,
5359 device: *mut ::core::ffi::c_int,
5360 ) -> ::core::ffi::c_int;
5361}
5362unsafe extern "C" {
5363 pub fn snd_ctl_pcm_info(ctl: *mut snd_ctl_t, info: *mut snd_pcm_info_t) -> ::core::ffi::c_int;
5364}
5365unsafe extern "C" {
5366 pub fn snd_ctl_pcm_prefer_subdevice(
5367 ctl: *mut snd_ctl_t,
5368 subdev: ::core::ffi::c_int,
5369 ) -> ::core::ffi::c_int;
5370}
5371unsafe extern "C" {
5372 pub fn snd_ctl_rawmidi_next_device(
5373 ctl: *mut snd_ctl_t,
5374 device: *mut ::core::ffi::c_int,
5375 ) -> ::core::ffi::c_int;
5376}
5377unsafe extern "C" {
5378 pub fn snd_ctl_rawmidi_info(
5379 ctl: *mut snd_ctl_t,
5380 info: *mut snd_rawmidi_info_t,
5381 ) -> ::core::ffi::c_int;
5382}
5383unsafe extern "C" {
5384 pub fn snd_ctl_rawmidi_prefer_subdevice(
5385 ctl: *mut snd_ctl_t,
5386 subdev: ::core::ffi::c_int,
5387 ) -> ::core::ffi::c_int;
5388}
5389unsafe extern "C" {
5390 pub fn snd_ctl_ump_next_device(
5391 ctl: *mut snd_ctl_t,
5392 device: *mut ::core::ffi::c_int,
5393 ) -> ::core::ffi::c_int;
5394}
5395unsafe extern "C" {
5396 pub fn snd_ctl_ump_endpoint_info(
5397 ctl: *mut snd_ctl_t,
5398 info: *mut snd_ump_endpoint_info_t,
5399 ) -> ::core::ffi::c_int;
5400}
5401unsafe extern "C" {
5402 pub fn snd_ctl_ump_block_info(
5403 ctl: *mut snd_ctl_t,
5404 info: *mut snd_ump_block_info_t,
5405 ) -> ::core::ffi::c_int;
5406}
5407unsafe extern "C" {
5408 pub fn snd_ctl_set_power_state(
5409 ctl: *mut snd_ctl_t,
5410 state: ::core::ffi::c_uint,
5411 ) -> ::core::ffi::c_int;
5412}
5413unsafe extern "C" {
5414 pub fn snd_ctl_get_power_state(
5415 ctl: *mut snd_ctl_t,
5416 state: *mut ::core::ffi::c_uint,
5417 ) -> ::core::ffi::c_int;
5418}
5419unsafe extern "C" {
5420 pub fn snd_ctl_read(ctl: *mut snd_ctl_t, event: *mut snd_ctl_event_t) -> ::core::ffi::c_int;
5421}
5422unsafe extern "C" {
5423 pub fn snd_ctl_wait(ctl: *mut snd_ctl_t, timeout: ::core::ffi::c_int) -> ::core::ffi::c_int;
5424}
5425unsafe extern "C" {
5426 pub fn snd_ctl_name(ctl: *mut snd_ctl_t) -> *const ::core::ffi::c_char;
5427}
5428unsafe extern "C" {
5429 pub fn snd_ctl_type(ctl: *mut snd_ctl_t) -> snd_ctl_type_t;
5430}
5431unsafe extern "C" {
5432 pub fn snd_ctl_elem_type_name(type_: snd_ctl_elem_type_t) -> *const ::core::ffi::c_char;
5433}
5434unsafe extern "C" {
5435 pub fn snd_ctl_elem_iface_name(iface: snd_ctl_elem_iface_t) -> *const ::core::ffi::c_char;
5436}
5437unsafe extern "C" {
5438 pub fn snd_ctl_event_type_name(type_: snd_ctl_event_type_t) -> *const ::core::ffi::c_char;
5439}
5440unsafe extern "C" {
5441 pub fn snd_ctl_event_elem_get_mask(obj: *const snd_ctl_event_t) -> ::core::ffi::c_uint;
5442}
5443unsafe extern "C" {
5444 pub fn snd_ctl_event_elem_get_numid(obj: *const snd_ctl_event_t) -> ::core::ffi::c_uint;
5445}
5446unsafe extern "C" {
5447 pub fn snd_ctl_event_elem_get_id(obj: *const snd_ctl_event_t, ptr: *mut snd_ctl_elem_id_t);
5448}
5449unsafe extern "C" {
5450 pub fn snd_ctl_event_elem_get_interface(obj: *const snd_ctl_event_t) -> snd_ctl_elem_iface_t;
5451}
5452unsafe extern "C" {
5453 pub fn snd_ctl_event_elem_get_device(obj: *const snd_ctl_event_t) -> ::core::ffi::c_uint;
5454}
5455unsafe extern "C" {
5456 pub fn snd_ctl_event_elem_get_subdevice(obj: *const snd_ctl_event_t) -> ::core::ffi::c_uint;
5457}
5458unsafe extern "C" {
5459 pub fn snd_ctl_event_elem_get_name(obj: *const snd_ctl_event_t) -> *const ::core::ffi::c_char;
5460}
5461unsafe extern "C" {
5462 pub fn snd_ctl_event_elem_get_index(obj: *const snd_ctl_event_t) -> ::core::ffi::c_uint;
5463}
5464unsafe extern "C" {
5465 pub fn snd_ctl_elem_list_alloc_space(
5466 obj: *mut snd_ctl_elem_list_t,
5467 entries: ::core::ffi::c_uint,
5468 ) -> ::core::ffi::c_int;
5469}
5470unsafe extern "C" {
5471 pub fn snd_ctl_elem_list_free_space(obj: *mut snd_ctl_elem_list_t);
5472}
5473unsafe extern "C" {
5474 pub fn snd_ctl_ascii_elem_id_get(id: *mut snd_ctl_elem_id_t) -> *mut ::core::ffi::c_char;
5475}
5476unsafe extern "C" {
5477 pub fn snd_ctl_ascii_elem_id_parse(
5478 dst: *mut snd_ctl_elem_id_t,
5479 str_: *const ::core::ffi::c_char,
5480 ) -> ::core::ffi::c_int;
5481}
5482unsafe extern "C" {
5483 pub fn snd_ctl_ascii_value_parse(
5484 handle: *mut snd_ctl_t,
5485 dst: *mut snd_ctl_elem_value_t,
5486 info: *mut snd_ctl_elem_info_t,
5487 value: *const ::core::ffi::c_char,
5488 ) -> ::core::ffi::c_int;
5489}
5490unsafe extern "C" {
5491 pub fn snd_ctl_elem_id_sizeof() -> usize;
5492}
5493unsafe extern "C" {
5494 pub fn snd_ctl_elem_id_malloc(ptr: *mut *mut snd_ctl_elem_id_t) -> ::core::ffi::c_int;
5495}
5496unsafe extern "C" {
5497 pub fn snd_ctl_elem_id_free(obj: *mut snd_ctl_elem_id_t);
5498}
5499unsafe extern "C" {
5500 pub fn snd_ctl_elem_id_clear(obj: *mut snd_ctl_elem_id_t);
5501}
5502unsafe extern "C" {
5503 pub fn snd_ctl_elem_id_copy(dst: *mut snd_ctl_elem_id_t, src: *const snd_ctl_elem_id_t);
5504}
5505unsafe extern "C" {
5506 pub fn snd_ctl_elem_id_compare_numid(
5507 id1: *const snd_ctl_elem_id_t,
5508 id2: *const snd_ctl_elem_id_t,
5509 ) -> ::core::ffi::c_int;
5510}
5511unsafe extern "C" {
5512 pub fn snd_ctl_elem_id_compare_set(
5513 id1: *const snd_ctl_elem_id_t,
5514 id2: *const snd_ctl_elem_id_t,
5515 ) -> ::core::ffi::c_int;
5516}
5517unsafe extern "C" {
5518 pub fn snd_ctl_elem_id_get_numid(obj: *const snd_ctl_elem_id_t) -> ::core::ffi::c_uint;
5519}
5520unsafe extern "C" {
5521 pub fn snd_ctl_elem_id_get_interface(obj: *const snd_ctl_elem_id_t) -> snd_ctl_elem_iface_t;
5522}
5523unsafe extern "C" {
5524 pub fn snd_ctl_elem_id_get_device(obj: *const snd_ctl_elem_id_t) -> ::core::ffi::c_uint;
5525}
5526unsafe extern "C" {
5527 pub fn snd_ctl_elem_id_get_subdevice(obj: *const snd_ctl_elem_id_t) -> ::core::ffi::c_uint;
5528}
5529unsafe extern "C" {
5530 pub fn snd_ctl_elem_id_get_name(obj: *const snd_ctl_elem_id_t) -> *const ::core::ffi::c_char;
5531}
5532unsafe extern "C" {
5533 pub fn snd_ctl_elem_id_get_index(obj: *const snd_ctl_elem_id_t) -> ::core::ffi::c_uint;
5534}
5535unsafe extern "C" {
5536 pub fn snd_ctl_elem_id_set_numid(obj: *mut snd_ctl_elem_id_t, val: ::core::ffi::c_uint);
5537}
5538unsafe extern "C" {
5539 pub fn snd_ctl_elem_id_set_interface(obj: *mut snd_ctl_elem_id_t, val: snd_ctl_elem_iface_t);
5540}
5541unsafe extern "C" {
5542 pub fn snd_ctl_elem_id_set_device(obj: *mut snd_ctl_elem_id_t, val: ::core::ffi::c_uint);
5543}
5544unsafe extern "C" {
5545 pub fn snd_ctl_elem_id_set_subdevice(obj: *mut snd_ctl_elem_id_t, val: ::core::ffi::c_uint);
5546}
5547unsafe extern "C" {
5548 pub fn snd_ctl_elem_id_set_name(obj: *mut snd_ctl_elem_id_t, val: *const ::core::ffi::c_char);
5549}
5550unsafe extern "C" {
5551 pub fn snd_ctl_elem_id_set_index(obj: *mut snd_ctl_elem_id_t, val: ::core::ffi::c_uint);
5552}
5553unsafe extern "C" {
5554 pub fn snd_ctl_card_info_sizeof() -> usize;
5555}
5556unsafe extern "C" {
5557 pub fn snd_ctl_card_info_malloc(ptr: *mut *mut snd_ctl_card_info_t) -> ::core::ffi::c_int;
5558}
5559unsafe extern "C" {
5560 pub fn snd_ctl_card_info_free(obj: *mut snd_ctl_card_info_t);
5561}
5562unsafe extern "C" {
5563 pub fn snd_ctl_card_info_clear(obj: *mut snd_ctl_card_info_t);
5564}
5565unsafe extern "C" {
5566 pub fn snd_ctl_card_info_copy(dst: *mut snd_ctl_card_info_t, src: *const snd_ctl_card_info_t);
5567}
5568unsafe extern "C" {
5569 pub fn snd_ctl_card_info_get_card(obj: *const snd_ctl_card_info_t) -> ::core::ffi::c_int;
5570}
5571unsafe extern "C" {
5572 pub fn snd_ctl_card_info_get_id(obj: *const snd_ctl_card_info_t) -> *const ::core::ffi::c_char;
5573}
5574unsafe extern "C" {
5575 pub fn snd_ctl_card_info_get_driver(
5576 obj: *const snd_ctl_card_info_t,
5577 ) -> *const ::core::ffi::c_char;
5578}
5579unsafe extern "C" {
5580 pub fn snd_ctl_card_info_get_name(
5581 obj: *const snd_ctl_card_info_t,
5582 ) -> *const ::core::ffi::c_char;
5583}
5584unsafe extern "C" {
5585 pub fn snd_ctl_card_info_get_longname(
5586 obj: *const snd_ctl_card_info_t,
5587 ) -> *const ::core::ffi::c_char;
5588}
5589unsafe extern "C" {
5590 pub fn snd_ctl_card_info_get_mixername(
5591 obj: *const snd_ctl_card_info_t,
5592 ) -> *const ::core::ffi::c_char;
5593}
5594unsafe extern "C" {
5595 pub fn snd_ctl_card_info_get_components(
5596 obj: *const snd_ctl_card_info_t,
5597 ) -> *const ::core::ffi::c_char;
5598}
5599unsafe extern "C" {
5600 pub fn snd_ctl_event_sizeof() -> usize;
5601}
5602unsafe extern "C" {
5603 pub fn snd_ctl_event_malloc(ptr: *mut *mut snd_ctl_event_t) -> ::core::ffi::c_int;
5604}
5605unsafe extern "C" {
5606 pub fn snd_ctl_event_free(obj: *mut snd_ctl_event_t);
5607}
5608unsafe extern "C" {
5609 pub fn snd_ctl_event_clear(obj: *mut snd_ctl_event_t);
5610}
5611unsafe extern "C" {
5612 pub fn snd_ctl_event_copy(dst: *mut snd_ctl_event_t, src: *const snd_ctl_event_t);
5613}
5614unsafe extern "C" {
5615 pub fn snd_ctl_event_get_type(obj: *const snd_ctl_event_t) -> snd_ctl_event_type_t;
5616}
5617unsafe extern "C" {
5618 pub fn snd_ctl_elem_list_sizeof() -> usize;
5619}
5620unsafe extern "C" {
5621 pub fn snd_ctl_elem_list_malloc(ptr: *mut *mut snd_ctl_elem_list_t) -> ::core::ffi::c_int;
5622}
5623unsafe extern "C" {
5624 pub fn snd_ctl_elem_list_free(obj: *mut snd_ctl_elem_list_t);
5625}
5626unsafe extern "C" {
5627 pub fn snd_ctl_elem_list_clear(obj: *mut snd_ctl_elem_list_t);
5628}
5629unsafe extern "C" {
5630 pub fn snd_ctl_elem_list_copy(dst: *mut snd_ctl_elem_list_t, src: *const snd_ctl_elem_list_t);
5631}
5632unsafe extern "C" {
5633 pub fn snd_ctl_elem_list_set_offset(obj: *mut snd_ctl_elem_list_t, val: ::core::ffi::c_uint);
5634}
5635unsafe extern "C" {
5636 pub fn snd_ctl_elem_list_get_used(obj: *const snd_ctl_elem_list_t) -> ::core::ffi::c_uint;
5637}
5638unsafe extern "C" {
5639 pub fn snd_ctl_elem_list_get_count(obj: *const snd_ctl_elem_list_t) -> ::core::ffi::c_uint;
5640}
5641unsafe extern "C" {
5642 pub fn snd_ctl_elem_list_get_id(
5643 obj: *const snd_ctl_elem_list_t,
5644 idx: ::core::ffi::c_uint,
5645 ptr: *mut snd_ctl_elem_id_t,
5646 );
5647}
5648unsafe extern "C" {
5649 pub fn snd_ctl_elem_list_get_numid(
5650 obj: *const snd_ctl_elem_list_t,
5651 idx: ::core::ffi::c_uint,
5652 ) -> ::core::ffi::c_uint;
5653}
5654unsafe extern "C" {
5655 pub fn snd_ctl_elem_list_get_interface(
5656 obj: *const snd_ctl_elem_list_t,
5657 idx: ::core::ffi::c_uint,
5658 ) -> snd_ctl_elem_iface_t;
5659}
5660unsafe extern "C" {
5661 pub fn snd_ctl_elem_list_get_device(
5662 obj: *const snd_ctl_elem_list_t,
5663 idx: ::core::ffi::c_uint,
5664 ) -> ::core::ffi::c_uint;
5665}
5666unsafe extern "C" {
5667 pub fn snd_ctl_elem_list_get_subdevice(
5668 obj: *const snd_ctl_elem_list_t,
5669 idx: ::core::ffi::c_uint,
5670 ) -> ::core::ffi::c_uint;
5671}
5672unsafe extern "C" {
5673 pub fn snd_ctl_elem_list_get_name(
5674 obj: *const snd_ctl_elem_list_t,
5675 idx: ::core::ffi::c_uint,
5676 ) -> *const ::core::ffi::c_char;
5677}
5678unsafe extern "C" {
5679 pub fn snd_ctl_elem_list_get_index(
5680 obj: *const snd_ctl_elem_list_t,
5681 idx: ::core::ffi::c_uint,
5682 ) -> ::core::ffi::c_uint;
5683}
5684unsafe extern "C" {
5685 pub fn snd_ctl_elem_info_sizeof() -> usize;
5686}
5687unsafe extern "C" {
5688 pub fn snd_ctl_elem_info_malloc(ptr: *mut *mut snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5689}
5690unsafe extern "C" {
5691 pub fn snd_ctl_elem_info_free(obj: *mut snd_ctl_elem_info_t);
5692}
5693unsafe extern "C" {
5694 pub fn snd_ctl_elem_info_clear(obj: *mut snd_ctl_elem_info_t);
5695}
5696unsafe extern "C" {
5697 pub fn snd_ctl_elem_info_copy(dst: *mut snd_ctl_elem_info_t, src: *const snd_ctl_elem_info_t);
5698}
5699unsafe extern "C" {
5700 pub fn snd_ctl_elem_info_get_type(obj: *const snd_ctl_elem_info_t) -> snd_ctl_elem_type_t;
5701}
5702unsafe extern "C" {
5703 pub fn snd_ctl_elem_info_is_readable(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5704}
5705unsafe extern "C" {
5706 pub fn snd_ctl_elem_info_is_writable(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5707}
5708unsafe extern "C" {
5709 pub fn snd_ctl_elem_info_is_volatile(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5710}
5711unsafe extern "C" {
5712 pub fn snd_ctl_elem_info_is_inactive(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5713}
5714unsafe extern "C" {
5715 pub fn snd_ctl_elem_info_is_locked(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5716}
5717unsafe extern "C" {
5718 pub fn snd_ctl_elem_info_is_tlv_readable(obj: *const snd_ctl_elem_info_t)
5719 -> ::core::ffi::c_int;
5720}
5721unsafe extern "C" {
5722 pub fn snd_ctl_elem_info_is_tlv_writable(obj: *const snd_ctl_elem_info_t)
5723 -> ::core::ffi::c_int;
5724}
5725unsafe extern "C" {
5726 pub fn snd_ctl_elem_info_is_tlv_commandable(
5727 obj: *const snd_ctl_elem_info_t,
5728 ) -> ::core::ffi::c_int;
5729}
5730unsafe extern "C" {
5731 pub fn snd_ctl_elem_info_is_owner(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5732}
5733unsafe extern "C" {
5734 pub fn snd_ctl_elem_info_is_user(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5735}
5736unsafe extern "C" {
5737 pub fn snd_ctl_elem_info_get_owner(obj: *const snd_ctl_elem_info_t) -> pid_t;
5738}
5739unsafe extern "C" {
5740 pub fn snd_ctl_elem_info_get_count(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_uint;
5741}
5742unsafe extern "C" {
5743 pub fn snd_ctl_elem_info_get_min(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_long;
5744}
5745unsafe extern "C" {
5746 pub fn snd_ctl_elem_info_get_max(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_long;
5747}
5748unsafe extern "C" {
5749 pub fn snd_ctl_elem_info_get_step(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_long;
5750}
5751unsafe extern "C" {
5752 pub fn snd_ctl_elem_info_get_min64(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_longlong;
5753}
5754unsafe extern "C" {
5755 pub fn snd_ctl_elem_info_get_max64(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_longlong;
5756}
5757unsafe extern "C" {
5758 pub fn snd_ctl_elem_info_get_step64(obj: *const snd_ctl_elem_info_t)
5759 -> ::core::ffi::c_longlong;
5760}
5761unsafe extern "C" {
5762 pub fn snd_ctl_elem_info_get_items(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_uint;
5763}
5764unsafe extern "C" {
5765 pub fn snd_ctl_elem_info_set_item(obj: *mut snd_ctl_elem_info_t, val: ::core::ffi::c_uint);
5766}
5767unsafe extern "C" {
5768 pub fn snd_ctl_elem_info_get_item_name(
5769 obj: *const snd_ctl_elem_info_t,
5770 ) -> *const ::core::ffi::c_char;
5771}
5772unsafe extern "C" {
5773 pub fn snd_ctl_elem_info_get_dimensions(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_int;
5774}
5775unsafe extern "C" {
5776 pub fn snd_ctl_elem_info_get_dimension(
5777 obj: *const snd_ctl_elem_info_t,
5778 idx: ::core::ffi::c_uint,
5779 ) -> ::core::ffi::c_int;
5780}
5781unsafe extern "C" {
5782 pub fn snd_ctl_elem_info_set_dimension(
5783 info: *mut snd_ctl_elem_info_t,
5784 dimension: *const ::core::ffi::c_int,
5785 ) -> ::core::ffi::c_int;
5786}
5787unsafe extern "C" {
5788 pub fn snd_ctl_elem_info_get_id(obj: *const snd_ctl_elem_info_t, ptr: *mut snd_ctl_elem_id_t);
5789}
5790unsafe extern "C" {
5791 pub fn snd_ctl_elem_info_get_numid(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_uint;
5792}
5793unsafe extern "C" {
5794 pub fn snd_ctl_elem_info_get_interface(obj: *const snd_ctl_elem_info_t)
5795 -> snd_ctl_elem_iface_t;
5796}
5797unsafe extern "C" {
5798 pub fn snd_ctl_elem_info_get_device(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_uint;
5799}
5800unsafe extern "C" {
5801 pub fn snd_ctl_elem_info_get_subdevice(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_uint;
5802}
5803unsafe extern "C" {
5804 pub fn snd_ctl_elem_info_get_name(
5805 obj: *const snd_ctl_elem_info_t,
5806 ) -> *const ::core::ffi::c_char;
5807}
5808unsafe extern "C" {
5809 pub fn snd_ctl_elem_info_get_index(obj: *const snd_ctl_elem_info_t) -> ::core::ffi::c_uint;
5810}
5811unsafe extern "C" {
5812 pub fn snd_ctl_elem_info_set_id(obj: *mut snd_ctl_elem_info_t, ptr: *const snd_ctl_elem_id_t);
5813}
5814unsafe extern "C" {
5815 pub fn snd_ctl_elem_info_set_numid(obj: *mut snd_ctl_elem_info_t, val: ::core::ffi::c_uint);
5816}
5817unsafe extern "C" {
5818 pub fn snd_ctl_elem_info_set_interface(
5819 obj: *mut snd_ctl_elem_info_t,
5820 val: snd_ctl_elem_iface_t,
5821 );
5822}
5823unsafe extern "C" {
5824 pub fn snd_ctl_elem_info_set_device(obj: *mut snd_ctl_elem_info_t, val: ::core::ffi::c_uint);
5825}
5826unsafe extern "C" {
5827 pub fn snd_ctl_elem_info_set_subdevice(obj: *mut snd_ctl_elem_info_t, val: ::core::ffi::c_uint);
5828}
5829unsafe extern "C" {
5830 pub fn snd_ctl_elem_info_set_name(
5831 obj: *mut snd_ctl_elem_info_t,
5832 val: *const ::core::ffi::c_char,
5833 );
5834}
5835unsafe extern "C" {
5836 pub fn snd_ctl_elem_info_set_index(obj: *mut snd_ctl_elem_info_t, val: ::core::ffi::c_uint);
5837}
5838unsafe extern "C" {
5839 pub fn snd_ctl_elem_info_set_read_write(
5840 obj: *mut snd_ctl_elem_info_t,
5841 rval: ::core::ffi::c_int,
5842 wval: ::core::ffi::c_int,
5843 );
5844}
5845unsafe extern "C" {
5846 pub fn snd_ctl_elem_info_set_tlv_read_write(
5847 obj: *mut snd_ctl_elem_info_t,
5848 rval: ::core::ffi::c_int,
5849 wval: ::core::ffi::c_int,
5850 );
5851}
5852unsafe extern "C" {
5853 pub fn snd_ctl_elem_info_set_inactive(obj: *mut snd_ctl_elem_info_t, val: ::core::ffi::c_int);
5854}
5855unsafe extern "C" {
5856 pub fn snd_ctl_add_integer_elem_set(
5857 ctl: *mut snd_ctl_t,
5858 info: *mut snd_ctl_elem_info_t,
5859 element_count: ::core::ffi::c_uint,
5860 member_count: ::core::ffi::c_uint,
5861 min: ::core::ffi::c_long,
5862 max: ::core::ffi::c_long,
5863 step: ::core::ffi::c_long,
5864 ) -> ::core::ffi::c_int;
5865}
5866unsafe extern "C" {
5867 pub fn snd_ctl_add_integer64_elem_set(
5868 ctl: *mut snd_ctl_t,
5869 info: *mut snd_ctl_elem_info_t,
5870 element_count: ::core::ffi::c_uint,
5871 member_count: ::core::ffi::c_uint,
5872 min: ::core::ffi::c_longlong,
5873 max: ::core::ffi::c_longlong,
5874 step: ::core::ffi::c_longlong,
5875 ) -> ::core::ffi::c_int;
5876}
5877unsafe extern "C" {
5878 pub fn snd_ctl_add_boolean_elem_set(
5879 ctl: *mut snd_ctl_t,
5880 info: *mut snd_ctl_elem_info_t,
5881 element_count: ::core::ffi::c_uint,
5882 member_count: ::core::ffi::c_uint,
5883 ) -> ::core::ffi::c_int;
5884}
5885unsafe extern "C" {
5886 pub fn snd_ctl_add_enumerated_elem_set(
5887 ctl: *mut snd_ctl_t,
5888 info: *mut snd_ctl_elem_info_t,
5889 element_count: ::core::ffi::c_uint,
5890 member_count: ::core::ffi::c_uint,
5891 items: ::core::ffi::c_uint,
5892 labels: *const *const ::core::ffi::c_char,
5893 ) -> ::core::ffi::c_int;
5894}
5895unsafe extern "C" {
5896 pub fn snd_ctl_add_bytes_elem_set(
5897 ctl: *mut snd_ctl_t,
5898 info: *mut snd_ctl_elem_info_t,
5899 element_count: ::core::ffi::c_uint,
5900 member_count: ::core::ffi::c_uint,
5901 ) -> ::core::ffi::c_int;
5902}
5903unsafe extern "C" {
5904 pub fn snd_ctl_elem_add_integer(
5905 ctl: *mut snd_ctl_t,
5906 id: *const snd_ctl_elem_id_t,
5907 count: ::core::ffi::c_uint,
5908 imin: ::core::ffi::c_long,
5909 imax: ::core::ffi::c_long,
5910 istep: ::core::ffi::c_long,
5911 ) -> ::core::ffi::c_int;
5912}
5913unsafe extern "C" {
5914 pub fn snd_ctl_elem_add_integer64(
5915 ctl: *mut snd_ctl_t,
5916 id: *const snd_ctl_elem_id_t,
5917 count: ::core::ffi::c_uint,
5918 imin: ::core::ffi::c_longlong,
5919 imax: ::core::ffi::c_longlong,
5920 istep: ::core::ffi::c_longlong,
5921 ) -> ::core::ffi::c_int;
5922}
5923unsafe extern "C" {
5924 pub fn snd_ctl_elem_add_boolean(
5925 ctl: *mut snd_ctl_t,
5926 id: *const snd_ctl_elem_id_t,
5927 count: ::core::ffi::c_uint,
5928 ) -> ::core::ffi::c_int;
5929}
5930unsafe extern "C" {
5931 pub fn snd_ctl_elem_add_enumerated(
5932 ctl: *mut snd_ctl_t,
5933 id: *const snd_ctl_elem_id_t,
5934 count: ::core::ffi::c_uint,
5935 items: ::core::ffi::c_uint,
5936 names: *const *const ::core::ffi::c_char,
5937 ) -> ::core::ffi::c_int;
5938}
5939unsafe extern "C" {
5940 pub fn snd_ctl_elem_add_iec958(
5941 ctl: *mut snd_ctl_t,
5942 id: *const snd_ctl_elem_id_t,
5943 ) -> ::core::ffi::c_int;
5944}
5945unsafe extern "C" {
5946 pub fn snd_ctl_elem_remove(
5947 ctl: *mut snd_ctl_t,
5948 id: *mut snd_ctl_elem_id_t,
5949 ) -> ::core::ffi::c_int;
5950}
5951unsafe extern "C" {
5952 pub fn snd_ctl_elem_value_sizeof() -> usize;
5953}
5954unsafe extern "C" {
5955 pub fn snd_ctl_elem_value_malloc(ptr: *mut *mut snd_ctl_elem_value_t) -> ::core::ffi::c_int;
5956}
5957unsafe extern "C" {
5958 pub fn snd_ctl_elem_value_free(obj: *mut snd_ctl_elem_value_t);
5959}
5960unsafe extern "C" {
5961 pub fn snd_ctl_elem_value_clear(obj: *mut snd_ctl_elem_value_t);
5962}
5963unsafe extern "C" {
5964 pub fn snd_ctl_elem_value_copy(
5965 dst: *mut snd_ctl_elem_value_t,
5966 src: *const snd_ctl_elem_value_t,
5967 );
5968}
5969unsafe extern "C" {
5970 pub fn snd_ctl_elem_value_compare(
5971 left: *mut snd_ctl_elem_value_t,
5972 right: *const snd_ctl_elem_value_t,
5973 ) -> ::core::ffi::c_int;
5974}
5975unsafe extern "C" {
5976 pub fn snd_ctl_elem_value_get_id(obj: *const snd_ctl_elem_value_t, ptr: *mut snd_ctl_elem_id_t);
5977}
5978unsafe extern "C" {
5979 pub fn snd_ctl_elem_value_get_numid(obj: *const snd_ctl_elem_value_t) -> ::core::ffi::c_uint;
5980}
5981unsafe extern "C" {
5982 pub fn snd_ctl_elem_value_get_interface(
5983 obj: *const snd_ctl_elem_value_t,
5984 ) -> snd_ctl_elem_iface_t;
5985}
5986unsafe extern "C" {
5987 pub fn snd_ctl_elem_value_get_device(obj: *const snd_ctl_elem_value_t) -> ::core::ffi::c_uint;
5988}
5989unsafe extern "C" {
5990 pub fn snd_ctl_elem_value_get_subdevice(
5991 obj: *const snd_ctl_elem_value_t,
5992 ) -> ::core::ffi::c_uint;
5993}
5994unsafe extern "C" {
5995 pub fn snd_ctl_elem_value_get_name(
5996 obj: *const snd_ctl_elem_value_t,
5997 ) -> *const ::core::ffi::c_char;
5998}
5999unsafe extern "C" {
6000 pub fn snd_ctl_elem_value_get_index(obj: *const snd_ctl_elem_value_t) -> ::core::ffi::c_uint;
6001}
6002unsafe extern "C" {
6003 pub fn snd_ctl_elem_value_set_id(obj: *mut snd_ctl_elem_value_t, ptr: *const snd_ctl_elem_id_t);
6004}
6005unsafe extern "C" {
6006 pub fn snd_ctl_elem_value_set_numid(obj: *mut snd_ctl_elem_value_t, val: ::core::ffi::c_uint);
6007}
6008unsafe extern "C" {
6009 pub fn snd_ctl_elem_value_set_interface(
6010 obj: *mut snd_ctl_elem_value_t,
6011 val: snd_ctl_elem_iface_t,
6012 );
6013}
6014unsafe extern "C" {
6015 pub fn snd_ctl_elem_value_set_device(obj: *mut snd_ctl_elem_value_t, val: ::core::ffi::c_uint);
6016}
6017unsafe extern "C" {
6018 pub fn snd_ctl_elem_value_set_subdevice(
6019 obj: *mut snd_ctl_elem_value_t,
6020 val: ::core::ffi::c_uint,
6021 );
6022}
6023unsafe extern "C" {
6024 pub fn snd_ctl_elem_value_set_name(
6025 obj: *mut snd_ctl_elem_value_t,
6026 val: *const ::core::ffi::c_char,
6027 );
6028}
6029unsafe extern "C" {
6030 pub fn snd_ctl_elem_value_set_index(obj: *mut snd_ctl_elem_value_t, val: ::core::ffi::c_uint);
6031}
6032unsafe extern "C" {
6033 pub fn snd_ctl_elem_value_get_boolean(
6034 obj: *const snd_ctl_elem_value_t,
6035 idx: ::core::ffi::c_uint,
6036 ) -> ::core::ffi::c_int;
6037}
6038unsafe extern "C" {
6039 pub fn snd_ctl_elem_value_get_integer(
6040 obj: *const snd_ctl_elem_value_t,
6041 idx: ::core::ffi::c_uint,
6042 ) -> ::core::ffi::c_long;
6043}
6044unsafe extern "C" {
6045 pub fn snd_ctl_elem_value_get_integer64(
6046 obj: *const snd_ctl_elem_value_t,
6047 idx: ::core::ffi::c_uint,
6048 ) -> ::core::ffi::c_longlong;
6049}
6050unsafe extern "C" {
6051 pub fn snd_ctl_elem_value_get_enumerated(
6052 obj: *const snd_ctl_elem_value_t,
6053 idx: ::core::ffi::c_uint,
6054 ) -> ::core::ffi::c_uint;
6055}
6056unsafe extern "C" {
6057 pub fn snd_ctl_elem_value_get_byte(
6058 obj: *const snd_ctl_elem_value_t,
6059 idx: ::core::ffi::c_uint,
6060 ) -> ::core::ffi::c_uchar;
6061}
6062unsafe extern "C" {
6063 pub fn snd_ctl_elem_value_set_boolean(
6064 obj: *mut snd_ctl_elem_value_t,
6065 idx: ::core::ffi::c_uint,
6066 val: ::core::ffi::c_long,
6067 );
6068}
6069unsafe extern "C" {
6070 pub fn snd_ctl_elem_value_set_integer(
6071 obj: *mut snd_ctl_elem_value_t,
6072 idx: ::core::ffi::c_uint,
6073 val: ::core::ffi::c_long,
6074 );
6075}
6076unsafe extern "C" {
6077 pub fn snd_ctl_elem_value_set_integer64(
6078 obj: *mut snd_ctl_elem_value_t,
6079 idx: ::core::ffi::c_uint,
6080 val: ::core::ffi::c_longlong,
6081 );
6082}
6083unsafe extern "C" {
6084 pub fn snd_ctl_elem_value_set_enumerated(
6085 obj: *mut snd_ctl_elem_value_t,
6086 idx: ::core::ffi::c_uint,
6087 val: ::core::ffi::c_uint,
6088 );
6089}
6090unsafe extern "C" {
6091 pub fn snd_ctl_elem_value_set_byte(
6092 obj: *mut snd_ctl_elem_value_t,
6093 idx: ::core::ffi::c_uint,
6094 val: ::core::ffi::c_uchar,
6095 );
6096}
6097unsafe extern "C" {
6098 pub fn snd_ctl_elem_set_bytes(
6099 obj: *mut snd_ctl_elem_value_t,
6100 data: *mut ::core::ffi::c_void,
6101 size: usize,
6102 );
6103}
6104unsafe extern "C" {
6105 pub fn snd_ctl_elem_value_get_bytes(
6106 obj: *const snd_ctl_elem_value_t,
6107 ) -> *const ::core::ffi::c_void;
6108}
6109unsafe extern "C" {
6110 pub fn snd_ctl_elem_value_get_iec958(
6111 obj: *const snd_ctl_elem_value_t,
6112 ptr: *mut snd_aes_iec958_t,
6113 );
6114}
6115unsafe extern "C" {
6116 pub fn snd_ctl_elem_value_set_iec958(
6117 obj: *mut snd_ctl_elem_value_t,
6118 ptr: *const snd_aes_iec958_t,
6119 );
6120}
6121unsafe extern "C" {
6122 pub fn snd_tlv_parse_dB_info(
6123 tlv: *mut ::core::ffi::c_uint,
6124 tlv_size: ::core::ffi::c_uint,
6125 db_tlvp: *mut *mut ::core::ffi::c_uint,
6126 ) -> ::core::ffi::c_int;
6127}
6128unsafe extern "C" {
6129 pub fn snd_tlv_get_dB_range(
6130 tlv: *mut ::core::ffi::c_uint,
6131 rangemin: ::core::ffi::c_long,
6132 rangemax: ::core::ffi::c_long,
6133 min: *mut ::core::ffi::c_long,
6134 max: *mut ::core::ffi::c_long,
6135 ) -> ::core::ffi::c_int;
6136}
6137unsafe extern "C" {
6138 pub fn snd_tlv_convert_to_dB(
6139 tlv: *mut ::core::ffi::c_uint,
6140 rangemin: ::core::ffi::c_long,
6141 rangemax: ::core::ffi::c_long,
6142 volume: ::core::ffi::c_long,
6143 db_gain: *mut ::core::ffi::c_long,
6144 ) -> ::core::ffi::c_int;
6145}
6146unsafe extern "C" {
6147 pub fn snd_tlv_convert_from_dB(
6148 tlv: *mut ::core::ffi::c_uint,
6149 rangemin: ::core::ffi::c_long,
6150 rangemax: ::core::ffi::c_long,
6151 db_gain: ::core::ffi::c_long,
6152 value: *mut ::core::ffi::c_long,
6153 xdir: ::core::ffi::c_int,
6154 ) -> ::core::ffi::c_int;
6155}
6156unsafe extern "C" {
6157 pub fn snd_ctl_get_dB_range(
6158 ctl: *mut snd_ctl_t,
6159 id: *const snd_ctl_elem_id_t,
6160 min: *mut ::core::ffi::c_long,
6161 max: *mut ::core::ffi::c_long,
6162 ) -> ::core::ffi::c_int;
6163}
6164unsafe extern "C" {
6165 pub fn snd_ctl_convert_to_dB(
6166 ctl: *mut snd_ctl_t,
6167 id: *const snd_ctl_elem_id_t,
6168 volume: ::core::ffi::c_long,
6169 db_gain: *mut ::core::ffi::c_long,
6170 ) -> ::core::ffi::c_int;
6171}
6172unsafe extern "C" {
6173 pub fn snd_ctl_convert_from_dB(
6174 ctl: *mut snd_ctl_t,
6175 id: *const snd_ctl_elem_id_t,
6176 db_gain: ::core::ffi::c_long,
6177 value: *mut ::core::ffi::c_long,
6178 xdir: ::core::ffi::c_int,
6179 ) -> ::core::ffi::c_int;
6180}
6181#[repr(C)]
6182#[derive(Debug, Copy, Clone)]
6183pub struct _snd_hctl_elem {
6184 _unused: [u8; 0],
6185}
6186pub type snd_hctl_elem_t = _snd_hctl_elem;
6187#[repr(C)]
6188#[derive(Debug, Copy, Clone)]
6189pub struct _snd_hctl {
6190 _unused: [u8; 0],
6191}
6192pub type snd_hctl_t = _snd_hctl;
6193pub type snd_hctl_compare_t = ::core::option::Option<
6194 unsafe extern "C" fn(
6195 e1: *const snd_hctl_elem_t,
6196 e2: *const snd_hctl_elem_t,
6197 ) -> ::core::ffi::c_int,
6198>;
6199unsafe extern "C" {
6200 pub fn snd_hctl_compare_fast(
6201 c1: *const snd_hctl_elem_t,
6202 c2: *const snd_hctl_elem_t,
6203 ) -> ::core::ffi::c_int;
6204}
6205pub type snd_hctl_callback_t = ::core::option::Option<
6206 unsafe extern "C" fn(
6207 hctl: *mut snd_hctl_t,
6208 mask: ::core::ffi::c_uint,
6209 elem: *mut snd_hctl_elem_t,
6210 ) -> ::core::ffi::c_int,
6211>;
6212pub type snd_hctl_elem_callback_t = ::core::option::Option<
6213 unsafe extern "C" fn(
6214 elem: *mut snd_hctl_elem_t,
6215 mask: ::core::ffi::c_uint,
6216 ) -> ::core::ffi::c_int,
6217>;
6218unsafe extern "C" {
6219 pub fn snd_hctl_open(
6220 hctl: *mut *mut snd_hctl_t,
6221 name: *const ::core::ffi::c_char,
6222 mode: ::core::ffi::c_int,
6223 ) -> ::core::ffi::c_int;
6224}
6225unsafe extern "C" {
6226 pub fn snd_hctl_open_ctl(
6227 hctlp: *mut *mut snd_hctl_t,
6228 ctl: *mut snd_ctl_t,
6229 ) -> ::core::ffi::c_int;
6230}
6231unsafe extern "C" {
6232 pub fn snd_hctl_close(hctl: *mut snd_hctl_t) -> ::core::ffi::c_int;
6233}
6234unsafe extern "C" {
6235 pub fn snd_hctl_nonblock(
6236 hctl: *mut snd_hctl_t,
6237 nonblock: ::core::ffi::c_int,
6238 ) -> ::core::ffi::c_int;
6239}
6240unsafe extern "C" {
6241 pub fn snd_hctl_poll_descriptors_count(hctl: *mut snd_hctl_t) -> ::core::ffi::c_int;
6242}
6243unsafe extern "C" {
6244 pub fn snd_hctl_poll_descriptors(
6245 hctl: *mut snd_hctl_t,
6246 pfds: *mut pollfd,
6247 space: ::core::ffi::c_uint,
6248 ) -> ::core::ffi::c_int;
6249}
6250unsafe extern "C" {
6251 pub fn snd_hctl_poll_descriptors_revents(
6252 ctl: *mut snd_hctl_t,
6253 pfds: *mut pollfd,
6254 nfds: ::core::ffi::c_uint,
6255 revents: *mut ::core::ffi::c_ushort,
6256 ) -> ::core::ffi::c_int;
6257}
6258unsafe extern "C" {
6259 pub fn snd_hctl_get_count(hctl: *mut snd_hctl_t) -> ::core::ffi::c_uint;
6260}
6261unsafe extern "C" {
6262 pub fn snd_hctl_set_compare(
6263 hctl: *mut snd_hctl_t,
6264 hsort: snd_hctl_compare_t,
6265 ) -> ::core::ffi::c_int;
6266}
6267unsafe extern "C" {
6268 pub fn snd_hctl_first_elem(hctl: *mut snd_hctl_t) -> *mut snd_hctl_elem_t;
6269}
6270unsafe extern "C" {
6271 pub fn snd_hctl_last_elem(hctl: *mut snd_hctl_t) -> *mut snd_hctl_elem_t;
6272}
6273unsafe extern "C" {
6274 pub fn snd_hctl_find_elem(
6275 hctl: *mut snd_hctl_t,
6276 id: *const snd_ctl_elem_id_t,
6277 ) -> *mut snd_hctl_elem_t;
6278}
6279unsafe extern "C" {
6280 pub fn snd_hctl_set_callback(hctl: *mut snd_hctl_t, callback: snd_hctl_callback_t);
6281}
6282unsafe extern "C" {
6283 pub fn snd_hctl_set_callback_private(hctl: *mut snd_hctl_t, data: *mut ::core::ffi::c_void);
6284}
6285unsafe extern "C" {
6286 pub fn snd_hctl_get_callback_private(hctl: *mut snd_hctl_t) -> *mut ::core::ffi::c_void;
6287}
6288unsafe extern "C" {
6289 pub fn snd_hctl_load(hctl: *mut snd_hctl_t) -> ::core::ffi::c_int;
6290}
6291unsafe extern "C" {
6292 pub fn snd_hctl_free(hctl: *mut snd_hctl_t) -> ::core::ffi::c_int;
6293}
6294unsafe extern "C" {
6295 pub fn snd_hctl_handle_events(hctl: *mut snd_hctl_t) -> ::core::ffi::c_int;
6296}
6297unsafe extern "C" {
6298 pub fn snd_hctl_name(hctl: *mut snd_hctl_t) -> *const ::core::ffi::c_char;
6299}
6300unsafe extern "C" {
6301 pub fn snd_hctl_wait(hctl: *mut snd_hctl_t, timeout: ::core::ffi::c_int) -> ::core::ffi::c_int;
6302}
6303unsafe extern "C" {
6304 pub fn snd_hctl_ctl(hctl: *mut snd_hctl_t) -> *mut snd_ctl_t;
6305}
6306unsafe extern "C" {
6307 pub fn snd_hctl_elem_next(elem: *mut snd_hctl_elem_t) -> *mut snd_hctl_elem_t;
6308}
6309unsafe extern "C" {
6310 pub fn snd_hctl_elem_prev(elem: *mut snd_hctl_elem_t) -> *mut snd_hctl_elem_t;
6311}
6312unsafe extern "C" {
6313 pub fn snd_hctl_elem_info(
6314 elem: *mut snd_hctl_elem_t,
6315 info: *mut snd_ctl_elem_info_t,
6316 ) -> ::core::ffi::c_int;
6317}
6318unsafe extern "C" {
6319 pub fn snd_hctl_elem_read(
6320 elem: *mut snd_hctl_elem_t,
6321 value: *mut snd_ctl_elem_value_t,
6322 ) -> ::core::ffi::c_int;
6323}
6324unsafe extern "C" {
6325 pub fn snd_hctl_elem_write(
6326 elem: *mut snd_hctl_elem_t,
6327 value: *mut snd_ctl_elem_value_t,
6328 ) -> ::core::ffi::c_int;
6329}
6330unsafe extern "C" {
6331 pub fn snd_hctl_elem_tlv_read(
6332 elem: *mut snd_hctl_elem_t,
6333 tlv: *mut ::core::ffi::c_uint,
6334 tlv_size: ::core::ffi::c_uint,
6335 ) -> ::core::ffi::c_int;
6336}
6337unsafe extern "C" {
6338 pub fn snd_hctl_elem_tlv_write(
6339 elem: *mut snd_hctl_elem_t,
6340 tlv: *const ::core::ffi::c_uint,
6341 ) -> ::core::ffi::c_int;
6342}
6343unsafe extern "C" {
6344 pub fn snd_hctl_elem_tlv_command(
6345 elem: *mut snd_hctl_elem_t,
6346 tlv: *const ::core::ffi::c_uint,
6347 ) -> ::core::ffi::c_int;
6348}
6349unsafe extern "C" {
6350 pub fn snd_hctl_elem_get_hctl(elem: *mut snd_hctl_elem_t) -> *mut snd_hctl_t;
6351}
6352unsafe extern "C" {
6353 pub fn snd_hctl_elem_get_id(obj: *const snd_hctl_elem_t, ptr: *mut snd_ctl_elem_id_t);
6354}
6355unsafe extern "C" {
6356 pub fn snd_hctl_elem_get_numid(obj: *const snd_hctl_elem_t) -> ::core::ffi::c_uint;
6357}
6358unsafe extern "C" {
6359 pub fn snd_hctl_elem_get_interface(obj: *const snd_hctl_elem_t) -> snd_ctl_elem_iface_t;
6360}
6361unsafe extern "C" {
6362 pub fn snd_hctl_elem_get_device(obj: *const snd_hctl_elem_t) -> ::core::ffi::c_uint;
6363}
6364unsafe extern "C" {
6365 pub fn snd_hctl_elem_get_subdevice(obj: *const snd_hctl_elem_t) -> ::core::ffi::c_uint;
6366}
6367unsafe extern "C" {
6368 pub fn snd_hctl_elem_get_name(obj: *const snd_hctl_elem_t) -> *const ::core::ffi::c_char;
6369}
6370unsafe extern "C" {
6371 pub fn snd_hctl_elem_get_index(obj: *const snd_hctl_elem_t) -> ::core::ffi::c_uint;
6372}
6373unsafe extern "C" {
6374 pub fn snd_hctl_elem_set_callback(obj: *mut snd_hctl_elem_t, val: snd_hctl_elem_callback_t);
6375}
6376unsafe extern "C" {
6377 pub fn snd_hctl_elem_get_callback_private(
6378 obj: *const snd_hctl_elem_t,
6379 ) -> *mut ::core::ffi::c_void;
6380}
6381unsafe extern "C" {
6382 pub fn snd_hctl_elem_set_callback_private(
6383 obj: *mut snd_hctl_elem_t,
6384 val: *mut ::core::ffi::c_void,
6385 );
6386}
6387unsafe extern "C" {
6388 pub fn snd_sctl_build(
6389 ctl: *mut *mut snd_sctl_t,
6390 handle: *mut snd_ctl_t,
6391 config: *mut snd_config_t,
6392 private_data: *mut snd_config_t,
6393 mode: ::core::ffi::c_int,
6394 ) -> ::core::ffi::c_int;
6395}
6396unsafe extern "C" {
6397 pub fn snd_sctl_free(handle: *mut snd_sctl_t) -> ::core::ffi::c_int;
6398}
6399unsafe extern "C" {
6400 pub fn snd_sctl_install(handle: *mut snd_sctl_t) -> ::core::ffi::c_int;
6401}
6402unsafe extern "C" {
6403 pub fn snd_sctl_remove(handle: *mut snd_sctl_t) -> ::core::ffi::c_int;
6404}
6405unsafe extern "C" {
6406 pub fn snd_device_name_hint(
6407 card: ::core::ffi::c_int,
6408 iface: *const ::core::ffi::c_char,
6409 hints: *mut *mut *mut ::core::ffi::c_void,
6410 ) -> ::core::ffi::c_int;
6411}
6412unsafe extern "C" {
6413 pub fn snd_device_name_free_hint(hints: *mut *mut ::core::ffi::c_void) -> ::core::ffi::c_int;
6414}
6415unsafe extern "C" {
6416 pub fn snd_device_name_get_hint(
6417 hint: *const ::core::ffi::c_void,
6418 id: *const ::core::ffi::c_char,
6419 ) -> *mut ::core::ffi::c_char;
6420}
6421#[repr(C)]
6422#[derive(Debug, Copy, Clone)]
6423pub struct _snd_mixer {
6424 _unused: [u8; 0],
6425}
6426pub type snd_mixer_t = _snd_mixer;
6427#[repr(C)]
6428#[derive(Debug, Copy, Clone)]
6429pub struct _snd_mixer_class {
6430 _unused: [u8; 0],
6431}
6432pub type snd_mixer_class_t = _snd_mixer_class;
6433#[repr(C)]
6434#[derive(Debug, Copy, Clone)]
6435pub struct _snd_mixer_elem {
6436 _unused: [u8; 0],
6437}
6438pub type snd_mixer_elem_t = _snd_mixer_elem;
6439pub type snd_mixer_callback_t = ::core::option::Option<
6440 unsafe extern "C" fn(
6441 ctl: *mut snd_mixer_t,
6442 mask: ::core::ffi::c_uint,
6443 elem: *mut snd_mixer_elem_t,
6444 ) -> ::core::ffi::c_int,
6445>;
6446pub type snd_mixer_elem_callback_t = ::core::option::Option<
6447 unsafe extern "C" fn(
6448 elem: *mut snd_mixer_elem_t,
6449 mask: ::core::ffi::c_uint,
6450 ) -> ::core::ffi::c_int,
6451>;
6452pub type snd_mixer_compare_t = ::core::option::Option<
6453 unsafe extern "C" fn(
6454 e1: *const snd_mixer_elem_t,
6455 e2: *const snd_mixer_elem_t,
6456 ) -> ::core::ffi::c_int,
6457>;
6458pub type snd_mixer_event_t = ::core::option::Option<
6459 unsafe extern "C" fn(
6460 class_: *mut snd_mixer_class_t,
6461 mask: ::core::ffi::c_uint,
6462 helem: *mut snd_hctl_elem_t,
6463 melem: *mut snd_mixer_elem_t,
6464 ) -> ::core::ffi::c_int,
6465>;
6466pub const SND_MIXER_ELEM_SIMPLE: _snd_mixer_elem_type = 0;
6467pub const SND_MIXER_ELEM_LAST: _snd_mixer_elem_type = 0;
6468pub type _snd_mixer_elem_type = ::core::ffi::c_uint;
6469pub use self::_snd_mixer_elem_type as snd_mixer_elem_type_t;
6470unsafe extern "C" {
6471 pub fn snd_mixer_open(
6472 mixer: *mut *mut snd_mixer_t,
6473 mode: ::core::ffi::c_int,
6474 ) -> ::core::ffi::c_int;
6475}
6476unsafe extern "C" {
6477 pub fn snd_mixer_close(mixer: *mut snd_mixer_t) -> ::core::ffi::c_int;
6478}
6479unsafe extern "C" {
6480 pub fn snd_mixer_first_elem(mixer: *mut snd_mixer_t) -> *mut snd_mixer_elem_t;
6481}
6482unsafe extern "C" {
6483 pub fn snd_mixer_last_elem(mixer: *mut snd_mixer_t) -> *mut snd_mixer_elem_t;
6484}
6485unsafe extern "C" {
6486 pub fn snd_mixer_handle_events(mixer: *mut snd_mixer_t) -> ::core::ffi::c_int;
6487}
6488unsafe extern "C" {
6489 pub fn snd_mixer_attach(
6490 mixer: *mut snd_mixer_t,
6491 name: *const ::core::ffi::c_char,
6492 ) -> ::core::ffi::c_int;
6493}
6494unsafe extern "C" {
6495 pub fn snd_mixer_attach_hctl(
6496 mixer: *mut snd_mixer_t,
6497 hctl: *mut snd_hctl_t,
6498 ) -> ::core::ffi::c_int;
6499}
6500unsafe extern "C" {
6501 pub fn snd_mixer_detach(
6502 mixer: *mut snd_mixer_t,
6503 name: *const ::core::ffi::c_char,
6504 ) -> ::core::ffi::c_int;
6505}
6506unsafe extern "C" {
6507 pub fn snd_mixer_detach_hctl(
6508 mixer: *mut snd_mixer_t,
6509 hctl: *mut snd_hctl_t,
6510 ) -> ::core::ffi::c_int;
6511}
6512unsafe extern "C" {
6513 pub fn snd_mixer_get_hctl(
6514 mixer: *mut snd_mixer_t,
6515 name: *const ::core::ffi::c_char,
6516 hctl: *mut *mut snd_hctl_t,
6517 ) -> ::core::ffi::c_int;
6518}
6519unsafe extern "C" {
6520 pub fn snd_mixer_poll_descriptors_count(mixer: *mut snd_mixer_t) -> ::core::ffi::c_int;
6521}
6522unsafe extern "C" {
6523 pub fn snd_mixer_poll_descriptors(
6524 mixer: *mut snd_mixer_t,
6525 pfds: *mut pollfd,
6526 space: ::core::ffi::c_uint,
6527 ) -> ::core::ffi::c_int;
6528}
6529unsafe extern "C" {
6530 pub fn snd_mixer_poll_descriptors_revents(
6531 mixer: *mut snd_mixer_t,
6532 pfds: *mut pollfd,
6533 nfds: ::core::ffi::c_uint,
6534 revents: *mut ::core::ffi::c_ushort,
6535 ) -> ::core::ffi::c_int;
6536}
6537unsafe extern "C" {
6538 pub fn snd_mixer_load(mixer: *mut snd_mixer_t) -> ::core::ffi::c_int;
6539}
6540unsafe extern "C" {
6541 pub fn snd_mixer_free(mixer: *mut snd_mixer_t);
6542}
6543unsafe extern "C" {
6544 pub fn snd_mixer_wait(
6545 mixer: *mut snd_mixer_t,
6546 timeout: ::core::ffi::c_int,
6547 ) -> ::core::ffi::c_int;
6548}
6549unsafe extern "C" {
6550 pub fn snd_mixer_set_compare(
6551 mixer: *mut snd_mixer_t,
6552 msort: snd_mixer_compare_t,
6553 ) -> ::core::ffi::c_int;
6554}
6555unsafe extern "C" {
6556 pub fn snd_mixer_set_callback(obj: *mut snd_mixer_t, val: snd_mixer_callback_t);
6557}
6558unsafe extern "C" {
6559 pub fn snd_mixer_get_callback_private(obj: *const snd_mixer_t) -> *mut ::core::ffi::c_void;
6560}
6561unsafe extern "C" {
6562 pub fn snd_mixer_set_callback_private(obj: *mut snd_mixer_t, val: *mut ::core::ffi::c_void);
6563}
6564unsafe extern "C" {
6565 pub fn snd_mixer_get_count(obj: *const snd_mixer_t) -> ::core::ffi::c_uint;
6566}
6567unsafe extern "C" {
6568 pub fn snd_mixer_class_unregister(clss: *mut snd_mixer_class_t) -> ::core::ffi::c_int;
6569}
6570unsafe extern "C" {
6571 pub fn snd_mixer_elem_next(elem: *mut snd_mixer_elem_t) -> *mut snd_mixer_elem_t;
6572}
6573unsafe extern "C" {
6574 pub fn snd_mixer_elem_prev(elem: *mut snd_mixer_elem_t) -> *mut snd_mixer_elem_t;
6575}
6576unsafe extern "C" {
6577 pub fn snd_mixer_elem_set_callback(obj: *mut snd_mixer_elem_t, val: snd_mixer_elem_callback_t);
6578}
6579unsafe extern "C" {
6580 pub fn snd_mixer_elem_get_callback_private(
6581 obj: *const snd_mixer_elem_t,
6582 ) -> *mut ::core::ffi::c_void;
6583}
6584unsafe extern "C" {
6585 pub fn snd_mixer_elem_set_callback_private(
6586 obj: *mut snd_mixer_elem_t,
6587 val: *mut ::core::ffi::c_void,
6588 );
6589}
6590unsafe extern "C" {
6591 pub fn snd_mixer_elem_get_type(obj: *const snd_mixer_elem_t) -> snd_mixer_elem_type_t;
6592}
6593unsafe extern "C" {
6594 pub fn snd_mixer_class_register(
6595 class_: *mut snd_mixer_class_t,
6596 mixer: *mut snd_mixer_t,
6597 ) -> ::core::ffi::c_int;
6598}
6599unsafe extern "C" {
6600 pub fn snd_mixer_elem_new(
6601 elem: *mut *mut snd_mixer_elem_t,
6602 type_: snd_mixer_elem_type_t,
6603 compare_weight: ::core::ffi::c_int,
6604 private_data: *mut ::core::ffi::c_void,
6605 private_free: ::core::option::Option<unsafe extern "C" fn(elem: *mut snd_mixer_elem_t)>,
6606 ) -> ::core::ffi::c_int;
6607}
6608unsafe extern "C" {
6609 pub fn snd_mixer_elem_add(
6610 elem: *mut snd_mixer_elem_t,
6611 class_: *mut snd_mixer_class_t,
6612 ) -> ::core::ffi::c_int;
6613}
6614unsafe extern "C" {
6615 pub fn snd_mixer_elem_remove(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6616}
6617unsafe extern "C" {
6618 pub fn snd_mixer_elem_free(elem: *mut snd_mixer_elem_t);
6619}
6620unsafe extern "C" {
6621 pub fn snd_mixer_elem_info(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6622}
6623unsafe extern "C" {
6624 pub fn snd_mixer_elem_value(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6625}
6626unsafe extern "C" {
6627 pub fn snd_mixer_elem_attach(
6628 melem: *mut snd_mixer_elem_t,
6629 helem: *mut snd_hctl_elem_t,
6630 ) -> ::core::ffi::c_int;
6631}
6632unsafe extern "C" {
6633 pub fn snd_mixer_elem_detach(
6634 melem: *mut snd_mixer_elem_t,
6635 helem: *mut snd_hctl_elem_t,
6636 ) -> ::core::ffi::c_int;
6637}
6638unsafe extern "C" {
6639 pub fn snd_mixer_elem_empty(melem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6640}
6641unsafe extern "C" {
6642 pub fn snd_mixer_elem_get_private(melem: *const snd_mixer_elem_t) -> *mut ::core::ffi::c_void;
6643}
6644unsafe extern "C" {
6645 pub fn snd_mixer_class_sizeof() -> usize;
6646}
6647unsafe extern "C" {
6648 pub fn snd_mixer_class_malloc(ptr: *mut *mut snd_mixer_class_t) -> ::core::ffi::c_int;
6649}
6650unsafe extern "C" {
6651 pub fn snd_mixer_class_free(obj: *mut snd_mixer_class_t);
6652}
6653unsafe extern "C" {
6654 pub fn snd_mixer_class_copy(dst: *mut snd_mixer_class_t, src: *const snd_mixer_class_t);
6655}
6656unsafe extern "C" {
6657 pub fn snd_mixer_class_get_mixer(class_: *const snd_mixer_class_t) -> *mut snd_mixer_t;
6658}
6659unsafe extern "C" {
6660 pub fn snd_mixer_class_get_event(class_: *const snd_mixer_class_t) -> snd_mixer_event_t;
6661}
6662unsafe extern "C" {
6663 pub fn snd_mixer_class_get_private(
6664 class_: *const snd_mixer_class_t,
6665 ) -> *mut ::core::ffi::c_void;
6666}
6667unsafe extern "C" {
6668 pub fn snd_mixer_class_get_compare(class_: *const snd_mixer_class_t) -> snd_mixer_compare_t;
6669}
6670unsafe extern "C" {
6671 pub fn snd_mixer_class_set_event(
6672 class_: *mut snd_mixer_class_t,
6673 event: snd_mixer_event_t,
6674 ) -> ::core::ffi::c_int;
6675}
6676unsafe extern "C" {
6677 pub fn snd_mixer_class_set_private(
6678 class_: *mut snd_mixer_class_t,
6679 private_data: *mut ::core::ffi::c_void,
6680 ) -> ::core::ffi::c_int;
6681}
6682unsafe extern "C" {
6683 pub fn snd_mixer_class_set_private_free(
6684 class_: *mut snd_mixer_class_t,
6685 private_free: ::core::option::Option<unsafe extern "C" fn(arg1: *mut snd_mixer_class_t)>,
6686 ) -> ::core::ffi::c_int;
6687}
6688unsafe extern "C" {
6689 pub fn snd_mixer_class_set_compare(
6690 class_: *mut snd_mixer_class_t,
6691 compare: snd_mixer_compare_t,
6692 ) -> ::core::ffi::c_int;
6693}
6694pub const SND_MIXER_SCHN_UNKNOWN: _snd_mixer_selem_channel_id = -1;
6695pub const SND_MIXER_SCHN_FRONT_LEFT: _snd_mixer_selem_channel_id = 0;
6696pub const SND_MIXER_SCHN_FRONT_RIGHT: _snd_mixer_selem_channel_id = 1;
6697pub const SND_MIXER_SCHN_REAR_LEFT: _snd_mixer_selem_channel_id = 2;
6698pub const SND_MIXER_SCHN_REAR_RIGHT: _snd_mixer_selem_channel_id = 3;
6699pub const SND_MIXER_SCHN_FRONT_CENTER: _snd_mixer_selem_channel_id = 4;
6700pub const SND_MIXER_SCHN_WOOFER: _snd_mixer_selem_channel_id = 5;
6701pub const SND_MIXER_SCHN_SIDE_LEFT: _snd_mixer_selem_channel_id = 6;
6702pub const SND_MIXER_SCHN_SIDE_RIGHT: _snd_mixer_selem_channel_id = 7;
6703pub const SND_MIXER_SCHN_REAR_CENTER: _snd_mixer_selem_channel_id = 8;
6704pub const SND_MIXER_SCHN_LAST: _snd_mixer_selem_channel_id = 31;
6705pub const SND_MIXER_SCHN_MONO: _snd_mixer_selem_channel_id = 0;
6706pub type _snd_mixer_selem_channel_id = ::core::ffi::c_int;
6707pub use self::_snd_mixer_selem_channel_id as snd_mixer_selem_channel_id_t;
6708pub const SND_MIXER_SABSTRACT_NONE: snd_mixer_selem_regopt_abstract = 0;
6709pub const SND_MIXER_SABSTRACT_BASIC: snd_mixer_selem_regopt_abstract = 1;
6710pub type snd_mixer_selem_regopt_abstract = ::core::ffi::c_uint;
6711#[repr(C)]
6712#[derive(Debug, Copy, Clone)]
6713pub struct snd_mixer_selem_regopt {
6714 pub ver: ::core::ffi::c_int,
6715 pub abstract_: snd_mixer_selem_regopt_abstract,
6716 pub device: *const ::core::ffi::c_char,
6717 pub playback_pcm: *mut snd_pcm_t,
6718 pub capture_pcm: *mut snd_pcm_t,
6719}
6720#[repr(C)]
6721#[derive(Debug, Copy, Clone)]
6722pub struct _snd_mixer_selem_id {
6723 _unused: [u8; 0],
6724}
6725pub type snd_mixer_selem_id_t = _snd_mixer_selem_id;
6726unsafe extern "C" {
6727 pub fn snd_mixer_selem_channel_name(
6728 channel: snd_mixer_selem_channel_id_t,
6729 ) -> *const ::core::ffi::c_char;
6730}
6731unsafe extern "C" {
6732 pub fn snd_mixer_selem_register(
6733 mixer: *mut snd_mixer_t,
6734 options: *mut snd_mixer_selem_regopt,
6735 classp: *mut *mut snd_mixer_class_t,
6736 ) -> ::core::ffi::c_int;
6737}
6738unsafe extern "C" {
6739 pub fn snd_mixer_selem_get_id(element: *mut snd_mixer_elem_t, id: *mut snd_mixer_selem_id_t);
6740}
6741unsafe extern "C" {
6742 pub fn snd_mixer_selem_get_name(elem: *mut snd_mixer_elem_t) -> *const ::core::ffi::c_char;
6743}
6744unsafe extern "C" {
6745 pub fn snd_mixer_selem_get_index(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_uint;
6746}
6747unsafe extern "C" {
6748 pub fn snd_mixer_find_selem(
6749 mixer: *mut snd_mixer_t,
6750 id: *const snd_mixer_selem_id_t,
6751 ) -> *mut snd_mixer_elem_t;
6752}
6753unsafe extern "C" {
6754 pub fn snd_mixer_selem_is_active(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6755}
6756unsafe extern "C" {
6757 pub fn snd_mixer_selem_is_playback_mono(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6758}
6759unsafe extern "C" {
6760 pub fn snd_mixer_selem_has_playback_channel(
6761 obj: *mut snd_mixer_elem_t,
6762 channel: snd_mixer_selem_channel_id_t,
6763 ) -> ::core::ffi::c_int;
6764}
6765unsafe extern "C" {
6766 pub fn snd_mixer_selem_is_capture_mono(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6767}
6768unsafe extern "C" {
6769 pub fn snd_mixer_selem_has_capture_channel(
6770 obj: *mut snd_mixer_elem_t,
6771 channel: snd_mixer_selem_channel_id_t,
6772 ) -> ::core::ffi::c_int;
6773}
6774unsafe extern "C" {
6775 pub fn snd_mixer_selem_get_capture_group(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6776}
6777unsafe extern "C" {
6778 pub fn snd_mixer_selem_has_common_volume(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6779}
6780unsafe extern "C" {
6781 pub fn snd_mixer_selem_has_playback_volume(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6782}
6783unsafe extern "C" {
6784 pub fn snd_mixer_selem_has_playback_volume_joined(
6785 elem: *mut snd_mixer_elem_t,
6786 ) -> ::core::ffi::c_int;
6787}
6788unsafe extern "C" {
6789 pub fn snd_mixer_selem_has_capture_volume(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6790}
6791unsafe extern "C" {
6792 pub fn snd_mixer_selem_has_capture_volume_joined(
6793 elem: *mut snd_mixer_elem_t,
6794 ) -> ::core::ffi::c_int;
6795}
6796unsafe extern "C" {
6797 pub fn snd_mixer_selem_has_common_switch(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6798}
6799unsafe extern "C" {
6800 pub fn snd_mixer_selem_has_playback_switch(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6801}
6802unsafe extern "C" {
6803 pub fn snd_mixer_selem_has_playback_switch_joined(
6804 elem: *mut snd_mixer_elem_t,
6805 ) -> ::core::ffi::c_int;
6806}
6807unsafe extern "C" {
6808 pub fn snd_mixer_selem_has_capture_switch(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
6809}
6810unsafe extern "C" {
6811 pub fn snd_mixer_selem_has_capture_switch_joined(
6812 elem: *mut snd_mixer_elem_t,
6813 ) -> ::core::ffi::c_int;
6814}
6815unsafe extern "C" {
6816 pub fn snd_mixer_selem_has_capture_switch_exclusive(
6817 elem: *mut snd_mixer_elem_t,
6818 ) -> ::core::ffi::c_int;
6819}
6820unsafe extern "C" {
6821 pub fn snd_mixer_selem_ask_playback_vol_dB(
6822 elem: *mut snd_mixer_elem_t,
6823 value: ::core::ffi::c_long,
6824 dBvalue: *mut ::core::ffi::c_long,
6825 ) -> ::core::ffi::c_int;
6826}
6827unsafe extern "C" {
6828 pub fn snd_mixer_selem_ask_capture_vol_dB(
6829 elem: *mut snd_mixer_elem_t,
6830 value: ::core::ffi::c_long,
6831 dBvalue: *mut ::core::ffi::c_long,
6832 ) -> ::core::ffi::c_int;
6833}
6834unsafe extern "C" {
6835 pub fn snd_mixer_selem_ask_playback_dB_vol(
6836 elem: *mut snd_mixer_elem_t,
6837 dBvalue: ::core::ffi::c_long,
6838 dir: ::core::ffi::c_int,
6839 value: *mut ::core::ffi::c_long,
6840 ) -> ::core::ffi::c_int;
6841}
6842unsafe extern "C" {
6843 pub fn snd_mixer_selem_ask_capture_dB_vol(
6844 elem: *mut snd_mixer_elem_t,
6845 dBvalue: ::core::ffi::c_long,
6846 dir: ::core::ffi::c_int,
6847 value: *mut ::core::ffi::c_long,
6848 ) -> ::core::ffi::c_int;
6849}
6850unsafe extern "C" {
6851 pub fn snd_mixer_selem_get_playback_volume(
6852 elem: *mut snd_mixer_elem_t,
6853 channel: snd_mixer_selem_channel_id_t,
6854 value: *mut ::core::ffi::c_long,
6855 ) -> ::core::ffi::c_int;
6856}
6857unsafe extern "C" {
6858 pub fn snd_mixer_selem_get_capture_volume(
6859 elem: *mut snd_mixer_elem_t,
6860 channel: snd_mixer_selem_channel_id_t,
6861 value: *mut ::core::ffi::c_long,
6862 ) -> ::core::ffi::c_int;
6863}
6864unsafe extern "C" {
6865 pub fn snd_mixer_selem_get_playback_dB(
6866 elem: *mut snd_mixer_elem_t,
6867 channel: snd_mixer_selem_channel_id_t,
6868 value: *mut ::core::ffi::c_long,
6869 ) -> ::core::ffi::c_int;
6870}
6871unsafe extern "C" {
6872 pub fn snd_mixer_selem_get_capture_dB(
6873 elem: *mut snd_mixer_elem_t,
6874 channel: snd_mixer_selem_channel_id_t,
6875 value: *mut ::core::ffi::c_long,
6876 ) -> ::core::ffi::c_int;
6877}
6878unsafe extern "C" {
6879 pub fn snd_mixer_selem_get_playback_switch(
6880 elem: *mut snd_mixer_elem_t,
6881 channel: snd_mixer_selem_channel_id_t,
6882 value: *mut ::core::ffi::c_int,
6883 ) -> ::core::ffi::c_int;
6884}
6885unsafe extern "C" {
6886 pub fn snd_mixer_selem_get_capture_switch(
6887 elem: *mut snd_mixer_elem_t,
6888 channel: snd_mixer_selem_channel_id_t,
6889 value: *mut ::core::ffi::c_int,
6890 ) -> ::core::ffi::c_int;
6891}
6892unsafe extern "C" {
6893 pub fn snd_mixer_selem_set_playback_volume(
6894 elem: *mut snd_mixer_elem_t,
6895 channel: snd_mixer_selem_channel_id_t,
6896 value: ::core::ffi::c_long,
6897 ) -> ::core::ffi::c_int;
6898}
6899unsafe extern "C" {
6900 pub fn snd_mixer_selem_set_capture_volume(
6901 elem: *mut snd_mixer_elem_t,
6902 channel: snd_mixer_selem_channel_id_t,
6903 value: ::core::ffi::c_long,
6904 ) -> ::core::ffi::c_int;
6905}
6906unsafe extern "C" {
6907 pub fn snd_mixer_selem_set_playback_dB(
6908 elem: *mut snd_mixer_elem_t,
6909 channel: snd_mixer_selem_channel_id_t,
6910 value: ::core::ffi::c_long,
6911 dir: ::core::ffi::c_int,
6912 ) -> ::core::ffi::c_int;
6913}
6914unsafe extern "C" {
6915 pub fn snd_mixer_selem_set_capture_dB(
6916 elem: *mut snd_mixer_elem_t,
6917 channel: snd_mixer_selem_channel_id_t,
6918 value: ::core::ffi::c_long,
6919 dir: ::core::ffi::c_int,
6920 ) -> ::core::ffi::c_int;
6921}
6922unsafe extern "C" {
6923 pub fn snd_mixer_selem_set_playback_volume_all(
6924 elem: *mut snd_mixer_elem_t,
6925 value: ::core::ffi::c_long,
6926 ) -> ::core::ffi::c_int;
6927}
6928unsafe extern "C" {
6929 pub fn snd_mixer_selem_set_capture_volume_all(
6930 elem: *mut snd_mixer_elem_t,
6931 value: ::core::ffi::c_long,
6932 ) -> ::core::ffi::c_int;
6933}
6934unsafe extern "C" {
6935 pub fn snd_mixer_selem_set_playback_dB_all(
6936 elem: *mut snd_mixer_elem_t,
6937 value: ::core::ffi::c_long,
6938 dir: ::core::ffi::c_int,
6939 ) -> ::core::ffi::c_int;
6940}
6941unsafe extern "C" {
6942 pub fn snd_mixer_selem_set_capture_dB_all(
6943 elem: *mut snd_mixer_elem_t,
6944 value: ::core::ffi::c_long,
6945 dir: ::core::ffi::c_int,
6946 ) -> ::core::ffi::c_int;
6947}
6948unsafe extern "C" {
6949 pub fn snd_mixer_selem_set_playback_switch(
6950 elem: *mut snd_mixer_elem_t,
6951 channel: snd_mixer_selem_channel_id_t,
6952 value: ::core::ffi::c_int,
6953 ) -> ::core::ffi::c_int;
6954}
6955unsafe extern "C" {
6956 pub fn snd_mixer_selem_set_capture_switch(
6957 elem: *mut snd_mixer_elem_t,
6958 channel: snd_mixer_selem_channel_id_t,
6959 value: ::core::ffi::c_int,
6960 ) -> ::core::ffi::c_int;
6961}
6962unsafe extern "C" {
6963 pub fn snd_mixer_selem_set_playback_switch_all(
6964 elem: *mut snd_mixer_elem_t,
6965 value: ::core::ffi::c_int,
6966 ) -> ::core::ffi::c_int;
6967}
6968unsafe extern "C" {
6969 pub fn snd_mixer_selem_set_capture_switch_all(
6970 elem: *mut snd_mixer_elem_t,
6971 value: ::core::ffi::c_int,
6972 ) -> ::core::ffi::c_int;
6973}
6974unsafe extern "C" {
6975 pub fn snd_mixer_selem_get_playback_volume_range(
6976 elem: *mut snd_mixer_elem_t,
6977 min: *mut ::core::ffi::c_long,
6978 max: *mut ::core::ffi::c_long,
6979 ) -> ::core::ffi::c_int;
6980}
6981unsafe extern "C" {
6982 pub fn snd_mixer_selem_get_playback_dB_range(
6983 elem: *mut snd_mixer_elem_t,
6984 min: *mut ::core::ffi::c_long,
6985 max: *mut ::core::ffi::c_long,
6986 ) -> ::core::ffi::c_int;
6987}
6988unsafe extern "C" {
6989 pub fn snd_mixer_selem_set_playback_volume_range(
6990 elem: *mut snd_mixer_elem_t,
6991 min: ::core::ffi::c_long,
6992 max: ::core::ffi::c_long,
6993 ) -> ::core::ffi::c_int;
6994}
6995unsafe extern "C" {
6996 pub fn snd_mixer_selem_get_capture_volume_range(
6997 elem: *mut snd_mixer_elem_t,
6998 min: *mut ::core::ffi::c_long,
6999 max: *mut ::core::ffi::c_long,
7000 ) -> ::core::ffi::c_int;
7001}
7002unsafe extern "C" {
7003 pub fn snd_mixer_selem_get_capture_dB_range(
7004 elem: *mut snd_mixer_elem_t,
7005 min: *mut ::core::ffi::c_long,
7006 max: *mut ::core::ffi::c_long,
7007 ) -> ::core::ffi::c_int;
7008}
7009unsafe extern "C" {
7010 pub fn snd_mixer_selem_set_capture_volume_range(
7011 elem: *mut snd_mixer_elem_t,
7012 min: ::core::ffi::c_long,
7013 max: ::core::ffi::c_long,
7014 ) -> ::core::ffi::c_int;
7015}
7016unsafe extern "C" {
7017 pub fn snd_mixer_selem_is_enumerated(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
7018}
7019unsafe extern "C" {
7020 pub fn snd_mixer_selem_is_enum_playback(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
7021}
7022unsafe extern "C" {
7023 pub fn snd_mixer_selem_is_enum_capture(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
7024}
7025unsafe extern "C" {
7026 pub fn snd_mixer_selem_get_enum_items(elem: *mut snd_mixer_elem_t) -> ::core::ffi::c_int;
7027}
7028unsafe extern "C" {
7029 pub fn snd_mixer_selem_get_enum_item_name(
7030 elem: *mut snd_mixer_elem_t,
7031 idx: ::core::ffi::c_uint,
7032 maxlen: usize,
7033 str_: *mut ::core::ffi::c_char,
7034 ) -> ::core::ffi::c_int;
7035}
7036unsafe extern "C" {
7037 pub fn snd_mixer_selem_get_enum_item(
7038 elem: *mut snd_mixer_elem_t,
7039 channel: snd_mixer_selem_channel_id_t,
7040 idxp: *mut ::core::ffi::c_uint,
7041 ) -> ::core::ffi::c_int;
7042}
7043unsafe extern "C" {
7044 pub fn snd_mixer_selem_set_enum_item(
7045 elem: *mut snd_mixer_elem_t,
7046 channel: snd_mixer_selem_channel_id_t,
7047 idx: ::core::ffi::c_uint,
7048 ) -> ::core::ffi::c_int;
7049}
7050unsafe extern "C" {
7051 pub fn snd_mixer_selem_id_sizeof() -> usize;
7052}
7053unsafe extern "C" {
7054 pub fn snd_mixer_selem_id_malloc(ptr: *mut *mut snd_mixer_selem_id_t) -> ::core::ffi::c_int;
7055}
7056unsafe extern "C" {
7057 pub fn snd_mixer_selem_id_free(obj: *mut snd_mixer_selem_id_t);
7058}
7059unsafe extern "C" {
7060 pub fn snd_mixer_selem_id_copy(
7061 dst: *mut snd_mixer_selem_id_t,
7062 src: *const snd_mixer_selem_id_t,
7063 );
7064}
7065unsafe extern "C" {
7066 pub fn snd_mixer_selem_id_get_name(
7067 obj: *const snd_mixer_selem_id_t,
7068 ) -> *const ::core::ffi::c_char;
7069}
7070unsafe extern "C" {
7071 pub fn snd_mixer_selem_id_get_index(obj: *const snd_mixer_selem_id_t) -> ::core::ffi::c_uint;
7072}
7073unsafe extern "C" {
7074 pub fn snd_mixer_selem_id_set_name(
7075 obj: *mut snd_mixer_selem_id_t,
7076 val: *const ::core::ffi::c_char,
7077 );
7078}
7079unsafe extern "C" {
7080 pub fn snd_mixer_selem_id_set_index(obj: *mut snd_mixer_selem_id_t, val: ::core::ffi::c_uint);
7081}
7082unsafe extern "C" {
7083 pub fn snd_mixer_selem_id_parse(
7084 dst: *mut snd_mixer_selem_id_t,
7085 str_: *const ::core::ffi::c_char,
7086 ) -> ::core::ffi::c_int;
7087}
7088#[repr(C, packed)]
7089#[derive(Debug, Copy, Clone)]
7090pub struct _snd_ump_msg_hdr {
7091 pub byte2: u8,
7092 pub byte1: u8,
7093 pub _bitfield_align_1: [u8; 0],
7094 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
7095}
7096impl _snd_ump_msg_hdr {
7097 #[inline]
7098 pub fn channel(&self) -> u8 {
7099 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
7100 }
7101 #[inline]
7102 pub fn set_channel(&mut self, val: u8) {
7103 unsafe {
7104 let val: u8 = ::core::mem::transmute(val);
7105 self._bitfield_1.set(0usize, 4u8, val as u64)
7106 }
7107 }
7108 #[inline]
7109 pub unsafe fn channel_raw(this: *const Self) -> u8 {
7110 unsafe {
7111 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7112 ::core::ptr::addr_of!((*this)._bitfield_1),
7113 0usize,
7114 4u8,
7115 ) as u8)
7116 }
7117 }
7118 #[inline]
7119 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
7120 unsafe {
7121 let val: u8 = ::core::mem::transmute(val);
7122 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7123 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7124 0usize,
7125 4u8,
7126 val as u64,
7127 )
7128 }
7129 }
7130 #[inline]
7131 pub fn status(&self) -> u8 {
7132 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
7133 }
7134 #[inline]
7135 pub fn set_status(&mut self, val: u8) {
7136 unsafe {
7137 let val: u8 = ::core::mem::transmute(val);
7138 self._bitfield_1.set(4usize, 4u8, val as u64)
7139 }
7140 }
7141 #[inline]
7142 pub unsafe fn status_raw(this: *const Self) -> u8 {
7143 unsafe {
7144 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7145 ::core::ptr::addr_of!((*this)._bitfield_1),
7146 4usize,
7147 4u8,
7148 ) as u8)
7149 }
7150 }
7151 #[inline]
7152 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
7153 unsafe {
7154 let val: u8 = ::core::mem::transmute(val);
7155 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7156 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7157 4usize,
7158 4u8,
7159 val as u64,
7160 )
7161 }
7162 }
7163 #[inline]
7164 pub fn group(&self) -> u8 {
7165 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
7166 }
7167 #[inline]
7168 pub fn set_group(&mut self, val: u8) {
7169 unsafe {
7170 let val: u8 = ::core::mem::transmute(val);
7171 self._bitfield_1.set(8usize, 4u8, val as u64)
7172 }
7173 }
7174 #[inline]
7175 pub unsafe fn group_raw(this: *const Self) -> u8 {
7176 unsafe {
7177 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7178 ::core::ptr::addr_of!((*this)._bitfield_1),
7179 8usize,
7180 4u8,
7181 ) as u8)
7182 }
7183 }
7184 #[inline]
7185 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
7186 unsafe {
7187 let val: u8 = ::core::mem::transmute(val);
7188 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7189 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7190 8usize,
7191 4u8,
7192 val as u64,
7193 )
7194 }
7195 }
7196 #[inline]
7197 pub fn type_(&self) -> u8 {
7198 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
7199 }
7200 #[inline]
7201 pub fn set_type(&mut self, val: u8) {
7202 unsafe {
7203 let val: u8 = ::core::mem::transmute(val);
7204 self._bitfield_1.set(12usize, 4u8, val as u64)
7205 }
7206 }
7207 #[inline]
7208 pub unsafe fn type__raw(this: *const Self) -> u8 {
7209 unsafe {
7210 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7211 ::core::ptr::addr_of!((*this)._bitfield_1),
7212 12usize,
7213 4u8,
7214 ) as u8)
7215 }
7216 }
7217 #[inline]
7218 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
7219 unsafe {
7220 let val: u8 = ::core::mem::transmute(val);
7221 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7222 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7223 12usize,
7224 4u8,
7225 val as u64,
7226 )
7227 }
7228 }
7229 #[inline]
7230 pub fn new_bitfield_1(
7231 channel: u8,
7232 status: u8,
7233 group: u8,
7234 type_: u8,
7235 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
7236 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
7237 __bindgen_bitfield_unit.set(0usize, 4u8, {
7238 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
7239 channel as u64
7240 });
7241 __bindgen_bitfield_unit.set(4usize, 4u8, {
7242 let status: u8 = unsafe { ::core::mem::transmute(status) };
7243 status as u64
7244 });
7245 __bindgen_bitfield_unit.set(8usize, 4u8, {
7246 let group: u8 = unsafe { ::core::mem::transmute(group) };
7247 group as u64
7248 });
7249 __bindgen_bitfield_unit.set(12usize, 4u8, {
7250 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
7251 type_ as u64
7252 });
7253 __bindgen_bitfield_unit
7254 }
7255}
7256pub type snd_ump_msg_hdr_t = _snd_ump_msg_hdr;
7257#[repr(C, packed)]
7258#[derive(Debug, Copy, Clone)]
7259pub struct _snd_ump_msg_midi1_note {
7260 pub velocity: u8,
7261 pub note: u8,
7262 pub _bitfield_align_1: [u8; 0],
7263 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
7264}
7265impl _snd_ump_msg_midi1_note {
7266 #[inline]
7267 pub fn channel(&self) -> u8 {
7268 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
7269 }
7270 #[inline]
7271 pub fn set_channel(&mut self, val: u8) {
7272 unsafe {
7273 let val: u8 = ::core::mem::transmute(val);
7274 self._bitfield_1.set(0usize, 4u8, val as u64)
7275 }
7276 }
7277 #[inline]
7278 pub unsafe fn channel_raw(this: *const Self) -> u8 {
7279 unsafe {
7280 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7281 ::core::ptr::addr_of!((*this)._bitfield_1),
7282 0usize,
7283 4u8,
7284 ) as u8)
7285 }
7286 }
7287 #[inline]
7288 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
7289 unsafe {
7290 let val: u8 = ::core::mem::transmute(val);
7291 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7292 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7293 0usize,
7294 4u8,
7295 val as u64,
7296 )
7297 }
7298 }
7299 #[inline]
7300 pub fn status(&self) -> u8 {
7301 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
7302 }
7303 #[inline]
7304 pub fn set_status(&mut self, val: u8) {
7305 unsafe {
7306 let val: u8 = ::core::mem::transmute(val);
7307 self._bitfield_1.set(4usize, 4u8, val as u64)
7308 }
7309 }
7310 #[inline]
7311 pub unsafe fn status_raw(this: *const Self) -> u8 {
7312 unsafe {
7313 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7314 ::core::ptr::addr_of!((*this)._bitfield_1),
7315 4usize,
7316 4u8,
7317 ) as u8)
7318 }
7319 }
7320 #[inline]
7321 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
7322 unsafe {
7323 let val: u8 = ::core::mem::transmute(val);
7324 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7325 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7326 4usize,
7327 4u8,
7328 val as u64,
7329 )
7330 }
7331 }
7332 #[inline]
7333 pub fn group(&self) -> u8 {
7334 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
7335 }
7336 #[inline]
7337 pub fn set_group(&mut self, val: u8) {
7338 unsafe {
7339 let val: u8 = ::core::mem::transmute(val);
7340 self._bitfield_1.set(8usize, 4u8, val as u64)
7341 }
7342 }
7343 #[inline]
7344 pub unsafe fn group_raw(this: *const Self) -> u8 {
7345 unsafe {
7346 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7347 ::core::ptr::addr_of!((*this)._bitfield_1),
7348 8usize,
7349 4u8,
7350 ) as u8)
7351 }
7352 }
7353 #[inline]
7354 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
7355 unsafe {
7356 let val: u8 = ::core::mem::transmute(val);
7357 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7358 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7359 8usize,
7360 4u8,
7361 val as u64,
7362 )
7363 }
7364 }
7365 #[inline]
7366 pub fn type_(&self) -> u8 {
7367 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
7368 }
7369 #[inline]
7370 pub fn set_type(&mut self, val: u8) {
7371 unsafe {
7372 let val: u8 = ::core::mem::transmute(val);
7373 self._bitfield_1.set(12usize, 4u8, val as u64)
7374 }
7375 }
7376 #[inline]
7377 pub unsafe fn type__raw(this: *const Self) -> u8 {
7378 unsafe {
7379 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7380 ::core::ptr::addr_of!((*this)._bitfield_1),
7381 12usize,
7382 4u8,
7383 ) as u8)
7384 }
7385 }
7386 #[inline]
7387 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
7388 unsafe {
7389 let val: u8 = ::core::mem::transmute(val);
7390 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7391 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7392 12usize,
7393 4u8,
7394 val as u64,
7395 )
7396 }
7397 }
7398 #[inline]
7399 pub fn new_bitfield_1(
7400 channel: u8,
7401 status: u8,
7402 group: u8,
7403 type_: u8,
7404 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
7405 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
7406 __bindgen_bitfield_unit.set(0usize, 4u8, {
7407 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
7408 channel as u64
7409 });
7410 __bindgen_bitfield_unit.set(4usize, 4u8, {
7411 let status: u8 = unsafe { ::core::mem::transmute(status) };
7412 status as u64
7413 });
7414 __bindgen_bitfield_unit.set(8usize, 4u8, {
7415 let group: u8 = unsafe { ::core::mem::transmute(group) };
7416 group as u64
7417 });
7418 __bindgen_bitfield_unit.set(12usize, 4u8, {
7419 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
7420 type_ as u64
7421 });
7422 __bindgen_bitfield_unit
7423 }
7424}
7425pub type snd_ump_msg_midi1_note_t = _snd_ump_msg_midi1_note;
7426#[repr(C, packed)]
7427#[derive(Debug, Copy, Clone)]
7428pub struct _snd_ump_msg_midi1_paf {
7429 pub data: u8,
7430 pub note: u8,
7431 pub _bitfield_align_1: [u8; 0],
7432 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
7433}
7434impl _snd_ump_msg_midi1_paf {
7435 #[inline]
7436 pub fn channel(&self) -> u8 {
7437 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
7438 }
7439 #[inline]
7440 pub fn set_channel(&mut self, val: u8) {
7441 unsafe {
7442 let val: u8 = ::core::mem::transmute(val);
7443 self._bitfield_1.set(0usize, 4u8, val as u64)
7444 }
7445 }
7446 #[inline]
7447 pub unsafe fn channel_raw(this: *const Self) -> u8 {
7448 unsafe {
7449 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7450 ::core::ptr::addr_of!((*this)._bitfield_1),
7451 0usize,
7452 4u8,
7453 ) as u8)
7454 }
7455 }
7456 #[inline]
7457 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
7458 unsafe {
7459 let val: u8 = ::core::mem::transmute(val);
7460 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7461 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7462 0usize,
7463 4u8,
7464 val as u64,
7465 )
7466 }
7467 }
7468 #[inline]
7469 pub fn status(&self) -> u8 {
7470 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
7471 }
7472 #[inline]
7473 pub fn set_status(&mut self, val: u8) {
7474 unsafe {
7475 let val: u8 = ::core::mem::transmute(val);
7476 self._bitfield_1.set(4usize, 4u8, val as u64)
7477 }
7478 }
7479 #[inline]
7480 pub unsafe fn status_raw(this: *const Self) -> u8 {
7481 unsafe {
7482 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7483 ::core::ptr::addr_of!((*this)._bitfield_1),
7484 4usize,
7485 4u8,
7486 ) as u8)
7487 }
7488 }
7489 #[inline]
7490 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
7491 unsafe {
7492 let val: u8 = ::core::mem::transmute(val);
7493 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7494 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7495 4usize,
7496 4u8,
7497 val as u64,
7498 )
7499 }
7500 }
7501 #[inline]
7502 pub fn group(&self) -> u8 {
7503 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
7504 }
7505 #[inline]
7506 pub fn set_group(&mut self, val: u8) {
7507 unsafe {
7508 let val: u8 = ::core::mem::transmute(val);
7509 self._bitfield_1.set(8usize, 4u8, val as u64)
7510 }
7511 }
7512 #[inline]
7513 pub unsafe fn group_raw(this: *const Self) -> u8 {
7514 unsafe {
7515 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7516 ::core::ptr::addr_of!((*this)._bitfield_1),
7517 8usize,
7518 4u8,
7519 ) as u8)
7520 }
7521 }
7522 #[inline]
7523 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
7524 unsafe {
7525 let val: u8 = ::core::mem::transmute(val);
7526 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7527 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7528 8usize,
7529 4u8,
7530 val as u64,
7531 )
7532 }
7533 }
7534 #[inline]
7535 pub fn type_(&self) -> u8 {
7536 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
7537 }
7538 #[inline]
7539 pub fn set_type(&mut self, val: u8) {
7540 unsafe {
7541 let val: u8 = ::core::mem::transmute(val);
7542 self._bitfield_1.set(12usize, 4u8, val as u64)
7543 }
7544 }
7545 #[inline]
7546 pub unsafe fn type__raw(this: *const Self) -> u8 {
7547 unsafe {
7548 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7549 ::core::ptr::addr_of!((*this)._bitfield_1),
7550 12usize,
7551 4u8,
7552 ) as u8)
7553 }
7554 }
7555 #[inline]
7556 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
7557 unsafe {
7558 let val: u8 = ::core::mem::transmute(val);
7559 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7560 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7561 12usize,
7562 4u8,
7563 val as u64,
7564 )
7565 }
7566 }
7567 #[inline]
7568 pub fn new_bitfield_1(
7569 channel: u8,
7570 status: u8,
7571 group: u8,
7572 type_: u8,
7573 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
7574 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
7575 __bindgen_bitfield_unit.set(0usize, 4u8, {
7576 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
7577 channel as u64
7578 });
7579 __bindgen_bitfield_unit.set(4usize, 4u8, {
7580 let status: u8 = unsafe { ::core::mem::transmute(status) };
7581 status as u64
7582 });
7583 __bindgen_bitfield_unit.set(8usize, 4u8, {
7584 let group: u8 = unsafe { ::core::mem::transmute(group) };
7585 group as u64
7586 });
7587 __bindgen_bitfield_unit.set(12usize, 4u8, {
7588 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
7589 type_ as u64
7590 });
7591 __bindgen_bitfield_unit
7592 }
7593}
7594pub type snd_ump_msg_midi1_paf_t = _snd_ump_msg_midi1_paf;
7595#[repr(C, packed)]
7596#[derive(Debug, Copy, Clone)]
7597pub struct _snd_ump_msg_midi1_cc {
7598 pub data: u8,
7599 pub index: u8,
7600 pub _bitfield_align_1: [u8; 0],
7601 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
7602}
7603impl _snd_ump_msg_midi1_cc {
7604 #[inline]
7605 pub fn channel(&self) -> u8 {
7606 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
7607 }
7608 #[inline]
7609 pub fn set_channel(&mut self, val: u8) {
7610 unsafe {
7611 let val: u8 = ::core::mem::transmute(val);
7612 self._bitfield_1.set(0usize, 4u8, val as u64)
7613 }
7614 }
7615 #[inline]
7616 pub unsafe fn channel_raw(this: *const Self) -> u8 {
7617 unsafe {
7618 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7619 ::core::ptr::addr_of!((*this)._bitfield_1),
7620 0usize,
7621 4u8,
7622 ) as u8)
7623 }
7624 }
7625 #[inline]
7626 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
7627 unsafe {
7628 let val: u8 = ::core::mem::transmute(val);
7629 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7630 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7631 0usize,
7632 4u8,
7633 val as u64,
7634 )
7635 }
7636 }
7637 #[inline]
7638 pub fn status(&self) -> u8 {
7639 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
7640 }
7641 #[inline]
7642 pub fn set_status(&mut self, val: u8) {
7643 unsafe {
7644 let val: u8 = ::core::mem::transmute(val);
7645 self._bitfield_1.set(4usize, 4u8, val as u64)
7646 }
7647 }
7648 #[inline]
7649 pub unsafe fn status_raw(this: *const Self) -> u8 {
7650 unsafe {
7651 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7652 ::core::ptr::addr_of!((*this)._bitfield_1),
7653 4usize,
7654 4u8,
7655 ) as u8)
7656 }
7657 }
7658 #[inline]
7659 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
7660 unsafe {
7661 let val: u8 = ::core::mem::transmute(val);
7662 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7663 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7664 4usize,
7665 4u8,
7666 val as u64,
7667 )
7668 }
7669 }
7670 #[inline]
7671 pub fn group(&self) -> u8 {
7672 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
7673 }
7674 #[inline]
7675 pub fn set_group(&mut self, val: u8) {
7676 unsafe {
7677 let val: u8 = ::core::mem::transmute(val);
7678 self._bitfield_1.set(8usize, 4u8, val as u64)
7679 }
7680 }
7681 #[inline]
7682 pub unsafe fn group_raw(this: *const Self) -> u8 {
7683 unsafe {
7684 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7685 ::core::ptr::addr_of!((*this)._bitfield_1),
7686 8usize,
7687 4u8,
7688 ) as u8)
7689 }
7690 }
7691 #[inline]
7692 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
7693 unsafe {
7694 let val: u8 = ::core::mem::transmute(val);
7695 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7696 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7697 8usize,
7698 4u8,
7699 val as u64,
7700 )
7701 }
7702 }
7703 #[inline]
7704 pub fn type_(&self) -> u8 {
7705 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
7706 }
7707 #[inline]
7708 pub fn set_type(&mut self, val: u8) {
7709 unsafe {
7710 let val: u8 = ::core::mem::transmute(val);
7711 self._bitfield_1.set(12usize, 4u8, val as u64)
7712 }
7713 }
7714 #[inline]
7715 pub unsafe fn type__raw(this: *const Self) -> u8 {
7716 unsafe {
7717 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7718 ::core::ptr::addr_of!((*this)._bitfield_1),
7719 12usize,
7720 4u8,
7721 ) as u8)
7722 }
7723 }
7724 #[inline]
7725 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
7726 unsafe {
7727 let val: u8 = ::core::mem::transmute(val);
7728 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7729 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7730 12usize,
7731 4u8,
7732 val as u64,
7733 )
7734 }
7735 }
7736 #[inline]
7737 pub fn new_bitfield_1(
7738 channel: u8,
7739 status: u8,
7740 group: u8,
7741 type_: u8,
7742 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
7743 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
7744 __bindgen_bitfield_unit.set(0usize, 4u8, {
7745 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
7746 channel as u64
7747 });
7748 __bindgen_bitfield_unit.set(4usize, 4u8, {
7749 let status: u8 = unsafe { ::core::mem::transmute(status) };
7750 status as u64
7751 });
7752 __bindgen_bitfield_unit.set(8usize, 4u8, {
7753 let group: u8 = unsafe { ::core::mem::transmute(group) };
7754 group as u64
7755 });
7756 __bindgen_bitfield_unit.set(12usize, 4u8, {
7757 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
7758 type_ as u64
7759 });
7760 __bindgen_bitfield_unit
7761 }
7762}
7763pub type snd_ump_msg_midi1_cc_t = _snd_ump_msg_midi1_cc;
7764#[repr(C, packed)]
7765#[derive(Debug, Copy, Clone)]
7766pub struct _snd_ump_msg_midi1_program {
7767 pub reserved: u8,
7768 pub program: u8,
7769 pub _bitfield_align_1: [u8; 0],
7770 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
7771}
7772impl _snd_ump_msg_midi1_program {
7773 #[inline]
7774 pub fn channel(&self) -> u8 {
7775 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
7776 }
7777 #[inline]
7778 pub fn set_channel(&mut self, val: u8) {
7779 unsafe {
7780 let val: u8 = ::core::mem::transmute(val);
7781 self._bitfield_1.set(0usize, 4u8, val as u64)
7782 }
7783 }
7784 #[inline]
7785 pub unsafe fn channel_raw(this: *const Self) -> u8 {
7786 unsafe {
7787 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7788 ::core::ptr::addr_of!((*this)._bitfield_1),
7789 0usize,
7790 4u8,
7791 ) as u8)
7792 }
7793 }
7794 #[inline]
7795 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
7796 unsafe {
7797 let val: u8 = ::core::mem::transmute(val);
7798 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7799 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7800 0usize,
7801 4u8,
7802 val as u64,
7803 )
7804 }
7805 }
7806 #[inline]
7807 pub fn status(&self) -> u8 {
7808 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
7809 }
7810 #[inline]
7811 pub fn set_status(&mut self, val: u8) {
7812 unsafe {
7813 let val: u8 = ::core::mem::transmute(val);
7814 self._bitfield_1.set(4usize, 4u8, val as u64)
7815 }
7816 }
7817 #[inline]
7818 pub unsafe fn status_raw(this: *const Self) -> u8 {
7819 unsafe {
7820 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7821 ::core::ptr::addr_of!((*this)._bitfield_1),
7822 4usize,
7823 4u8,
7824 ) as u8)
7825 }
7826 }
7827 #[inline]
7828 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
7829 unsafe {
7830 let val: u8 = ::core::mem::transmute(val);
7831 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7832 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7833 4usize,
7834 4u8,
7835 val as u64,
7836 )
7837 }
7838 }
7839 #[inline]
7840 pub fn group(&self) -> u8 {
7841 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
7842 }
7843 #[inline]
7844 pub fn set_group(&mut self, val: u8) {
7845 unsafe {
7846 let val: u8 = ::core::mem::transmute(val);
7847 self._bitfield_1.set(8usize, 4u8, val as u64)
7848 }
7849 }
7850 #[inline]
7851 pub unsafe fn group_raw(this: *const Self) -> u8 {
7852 unsafe {
7853 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7854 ::core::ptr::addr_of!((*this)._bitfield_1),
7855 8usize,
7856 4u8,
7857 ) as u8)
7858 }
7859 }
7860 #[inline]
7861 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
7862 unsafe {
7863 let val: u8 = ::core::mem::transmute(val);
7864 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7865 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7866 8usize,
7867 4u8,
7868 val as u64,
7869 )
7870 }
7871 }
7872 #[inline]
7873 pub fn type_(&self) -> u8 {
7874 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
7875 }
7876 #[inline]
7877 pub fn set_type(&mut self, val: u8) {
7878 unsafe {
7879 let val: u8 = ::core::mem::transmute(val);
7880 self._bitfield_1.set(12usize, 4u8, val as u64)
7881 }
7882 }
7883 #[inline]
7884 pub unsafe fn type__raw(this: *const Self) -> u8 {
7885 unsafe {
7886 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7887 ::core::ptr::addr_of!((*this)._bitfield_1),
7888 12usize,
7889 4u8,
7890 ) as u8)
7891 }
7892 }
7893 #[inline]
7894 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
7895 unsafe {
7896 let val: u8 = ::core::mem::transmute(val);
7897 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7898 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7899 12usize,
7900 4u8,
7901 val as u64,
7902 )
7903 }
7904 }
7905 #[inline]
7906 pub fn new_bitfield_1(
7907 channel: u8,
7908 status: u8,
7909 group: u8,
7910 type_: u8,
7911 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
7912 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
7913 __bindgen_bitfield_unit.set(0usize, 4u8, {
7914 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
7915 channel as u64
7916 });
7917 __bindgen_bitfield_unit.set(4usize, 4u8, {
7918 let status: u8 = unsafe { ::core::mem::transmute(status) };
7919 status as u64
7920 });
7921 __bindgen_bitfield_unit.set(8usize, 4u8, {
7922 let group: u8 = unsafe { ::core::mem::transmute(group) };
7923 group as u64
7924 });
7925 __bindgen_bitfield_unit.set(12usize, 4u8, {
7926 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
7927 type_ as u64
7928 });
7929 __bindgen_bitfield_unit
7930 }
7931}
7932pub type snd_ump_msg_midi1_program_t = _snd_ump_msg_midi1_program;
7933#[repr(C, packed)]
7934#[derive(Debug, Copy, Clone)]
7935pub struct _snd_ump_msg_midi1_caf {
7936 pub reserved: u8,
7937 pub data: u8,
7938 pub _bitfield_align_1: [u8; 0],
7939 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
7940}
7941impl _snd_ump_msg_midi1_caf {
7942 #[inline]
7943 pub fn channel(&self) -> u8 {
7944 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
7945 }
7946 #[inline]
7947 pub fn set_channel(&mut self, val: u8) {
7948 unsafe {
7949 let val: u8 = ::core::mem::transmute(val);
7950 self._bitfield_1.set(0usize, 4u8, val as u64)
7951 }
7952 }
7953 #[inline]
7954 pub unsafe fn channel_raw(this: *const Self) -> u8 {
7955 unsafe {
7956 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7957 ::core::ptr::addr_of!((*this)._bitfield_1),
7958 0usize,
7959 4u8,
7960 ) as u8)
7961 }
7962 }
7963 #[inline]
7964 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
7965 unsafe {
7966 let val: u8 = ::core::mem::transmute(val);
7967 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
7968 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
7969 0usize,
7970 4u8,
7971 val as u64,
7972 )
7973 }
7974 }
7975 #[inline]
7976 pub fn status(&self) -> u8 {
7977 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
7978 }
7979 #[inline]
7980 pub fn set_status(&mut self, val: u8) {
7981 unsafe {
7982 let val: u8 = ::core::mem::transmute(val);
7983 self._bitfield_1.set(4usize, 4u8, val as u64)
7984 }
7985 }
7986 #[inline]
7987 pub unsafe fn status_raw(this: *const Self) -> u8 {
7988 unsafe {
7989 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
7990 ::core::ptr::addr_of!((*this)._bitfield_1),
7991 4usize,
7992 4u8,
7993 ) as u8)
7994 }
7995 }
7996 #[inline]
7997 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
7998 unsafe {
7999 let val: u8 = ::core::mem::transmute(val);
8000 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8001 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8002 4usize,
8003 4u8,
8004 val as u64,
8005 )
8006 }
8007 }
8008 #[inline]
8009 pub fn group(&self) -> u8 {
8010 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
8011 }
8012 #[inline]
8013 pub fn set_group(&mut self, val: u8) {
8014 unsafe {
8015 let val: u8 = ::core::mem::transmute(val);
8016 self._bitfield_1.set(8usize, 4u8, val as u64)
8017 }
8018 }
8019 #[inline]
8020 pub unsafe fn group_raw(this: *const Self) -> u8 {
8021 unsafe {
8022 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8023 ::core::ptr::addr_of!((*this)._bitfield_1),
8024 8usize,
8025 4u8,
8026 ) as u8)
8027 }
8028 }
8029 #[inline]
8030 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
8031 unsafe {
8032 let val: u8 = ::core::mem::transmute(val);
8033 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8034 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8035 8usize,
8036 4u8,
8037 val as u64,
8038 )
8039 }
8040 }
8041 #[inline]
8042 pub fn type_(&self) -> u8 {
8043 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
8044 }
8045 #[inline]
8046 pub fn set_type(&mut self, val: u8) {
8047 unsafe {
8048 let val: u8 = ::core::mem::transmute(val);
8049 self._bitfield_1.set(12usize, 4u8, val as u64)
8050 }
8051 }
8052 #[inline]
8053 pub unsafe fn type__raw(this: *const Self) -> u8 {
8054 unsafe {
8055 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8056 ::core::ptr::addr_of!((*this)._bitfield_1),
8057 12usize,
8058 4u8,
8059 ) as u8)
8060 }
8061 }
8062 #[inline]
8063 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
8064 unsafe {
8065 let val: u8 = ::core::mem::transmute(val);
8066 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8067 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8068 12usize,
8069 4u8,
8070 val as u64,
8071 )
8072 }
8073 }
8074 #[inline]
8075 pub fn new_bitfield_1(
8076 channel: u8,
8077 status: u8,
8078 group: u8,
8079 type_: u8,
8080 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8081 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8082 __bindgen_bitfield_unit.set(0usize, 4u8, {
8083 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
8084 channel as u64
8085 });
8086 __bindgen_bitfield_unit.set(4usize, 4u8, {
8087 let status: u8 = unsafe { ::core::mem::transmute(status) };
8088 status as u64
8089 });
8090 __bindgen_bitfield_unit.set(8usize, 4u8, {
8091 let group: u8 = unsafe { ::core::mem::transmute(group) };
8092 group as u64
8093 });
8094 __bindgen_bitfield_unit.set(12usize, 4u8, {
8095 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
8096 type_ as u64
8097 });
8098 __bindgen_bitfield_unit
8099 }
8100}
8101pub type snd_ump_msg_midi1_caf_t = _snd_ump_msg_midi1_caf;
8102#[repr(C, packed)]
8103#[derive(Debug, Copy, Clone)]
8104pub struct _snd_ump_msg_midi1_pitchbend {
8105 pub data_msb: u8,
8106 pub data_lsb: u8,
8107 pub _bitfield_align_1: [u8; 0],
8108 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
8109}
8110impl _snd_ump_msg_midi1_pitchbend {
8111 #[inline]
8112 pub fn channel(&self) -> u8 {
8113 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
8114 }
8115 #[inline]
8116 pub fn set_channel(&mut self, val: u8) {
8117 unsafe {
8118 let val: u8 = ::core::mem::transmute(val);
8119 self._bitfield_1.set(0usize, 4u8, val as u64)
8120 }
8121 }
8122 #[inline]
8123 pub unsafe fn channel_raw(this: *const Self) -> u8 {
8124 unsafe {
8125 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8126 ::core::ptr::addr_of!((*this)._bitfield_1),
8127 0usize,
8128 4u8,
8129 ) as u8)
8130 }
8131 }
8132 #[inline]
8133 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
8134 unsafe {
8135 let val: u8 = ::core::mem::transmute(val);
8136 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8137 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8138 0usize,
8139 4u8,
8140 val as u64,
8141 )
8142 }
8143 }
8144 #[inline]
8145 pub fn status(&self) -> u8 {
8146 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
8147 }
8148 #[inline]
8149 pub fn set_status(&mut self, val: u8) {
8150 unsafe {
8151 let val: u8 = ::core::mem::transmute(val);
8152 self._bitfield_1.set(4usize, 4u8, val as u64)
8153 }
8154 }
8155 #[inline]
8156 pub unsafe fn status_raw(this: *const Self) -> u8 {
8157 unsafe {
8158 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8159 ::core::ptr::addr_of!((*this)._bitfield_1),
8160 4usize,
8161 4u8,
8162 ) as u8)
8163 }
8164 }
8165 #[inline]
8166 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
8167 unsafe {
8168 let val: u8 = ::core::mem::transmute(val);
8169 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8170 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8171 4usize,
8172 4u8,
8173 val as u64,
8174 )
8175 }
8176 }
8177 #[inline]
8178 pub fn group(&self) -> u8 {
8179 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
8180 }
8181 #[inline]
8182 pub fn set_group(&mut self, val: u8) {
8183 unsafe {
8184 let val: u8 = ::core::mem::transmute(val);
8185 self._bitfield_1.set(8usize, 4u8, val as u64)
8186 }
8187 }
8188 #[inline]
8189 pub unsafe fn group_raw(this: *const Self) -> u8 {
8190 unsafe {
8191 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8192 ::core::ptr::addr_of!((*this)._bitfield_1),
8193 8usize,
8194 4u8,
8195 ) as u8)
8196 }
8197 }
8198 #[inline]
8199 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
8200 unsafe {
8201 let val: u8 = ::core::mem::transmute(val);
8202 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8203 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8204 8usize,
8205 4u8,
8206 val as u64,
8207 )
8208 }
8209 }
8210 #[inline]
8211 pub fn type_(&self) -> u8 {
8212 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
8213 }
8214 #[inline]
8215 pub fn set_type(&mut self, val: u8) {
8216 unsafe {
8217 let val: u8 = ::core::mem::transmute(val);
8218 self._bitfield_1.set(12usize, 4u8, val as u64)
8219 }
8220 }
8221 #[inline]
8222 pub unsafe fn type__raw(this: *const Self) -> u8 {
8223 unsafe {
8224 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8225 ::core::ptr::addr_of!((*this)._bitfield_1),
8226 12usize,
8227 4u8,
8228 ) as u8)
8229 }
8230 }
8231 #[inline]
8232 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
8233 unsafe {
8234 let val: u8 = ::core::mem::transmute(val);
8235 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8236 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8237 12usize,
8238 4u8,
8239 val as u64,
8240 )
8241 }
8242 }
8243 #[inline]
8244 pub fn new_bitfield_1(
8245 channel: u8,
8246 status: u8,
8247 group: u8,
8248 type_: u8,
8249 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8250 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8251 __bindgen_bitfield_unit.set(0usize, 4u8, {
8252 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
8253 channel as u64
8254 });
8255 __bindgen_bitfield_unit.set(4usize, 4u8, {
8256 let status: u8 = unsafe { ::core::mem::transmute(status) };
8257 status as u64
8258 });
8259 __bindgen_bitfield_unit.set(8usize, 4u8, {
8260 let group: u8 = unsafe { ::core::mem::transmute(group) };
8261 group as u64
8262 });
8263 __bindgen_bitfield_unit.set(12usize, 4u8, {
8264 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
8265 type_ as u64
8266 });
8267 __bindgen_bitfield_unit
8268 }
8269}
8270pub type snd_ump_msg_midi1_pitchbend_t = _snd_ump_msg_midi1_pitchbend;
8271#[repr(C, packed)]
8272#[derive(Debug, Copy, Clone)]
8273pub struct snd_ump_msg_system {
8274 pub parm2: u8,
8275 pub parm1: u8,
8276 pub status: u8,
8277 pub _bitfield_align_1: [u8; 0],
8278 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
8279}
8280impl snd_ump_msg_system {
8281 #[inline]
8282 pub fn group(&self) -> u8 {
8283 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
8284 }
8285 #[inline]
8286 pub fn set_group(&mut self, val: u8) {
8287 unsafe {
8288 let val: u8 = ::core::mem::transmute(val);
8289 self._bitfield_1.set(0usize, 4u8, val as u64)
8290 }
8291 }
8292 #[inline]
8293 pub unsafe fn group_raw(this: *const Self) -> u8 {
8294 unsafe {
8295 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
8296 ::core::ptr::addr_of!((*this)._bitfield_1),
8297 0usize,
8298 4u8,
8299 ) as u8)
8300 }
8301 }
8302 #[inline]
8303 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
8304 unsafe {
8305 let val: u8 = ::core::mem::transmute(val);
8306 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
8307 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8308 0usize,
8309 4u8,
8310 val as u64,
8311 )
8312 }
8313 }
8314 #[inline]
8315 pub fn type_(&self) -> u8 {
8316 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
8317 }
8318 #[inline]
8319 pub fn set_type(&mut self, val: u8) {
8320 unsafe {
8321 let val: u8 = ::core::mem::transmute(val);
8322 self._bitfield_1.set(4usize, 4u8, val as u64)
8323 }
8324 }
8325 #[inline]
8326 pub unsafe fn type__raw(this: *const Self) -> u8 {
8327 unsafe {
8328 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
8329 ::core::ptr::addr_of!((*this)._bitfield_1),
8330 4usize,
8331 4u8,
8332 ) as u8)
8333 }
8334 }
8335 #[inline]
8336 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
8337 unsafe {
8338 let val: u8 = ::core::mem::transmute(val);
8339 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
8340 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8341 4usize,
8342 4u8,
8343 val as u64,
8344 )
8345 }
8346 }
8347 #[inline]
8348 pub fn new_bitfield_1(group: u8, type_: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
8349 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
8350 __bindgen_bitfield_unit.set(0usize, 4u8, {
8351 let group: u8 = unsafe { ::core::mem::transmute(group) };
8352 group as u64
8353 });
8354 __bindgen_bitfield_unit.set(4usize, 4u8, {
8355 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
8356 type_ as u64
8357 });
8358 __bindgen_bitfield_unit
8359 }
8360}
8361pub type snd_ump_msg_system_t = snd_ump_msg_system;
8362#[repr(C)]
8363#[derive(Copy, Clone)]
8364pub union _snd_ump_msg_midi1 {
8365 pub note_on: snd_ump_msg_midi1_note_t,
8366 pub note_off: snd_ump_msg_midi1_note_t,
8367 pub poly_pressure: snd_ump_msg_midi1_paf_t,
8368 pub control_change: snd_ump_msg_midi1_cc_t,
8369 pub program_change: snd_ump_msg_midi1_program_t,
8370 pub channel_pressure: snd_ump_msg_midi1_caf_t,
8371 pub pitchbend: snd_ump_msg_midi1_pitchbend_t,
8372 pub system: snd_ump_msg_system_t,
8373 pub hdr: snd_ump_msg_hdr_t,
8374 pub raw: u32,
8375}
8376pub type snd_ump_msg_midi1_t = _snd_ump_msg_midi1;
8377pub const SND_UMP_MIDI2_NOTE_ATTR_NO_DATA: _bindgen_ty_4 = 0;
8378pub const SND_UMP_MIDI2_NOTE_ATTR_MANUFACTURER: _bindgen_ty_4 = 1;
8379pub const SND_UMP_MIDI2_NOTE_ATTR_PROFILE: _bindgen_ty_4 = 2;
8380pub const SND_UMP_MIDI2_NOTE_ATTR_PITCH79: _bindgen_ty_4 = 3;
8381pub type _bindgen_ty_4 = ::core::ffi::c_uint;
8382#[repr(C, packed)]
8383#[derive(Debug, Copy, Clone)]
8384pub struct _snd_ump_msg_midi2_note {
8385 pub attr_type: u8,
8386 pub note: u8,
8387 pub _bitfield_align_1: [u8; 0],
8388 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
8389 pub attr_data: u16,
8390 pub velocity: u16,
8391}
8392impl _snd_ump_msg_midi2_note {
8393 #[inline]
8394 pub fn channel(&self) -> u8 {
8395 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
8396 }
8397 #[inline]
8398 pub fn set_channel(&mut self, val: u8) {
8399 unsafe {
8400 let val: u8 = ::core::mem::transmute(val);
8401 self._bitfield_1.set(0usize, 4u8, val as u64)
8402 }
8403 }
8404 #[inline]
8405 pub unsafe fn channel_raw(this: *const Self) -> u8 {
8406 unsafe {
8407 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8408 ::core::ptr::addr_of!((*this)._bitfield_1),
8409 0usize,
8410 4u8,
8411 ) as u8)
8412 }
8413 }
8414 #[inline]
8415 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
8416 unsafe {
8417 let val: u8 = ::core::mem::transmute(val);
8418 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8419 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8420 0usize,
8421 4u8,
8422 val as u64,
8423 )
8424 }
8425 }
8426 #[inline]
8427 pub fn status(&self) -> u8 {
8428 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
8429 }
8430 #[inline]
8431 pub fn set_status(&mut self, val: u8) {
8432 unsafe {
8433 let val: u8 = ::core::mem::transmute(val);
8434 self._bitfield_1.set(4usize, 4u8, val as u64)
8435 }
8436 }
8437 #[inline]
8438 pub unsafe fn status_raw(this: *const Self) -> u8 {
8439 unsafe {
8440 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8441 ::core::ptr::addr_of!((*this)._bitfield_1),
8442 4usize,
8443 4u8,
8444 ) as u8)
8445 }
8446 }
8447 #[inline]
8448 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
8449 unsafe {
8450 let val: u8 = ::core::mem::transmute(val);
8451 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8452 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8453 4usize,
8454 4u8,
8455 val as u64,
8456 )
8457 }
8458 }
8459 #[inline]
8460 pub fn group(&self) -> u8 {
8461 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
8462 }
8463 #[inline]
8464 pub fn set_group(&mut self, val: u8) {
8465 unsafe {
8466 let val: u8 = ::core::mem::transmute(val);
8467 self._bitfield_1.set(8usize, 4u8, val as u64)
8468 }
8469 }
8470 #[inline]
8471 pub unsafe fn group_raw(this: *const Self) -> u8 {
8472 unsafe {
8473 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8474 ::core::ptr::addr_of!((*this)._bitfield_1),
8475 8usize,
8476 4u8,
8477 ) as u8)
8478 }
8479 }
8480 #[inline]
8481 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
8482 unsafe {
8483 let val: u8 = ::core::mem::transmute(val);
8484 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8485 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8486 8usize,
8487 4u8,
8488 val as u64,
8489 )
8490 }
8491 }
8492 #[inline]
8493 pub fn type_(&self) -> u8 {
8494 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
8495 }
8496 #[inline]
8497 pub fn set_type(&mut self, val: u8) {
8498 unsafe {
8499 let val: u8 = ::core::mem::transmute(val);
8500 self._bitfield_1.set(12usize, 4u8, val as u64)
8501 }
8502 }
8503 #[inline]
8504 pub unsafe fn type__raw(this: *const Self) -> u8 {
8505 unsafe {
8506 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8507 ::core::ptr::addr_of!((*this)._bitfield_1),
8508 12usize,
8509 4u8,
8510 ) as u8)
8511 }
8512 }
8513 #[inline]
8514 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
8515 unsafe {
8516 let val: u8 = ::core::mem::transmute(val);
8517 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8518 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8519 12usize,
8520 4u8,
8521 val as u64,
8522 )
8523 }
8524 }
8525 #[inline]
8526 pub fn new_bitfield_1(
8527 channel: u8,
8528 status: u8,
8529 group: u8,
8530 type_: u8,
8531 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8532 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8533 __bindgen_bitfield_unit.set(0usize, 4u8, {
8534 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
8535 channel as u64
8536 });
8537 __bindgen_bitfield_unit.set(4usize, 4u8, {
8538 let status: u8 = unsafe { ::core::mem::transmute(status) };
8539 status as u64
8540 });
8541 __bindgen_bitfield_unit.set(8usize, 4u8, {
8542 let group: u8 = unsafe { ::core::mem::transmute(group) };
8543 group as u64
8544 });
8545 __bindgen_bitfield_unit.set(12usize, 4u8, {
8546 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
8547 type_ as u64
8548 });
8549 __bindgen_bitfield_unit
8550 }
8551}
8552pub type snd_ump_msg_midi2_note_t = _snd_ump_msg_midi2_note;
8553#[repr(C, packed)]
8554#[derive(Debug, Copy, Clone)]
8555pub struct _snd_ump_msg_midi2_paf {
8556 pub reserved: u8,
8557 pub note: u8,
8558 pub _bitfield_align_1: [u8; 0],
8559 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
8560 pub data: u32,
8561}
8562impl _snd_ump_msg_midi2_paf {
8563 #[inline]
8564 pub fn channel(&self) -> u8 {
8565 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
8566 }
8567 #[inline]
8568 pub fn set_channel(&mut self, val: u8) {
8569 unsafe {
8570 let val: u8 = ::core::mem::transmute(val);
8571 self._bitfield_1.set(0usize, 4u8, val as u64)
8572 }
8573 }
8574 #[inline]
8575 pub unsafe fn channel_raw(this: *const Self) -> u8 {
8576 unsafe {
8577 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8578 ::core::ptr::addr_of!((*this)._bitfield_1),
8579 0usize,
8580 4u8,
8581 ) as u8)
8582 }
8583 }
8584 #[inline]
8585 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
8586 unsafe {
8587 let val: u8 = ::core::mem::transmute(val);
8588 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8589 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8590 0usize,
8591 4u8,
8592 val as u64,
8593 )
8594 }
8595 }
8596 #[inline]
8597 pub fn status(&self) -> u8 {
8598 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
8599 }
8600 #[inline]
8601 pub fn set_status(&mut self, val: u8) {
8602 unsafe {
8603 let val: u8 = ::core::mem::transmute(val);
8604 self._bitfield_1.set(4usize, 4u8, val as u64)
8605 }
8606 }
8607 #[inline]
8608 pub unsafe fn status_raw(this: *const Self) -> u8 {
8609 unsafe {
8610 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8611 ::core::ptr::addr_of!((*this)._bitfield_1),
8612 4usize,
8613 4u8,
8614 ) as u8)
8615 }
8616 }
8617 #[inline]
8618 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
8619 unsafe {
8620 let val: u8 = ::core::mem::transmute(val);
8621 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8622 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8623 4usize,
8624 4u8,
8625 val as u64,
8626 )
8627 }
8628 }
8629 #[inline]
8630 pub fn group(&self) -> u8 {
8631 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
8632 }
8633 #[inline]
8634 pub fn set_group(&mut self, val: u8) {
8635 unsafe {
8636 let val: u8 = ::core::mem::transmute(val);
8637 self._bitfield_1.set(8usize, 4u8, val as u64)
8638 }
8639 }
8640 #[inline]
8641 pub unsafe fn group_raw(this: *const Self) -> u8 {
8642 unsafe {
8643 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8644 ::core::ptr::addr_of!((*this)._bitfield_1),
8645 8usize,
8646 4u8,
8647 ) as u8)
8648 }
8649 }
8650 #[inline]
8651 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
8652 unsafe {
8653 let val: u8 = ::core::mem::transmute(val);
8654 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8655 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8656 8usize,
8657 4u8,
8658 val as u64,
8659 )
8660 }
8661 }
8662 #[inline]
8663 pub fn type_(&self) -> u8 {
8664 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
8665 }
8666 #[inline]
8667 pub fn set_type(&mut self, val: u8) {
8668 unsafe {
8669 let val: u8 = ::core::mem::transmute(val);
8670 self._bitfield_1.set(12usize, 4u8, val as u64)
8671 }
8672 }
8673 #[inline]
8674 pub unsafe fn type__raw(this: *const Self) -> u8 {
8675 unsafe {
8676 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8677 ::core::ptr::addr_of!((*this)._bitfield_1),
8678 12usize,
8679 4u8,
8680 ) as u8)
8681 }
8682 }
8683 #[inline]
8684 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
8685 unsafe {
8686 let val: u8 = ::core::mem::transmute(val);
8687 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8688 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8689 12usize,
8690 4u8,
8691 val as u64,
8692 )
8693 }
8694 }
8695 #[inline]
8696 pub fn new_bitfield_1(
8697 channel: u8,
8698 status: u8,
8699 group: u8,
8700 type_: u8,
8701 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8702 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8703 __bindgen_bitfield_unit.set(0usize, 4u8, {
8704 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
8705 channel as u64
8706 });
8707 __bindgen_bitfield_unit.set(4usize, 4u8, {
8708 let status: u8 = unsafe { ::core::mem::transmute(status) };
8709 status as u64
8710 });
8711 __bindgen_bitfield_unit.set(8usize, 4u8, {
8712 let group: u8 = unsafe { ::core::mem::transmute(group) };
8713 group as u64
8714 });
8715 __bindgen_bitfield_unit.set(12usize, 4u8, {
8716 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
8717 type_ as u64
8718 });
8719 __bindgen_bitfield_unit
8720 }
8721}
8722pub type snd_ump_msg_midi2_paf_t = _snd_ump_msg_midi2_paf;
8723#[repr(C, packed)]
8724#[derive(Debug, Copy, Clone)]
8725pub struct _snd_ump_msg_midi2_per_note_cc {
8726 pub index: u8,
8727 pub note: u8,
8728 pub _bitfield_align_1: [u8; 0],
8729 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
8730 pub data: u32,
8731}
8732impl _snd_ump_msg_midi2_per_note_cc {
8733 #[inline]
8734 pub fn channel(&self) -> u8 {
8735 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
8736 }
8737 #[inline]
8738 pub fn set_channel(&mut self, val: u8) {
8739 unsafe {
8740 let val: u8 = ::core::mem::transmute(val);
8741 self._bitfield_1.set(0usize, 4u8, val as u64)
8742 }
8743 }
8744 #[inline]
8745 pub unsafe fn channel_raw(this: *const Self) -> u8 {
8746 unsafe {
8747 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8748 ::core::ptr::addr_of!((*this)._bitfield_1),
8749 0usize,
8750 4u8,
8751 ) as u8)
8752 }
8753 }
8754 #[inline]
8755 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
8756 unsafe {
8757 let val: u8 = ::core::mem::transmute(val);
8758 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8759 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8760 0usize,
8761 4u8,
8762 val as u64,
8763 )
8764 }
8765 }
8766 #[inline]
8767 pub fn status(&self) -> u8 {
8768 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
8769 }
8770 #[inline]
8771 pub fn set_status(&mut self, val: u8) {
8772 unsafe {
8773 let val: u8 = ::core::mem::transmute(val);
8774 self._bitfield_1.set(4usize, 4u8, val as u64)
8775 }
8776 }
8777 #[inline]
8778 pub unsafe fn status_raw(this: *const Self) -> u8 {
8779 unsafe {
8780 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8781 ::core::ptr::addr_of!((*this)._bitfield_1),
8782 4usize,
8783 4u8,
8784 ) as u8)
8785 }
8786 }
8787 #[inline]
8788 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
8789 unsafe {
8790 let val: u8 = ::core::mem::transmute(val);
8791 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8792 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8793 4usize,
8794 4u8,
8795 val as u64,
8796 )
8797 }
8798 }
8799 #[inline]
8800 pub fn group(&self) -> u8 {
8801 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
8802 }
8803 #[inline]
8804 pub fn set_group(&mut self, val: u8) {
8805 unsafe {
8806 let val: u8 = ::core::mem::transmute(val);
8807 self._bitfield_1.set(8usize, 4u8, val as u64)
8808 }
8809 }
8810 #[inline]
8811 pub unsafe fn group_raw(this: *const Self) -> u8 {
8812 unsafe {
8813 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8814 ::core::ptr::addr_of!((*this)._bitfield_1),
8815 8usize,
8816 4u8,
8817 ) as u8)
8818 }
8819 }
8820 #[inline]
8821 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
8822 unsafe {
8823 let val: u8 = ::core::mem::transmute(val);
8824 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8825 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8826 8usize,
8827 4u8,
8828 val as u64,
8829 )
8830 }
8831 }
8832 #[inline]
8833 pub fn type_(&self) -> u8 {
8834 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
8835 }
8836 #[inline]
8837 pub fn set_type(&mut self, val: u8) {
8838 unsafe {
8839 let val: u8 = ::core::mem::transmute(val);
8840 self._bitfield_1.set(12usize, 4u8, val as u64)
8841 }
8842 }
8843 #[inline]
8844 pub unsafe fn type__raw(this: *const Self) -> u8 {
8845 unsafe {
8846 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8847 ::core::ptr::addr_of!((*this)._bitfield_1),
8848 12usize,
8849 4u8,
8850 ) as u8)
8851 }
8852 }
8853 #[inline]
8854 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
8855 unsafe {
8856 let val: u8 = ::core::mem::transmute(val);
8857 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8858 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8859 12usize,
8860 4u8,
8861 val as u64,
8862 )
8863 }
8864 }
8865 #[inline]
8866 pub fn new_bitfield_1(
8867 channel: u8,
8868 status: u8,
8869 group: u8,
8870 type_: u8,
8871 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8872 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8873 __bindgen_bitfield_unit.set(0usize, 4u8, {
8874 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
8875 channel as u64
8876 });
8877 __bindgen_bitfield_unit.set(4usize, 4u8, {
8878 let status: u8 = unsafe { ::core::mem::transmute(status) };
8879 status as u64
8880 });
8881 __bindgen_bitfield_unit.set(8usize, 4u8, {
8882 let group: u8 = unsafe { ::core::mem::transmute(group) };
8883 group as u64
8884 });
8885 __bindgen_bitfield_unit.set(12usize, 4u8, {
8886 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
8887 type_ as u64
8888 });
8889 __bindgen_bitfield_unit
8890 }
8891}
8892pub type snd_ump_msg_midi2_per_note_cc_t = _snd_ump_msg_midi2_per_note_cc;
8893pub const SND_UMP_MIDI2_PNMGMT_RESET_CONTROLLERS: _bindgen_ty_5 = 1;
8894pub const SND_UMP_MIDI2_PNMGMT_DETACH_CONTROLLERS: _bindgen_ty_5 = 2;
8895pub type _bindgen_ty_5 = ::core::ffi::c_uint;
8896#[repr(C, packed)]
8897#[derive(Debug, Copy, Clone)]
8898pub struct _snd_ump_msg_midi2_per_note_mgmt {
8899 pub flags: u8,
8900 pub note: u8,
8901 pub _bitfield_align_1: [u8; 0],
8902 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
8903 pub reserved: u32,
8904}
8905impl _snd_ump_msg_midi2_per_note_mgmt {
8906 #[inline]
8907 pub fn channel(&self) -> u8 {
8908 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
8909 }
8910 #[inline]
8911 pub fn set_channel(&mut self, val: u8) {
8912 unsafe {
8913 let val: u8 = ::core::mem::transmute(val);
8914 self._bitfield_1.set(0usize, 4u8, val as u64)
8915 }
8916 }
8917 #[inline]
8918 pub unsafe fn channel_raw(this: *const Self) -> u8 {
8919 unsafe {
8920 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8921 ::core::ptr::addr_of!((*this)._bitfield_1),
8922 0usize,
8923 4u8,
8924 ) as u8)
8925 }
8926 }
8927 #[inline]
8928 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
8929 unsafe {
8930 let val: u8 = ::core::mem::transmute(val);
8931 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8932 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8933 0usize,
8934 4u8,
8935 val as u64,
8936 )
8937 }
8938 }
8939 #[inline]
8940 pub fn status(&self) -> u8 {
8941 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
8942 }
8943 #[inline]
8944 pub fn set_status(&mut self, val: u8) {
8945 unsafe {
8946 let val: u8 = ::core::mem::transmute(val);
8947 self._bitfield_1.set(4usize, 4u8, val as u64)
8948 }
8949 }
8950 #[inline]
8951 pub unsafe fn status_raw(this: *const Self) -> u8 {
8952 unsafe {
8953 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8954 ::core::ptr::addr_of!((*this)._bitfield_1),
8955 4usize,
8956 4u8,
8957 ) as u8)
8958 }
8959 }
8960 #[inline]
8961 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
8962 unsafe {
8963 let val: u8 = ::core::mem::transmute(val);
8964 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8965 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8966 4usize,
8967 4u8,
8968 val as u64,
8969 )
8970 }
8971 }
8972 #[inline]
8973 pub fn group(&self) -> u8 {
8974 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
8975 }
8976 #[inline]
8977 pub fn set_group(&mut self, val: u8) {
8978 unsafe {
8979 let val: u8 = ::core::mem::transmute(val);
8980 self._bitfield_1.set(8usize, 4u8, val as u64)
8981 }
8982 }
8983 #[inline]
8984 pub unsafe fn group_raw(this: *const Self) -> u8 {
8985 unsafe {
8986 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
8987 ::core::ptr::addr_of!((*this)._bitfield_1),
8988 8usize,
8989 4u8,
8990 ) as u8)
8991 }
8992 }
8993 #[inline]
8994 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
8995 unsafe {
8996 let val: u8 = ::core::mem::transmute(val);
8997 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
8998 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
8999 8usize,
9000 4u8,
9001 val as u64,
9002 )
9003 }
9004 }
9005 #[inline]
9006 pub fn type_(&self) -> u8 {
9007 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
9008 }
9009 #[inline]
9010 pub fn set_type(&mut self, val: u8) {
9011 unsafe {
9012 let val: u8 = ::core::mem::transmute(val);
9013 self._bitfield_1.set(12usize, 4u8, val as u64)
9014 }
9015 }
9016 #[inline]
9017 pub unsafe fn type__raw(this: *const Self) -> u8 {
9018 unsafe {
9019 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9020 ::core::ptr::addr_of!((*this)._bitfield_1),
9021 12usize,
9022 4u8,
9023 ) as u8)
9024 }
9025 }
9026 #[inline]
9027 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
9028 unsafe {
9029 let val: u8 = ::core::mem::transmute(val);
9030 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9031 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9032 12usize,
9033 4u8,
9034 val as u64,
9035 )
9036 }
9037 }
9038 #[inline]
9039 pub fn new_bitfield_1(
9040 channel: u8,
9041 status: u8,
9042 group: u8,
9043 type_: u8,
9044 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
9045 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
9046 __bindgen_bitfield_unit.set(0usize, 4u8, {
9047 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
9048 channel as u64
9049 });
9050 __bindgen_bitfield_unit.set(4usize, 4u8, {
9051 let status: u8 = unsafe { ::core::mem::transmute(status) };
9052 status as u64
9053 });
9054 __bindgen_bitfield_unit.set(8usize, 4u8, {
9055 let group: u8 = unsafe { ::core::mem::transmute(group) };
9056 group as u64
9057 });
9058 __bindgen_bitfield_unit.set(12usize, 4u8, {
9059 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
9060 type_ as u64
9061 });
9062 __bindgen_bitfield_unit
9063 }
9064}
9065pub type snd_ump_msg_midi2_per_note_mgmt_t = _snd_ump_msg_midi2_per_note_mgmt;
9066#[repr(C, packed)]
9067#[derive(Debug, Copy, Clone)]
9068pub struct _snd_ump_msg_midi2_cc {
9069 pub reserved: u8,
9070 pub index: u8,
9071 pub _bitfield_align_1: [u8; 0],
9072 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
9073 pub data: u32,
9074}
9075impl _snd_ump_msg_midi2_cc {
9076 #[inline]
9077 pub fn channel(&self) -> u8 {
9078 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
9079 }
9080 #[inline]
9081 pub fn set_channel(&mut self, val: u8) {
9082 unsafe {
9083 let val: u8 = ::core::mem::transmute(val);
9084 self._bitfield_1.set(0usize, 4u8, val as u64)
9085 }
9086 }
9087 #[inline]
9088 pub unsafe fn channel_raw(this: *const Self) -> u8 {
9089 unsafe {
9090 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9091 ::core::ptr::addr_of!((*this)._bitfield_1),
9092 0usize,
9093 4u8,
9094 ) as u8)
9095 }
9096 }
9097 #[inline]
9098 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
9099 unsafe {
9100 let val: u8 = ::core::mem::transmute(val);
9101 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9102 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9103 0usize,
9104 4u8,
9105 val as u64,
9106 )
9107 }
9108 }
9109 #[inline]
9110 pub fn status(&self) -> u8 {
9111 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
9112 }
9113 #[inline]
9114 pub fn set_status(&mut self, val: u8) {
9115 unsafe {
9116 let val: u8 = ::core::mem::transmute(val);
9117 self._bitfield_1.set(4usize, 4u8, val as u64)
9118 }
9119 }
9120 #[inline]
9121 pub unsafe fn status_raw(this: *const Self) -> u8 {
9122 unsafe {
9123 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9124 ::core::ptr::addr_of!((*this)._bitfield_1),
9125 4usize,
9126 4u8,
9127 ) as u8)
9128 }
9129 }
9130 #[inline]
9131 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
9132 unsafe {
9133 let val: u8 = ::core::mem::transmute(val);
9134 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9135 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9136 4usize,
9137 4u8,
9138 val as u64,
9139 )
9140 }
9141 }
9142 #[inline]
9143 pub fn group(&self) -> u8 {
9144 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
9145 }
9146 #[inline]
9147 pub fn set_group(&mut self, val: u8) {
9148 unsafe {
9149 let val: u8 = ::core::mem::transmute(val);
9150 self._bitfield_1.set(8usize, 4u8, val as u64)
9151 }
9152 }
9153 #[inline]
9154 pub unsafe fn group_raw(this: *const Self) -> u8 {
9155 unsafe {
9156 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9157 ::core::ptr::addr_of!((*this)._bitfield_1),
9158 8usize,
9159 4u8,
9160 ) as u8)
9161 }
9162 }
9163 #[inline]
9164 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
9165 unsafe {
9166 let val: u8 = ::core::mem::transmute(val);
9167 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9168 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9169 8usize,
9170 4u8,
9171 val as u64,
9172 )
9173 }
9174 }
9175 #[inline]
9176 pub fn type_(&self) -> u8 {
9177 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
9178 }
9179 #[inline]
9180 pub fn set_type(&mut self, val: u8) {
9181 unsafe {
9182 let val: u8 = ::core::mem::transmute(val);
9183 self._bitfield_1.set(12usize, 4u8, val as u64)
9184 }
9185 }
9186 #[inline]
9187 pub unsafe fn type__raw(this: *const Self) -> u8 {
9188 unsafe {
9189 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9190 ::core::ptr::addr_of!((*this)._bitfield_1),
9191 12usize,
9192 4u8,
9193 ) as u8)
9194 }
9195 }
9196 #[inline]
9197 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
9198 unsafe {
9199 let val: u8 = ::core::mem::transmute(val);
9200 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9201 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9202 12usize,
9203 4u8,
9204 val as u64,
9205 )
9206 }
9207 }
9208 #[inline]
9209 pub fn new_bitfield_1(
9210 channel: u8,
9211 status: u8,
9212 group: u8,
9213 type_: u8,
9214 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
9215 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
9216 __bindgen_bitfield_unit.set(0usize, 4u8, {
9217 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
9218 channel as u64
9219 });
9220 __bindgen_bitfield_unit.set(4usize, 4u8, {
9221 let status: u8 = unsafe { ::core::mem::transmute(status) };
9222 status as u64
9223 });
9224 __bindgen_bitfield_unit.set(8usize, 4u8, {
9225 let group: u8 = unsafe { ::core::mem::transmute(group) };
9226 group as u64
9227 });
9228 __bindgen_bitfield_unit.set(12usize, 4u8, {
9229 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
9230 type_ as u64
9231 });
9232 __bindgen_bitfield_unit
9233 }
9234}
9235pub type snd_ump_msg_midi2_cc_t = _snd_ump_msg_midi2_cc;
9236#[repr(C, packed)]
9237#[derive(Debug, Copy, Clone)]
9238pub struct _snd_ump_msg_midi2_rpn {
9239 pub index: u8,
9240 pub bank: u8,
9241 pub _bitfield_align_1: [u8; 0],
9242 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
9243 pub data: u32,
9244}
9245impl _snd_ump_msg_midi2_rpn {
9246 #[inline]
9247 pub fn channel(&self) -> u8 {
9248 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
9249 }
9250 #[inline]
9251 pub fn set_channel(&mut self, val: u8) {
9252 unsafe {
9253 let val: u8 = ::core::mem::transmute(val);
9254 self._bitfield_1.set(0usize, 4u8, val as u64)
9255 }
9256 }
9257 #[inline]
9258 pub unsafe fn channel_raw(this: *const Self) -> u8 {
9259 unsafe {
9260 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9261 ::core::ptr::addr_of!((*this)._bitfield_1),
9262 0usize,
9263 4u8,
9264 ) as u8)
9265 }
9266 }
9267 #[inline]
9268 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
9269 unsafe {
9270 let val: u8 = ::core::mem::transmute(val);
9271 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9272 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9273 0usize,
9274 4u8,
9275 val as u64,
9276 )
9277 }
9278 }
9279 #[inline]
9280 pub fn status(&self) -> u8 {
9281 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
9282 }
9283 #[inline]
9284 pub fn set_status(&mut self, val: u8) {
9285 unsafe {
9286 let val: u8 = ::core::mem::transmute(val);
9287 self._bitfield_1.set(4usize, 4u8, val as u64)
9288 }
9289 }
9290 #[inline]
9291 pub unsafe fn status_raw(this: *const Self) -> u8 {
9292 unsafe {
9293 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9294 ::core::ptr::addr_of!((*this)._bitfield_1),
9295 4usize,
9296 4u8,
9297 ) as u8)
9298 }
9299 }
9300 #[inline]
9301 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
9302 unsafe {
9303 let val: u8 = ::core::mem::transmute(val);
9304 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9305 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9306 4usize,
9307 4u8,
9308 val as u64,
9309 )
9310 }
9311 }
9312 #[inline]
9313 pub fn group(&self) -> u8 {
9314 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
9315 }
9316 #[inline]
9317 pub fn set_group(&mut self, val: u8) {
9318 unsafe {
9319 let val: u8 = ::core::mem::transmute(val);
9320 self._bitfield_1.set(8usize, 4u8, val as u64)
9321 }
9322 }
9323 #[inline]
9324 pub unsafe fn group_raw(this: *const Self) -> u8 {
9325 unsafe {
9326 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9327 ::core::ptr::addr_of!((*this)._bitfield_1),
9328 8usize,
9329 4u8,
9330 ) as u8)
9331 }
9332 }
9333 #[inline]
9334 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
9335 unsafe {
9336 let val: u8 = ::core::mem::transmute(val);
9337 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9338 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9339 8usize,
9340 4u8,
9341 val as u64,
9342 )
9343 }
9344 }
9345 #[inline]
9346 pub fn type_(&self) -> u8 {
9347 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
9348 }
9349 #[inline]
9350 pub fn set_type(&mut self, val: u8) {
9351 unsafe {
9352 let val: u8 = ::core::mem::transmute(val);
9353 self._bitfield_1.set(12usize, 4u8, val as u64)
9354 }
9355 }
9356 #[inline]
9357 pub unsafe fn type__raw(this: *const Self) -> u8 {
9358 unsafe {
9359 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9360 ::core::ptr::addr_of!((*this)._bitfield_1),
9361 12usize,
9362 4u8,
9363 ) as u8)
9364 }
9365 }
9366 #[inline]
9367 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
9368 unsafe {
9369 let val: u8 = ::core::mem::transmute(val);
9370 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9371 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9372 12usize,
9373 4u8,
9374 val as u64,
9375 )
9376 }
9377 }
9378 #[inline]
9379 pub fn new_bitfield_1(
9380 channel: u8,
9381 status: u8,
9382 group: u8,
9383 type_: u8,
9384 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
9385 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
9386 __bindgen_bitfield_unit.set(0usize, 4u8, {
9387 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
9388 channel as u64
9389 });
9390 __bindgen_bitfield_unit.set(4usize, 4u8, {
9391 let status: u8 = unsafe { ::core::mem::transmute(status) };
9392 status as u64
9393 });
9394 __bindgen_bitfield_unit.set(8usize, 4u8, {
9395 let group: u8 = unsafe { ::core::mem::transmute(group) };
9396 group as u64
9397 });
9398 __bindgen_bitfield_unit.set(12usize, 4u8, {
9399 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
9400 type_ as u64
9401 });
9402 __bindgen_bitfield_unit
9403 }
9404}
9405pub type snd_ump_msg_midi2_rpn_t = _snd_ump_msg_midi2_rpn;
9406#[repr(C, packed)]
9407#[derive(Debug, Copy, Clone)]
9408pub struct _snd_ump_msg_midi2_program {
9409 pub _bitfield_align_1: [u8; 0],
9410 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
9411 pub bank_lsb: u8,
9412 pub bank_msb: u8,
9413 pub reserved2: u8,
9414 pub program: u8,
9415}
9416impl _snd_ump_msg_midi2_program {
9417 #[inline]
9418 pub fn bank_valid(&self) -> u16 {
9419 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) }
9420 }
9421 #[inline]
9422 pub fn set_bank_valid(&mut self, val: u16) {
9423 unsafe {
9424 let val: u16 = ::core::mem::transmute(val);
9425 self._bitfield_1.set(0usize, 1u8, val as u64)
9426 }
9427 }
9428 #[inline]
9429 pub unsafe fn bank_valid_raw(this: *const Self) -> u16 {
9430 unsafe {
9431 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
9432 ::core::ptr::addr_of!((*this)._bitfield_1),
9433 0usize,
9434 1u8,
9435 ) as u16)
9436 }
9437 }
9438 #[inline]
9439 pub unsafe fn set_bank_valid_raw(this: *mut Self, val: u16) {
9440 unsafe {
9441 let val: u16 = ::core::mem::transmute(val);
9442 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
9443 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9444 0usize,
9445 1u8,
9446 val as u64,
9447 )
9448 }
9449 }
9450 #[inline]
9451 pub fn reserved(&self) -> u16 {
9452 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 15u8) as u16) }
9453 }
9454 #[inline]
9455 pub fn set_reserved(&mut self, val: u16) {
9456 unsafe {
9457 let val: u16 = ::core::mem::transmute(val);
9458 self._bitfield_1.set(1usize, 15u8, val as u64)
9459 }
9460 }
9461 #[inline]
9462 pub unsafe fn reserved_raw(this: *const Self) -> u16 {
9463 unsafe {
9464 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
9465 ::core::ptr::addr_of!((*this)._bitfield_1),
9466 1usize,
9467 15u8,
9468 ) as u16)
9469 }
9470 }
9471 #[inline]
9472 pub unsafe fn set_reserved_raw(this: *mut Self, val: u16) {
9473 unsafe {
9474 let val: u16 = ::core::mem::transmute(val);
9475 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
9476 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9477 1usize,
9478 15u8,
9479 val as u64,
9480 )
9481 }
9482 }
9483 #[inline]
9484 pub fn channel(&self) -> u8 {
9485 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 4u8) as u8) }
9486 }
9487 #[inline]
9488 pub fn set_channel(&mut self, val: u8) {
9489 unsafe {
9490 let val: u8 = ::core::mem::transmute(val);
9491 self._bitfield_1.set(16usize, 4u8, val as u64)
9492 }
9493 }
9494 #[inline]
9495 pub unsafe fn channel_raw(this: *const Self) -> u8 {
9496 unsafe {
9497 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
9498 ::core::ptr::addr_of!((*this)._bitfield_1),
9499 16usize,
9500 4u8,
9501 ) as u8)
9502 }
9503 }
9504 #[inline]
9505 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
9506 unsafe {
9507 let val: u8 = ::core::mem::transmute(val);
9508 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
9509 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9510 16usize,
9511 4u8,
9512 val as u64,
9513 )
9514 }
9515 }
9516 #[inline]
9517 pub fn status(&self) -> u8 {
9518 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 4u8) as u8) }
9519 }
9520 #[inline]
9521 pub fn set_status(&mut self, val: u8) {
9522 unsafe {
9523 let val: u8 = ::core::mem::transmute(val);
9524 self._bitfield_1.set(20usize, 4u8, val as u64)
9525 }
9526 }
9527 #[inline]
9528 pub unsafe fn status_raw(this: *const Self) -> u8 {
9529 unsafe {
9530 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
9531 ::core::ptr::addr_of!((*this)._bitfield_1),
9532 20usize,
9533 4u8,
9534 ) as u8)
9535 }
9536 }
9537 #[inline]
9538 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
9539 unsafe {
9540 let val: u8 = ::core::mem::transmute(val);
9541 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
9542 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9543 20usize,
9544 4u8,
9545 val as u64,
9546 )
9547 }
9548 }
9549 #[inline]
9550 pub fn group(&self) -> u8 {
9551 unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 4u8) as u8) }
9552 }
9553 #[inline]
9554 pub fn set_group(&mut self, val: u8) {
9555 unsafe {
9556 let val: u8 = ::core::mem::transmute(val);
9557 self._bitfield_1.set(24usize, 4u8, val as u64)
9558 }
9559 }
9560 #[inline]
9561 pub unsafe fn group_raw(this: *const Self) -> u8 {
9562 unsafe {
9563 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
9564 ::core::ptr::addr_of!((*this)._bitfield_1),
9565 24usize,
9566 4u8,
9567 ) as u8)
9568 }
9569 }
9570 #[inline]
9571 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
9572 unsafe {
9573 let val: u8 = ::core::mem::transmute(val);
9574 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
9575 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9576 24usize,
9577 4u8,
9578 val as u64,
9579 )
9580 }
9581 }
9582 #[inline]
9583 pub fn type_(&self) -> u8 {
9584 unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 4u8) as u8) }
9585 }
9586 #[inline]
9587 pub fn set_type(&mut self, val: u8) {
9588 unsafe {
9589 let val: u8 = ::core::mem::transmute(val);
9590 self._bitfield_1.set(28usize, 4u8, val as u64)
9591 }
9592 }
9593 #[inline]
9594 pub unsafe fn type__raw(this: *const Self) -> u8 {
9595 unsafe {
9596 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
9597 ::core::ptr::addr_of!((*this)._bitfield_1),
9598 28usize,
9599 4u8,
9600 ) as u8)
9601 }
9602 }
9603 #[inline]
9604 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
9605 unsafe {
9606 let val: u8 = ::core::mem::transmute(val);
9607 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
9608 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9609 28usize,
9610 4u8,
9611 val as u64,
9612 )
9613 }
9614 }
9615 #[inline]
9616 pub fn new_bitfield_1(
9617 bank_valid: u16,
9618 reserved: u16,
9619 channel: u8,
9620 status: u8,
9621 group: u8,
9622 type_: u8,
9623 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
9624 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
9625 __bindgen_bitfield_unit.set(0usize, 1u8, {
9626 let bank_valid: u16 = unsafe { ::core::mem::transmute(bank_valid) };
9627 bank_valid as u64
9628 });
9629 __bindgen_bitfield_unit.set(1usize, 15u8, {
9630 let reserved: u16 = unsafe { ::core::mem::transmute(reserved) };
9631 reserved as u64
9632 });
9633 __bindgen_bitfield_unit.set(16usize, 4u8, {
9634 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
9635 channel as u64
9636 });
9637 __bindgen_bitfield_unit.set(20usize, 4u8, {
9638 let status: u8 = unsafe { ::core::mem::transmute(status) };
9639 status as u64
9640 });
9641 __bindgen_bitfield_unit.set(24usize, 4u8, {
9642 let group: u8 = unsafe { ::core::mem::transmute(group) };
9643 group as u64
9644 });
9645 __bindgen_bitfield_unit.set(28usize, 4u8, {
9646 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
9647 type_ as u64
9648 });
9649 __bindgen_bitfield_unit
9650 }
9651}
9652pub type snd_ump_msg_midi2_program_t = _snd_ump_msg_midi2_program;
9653#[repr(C, packed)]
9654#[derive(Debug, Copy, Clone)]
9655pub struct _snd_ump_msg_midi2_caf {
9656 pub reserved: u16,
9657 pub _bitfield_align_1: [u8; 0],
9658 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
9659 pub data: u32,
9660}
9661impl _snd_ump_msg_midi2_caf {
9662 #[inline]
9663 pub fn channel(&self) -> u8 {
9664 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
9665 }
9666 #[inline]
9667 pub fn set_channel(&mut self, val: u8) {
9668 unsafe {
9669 let val: u8 = ::core::mem::transmute(val);
9670 self._bitfield_1.set(0usize, 4u8, val as u64)
9671 }
9672 }
9673 #[inline]
9674 pub unsafe fn channel_raw(this: *const Self) -> u8 {
9675 unsafe {
9676 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9677 ::core::ptr::addr_of!((*this)._bitfield_1),
9678 0usize,
9679 4u8,
9680 ) as u8)
9681 }
9682 }
9683 #[inline]
9684 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
9685 unsafe {
9686 let val: u8 = ::core::mem::transmute(val);
9687 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9688 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9689 0usize,
9690 4u8,
9691 val as u64,
9692 )
9693 }
9694 }
9695 #[inline]
9696 pub fn status(&self) -> u8 {
9697 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
9698 }
9699 #[inline]
9700 pub fn set_status(&mut self, val: u8) {
9701 unsafe {
9702 let val: u8 = ::core::mem::transmute(val);
9703 self._bitfield_1.set(4usize, 4u8, val as u64)
9704 }
9705 }
9706 #[inline]
9707 pub unsafe fn status_raw(this: *const Self) -> u8 {
9708 unsafe {
9709 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9710 ::core::ptr::addr_of!((*this)._bitfield_1),
9711 4usize,
9712 4u8,
9713 ) as u8)
9714 }
9715 }
9716 #[inline]
9717 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
9718 unsafe {
9719 let val: u8 = ::core::mem::transmute(val);
9720 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9721 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9722 4usize,
9723 4u8,
9724 val as u64,
9725 )
9726 }
9727 }
9728 #[inline]
9729 pub fn group(&self) -> u8 {
9730 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
9731 }
9732 #[inline]
9733 pub fn set_group(&mut self, val: u8) {
9734 unsafe {
9735 let val: u8 = ::core::mem::transmute(val);
9736 self._bitfield_1.set(8usize, 4u8, val as u64)
9737 }
9738 }
9739 #[inline]
9740 pub unsafe fn group_raw(this: *const Self) -> u8 {
9741 unsafe {
9742 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9743 ::core::ptr::addr_of!((*this)._bitfield_1),
9744 8usize,
9745 4u8,
9746 ) as u8)
9747 }
9748 }
9749 #[inline]
9750 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
9751 unsafe {
9752 let val: u8 = ::core::mem::transmute(val);
9753 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9754 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9755 8usize,
9756 4u8,
9757 val as u64,
9758 )
9759 }
9760 }
9761 #[inline]
9762 pub fn type_(&self) -> u8 {
9763 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
9764 }
9765 #[inline]
9766 pub fn set_type(&mut self, val: u8) {
9767 unsafe {
9768 let val: u8 = ::core::mem::transmute(val);
9769 self._bitfield_1.set(12usize, 4u8, val as u64)
9770 }
9771 }
9772 #[inline]
9773 pub unsafe fn type__raw(this: *const Self) -> u8 {
9774 unsafe {
9775 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9776 ::core::ptr::addr_of!((*this)._bitfield_1),
9777 12usize,
9778 4u8,
9779 ) as u8)
9780 }
9781 }
9782 #[inline]
9783 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
9784 unsafe {
9785 let val: u8 = ::core::mem::transmute(val);
9786 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9787 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9788 12usize,
9789 4u8,
9790 val as u64,
9791 )
9792 }
9793 }
9794 #[inline]
9795 pub fn new_bitfield_1(
9796 channel: u8,
9797 status: u8,
9798 group: u8,
9799 type_: u8,
9800 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
9801 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
9802 __bindgen_bitfield_unit.set(0usize, 4u8, {
9803 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
9804 channel as u64
9805 });
9806 __bindgen_bitfield_unit.set(4usize, 4u8, {
9807 let status: u8 = unsafe { ::core::mem::transmute(status) };
9808 status as u64
9809 });
9810 __bindgen_bitfield_unit.set(8usize, 4u8, {
9811 let group: u8 = unsafe { ::core::mem::transmute(group) };
9812 group as u64
9813 });
9814 __bindgen_bitfield_unit.set(12usize, 4u8, {
9815 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
9816 type_ as u64
9817 });
9818 __bindgen_bitfield_unit
9819 }
9820}
9821pub type snd_ump_msg_midi2_caf_t = _snd_ump_msg_midi2_caf;
9822#[repr(C, packed)]
9823#[derive(Debug, Copy, Clone)]
9824pub struct _snd_ump_msg_midi2_pitchbend {
9825 pub reserved: u16,
9826 pub _bitfield_align_1: [u8; 0],
9827 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
9828 pub data: u32,
9829}
9830impl _snd_ump_msg_midi2_pitchbend {
9831 #[inline]
9832 pub fn channel(&self) -> u8 {
9833 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
9834 }
9835 #[inline]
9836 pub fn set_channel(&mut self, val: u8) {
9837 unsafe {
9838 let val: u8 = ::core::mem::transmute(val);
9839 self._bitfield_1.set(0usize, 4u8, val as u64)
9840 }
9841 }
9842 #[inline]
9843 pub unsafe fn channel_raw(this: *const Self) -> u8 {
9844 unsafe {
9845 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9846 ::core::ptr::addr_of!((*this)._bitfield_1),
9847 0usize,
9848 4u8,
9849 ) as u8)
9850 }
9851 }
9852 #[inline]
9853 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
9854 unsafe {
9855 let val: u8 = ::core::mem::transmute(val);
9856 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9857 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9858 0usize,
9859 4u8,
9860 val as u64,
9861 )
9862 }
9863 }
9864 #[inline]
9865 pub fn status(&self) -> u8 {
9866 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
9867 }
9868 #[inline]
9869 pub fn set_status(&mut self, val: u8) {
9870 unsafe {
9871 let val: u8 = ::core::mem::transmute(val);
9872 self._bitfield_1.set(4usize, 4u8, val as u64)
9873 }
9874 }
9875 #[inline]
9876 pub unsafe fn status_raw(this: *const Self) -> u8 {
9877 unsafe {
9878 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9879 ::core::ptr::addr_of!((*this)._bitfield_1),
9880 4usize,
9881 4u8,
9882 ) as u8)
9883 }
9884 }
9885 #[inline]
9886 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
9887 unsafe {
9888 let val: u8 = ::core::mem::transmute(val);
9889 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9890 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9891 4usize,
9892 4u8,
9893 val as u64,
9894 )
9895 }
9896 }
9897 #[inline]
9898 pub fn group(&self) -> u8 {
9899 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
9900 }
9901 #[inline]
9902 pub fn set_group(&mut self, val: u8) {
9903 unsafe {
9904 let val: u8 = ::core::mem::transmute(val);
9905 self._bitfield_1.set(8usize, 4u8, val as u64)
9906 }
9907 }
9908 #[inline]
9909 pub unsafe fn group_raw(this: *const Self) -> u8 {
9910 unsafe {
9911 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9912 ::core::ptr::addr_of!((*this)._bitfield_1),
9913 8usize,
9914 4u8,
9915 ) as u8)
9916 }
9917 }
9918 #[inline]
9919 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
9920 unsafe {
9921 let val: u8 = ::core::mem::transmute(val);
9922 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9923 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9924 8usize,
9925 4u8,
9926 val as u64,
9927 )
9928 }
9929 }
9930 #[inline]
9931 pub fn type_(&self) -> u8 {
9932 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
9933 }
9934 #[inline]
9935 pub fn set_type(&mut self, val: u8) {
9936 unsafe {
9937 let val: u8 = ::core::mem::transmute(val);
9938 self._bitfield_1.set(12usize, 4u8, val as u64)
9939 }
9940 }
9941 #[inline]
9942 pub unsafe fn type__raw(this: *const Self) -> u8 {
9943 unsafe {
9944 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
9945 ::core::ptr::addr_of!((*this)._bitfield_1),
9946 12usize,
9947 4u8,
9948 ) as u8)
9949 }
9950 }
9951 #[inline]
9952 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
9953 unsafe {
9954 let val: u8 = ::core::mem::transmute(val);
9955 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
9956 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
9957 12usize,
9958 4u8,
9959 val as u64,
9960 )
9961 }
9962 }
9963 #[inline]
9964 pub fn new_bitfield_1(
9965 channel: u8,
9966 status: u8,
9967 group: u8,
9968 type_: u8,
9969 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
9970 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
9971 __bindgen_bitfield_unit.set(0usize, 4u8, {
9972 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
9973 channel as u64
9974 });
9975 __bindgen_bitfield_unit.set(4usize, 4u8, {
9976 let status: u8 = unsafe { ::core::mem::transmute(status) };
9977 status as u64
9978 });
9979 __bindgen_bitfield_unit.set(8usize, 4u8, {
9980 let group: u8 = unsafe { ::core::mem::transmute(group) };
9981 group as u64
9982 });
9983 __bindgen_bitfield_unit.set(12usize, 4u8, {
9984 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
9985 type_ as u64
9986 });
9987 __bindgen_bitfield_unit
9988 }
9989}
9990pub type snd_ump_msg_midi2_pitchbend_t = _snd_ump_msg_midi2_pitchbend;
9991#[repr(C, packed)]
9992#[derive(Debug, Copy, Clone)]
9993pub struct _snd_ump_msg_midi2_per_note_pitchbend {
9994 pub reserved: u8,
9995 pub note: u8,
9996 pub _bitfield_align_1: [u8; 0],
9997 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
9998 pub data: u32,
9999}
10000impl _snd_ump_msg_midi2_per_note_pitchbend {
10001 #[inline]
10002 pub fn channel(&self) -> u8 {
10003 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
10004 }
10005 #[inline]
10006 pub fn set_channel(&mut self, val: u8) {
10007 unsafe {
10008 let val: u8 = ::core::mem::transmute(val);
10009 self._bitfield_1.set(0usize, 4u8, val as u64)
10010 }
10011 }
10012 #[inline]
10013 pub unsafe fn channel_raw(this: *const Self) -> u8 {
10014 unsafe {
10015 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10016 ::core::ptr::addr_of!((*this)._bitfield_1),
10017 0usize,
10018 4u8,
10019 ) as u8)
10020 }
10021 }
10022 #[inline]
10023 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
10024 unsafe {
10025 let val: u8 = ::core::mem::transmute(val);
10026 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10027 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10028 0usize,
10029 4u8,
10030 val as u64,
10031 )
10032 }
10033 }
10034 #[inline]
10035 pub fn status(&self) -> u8 {
10036 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
10037 }
10038 #[inline]
10039 pub fn set_status(&mut self, val: u8) {
10040 unsafe {
10041 let val: u8 = ::core::mem::transmute(val);
10042 self._bitfield_1.set(4usize, 4u8, val as u64)
10043 }
10044 }
10045 #[inline]
10046 pub unsafe fn status_raw(this: *const Self) -> u8 {
10047 unsafe {
10048 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10049 ::core::ptr::addr_of!((*this)._bitfield_1),
10050 4usize,
10051 4u8,
10052 ) as u8)
10053 }
10054 }
10055 #[inline]
10056 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
10057 unsafe {
10058 let val: u8 = ::core::mem::transmute(val);
10059 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10060 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10061 4usize,
10062 4u8,
10063 val as u64,
10064 )
10065 }
10066 }
10067 #[inline]
10068 pub fn group(&self) -> u8 {
10069 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
10070 }
10071 #[inline]
10072 pub fn set_group(&mut self, val: u8) {
10073 unsafe {
10074 let val: u8 = ::core::mem::transmute(val);
10075 self._bitfield_1.set(8usize, 4u8, val as u64)
10076 }
10077 }
10078 #[inline]
10079 pub unsafe fn group_raw(this: *const Self) -> u8 {
10080 unsafe {
10081 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10082 ::core::ptr::addr_of!((*this)._bitfield_1),
10083 8usize,
10084 4u8,
10085 ) as u8)
10086 }
10087 }
10088 #[inline]
10089 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
10090 unsafe {
10091 let val: u8 = ::core::mem::transmute(val);
10092 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10093 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10094 8usize,
10095 4u8,
10096 val as u64,
10097 )
10098 }
10099 }
10100 #[inline]
10101 pub fn type_(&self) -> u8 {
10102 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
10103 }
10104 #[inline]
10105 pub fn set_type(&mut self, val: u8) {
10106 unsafe {
10107 let val: u8 = ::core::mem::transmute(val);
10108 self._bitfield_1.set(12usize, 4u8, val as u64)
10109 }
10110 }
10111 #[inline]
10112 pub unsafe fn type__raw(this: *const Self) -> u8 {
10113 unsafe {
10114 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10115 ::core::ptr::addr_of!((*this)._bitfield_1),
10116 12usize,
10117 4u8,
10118 ) as u8)
10119 }
10120 }
10121 #[inline]
10122 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
10123 unsafe {
10124 let val: u8 = ::core::mem::transmute(val);
10125 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10126 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10127 12usize,
10128 4u8,
10129 val as u64,
10130 )
10131 }
10132 }
10133 #[inline]
10134 pub fn new_bitfield_1(
10135 channel: u8,
10136 status: u8,
10137 group: u8,
10138 type_: u8,
10139 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
10140 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
10141 __bindgen_bitfield_unit.set(0usize, 4u8, {
10142 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
10143 channel as u64
10144 });
10145 __bindgen_bitfield_unit.set(4usize, 4u8, {
10146 let status: u8 = unsafe { ::core::mem::transmute(status) };
10147 status as u64
10148 });
10149 __bindgen_bitfield_unit.set(8usize, 4u8, {
10150 let group: u8 = unsafe { ::core::mem::transmute(group) };
10151 group as u64
10152 });
10153 __bindgen_bitfield_unit.set(12usize, 4u8, {
10154 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
10155 type_ as u64
10156 });
10157 __bindgen_bitfield_unit
10158 }
10159}
10160pub type snd_ump_msg_midi2_per_note_pitchbend_t = _snd_ump_msg_midi2_per_note_pitchbend;
10161#[repr(C)]
10162#[derive(Copy, Clone)]
10163pub union _snd_ump_msg_midi2 {
10164 pub note_on: snd_ump_msg_midi2_note_t,
10165 pub note_off: snd_ump_msg_midi2_note_t,
10166 pub poly_pressure: snd_ump_msg_midi2_paf_t,
10167 pub per_note_acc: snd_ump_msg_midi2_per_note_cc_t,
10168 pub per_note_rcc: snd_ump_msg_midi2_per_note_cc_t,
10169 pub per_note_mgmt: snd_ump_msg_midi2_per_note_mgmt_t,
10170 pub control_change: snd_ump_msg_midi2_cc_t,
10171 pub rpn: snd_ump_msg_midi2_rpn_t,
10172 pub nrpn: snd_ump_msg_midi2_rpn_t,
10173 pub relative_rpn: snd_ump_msg_midi2_rpn_t,
10174 pub relative_nrpn: snd_ump_msg_midi2_rpn_t,
10175 pub program_change: snd_ump_msg_midi2_program_t,
10176 pub channel_pressure: snd_ump_msg_midi2_caf_t,
10177 pub pitchbend: snd_ump_msg_midi2_pitchbend_t,
10178 pub per_note_pitchbend: snd_ump_msg_midi2_per_note_pitchbend_t,
10179 pub hdr: snd_ump_msg_hdr_t,
10180 pub raw: [u32; 2usize],
10181}
10182pub type snd_ump_msg_midi2_t = _snd_ump_msg_midi2;
10183#[repr(C, packed)]
10184#[derive(Debug, Copy, Clone)]
10185pub struct _snd_ump_msg_stream_gen {
10186 pub data1: u16,
10187 pub _bitfield_align_1: [u8; 0],
10188 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
10189 pub data2: u32,
10190 pub data3: u32,
10191 pub data4: u32,
10192}
10193impl _snd_ump_msg_stream_gen {
10194 #[inline]
10195 pub fn status(&self) -> u16 {
10196 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 10u8) as u16) }
10197 }
10198 #[inline]
10199 pub fn set_status(&mut self, val: u16) {
10200 unsafe {
10201 let val: u16 = ::core::mem::transmute(val);
10202 self._bitfield_1.set(0usize, 10u8, val as u64)
10203 }
10204 }
10205 #[inline]
10206 pub unsafe fn status_raw(this: *const Self) -> u16 {
10207 unsafe {
10208 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10209 ::core::ptr::addr_of!((*this)._bitfield_1),
10210 0usize,
10211 10u8,
10212 ) as u16)
10213 }
10214 }
10215 #[inline]
10216 pub unsafe fn set_status_raw(this: *mut Self, val: u16) {
10217 unsafe {
10218 let val: u16 = ::core::mem::transmute(val);
10219 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10220 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10221 0usize,
10222 10u8,
10223 val as u64,
10224 )
10225 }
10226 }
10227 #[inline]
10228 pub fn format(&self) -> u16 {
10229 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 2u8) as u16) }
10230 }
10231 #[inline]
10232 pub fn set_format(&mut self, val: u16) {
10233 unsafe {
10234 let val: u16 = ::core::mem::transmute(val);
10235 self._bitfield_1.set(10usize, 2u8, val as u64)
10236 }
10237 }
10238 #[inline]
10239 pub unsafe fn format_raw(this: *const Self) -> u16 {
10240 unsafe {
10241 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10242 ::core::ptr::addr_of!((*this)._bitfield_1),
10243 10usize,
10244 2u8,
10245 ) as u16)
10246 }
10247 }
10248 #[inline]
10249 pub unsafe fn set_format_raw(this: *mut Self, val: u16) {
10250 unsafe {
10251 let val: u16 = ::core::mem::transmute(val);
10252 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10253 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10254 10usize,
10255 2u8,
10256 val as u64,
10257 )
10258 }
10259 }
10260 #[inline]
10261 pub fn type_(&self) -> u16 {
10262 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u16) }
10263 }
10264 #[inline]
10265 pub fn set_type(&mut self, val: u16) {
10266 unsafe {
10267 let val: u16 = ::core::mem::transmute(val);
10268 self._bitfield_1.set(12usize, 4u8, val as u64)
10269 }
10270 }
10271 #[inline]
10272 pub unsafe fn type__raw(this: *const Self) -> u16 {
10273 unsafe {
10274 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10275 ::core::ptr::addr_of!((*this)._bitfield_1),
10276 12usize,
10277 4u8,
10278 ) as u16)
10279 }
10280 }
10281 #[inline]
10282 pub unsafe fn set_type_raw(this: *mut Self, val: u16) {
10283 unsafe {
10284 let val: u16 = ::core::mem::transmute(val);
10285 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10286 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10287 12usize,
10288 4u8,
10289 val as u64,
10290 )
10291 }
10292 }
10293 #[inline]
10294 pub fn new_bitfield_1(
10295 status: u16,
10296 format: u16,
10297 type_: u16,
10298 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
10299 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
10300 __bindgen_bitfield_unit.set(0usize, 10u8, {
10301 let status: u16 = unsafe { ::core::mem::transmute(status) };
10302 status as u64
10303 });
10304 __bindgen_bitfield_unit.set(10usize, 2u8, {
10305 let format: u16 = unsafe { ::core::mem::transmute(format) };
10306 format as u64
10307 });
10308 __bindgen_bitfield_unit.set(12usize, 4u8, {
10309 let type_: u16 = unsafe { ::core::mem::transmute(type_) };
10310 type_ as u64
10311 });
10312 __bindgen_bitfield_unit
10313 }
10314}
10315pub type snd_ump_msg_stream_gen_t = _snd_ump_msg_stream_gen;
10316#[repr(C)]
10317#[derive(Copy, Clone)]
10318pub union _snd_ump_msg_stream {
10319 pub gen_: snd_ump_msg_stream_gen_t,
10320 pub hdr: snd_ump_msg_hdr_t,
10321 pub raw: [u32; 4usize],
10322}
10323pub type snd_ump_msg_stream_t = _snd_ump_msg_stream;
10324#[repr(C, packed)]
10325#[derive(Debug, Copy, Clone)]
10326pub struct _snd_ump_msg_flex_data_meta {
10327 pub status: u8,
10328 pub status_bank: u8,
10329 pub _bitfield_align_1: [u8; 0],
10330 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
10331 pub data: [u32; 3usize],
10332}
10333impl _snd_ump_msg_flex_data_meta {
10334 #[inline]
10335 pub fn channel(&self) -> u8 {
10336 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
10337 }
10338 #[inline]
10339 pub fn set_channel(&mut self, val: u8) {
10340 unsafe {
10341 let val: u8 = ::core::mem::transmute(val);
10342 self._bitfield_1.set(0usize, 4u8, val as u64)
10343 }
10344 }
10345 #[inline]
10346 pub unsafe fn channel_raw(this: *const Self) -> u8 {
10347 unsafe {
10348 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10349 ::core::ptr::addr_of!((*this)._bitfield_1),
10350 0usize,
10351 4u8,
10352 ) as u8)
10353 }
10354 }
10355 #[inline]
10356 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
10357 unsafe {
10358 let val: u8 = ::core::mem::transmute(val);
10359 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10360 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10361 0usize,
10362 4u8,
10363 val as u64,
10364 )
10365 }
10366 }
10367 #[inline]
10368 pub fn addrs(&self) -> u8 {
10369 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) }
10370 }
10371 #[inline]
10372 pub fn set_addrs(&mut self, val: u8) {
10373 unsafe {
10374 let val: u8 = ::core::mem::transmute(val);
10375 self._bitfield_1.set(4usize, 2u8, val as u64)
10376 }
10377 }
10378 #[inline]
10379 pub unsafe fn addrs_raw(this: *const Self) -> u8 {
10380 unsafe {
10381 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10382 ::core::ptr::addr_of!((*this)._bitfield_1),
10383 4usize,
10384 2u8,
10385 ) as u8)
10386 }
10387 }
10388 #[inline]
10389 pub unsafe fn set_addrs_raw(this: *mut Self, val: u8) {
10390 unsafe {
10391 let val: u8 = ::core::mem::transmute(val);
10392 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10393 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10394 4usize,
10395 2u8,
10396 val as u64,
10397 )
10398 }
10399 }
10400 #[inline]
10401 pub fn format(&self) -> u8 {
10402 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
10403 }
10404 #[inline]
10405 pub fn set_format(&mut self, val: u8) {
10406 unsafe {
10407 let val: u8 = ::core::mem::transmute(val);
10408 self._bitfield_1.set(6usize, 2u8, val as u64)
10409 }
10410 }
10411 #[inline]
10412 pub unsafe fn format_raw(this: *const Self) -> u8 {
10413 unsafe {
10414 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10415 ::core::ptr::addr_of!((*this)._bitfield_1),
10416 6usize,
10417 2u8,
10418 ) as u8)
10419 }
10420 }
10421 #[inline]
10422 pub unsafe fn set_format_raw(this: *mut Self, val: u8) {
10423 unsafe {
10424 let val: u8 = ::core::mem::transmute(val);
10425 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10426 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10427 6usize,
10428 2u8,
10429 val as u64,
10430 )
10431 }
10432 }
10433 #[inline]
10434 pub fn group(&self) -> u8 {
10435 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
10436 }
10437 #[inline]
10438 pub fn set_group(&mut self, val: u8) {
10439 unsafe {
10440 let val: u8 = ::core::mem::transmute(val);
10441 self._bitfield_1.set(8usize, 4u8, val as u64)
10442 }
10443 }
10444 #[inline]
10445 pub unsafe fn group_raw(this: *const Self) -> u8 {
10446 unsafe {
10447 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10448 ::core::ptr::addr_of!((*this)._bitfield_1),
10449 8usize,
10450 4u8,
10451 ) as u8)
10452 }
10453 }
10454 #[inline]
10455 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
10456 unsafe {
10457 let val: u8 = ::core::mem::transmute(val);
10458 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10459 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10460 8usize,
10461 4u8,
10462 val as u64,
10463 )
10464 }
10465 }
10466 #[inline]
10467 pub fn type_(&self) -> u8 {
10468 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
10469 }
10470 #[inline]
10471 pub fn set_type(&mut self, val: u8) {
10472 unsafe {
10473 let val: u8 = ::core::mem::transmute(val);
10474 self._bitfield_1.set(12usize, 4u8, val as u64)
10475 }
10476 }
10477 #[inline]
10478 pub unsafe fn type__raw(this: *const Self) -> u8 {
10479 unsafe {
10480 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10481 ::core::ptr::addr_of!((*this)._bitfield_1),
10482 12usize,
10483 4u8,
10484 ) as u8)
10485 }
10486 }
10487 #[inline]
10488 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
10489 unsafe {
10490 let val: u8 = ::core::mem::transmute(val);
10491 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10492 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10493 12usize,
10494 4u8,
10495 val as u64,
10496 )
10497 }
10498 }
10499 #[inline]
10500 pub fn new_bitfield_1(
10501 channel: u8,
10502 addrs: u8,
10503 format: u8,
10504 group: u8,
10505 type_: u8,
10506 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
10507 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
10508 __bindgen_bitfield_unit.set(0usize, 4u8, {
10509 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
10510 channel as u64
10511 });
10512 __bindgen_bitfield_unit.set(4usize, 2u8, {
10513 let addrs: u8 = unsafe { ::core::mem::transmute(addrs) };
10514 addrs as u64
10515 });
10516 __bindgen_bitfield_unit.set(6usize, 2u8, {
10517 let format: u8 = unsafe { ::core::mem::transmute(format) };
10518 format as u64
10519 });
10520 __bindgen_bitfield_unit.set(8usize, 4u8, {
10521 let group: u8 = unsafe { ::core::mem::transmute(group) };
10522 group as u64
10523 });
10524 __bindgen_bitfield_unit.set(12usize, 4u8, {
10525 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
10526 type_ as u64
10527 });
10528 __bindgen_bitfield_unit
10529 }
10530}
10531pub type snd_ump_msg_flex_data_meta_t = _snd_ump_msg_flex_data_meta;
10532#[repr(C, packed)]
10533#[derive(Debug, Copy, Clone)]
10534pub struct _snd_ump_msg_set_tempo {
10535 pub status: u8,
10536 pub status_bank: u8,
10537 pub _bitfield_align_1: [u8; 0],
10538 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
10539 pub tempo: u32,
10540 pub reserved: [u32; 2usize],
10541}
10542impl _snd_ump_msg_set_tempo {
10543 #[inline]
10544 pub fn channel(&self) -> u8 {
10545 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
10546 }
10547 #[inline]
10548 pub fn set_channel(&mut self, val: u8) {
10549 unsafe {
10550 let val: u8 = ::core::mem::transmute(val);
10551 self._bitfield_1.set(0usize, 4u8, val as u64)
10552 }
10553 }
10554 #[inline]
10555 pub unsafe fn channel_raw(this: *const Self) -> u8 {
10556 unsafe {
10557 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10558 ::core::ptr::addr_of!((*this)._bitfield_1),
10559 0usize,
10560 4u8,
10561 ) as u8)
10562 }
10563 }
10564 #[inline]
10565 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
10566 unsafe {
10567 let val: u8 = ::core::mem::transmute(val);
10568 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10569 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10570 0usize,
10571 4u8,
10572 val as u64,
10573 )
10574 }
10575 }
10576 #[inline]
10577 pub fn addrs(&self) -> u8 {
10578 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) }
10579 }
10580 #[inline]
10581 pub fn set_addrs(&mut self, val: u8) {
10582 unsafe {
10583 let val: u8 = ::core::mem::transmute(val);
10584 self._bitfield_1.set(4usize, 2u8, val as u64)
10585 }
10586 }
10587 #[inline]
10588 pub unsafe fn addrs_raw(this: *const Self) -> u8 {
10589 unsafe {
10590 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10591 ::core::ptr::addr_of!((*this)._bitfield_1),
10592 4usize,
10593 2u8,
10594 ) as u8)
10595 }
10596 }
10597 #[inline]
10598 pub unsafe fn set_addrs_raw(this: *mut Self, val: u8) {
10599 unsafe {
10600 let val: u8 = ::core::mem::transmute(val);
10601 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10602 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10603 4usize,
10604 2u8,
10605 val as u64,
10606 )
10607 }
10608 }
10609 #[inline]
10610 pub fn format(&self) -> u8 {
10611 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
10612 }
10613 #[inline]
10614 pub fn set_format(&mut self, val: u8) {
10615 unsafe {
10616 let val: u8 = ::core::mem::transmute(val);
10617 self._bitfield_1.set(6usize, 2u8, val as u64)
10618 }
10619 }
10620 #[inline]
10621 pub unsafe fn format_raw(this: *const Self) -> u8 {
10622 unsafe {
10623 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10624 ::core::ptr::addr_of!((*this)._bitfield_1),
10625 6usize,
10626 2u8,
10627 ) as u8)
10628 }
10629 }
10630 #[inline]
10631 pub unsafe fn set_format_raw(this: *mut Self, val: u8) {
10632 unsafe {
10633 let val: u8 = ::core::mem::transmute(val);
10634 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10635 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10636 6usize,
10637 2u8,
10638 val as u64,
10639 )
10640 }
10641 }
10642 #[inline]
10643 pub fn group(&self) -> u8 {
10644 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
10645 }
10646 #[inline]
10647 pub fn set_group(&mut self, val: u8) {
10648 unsafe {
10649 let val: u8 = ::core::mem::transmute(val);
10650 self._bitfield_1.set(8usize, 4u8, val as u64)
10651 }
10652 }
10653 #[inline]
10654 pub unsafe fn group_raw(this: *const Self) -> u8 {
10655 unsafe {
10656 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10657 ::core::ptr::addr_of!((*this)._bitfield_1),
10658 8usize,
10659 4u8,
10660 ) as u8)
10661 }
10662 }
10663 #[inline]
10664 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
10665 unsafe {
10666 let val: u8 = ::core::mem::transmute(val);
10667 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10668 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10669 8usize,
10670 4u8,
10671 val as u64,
10672 )
10673 }
10674 }
10675 #[inline]
10676 pub fn type_(&self) -> u8 {
10677 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
10678 }
10679 #[inline]
10680 pub fn set_type(&mut self, val: u8) {
10681 unsafe {
10682 let val: u8 = ::core::mem::transmute(val);
10683 self._bitfield_1.set(12usize, 4u8, val as u64)
10684 }
10685 }
10686 #[inline]
10687 pub unsafe fn type__raw(this: *const Self) -> u8 {
10688 unsafe {
10689 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10690 ::core::ptr::addr_of!((*this)._bitfield_1),
10691 12usize,
10692 4u8,
10693 ) as u8)
10694 }
10695 }
10696 #[inline]
10697 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
10698 unsafe {
10699 let val: u8 = ::core::mem::transmute(val);
10700 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10701 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10702 12usize,
10703 4u8,
10704 val as u64,
10705 )
10706 }
10707 }
10708 #[inline]
10709 pub fn new_bitfield_1(
10710 channel: u8,
10711 addrs: u8,
10712 format: u8,
10713 group: u8,
10714 type_: u8,
10715 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
10716 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
10717 __bindgen_bitfield_unit.set(0usize, 4u8, {
10718 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
10719 channel as u64
10720 });
10721 __bindgen_bitfield_unit.set(4usize, 2u8, {
10722 let addrs: u8 = unsafe { ::core::mem::transmute(addrs) };
10723 addrs as u64
10724 });
10725 __bindgen_bitfield_unit.set(6usize, 2u8, {
10726 let format: u8 = unsafe { ::core::mem::transmute(format) };
10727 format as u64
10728 });
10729 __bindgen_bitfield_unit.set(8usize, 4u8, {
10730 let group: u8 = unsafe { ::core::mem::transmute(group) };
10731 group as u64
10732 });
10733 __bindgen_bitfield_unit.set(12usize, 4u8, {
10734 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
10735 type_ as u64
10736 });
10737 __bindgen_bitfield_unit
10738 }
10739}
10740pub type snd_ump_msg_set_tempo_t = _snd_ump_msg_set_tempo;
10741#[repr(C, packed)]
10742#[derive(Debug, Copy, Clone)]
10743pub struct _snd_ump_msg_set_time_sig {
10744 pub status: u8,
10745 pub status_bank: u8,
10746 pub _bitfield_align_1: [u8; 0],
10747 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
10748 pub reserved1: u8,
10749 pub num_notes: u8,
10750 pub denominator: u8,
10751 pub numerator: u8,
10752 pub reserved: [u32; 2usize],
10753}
10754impl _snd_ump_msg_set_time_sig {
10755 #[inline]
10756 pub fn channel(&self) -> u8 {
10757 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
10758 }
10759 #[inline]
10760 pub fn set_channel(&mut self, val: u8) {
10761 unsafe {
10762 let val: u8 = ::core::mem::transmute(val);
10763 self._bitfield_1.set(0usize, 4u8, val as u64)
10764 }
10765 }
10766 #[inline]
10767 pub unsafe fn channel_raw(this: *const Self) -> u8 {
10768 unsafe {
10769 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10770 ::core::ptr::addr_of!((*this)._bitfield_1),
10771 0usize,
10772 4u8,
10773 ) as u8)
10774 }
10775 }
10776 #[inline]
10777 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
10778 unsafe {
10779 let val: u8 = ::core::mem::transmute(val);
10780 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10781 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10782 0usize,
10783 4u8,
10784 val as u64,
10785 )
10786 }
10787 }
10788 #[inline]
10789 pub fn addrs(&self) -> u8 {
10790 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) }
10791 }
10792 #[inline]
10793 pub fn set_addrs(&mut self, val: u8) {
10794 unsafe {
10795 let val: u8 = ::core::mem::transmute(val);
10796 self._bitfield_1.set(4usize, 2u8, val as u64)
10797 }
10798 }
10799 #[inline]
10800 pub unsafe fn addrs_raw(this: *const Self) -> u8 {
10801 unsafe {
10802 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10803 ::core::ptr::addr_of!((*this)._bitfield_1),
10804 4usize,
10805 2u8,
10806 ) as u8)
10807 }
10808 }
10809 #[inline]
10810 pub unsafe fn set_addrs_raw(this: *mut Self, val: u8) {
10811 unsafe {
10812 let val: u8 = ::core::mem::transmute(val);
10813 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10814 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10815 4usize,
10816 2u8,
10817 val as u64,
10818 )
10819 }
10820 }
10821 #[inline]
10822 pub fn format(&self) -> u8 {
10823 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
10824 }
10825 #[inline]
10826 pub fn set_format(&mut self, val: u8) {
10827 unsafe {
10828 let val: u8 = ::core::mem::transmute(val);
10829 self._bitfield_1.set(6usize, 2u8, val as u64)
10830 }
10831 }
10832 #[inline]
10833 pub unsafe fn format_raw(this: *const Self) -> u8 {
10834 unsafe {
10835 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10836 ::core::ptr::addr_of!((*this)._bitfield_1),
10837 6usize,
10838 2u8,
10839 ) as u8)
10840 }
10841 }
10842 #[inline]
10843 pub unsafe fn set_format_raw(this: *mut Self, val: u8) {
10844 unsafe {
10845 let val: u8 = ::core::mem::transmute(val);
10846 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10847 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10848 6usize,
10849 2u8,
10850 val as u64,
10851 )
10852 }
10853 }
10854 #[inline]
10855 pub fn group(&self) -> u8 {
10856 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
10857 }
10858 #[inline]
10859 pub fn set_group(&mut self, val: u8) {
10860 unsafe {
10861 let val: u8 = ::core::mem::transmute(val);
10862 self._bitfield_1.set(8usize, 4u8, val as u64)
10863 }
10864 }
10865 #[inline]
10866 pub unsafe fn group_raw(this: *const Self) -> u8 {
10867 unsafe {
10868 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10869 ::core::ptr::addr_of!((*this)._bitfield_1),
10870 8usize,
10871 4u8,
10872 ) as u8)
10873 }
10874 }
10875 #[inline]
10876 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
10877 unsafe {
10878 let val: u8 = ::core::mem::transmute(val);
10879 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10880 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10881 8usize,
10882 4u8,
10883 val as u64,
10884 )
10885 }
10886 }
10887 #[inline]
10888 pub fn type_(&self) -> u8 {
10889 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
10890 }
10891 #[inline]
10892 pub fn set_type(&mut self, val: u8) {
10893 unsafe {
10894 let val: u8 = ::core::mem::transmute(val);
10895 self._bitfield_1.set(12usize, 4u8, val as u64)
10896 }
10897 }
10898 #[inline]
10899 pub unsafe fn type__raw(this: *const Self) -> u8 {
10900 unsafe {
10901 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10902 ::core::ptr::addr_of!((*this)._bitfield_1),
10903 12usize,
10904 4u8,
10905 ) as u8)
10906 }
10907 }
10908 #[inline]
10909 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
10910 unsafe {
10911 let val: u8 = ::core::mem::transmute(val);
10912 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10913 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10914 12usize,
10915 4u8,
10916 val as u64,
10917 )
10918 }
10919 }
10920 #[inline]
10921 pub fn new_bitfield_1(
10922 channel: u8,
10923 addrs: u8,
10924 format: u8,
10925 group: u8,
10926 type_: u8,
10927 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
10928 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
10929 __bindgen_bitfield_unit.set(0usize, 4u8, {
10930 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
10931 channel as u64
10932 });
10933 __bindgen_bitfield_unit.set(4usize, 2u8, {
10934 let addrs: u8 = unsafe { ::core::mem::transmute(addrs) };
10935 addrs as u64
10936 });
10937 __bindgen_bitfield_unit.set(6usize, 2u8, {
10938 let format: u8 = unsafe { ::core::mem::transmute(format) };
10939 format as u64
10940 });
10941 __bindgen_bitfield_unit.set(8usize, 4u8, {
10942 let group: u8 = unsafe { ::core::mem::transmute(group) };
10943 group as u64
10944 });
10945 __bindgen_bitfield_unit.set(12usize, 4u8, {
10946 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
10947 type_ as u64
10948 });
10949 __bindgen_bitfield_unit
10950 }
10951}
10952pub type snd_ump_msg_set_time_sig_t = _snd_ump_msg_set_time_sig;
10953#[repr(C, packed)]
10954#[derive(Debug, Copy, Clone)]
10955pub struct _snd_ump_msg_set_metronome {
10956 pub status: u8,
10957 pub status_bank: u8,
10958 pub _bitfield_align_1: [u8; 0],
10959 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
10960 pub bar_accent_3: u8,
10961 pub bar_accent_2: u8,
10962 pub bar_accent_1: u8,
10963 pub clocks_primary: u8,
10964 pub reserved1: u16,
10965 pub subdivision_2: u8,
10966 pub subdivision_1: u8,
10967 pub reserved2: u32,
10968}
10969impl _snd_ump_msg_set_metronome {
10970 #[inline]
10971 pub fn channel(&self) -> u8 {
10972 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
10973 }
10974 #[inline]
10975 pub fn set_channel(&mut self, val: u8) {
10976 unsafe {
10977 let val: u8 = ::core::mem::transmute(val);
10978 self._bitfield_1.set(0usize, 4u8, val as u64)
10979 }
10980 }
10981 #[inline]
10982 pub unsafe fn channel_raw(this: *const Self) -> u8 {
10983 unsafe {
10984 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
10985 ::core::ptr::addr_of!((*this)._bitfield_1),
10986 0usize,
10987 4u8,
10988 ) as u8)
10989 }
10990 }
10991 #[inline]
10992 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
10993 unsafe {
10994 let val: u8 = ::core::mem::transmute(val);
10995 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
10996 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
10997 0usize,
10998 4u8,
10999 val as u64,
11000 )
11001 }
11002 }
11003 #[inline]
11004 pub fn addrs(&self) -> u8 {
11005 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) }
11006 }
11007 #[inline]
11008 pub fn set_addrs(&mut self, val: u8) {
11009 unsafe {
11010 let val: u8 = ::core::mem::transmute(val);
11011 self._bitfield_1.set(4usize, 2u8, val as u64)
11012 }
11013 }
11014 #[inline]
11015 pub unsafe fn addrs_raw(this: *const Self) -> u8 {
11016 unsafe {
11017 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11018 ::core::ptr::addr_of!((*this)._bitfield_1),
11019 4usize,
11020 2u8,
11021 ) as u8)
11022 }
11023 }
11024 #[inline]
11025 pub unsafe fn set_addrs_raw(this: *mut Self, val: u8) {
11026 unsafe {
11027 let val: u8 = ::core::mem::transmute(val);
11028 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11029 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11030 4usize,
11031 2u8,
11032 val as u64,
11033 )
11034 }
11035 }
11036 #[inline]
11037 pub fn format(&self) -> u8 {
11038 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
11039 }
11040 #[inline]
11041 pub fn set_format(&mut self, val: u8) {
11042 unsafe {
11043 let val: u8 = ::core::mem::transmute(val);
11044 self._bitfield_1.set(6usize, 2u8, val as u64)
11045 }
11046 }
11047 #[inline]
11048 pub unsafe fn format_raw(this: *const Self) -> u8 {
11049 unsafe {
11050 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11051 ::core::ptr::addr_of!((*this)._bitfield_1),
11052 6usize,
11053 2u8,
11054 ) as u8)
11055 }
11056 }
11057 #[inline]
11058 pub unsafe fn set_format_raw(this: *mut Self, val: u8) {
11059 unsafe {
11060 let val: u8 = ::core::mem::transmute(val);
11061 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11062 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11063 6usize,
11064 2u8,
11065 val as u64,
11066 )
11067 }
11068 }
11069 #[inline]
11070 pub fn group(&self) -> u8 {
11071 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
11072 }
11073 #[inline]
11074 pub fn set_group(&mut self, val: u8) {
11075 unsafe {
11076 let val: u8 = ::core::mem::transmute(val);
11077 self._bitfield_1.set(8usize, 4u8, val as u64)
11078 }
11079 }
11080 #[inline]
11081 pub unsafe fn group_raw(this: *const Self) -> u8 {
11082 unsafe {
11083 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11084 ::core::ptr::addr_of!((*this)._bitfield_1),
11085 8usize,
11086 4u8,
11087 ) as u8)
11088 }
11089 }
11090 #[inline]
11091 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
11092 unsafe {
11093 let val: u8 = ::core::mem::transmute(val);
11094 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11095 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11096 8usize,
11097 4u8,
11098 val as u64,
11099 )
11100 }
11101 }
11102 #[inline]
11103 pub fn type_(&self) -> u8 {
11104 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
11105 }
11106 #[inline]
11107 pub fn set_type(&mut self, val: u8) {
11108 unsafe {
11109 let val: u8 = ::core::mem::transmute(val);
11110 self._bitfield_1.set(12usize, 4u8, val as u64)
11111 }
11112 }
11113 #[inline]
11114 pub unsafe fn type__raw(this: *const Self) -> u8 {
11115 unsafe {
11116 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11117 ::core::ptr::addr_of!((*this)._bitfield_1),
11118 12usize,
11119 4u8,
11120 ) as u8)
11121 }
11122 }
11123 #[inline]
11124 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
11125 unsafe {
11126 let val: u8 = ::core::mem::transmute(val);
11127 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11128 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11129 12usize,
11130 4u8,
11131 val as u64,
11132 )
11133 }
11134 }
11135 #[inline]
11136 pub fn new_bitfield_1(
11137 channel: u8,
11138 addrs: u8,
11139 format: u8,
11140 group: u8,
11141 type_: u8,
11142 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
11143 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
11144 __bindgen_bitfield_unit.set(0usize, 4u8, {
11145 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
11146 channel as u64
11147 });
11148 __bindgen_bitfield_unit.set(4usize, 2u8, {
11149 let addrs: u8 = unsafe { ::core::mem::transmute(addrs) };
11150 addrs as u64
11151 });
11152 __bindgen_bitfield_unit.set(6usize, 2u8, {
11153 let format: u8 = unsafe { ::core::mem::transmute(format) };
11154 format as u64
11155 });
11156 __bindgen_bitfield_unit.set(8usize, 4u8, {
11157 let group: u8 = unsafe { ::core::mem::transmute(group) };
11158 group as u64
11159 });
11160 __bindgen_bitfield_unit.set(12usize, 4u8, {
11161 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
11162 type_ as u64
11163 });
11164 __bindgen_bitfield_unit
11165 }
11166}
11167pub type snd_ump_msg_set_metronome_t = _snd_ump_msg_set_metronome;
11168#[repr(C, packed)]
11169#[derive(Debug, Copy, Clone)]
11170pub struct _snd_ump_msg_set_key_sig {
11171 pub status: u8,
11172 pub status_bank: u8,
11173 pub _bitfield_align_1: [u8; 0],
11174 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
11175 pub reserved1: [u8; 3usize],
11176 pub _bitfield_align_2: [u8; 0],
11177 pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>,
11178 pub reserved2: [u32; 2usize],
11179}
11180impl _snd_ump_msg_set_key_sig {
11181 #[inline]
11182 pub fn channel(&self) -> u8 {
11183 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
11184 }
11185 #[inline]
11186 pub fn set_channel(&mut self, val: u8) {
11187 unsafe {
11188 let val: u8 = ::core::mem::transmute(val);
11189 self._bitfield_1.set(0usize, 4u8, val as u64)
11190 }
11191 }
11192 #[inline]
11193 pub unsafe fn channel_raw(this: *const Self) -> u8 {
11194 unsafe {
11195 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11196 ::core::ptr::addr_of!((*this)._bitfield_1),
11197 0usize,
11198 4u8,
11199 ) as u8)
11200 }
11201 }
11202 #[inline]
11203 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
11204 unsafe {
11205 let val: u8 = ::core::mem::transmute(val);
11206 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11207 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11208 0usize,
11209 4u8,
11210 val as u64,
11211 )
11212 }
11213 }
11214 #[inline]
11215 pub fn addrs(&self) -> u8 {
11216 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) }
11217 }
11218 #[inline]
11219 pub fn set_addrs(&mut self, val: u8) {
11220 unsafe {
11221 let val: u8 = ::core::mem::transmute(val);
11222 self._bitfield_1.set(4usize, 2u8, val as u64)
11223 }
11224 }
11225 #[inline]
11226 pub unsafe fn addrs_raw(this: *const Self) -> u8 {
11227 unsafe {
11228 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11229 ::core::ptr::addr_of!((*this)._bitfield_1),
11230 4usize,
11231 2u8,
11232 ) as u8)
11233 }
11234 }
11235 #[inline]
11236 pub unsafe fn set_addrs_raw(this: *mut Self, val: u8) {
11237 unsafe {
11238 let val: u8 = ::core::mem::transmute(val);
11239 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11240 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11241 4usize,
11242 2u8,
11243 val as u64,
11244 )
11245 }
11246 }
11247 #[inline]
11248 pub fn format(&self) -> u8 {
11249 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
11250 }
11251 #[inline]
11252 pub fn set_format(&mut self, val: u8) {
11253 unsafe {
11254 let val: u8 = ::core::mem::transmute(val);
11255 self._bitfield_1.set(6usize, 2u8, val as u64)
11256 }
11257 }
11258 #[inline]
11259 pub unsafe fn format_raw(this: *const Self) -> u8 {
11260 unsafe {
11261 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11262 ::core::ptr::addr_of!((*this)._bitfield_1),
11263 6usize,
11264 2u8,
11265 ) as u8)
11266 }
11267 }
11268 #[inline]
11269 pub unsafe fn set_format_raw(this: *mut Self, val: u8) {
11270 unsafe {
11271 let val: u8 = ::core::mem::transmute(val);
11272 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11273 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11274 6usize,
11275 2u8,
11276 val as u64,
11277 )
11278 }
11279 }
11280 #[inline]
11281 pub fn group(&self) -> u8 {
11282 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
11283 }
11284 #[inline]
11285 pub fn set_group(&mut self, val: u8) {
11286 unsafe {
11287 let val: u8 = ::core::mem::transmute(val);
11288 self._bitfield_1.set(8usize, 4u8, val as u64)
11289 }
11290 }
11291 #[inline]
11292 pub unsafe fn group_raw(this: *const Self) -> u8 {
11293 unsafe {
11294 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11295 ::core::ptr::addr_of!((*this)._bitfield_1),
11296 8usize,
11297 4u8,
11298 ) as u8)
11299 }
11300 }
11301 #[inline]
11302 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
11303 unsafe {
11304 let val: u8 = ::core::mem::transmute(val);
11305 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11306 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11307 8usize,
11308 4u8,
11309 val as u64,
11310 )
11311 }
11312 }
11313 #[inline]
11314 pub fn type_(&self) -> u8 {
11315 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
11316 }
11317 #[inline]
11318 pub fn set_type(&mut self, val: u8) {
11319 unsafe {
11320 let val: u8 = ::core::mem::transmute(val);
11321 self._bitfield_1.set(12usize, 4u8, val as u64)
11322 }
11323 }
11324 #[inline]
11325 pub unsafe fn type__raw(this: *const Self) -> u8 {
11326 unsafe {
11327 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
11328 ::core::ptr::addr_of!((*this)._bitfield_1),
11329 12usize,
11330 4u8,
11331 ) as u8)
11332 }
11333 }
11334 #[inline]
11335 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
11336 unsafe {
11337 let val: u8 = ::core::mem::transmute(val);
11338 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
11339 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11340 12usize,
11341 4u8,
11342 val as u64,
11343 )
11344 }
11345 }
11346 #[inline]
11347 pub fn new_bitfield_1(
11348 channel: u8,
11349 addrs: u8,
11350 format: u8,
11351 group: u8,
11352 type_: u8,
11353 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
11354 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
11355 __bindgen_bitfield_unit.set(0usize, 4u8, {
11356 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
11357 channel as u64
11358 });
11359 __bindgen_bitfield_unit.set(4usize, 2u8, {
11360 let addrs: u8 = unsafe { ::core::mem::transmute(addrs) };
11361 addrs as u64
11362 });
11363 __bindgen_bitfield_unit.set(6usize, 2u8, {
11364 let format: u8 = unsafe { ::core::mem::transmute(format) };
11365 format as u64
11366 });
11367 __bindgen_bitfield_unit.set(8usize, 4u8, {
11368 let group: u8 = unsafe { ::core::mem::transmute(group) };
11369 group as u64
11370 });
11371 __bindgen_bitfield_unit.set(12usize, 4u8, {
11372 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
11373 type_ as u64
11374 });
11375 __bindgen_bitfield_unit
11376 }
11377 #[inline]
11378 pub fn tonic_note(&self) -> u8 {
11379 unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 4u8) as u8) }
11380 }
11381 #[inline]
11382 pub fn set_tonic_note(&mut self, val: u8) {
11383 unsafe {
11384 let val: u8 = ::core::mem::transmute(val);
11385 self._bitfield_2.set(0usize, 4u8, val as u64)
11386 }
11387 }
11388 #[inline]
11389 pub unsafe fn tonic_note_raw(this: *const Self) -> u8 {
11390 unsafe {
11391 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
11392 ::core::ptr::addr_of!((*this)._bitfield_2),
11393 0usize,
11394 4u8,
11395 ) as u8)
11396 }
11397 }
11398 #[inline]
11399 pub unsafe fn set_tonic_note_raw(this: *mut Self, val: u8) {
11400 unsafe {
11401 let val: u8 = ::core::mem::transmute(val);
11402 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
11403 ::core::ptr::addr_of_mut!((*this)._bitfield_2),
11404 0usize,
11405 4u8,
11406 val as u64,
11407 )
11408 }
11409 }
11410 #[inline]
11411 pub fn sharps_flats(&self) -> u8 {
11412 unsafe { ::core::mem::transmute(self._bitfield_2.get(4usize, 4u8) as u8) }
11413 }
11414 #[inline]
11415 pub fn set_sharps_flats(&mut self, val: u8) {
11416 unsafe {
11417 let val: u8 = ::core::mem::transmute(val);
11418 self._bitfield_2.set(4usize, 4u8, val as u64)
11419 }
11420 }
11421 #[inline]
11422 pub unsafe fn sharps_flats_raw(this: *const Self) -> u8 {
11423 unsafe {
11424 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
11425 ::core::ptr::addr_of!((*this)._bitfield_2),
11426 4usize,
11427 4u8,
11428 ) as u8)
11429 }
11430 }
11431 #[inline]
11432 pub unsafe fn set_sharps_flats_raw(this: *mut Self, val: u8) {
11433 unsafe {
11434 let val: u8 = ::core::mem::transmute(val);
11435 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
11436 ::core::ptr::addr_of_mut!((*this)._bitfield_2),
11437 4usize,
11438 4u8,
11439 val as u64,
11440 )
11441 }
11442 }
11443 #[inline]
11444 pub fn new_bitfield_2(tonic_note: u8, sharps_flats: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
11445 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
11446 __bindgen_bitfield_unit.set(0usize, 4u8, {
11447 let tonic_note: u8 = unsafe { ::core::mem::transmute(tonic_note) };
11448 tonic_note as u64
11449 });
11450 __bindgen_bitfield_unit.set(4usize, 4u8, {
11451 let sharps_flats: u8 = unsafe { ::core::mem::transmute(sharps_flats) };
11452 sharps_flats as u64
11453 });
11454 __bindgen_bitfield_unit
11455 }
11456}
11457pub type snd_ump_msg_set_key_sig_t = _snd_ump_msg_set_key_sig;
11458#[repr(C, packed)]
11459#[derive(Debug, Copy, Clone)]
11460pub struct _snd_ump_msg_set_chord_name {
11461 pub status: u8,
11462 pub status_bank: u8,
11463 pub _bitfield_align_1: [u8; 0],
11464 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
11465 pub chord_type: u8,
11466 pub _bitfield_align_2: [u8; 0],
11467 pub _bitfield_2: __BindgenBitfieldUnit<[u8; 1usize]>,
11468 pub reserved: u16,
11469 pub _bitfield_align_3: [u8; 0],
11470 pub _bitfield_3: __BindgenBitfieldUnit<[u8; 4usize]>,
11471 pub bass_type: u8,
11472 pub _bitfield_align_4: [u8; 0],
11473 pub _bitfield_4: __BindgenBitfieldUnit<[u8; 1usize]>,
11474}
11475impl _snd_ump_msg_set_chord_name {
11476 #[inline]
11477 pub fn channel(&self) -> u8 {
11478 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
11479 }
11480 #[inline]
11481 pub fn set_channel(&mut self, val: u8) {
11482 unsafe {
11483 let val: u8 = ::core::mem::transmute(val);
11484 self._bitfield_1.set(0usize, 4u8, val as u64)
11485 }
11486 }
11487 #[inline]
11488 pub unsafe fn channel_raw(this: *const Self) -> u8 {
11489 unsafe {
11490 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11491 ::core::ptr::addr_of!((*this)._bitfield_1),
11492 0usize,
11493 4u8,
11494 ) as u8)
11495 }
11496 }
11497 #[inline]
11498 pub unsafe fn set_channel_raw(this: *mut Self, val: u8) {
11499 unsafe {
11500 let val: u8 = ::core::mem::transmute(val);
11501 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11502 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11503 0usize,
11504 4u8,
11505 val as u64,
11506 )
11507 }
11508 }
11509 #[inline]
11510 pub fn addrs(&self) -> u8 {
11511 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 2u8) as u8) }
11512 }
11513 #[inline]
11514 pub fn set_addrs(&mut self, val: u8) {
11515 unsafe {
11516 let val: u8 = ::core::mem::transmute(val);
11517 self._bitfield_1.set(4usize, 2u8, val as u64)
11518 }
11519 }
11520 #[inline]
11521 pub unsafe fn addrs_raw(this: *const Self) -> u8 {
11522 unsafe {
11523 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11524 ::core::ptr::addr_of!((*this)._bitfield_1),
11525 4usize,
11526 2u8,
11527 ) as u8)
11528 }
11529 }
11530 #[inline]
11531 pub unsafe fn set_addrs_raw(this: *mut Self, val: u8) {
11532 unsafe {
11533 let val: u8 = ::core::mem::transmute(val);
11534 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11535 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11536 4usize,
11537 2u8,
11538 val as u64,
11539 )
11540 }
11541 }
11542 #[inline]
11543 pub fn format(&self) -> u8 {
11544 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 2u8) as u8) }
11545 }
11546 #[inline]
11547 pub fn set_format(&mut self, val: u8) {
11548 unsafe {
11549 let val: u8 = ::core::mem::transmute(val);
11550 self._bitfield_1.set(6usize, 2u8, val as u64)
11551 }
11552 }
11553 #[inline]
11554 pub unsafe fn format_raw(this: *const Self) -> u8 {
11555 unsafe {
11556 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11557 ::core::ptr::addr_of!((*this)._bitfield_1),
11558 6usize,
11559 2u8,
11560 ) as u8)
11561 }
11562 }
11563 #[inline]
11564 pub unsafe fn set_format_raw(this: *mut Self, val: u8) {
11565 unsafe {
11566 let val: u8 = ::core::mem::transmute(val);
11567 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11568 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11569 6usize,
11570 2u8,
11571 val as u64,
11572 )
11573 }
11574 }
11575 #[inline]
11576 pub fn group(&self) -> u8 {
11577 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
11578 }
11579 #[inline]
11580 pub fn set_group(&mut self, val: u8) {
11581 unsafe {
11582 let val: u8 = ::core::mem::transmute(val);
11583 self._bitfield_1.set(8usize, 4u8, val as u64)
11584 }
11585 }
11586 #[inline]
11587 pub unsafe fn group_raw(this: *const Self) -> u8 {
11588 unsafe {
11589 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11590 ::core::ptr::addr_of!((*this)._bitfield_1),
11591 8usize,
11592 4u8,
11593 ) as u8)
11594 }
11595 }
11596 #[inline]
11597 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
11598 unsafe {
11599 let val: u8 = ::core::mem::transmute(val);
11600 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11601 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11602 8usize,
11603 4u8,
11604 val as u64,
11605 )
11606 }
11607 }
11608 #[inline]
11609 pub fn type_(&self) -> u8 {
11610 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
11611 }
11612 #[inline]
11613 pub fn set_type(&mut self, val: u8) {
11614 unsafe {
11615 let val: u8 = ::core::mem::transmute(val);
11616 self._bitfield_1.set(12usize, 4u8, val as u64)
11617 }
11618 }
11619 #[inline]
11620 pub unsafe fn type__raw(this: *const Self) -> u8 {
11621 unsafe {
11622 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11623 ::core::ptr::addr_of!((*this)._bitfield_1),
11624 12usize,
11625 4u8,
11626 ) as u8)
11627 }
11628 }
11629 #[inline]
11630 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
11631 unsafe {
11632 let val: u8 = ::core::mem::transmute(val);
11633 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11634 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11635 12usize,
11636 4u8,
11637 val as u64,
11638 )
11639 }
11640 }
11641 #[inline]
11642 pub fn alter2_degree(&self) -> u8 {
11643 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 4u8) as u8) }
11644 }
11645 #[inline]
11646 pub fn set_alter2_degree(&mut self, val: u8) {
11647 unsafe {
11648 let val: u8 = ::core::mem::transmute(val);
11649 self._bitfield_1.set(16usize, 4u8, val as u64)
11650 }
11651 }
11652 #[inline]
11653 pub unsafe fn alter2_degree_raw(this: *const Self) -> u8 {
11654 unsafe {
11655 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11656 ::core::ptr::addr_of!((*this)._bitfield_1),
11657 16usize,
11658 4u8,
11659 ) as u8)
11660 }
11661 }
11662 #[inline]
11663 pub unsafe fn set_alter2_degree_raw(this: *mut Self, val: u8) {
11664 unsafe {
11665 let val: u8 = ::core::mem::transmute(val);
11666 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11667 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11668 16usize,
11669 4u8,
11670 val as u64,
11671 )
11672 }
11673 }
11674 #[inline]
11675 pub fn alter2_type(&self) -> u8 {
11676 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 4u8) as u8) }
11677 }
11678 #[inline]
11679 pub fn set_alter2_type(&mut self, val: u8) {
11680 unsafe {
11681 let val: u8 = ::core::mem::transmute(val);
11682 self._bitfield_1.set(20usize, 4u8, val as u64)
11683 }
11684 }
11685 #[inline]
11686 pub unsafe fn alter2_type_raw(this: *const Self) -> u8 {
11687 unsafe {
11688 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11689 ::core::ptr::addr_of!((*this)._bitfield_1),
11690 20usize,
11691 4u8,
11692 ) as u8)
11693 }
11694 }
11695 #[inline]
11696 pub unsafe fn set_alter2_type_raw(this: *mut Self, val: u8) {
11697 unsafe {
11698 let val: u8 = ::core::mem::transmute(val);
11699 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11700 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11701 20usize,
11702 4u8,
11703 val as u64,
11704 )
11705 }
11706 }
11707 #[inline]
11708 pub fn alter1_degree(&self) -> u8 {
11709 unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 4u8) as u8) }
11710 }
11711 #[inline]
11712 pub fn set_alter1_degree(&mut self, val: u8) {
11713 unsafe {
11714 let val: u8 = ::core::mem::transmute(val);
11715 self._bitfield_1.set(24usize, 4u8, val as u64)
11716 }
11717 }
11718 #[inline]
11719 pub unsafe fn alter1_degree_raw(this: *const Self) -> u8 {
11720 unsafe {
11721 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11722 ::core::ptr::addr_of!((*this)._bitfield_1),
11723 24usize,
11724 4u8,
11725 ) as u8)
11726 }
11727 }
11728 #[inline]
11729 pub unsafe fn set_alter1_degree_raw(this: *mut Self, val: u8) {
11730 unsafe {
11731 let val: u8 = ::core::mem::transmute(val);
11732 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11733 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11734 24usize,
11735 4u8,
11736 val as u64,
11737 )
11738 }
11739 }
11740 #[inline]
11741 pub fn alter1_type(&self) -> u8 {
11742 unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 4u8) as u8) }
11743 }
11744 #[inline]
11745 pub fn set_alter1_type(&mut self, val: u8) {
11746 unsafe {
11747 let val: u8 = ::core::mem::transmute(val);
11748 self._bitfield_1.set(28usize, 4u8, val as u64)
11749 }
11750 }
11751 #[inline]
11752 pub unsafe fn alter1_type_raw(this: *const Self) -> u8 {
11753 unsafe {
11754 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11755 ::core::ptr::addr_of!((*this)._bitfield_1),
11756 28usize,
11757 4u8,
11758 ) as u8)
11759 }
11760 }
11761 #[inline]
11762 pub unsafe fn set_alter1_type_raw(this: *mut Self, val: u8) {
11763 unsafe {
11764 let val: u8 = ::core::mem::transmute(val);
11765 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11766 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
11767 28usize,
11768 4u8,
11769 val as u64,
11770 )
11771 }
11772 }
11773 #[inline]
11774 pub fn new_bitfield_1(
11775 channel: u8,
11776 addrs: u8,
11777 format: u8,
11778 group: u8,
11779 type_: u8,
11780 alter2_degree: u8,
11781 alter2_type: u8,
11782 alter1_degree: u8,
11783 alter1_type: u8,
11784 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
11785 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
11786 __bindgen_bitfield_unit.set(0usize, 4u8, {
11787 let channel: u8 = unsafe { ::core::mem::transmute(channel) };
11788 channel as u64
11789 });
11790 __bindgen_bitfield_unit.set(4usize, 2u8, {
11791 let addrs: u8 = unsafe { ::core::mem::transmute(addrs) };
11792 addrs as u64
11793 });
11794 __bindgen_bitfield_unit.set(6usize, 2u8, {
11795 let format: u8 = unsafe { ::core::mem::transmute(format) };
11796 format as u64
11797 });
11798 __bindgen_bitfield_unit.set(8usize, 4u8, {
11799 let group: u8 = unsafe { ::core::mem::transmute(group) };
11800 group as u64
11801 });
11802 __bindgen_bitfield_unit.set(12usize, 4u8, {
11803 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
11804 type_ as u64
11805 });
11806 __bindgen_bitfield_unit.set(16usize, 4u8, {
11807 let alter2_degree: u8 = unsafe { ::core::mem::transmute(alter2_degree) };
11808 alter2_degree as u64
11809 });
11810 __bindgen_bitfield_unit.set(20usize, 4u8, {
11811 let alter2_type: u8 = unsafe { ::core::mem::transmute(alter2_type) };
11812 alter2_type as u64
11813 });
11814 __bindgen_bitfield_unit.set(24usize, 4u8, {
11815 let alter1_degree: u8 = unsafe { ::core::mem::transmute(alter1_degree) };
11816 alter1_degree as u64
11817 });
11818 __bindgen_bitfield_unit.set(28usize, 4u8, {
11819 let alter1_type: u8 = unsafe { ::core::mem::transmute(alter1_type) };
11820 alter1_type as u64
11821 });
11822 __bindgen_bitfield_unit
11823 }
11824 #[inline]
11825 pub fn chord_tonic(&self) -> u8 {
11826 unsafe { ::core::mem::transmute(self._bitfield_2.get(0usize, 4u8) as u8) }
11827 }
11828 #[inline]
11829 pub fn set_chord_tonic(&mut self, val: u8) {
11830 unsafe {
11831 let val: u8 = ::core::mem::transmute(val);
11832 self._bitfield_2.set(0usize, 4u8, val as u64)
11833 }
11834 }
11835 #[inline]
11836 pub unsafe fn chord_tonic_raw(this: *const Self) -> u8 {
11837 unsafe {
11838 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
11839 ::core::ptr::addr_of!((*this)._bitfield_2),
11840 0usize,
11841 4u8,
11842 ) as u8)
11843 }
11844 }
11845 #[inline]
11846 pub unsafe fn set_chord_tonic_raw(this: *mut Self, val: u8) {
11847 unsafe {
11848 let val: u8 = ::core::mem::transmute(val);
11849 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
11850 ::core::ptr::addr_of_mut!((*this)._bitfield_2),
11851 0usize,
11852 4u8,
11853 val as u64,
11854 )
11855 }
11856 }
11857 #[inline]
11858 pub fn tonic_sharp(&self) -> u8 {
11859 unsafe { ::core::mem::transmute(self._bitfield_2.get(4usize, 4u8) as u8) }
11860 }
11861 #[inline]
11862 pub fn set_tonic_sharp(&mut self, val: u8) {
11863 unsafe {
11864 let val: u8 = ::core::mem::transmute(val);
11865 self._bitfield_2.set(4usize, 4u8, val as u64)
11866 }
11867 }
11868 #[inline]
11869 pub unsafe fn tonic_sharp_raw(this: *const Self) -> u8 {
11870 unsafe {
11871 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
11872 ::core::ptr::addr_of!((*this)._bitfield_2),
11873 4usize,
11874 4u8,
11875 ) as u8)
11876 }
11877 }
11878 #[inline]
11879 pub unsafe fn set_tonic_sharp_raw(this: *mut Self, val: u8) {
11880 unsafe {
11881 let val: u8 = ::core::mem::transmute(val);
11882 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
11883 ::core::ptr::addr_of_mut!((*this)._bitfield_2),
11884 4usize,
11885 4u8,
11886 val as u64,
11887 )
11888 }
11889 }
11890 #[inline]
11891 pub fn new_bitfield_2(chord_tonic: u8, tonic_sharp: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
11892 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
11893 __bindgen_bitfield_unit.set(0usize, 4u8, {
11894 let chord_tonic: u8 = unsafe { ::core::mem::transmute(chord_tonic) };
11895 chord_tonic as u64
11896 });
11897 __bindgen_bitfield_unit.set(4usize, 4u8, {
11898 let tonic_sharp: u8 = unsafe { ::core::mem::transmute(tonic_sharp) };
11899 tonic_sharp as u64
11900 });
11901 __bindgen_bitfield_unit
11902 }
11903 #[inline]
11904 pub fn alter4_degree(&self) -> u8 {
11905 unsafe { ::core::mem::transmute(self._bitfield_3.get(0usize, 4u8) as u8) }
11906 }
11907 #[inline]
11908 pub fn set_alter4_degree(&mut self, val: u8) {
11909 unsafe {
11910 let val: u8 = ::core::mem::transmute(val);
11911 self._bitfield_3.set(0usize, 4u8, val as u64)
11912 }
11913 }
11914 #[inline]
11915 pub unsafe fn alter4_degree_raw(this: *const Self) -> u8 {
11916 unsafe {
11917 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11918 ::core::ptr::addr_of!((*this)._bitfield_3),
11919 0usize,
11920 4u8,
11921 ) as u8)
11922 }
11923 }
11924 #[inline]
11925 pub unsafe fn set_alter4_degree_raw(this: *mut Self, val: u8) {
11926 unsafe {
11927 let val: u8 = ::core::mem::transmute(val);
11928 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11929 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
11930 0usize,
11931 4u8,
11932 val as u64,
11933 )
11934 }
11935 }
11936 #[inline]
11937 pub fn alter4_type(&self) -> u8 {
11938 unsafe { ::core::mem::transmute(self._bitfield_3.get(4usize, 4u8) as u8) }
11939 }
11940 #[inline]
11941 pub fn set_alter4_type(&mut self, val: u8) {
11942 unsafe {
11943 let val: u8 = ::core::mem::transmute(val);
11944 self._bitfield_3.set(4usize, 4u8, val as u64)
11945 }
11946 }
11947 #[inline]
11948 pub unsafe fn alter4_type_raw(this: *const Self) -> u8 {
11949 unsafe {
11950 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11951 ::core::ptr::addr_of!((*this)._bitfield_3),
11952 4usize,
11953 4u8,
11954 ) as u8)
11955 }
11956 }
11957 #[inline]
11958 pub unsafe fn set_alter4_type_raw(this: *mut Self, val: u8) {
11959 unsafe {
11960 let val: u8 = ::core::mem::transmute(val);
11961 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11962 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
11963 4usize,
11964 4u8,
11965 val as u64,
11966 )
11967 }
11968 }
11969 #[inline]
11970 pub fn alter3_degree(&self) -> u8 {
11971 unsafe { ::core::mem::transmute(self._bitfield_3.get(8usize, 4u8) as u8) }
11972 }
11973 #[inline]
11974 pub fn set_alter3_degree(&mut self, val: u8) {
11975 unsafe {
11976 let val: u8 = ::core::mem::transmute(val);
11977 self._bitfield_3.set(8usize, 4u8, val as u64)
11978 }
11979 }
11980 #[inline]
11981 pub unsafe fn alter3_degree_raw(this: *const Self) -> u8 {
11982 unsafe {
11983 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
11984 ::core::ptr::addr_of!((*this)._bitfield_3),
11985 8usize,
11986 4u8,
11987 ) as u8)
11988 }
11989 }
11990 #[inline]
11991 pub unsafe fn set_alter3_degree_raw(this: *mut Self, val: u8) {
11992 unsafe {
11993 let val: u8 = ::core::mem::transmute(val);
11994 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
11995 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
11996 8usize,
11997 4u8,
11998 val as u64,
11999 )
12000 }
12001 }
12002 #[inline]
12003 pub fn alter3_type(&self) -> u8 {
12004 unsafe { ::core::mem::transmute(self._bitfield_3.get(12usize, 4u8) as u8) }
12005 }
12006 #[inline]
12007 pub fn set_alter3_type(&mut self, val: u8) {
12008 unsafe {
12009 let val: u8 = ::core::mem::transmute(val);
12010 self._bitfield_3.set(12usize, 4u8, val as u64)
12011 }
12012 }
12013 #[inline]
12014 pub unsafe fn alter3_type_raw(this: *const Self) -> u8 {
12015 unsafe {
12016 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
12017 ::core::ptr::addr_of!((*this)._bitfield_3),
12018 12usize,
12019 4u8,
12020 ) as u8)
12021 }
12022 }
12023 #[inline]
12024 pub unsafe fn set_alter3_type_raw(this: *mut Self, val: u8) {
12025 unsafe {
12026 let val: u8 = ::core::mem::transmute(val);
12027 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
12028 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
12029 12usize,
12030 4u8,
12031 val as u64,
12032 )
12033 }
12034 }
12035 #[inline]
12036 pub fn bass_alter2_degree(&self) -> u8 {
12037 unsafe { ::core::mem::transmute(self._bitfield_3.get(16usize, 4u8) as u8) }
12038 }
12039 #[inline]
12040 pub fn set_bass_alter2_degree(&mut self, val: u8) {
12041 unsafe {
12042 let val: u8 = ::core::mem::transmute(val);
12043 self._bitfield_3.set(16usize, 4u8, val as u64)
12044 }
12045 }
12046 #[inline]
12047 pub unsafe fn bass_alter2_degree_raw(this: *const Self) -> u8 {
12048 unsafe {
12049 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
12050 ::core::ptr::addr_of!((*this)._bitfield_3),
12051 16usize,
12052 4u8,
12053 ) as u8)
12054 }
12055 }
12056 #[inline]
12057 pub unsafe fn set_bass_alter2_degree_raw(this: *mut Self, val: u8) {
12058 unsafe {
12059 let val: u8 = ::core::mem::transmute(val);
12060 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
12061 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
12062 16usize,
12063 4u8,
12064 val as u64,
12065 )
12066 }
12067 }
12068 #[inline]
12069 pub fn bass_alter2_type(&self) -> u8 {
12070 unsafe { ::core::mem::transmute(self._bitfield_3.get(20usize, 4u8) as u8) }
12071 }
12072 #[inline]
12073 pub fn set_bass_alter2_type(&mut self, val: u8) {
12074 unsafe {
12075 let val: u8 = ::core::mem::transmute(val);
12076 self._bitfield_3.set(20usize, 4u8, val as u64)
12077 }
12078 }
12079 #[inline]
12080 pub unsafe fn bass_alter2_type_raw(this: *const Self) -> u8 {
12081 unsafe {
12082 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
12083 ::core::ptr::addr_of!((*this)._bitfield_3),
12084 20usize,
12085 4u8,
12086 ) as u8)
12087 }
12088 }
12089 #[inline]
12090 pub unsafe fn set_bass_alter2_type_raw(this: *mut Self, val: u8) {
12091 unsafe {
12092 let val: u8 = ::core::mem::transmute(val);
12093 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
12094 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
12095 20usize,
12096 4u8,
12097 val as u64,
12098 )
12099 }
12100 }
12101 #[inline]
12102 pub fn bass_alter1_degree(&self) -> u8 {
12103 unsafe { ::core::mem::transmute(self._bitfield_3.get(24usize, 4u8) as u8) }
12104 }
12105 #[inline]
12106 pub fn set_bass_alter1_degree(&mut self, val: u8) {
12107 unsafe {
12108 let val: u8 = ::core::mem::transmute(val);
12109 self._bitfield_3.set(24usize, 4u8, val as u64)
12110 }
12111 }
12112 #[inline]
12113 pub unsafe fn bass_alter1_degree_raw(this: *const Self) -> u8 {
12114 unsafe {
12115 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
12116 ::core::ptr::addr_of!((*this)._bitfield_3),
12117 24usize,
12118 4u8,
12119 ) as u8)
12120 }
12121 }
12122 #[inline]
12123 pub unsafe fn set_bass_alter1_degree_raw(this: *mut Self, val: u8) {
12124 unsafe {
12125 let val: u8 = ::core::mem::transmute(val);
12126 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
12127 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
12128 24usize,
12129 4u8,
12130 val as u64,
12131 )
12132 }
12133 }
12134 #[inline]
12135 pub fn bass_alter1_type(&self) -> u8 {
12136 unsafe { ::core::mem::transmute(self._bitfield_3.get(28usize, 4u8) as u8) }
12137 }
12138 #[inline]
12139 pub fn set_bass_alter1_type(&mut self, val: u8) {
12140 unsafe {
12141 let val: u8 = ::core::mem::transmute(val);
12142 self._bitfield_3.set(28usize, 4u8, val as u64)
12143 }
12144 }
12145 #[inline]
12146 pub unsafe fn bass_alter1_type_raw(this: *const Self) -> u8 {
12147 unsafe {
12148 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
12149 ::core::ptr::addr_of!((*this)._bitfield_3),
12150 28usize,
12151 4u8,
12152 ) as u8)
12153 }
12154 }
12155 #[inline]
12156 pub unsafe fn set_bass_alter1_type_raw(this: *mut Self, val: u8) {
12157 unsafe {
12158 let val: u8 = ::core::mem::transmute(val);
12159 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
12160 ::core::ptr::addr_of_mut!((*this)._bitfield_3),
12161 28usize,
12162 4u8,
12163 val as u64,
12164 )
12165 }
12166 }
12167 #[inline]
12168 pub fn new_bitfield_3(
12169 alter4_degree: u8,
12170 alter4_type: u8,
12171 alter3_degree: u8,
12172 alter3_type: u8,
12173 bass_alter2_degree: u8,
12174 bass_alter2_type: u8,
12175 bass_alter1_degree: u8,
12176 bass_alter1_type: u8,
12177 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
12178 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
12179 __bindgen_bitfield_unit.set(0usize, 4u8, {
12180 let alter4_degree: u8 = unsafe { ::core::mem::transmute(alter4_degree) };
12181 alter4_degree as u64
12182 });
12183 __bindgen_bitfield_unit.set(4usize, 4u8, {
12184 let alter4_type: u8 = unsafe { ::core::mem::transmute(alter4_type) };
12185 alter4_type as u64
12186 });
12187 __bindgen_bitfield_unit.set(8usize, 4u8, {
12188 let alter3_degree: u8 = unsafe { ::core::mem::transmute(alter3_degree) };
12189 alter3_degree as u64
12190 });
12191 __bindgen_bitfield_unit.set(12usize, 4u8, {
12192 let alter3_type: u8 = unsafe { ::core::mem::transmute(alter3_type) };
12193 alter3_type as u64
12194 });
12195 __bindgen_bitfield_unit.set(16usize, 4u8, {
12196 let bass_alter2_degree: u8 = unsafe { ::core::mem::transmute(bass_alter2_degree) };
12197 bass_alter2_degree as u64
12198 });
12199 __bindgen_bitfield_unit.set(20usize, 4u8, {
12200 let bass_alter2_type: u8 = unsafe { ::core::mem::transmute(bass_alter2_type) };
12201 bass_alter2_type as u64
12202 });
12203 __bindgen_bitfield_unit.set(24usize, 4u8, {
12204 let bass_alter1_degree: u8 = unsafe { ::core::mem::transmute(bass_alter1_degree) };
12205 bass_alter1_degree as u64
12206 });
12207 __bindgen_bitfield_unit.set(28usize, 4u8, {
12208 let bass_alter1_type: u8 = unsafe { ::core::mem::transmute(bass_alter1_type) };
12209 bass_alter1_type as u64
12210 });
12211 __bindgen_bitfield_unit
12212 }
12213 #[inline]
12214 pub fn bass_note(&self) -> u8 {
12215 unsafe { ::core::mem::transmute(self._bitfield_4.get(0usize, 4u8) as u8) }
12216 }
12217 #[inline]
12218 pub fn set_bass_note(&mut self, val: u8) {
12219 unsafe {
12220 let val: u8 = ::core::mem::transmute(val);
12221 self._bitfield_4.set(0usize, 4u8, val as u64)
12222 }
12223 }
12224 #[inline]
12225 pub unsafe fn bass_note_raw(this: *const Self) -> u8 {
12226 unsafe {
12227 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
12228 ::core::ptr::addr_of!((*this)._bitfield_4),
12229 0usize,
12230 4u8,
12231 ) as u8)
12232 }
12233 }
12234 #[inline]
12235 pub unsafe fn set_bass_note_raw(this: *mut Self, val: u8) {
12236 unsafe {
12237 let val: u8 = ::core::mem::transmute(val);
12238 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
12239 ::core::ptr::addr_of_mut!((*this)._bitfield_4),
12240 0usize,
12241 4u8,
12242 val as u64,
12243 )
12244 }
12245 }
12246 #[inline]
12247 pub fn bass_sharp(&self) -> u8 {
12248 unsafe { ::core::mem::transmute(self._bitfield_4.get(4usize, 4u8) as u8) }
12249 }
12250 #[inline]
12251 pub fn set_bass_sharp(&mut self, val: u8) {
12252 unsafe {
12253 let val: u8 = ::core::mem::transmute(val);
12254 self._bitfield_4.set(4usize, 4u8, val as u64)
12255 }
12256 }
12257 #[inline]
12258 pub unsafe fn bass_sharp_raw(this: *const Self) -> u8 {
12259 unsafe {
12260 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
12261 ::core::ptr::addr_of!((*this)._bitfield_4),
12262 4usize,
12263 4u8,
12264 ) as u8)
12265 }
12266 }
12267 #[inline]
12268 pub unsafe fn set_bass_sharp_raw(this: *mut Self, val: u8) {
12269 unsafe {
12270 let val: u8 = ::core::mem::transmute(val);
12271 <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
12272 ::core::ptr::addr_of_mut!((*this)._bitfield_4),
12273 4usize,
12274 4u8,
12275 val as u64,
12276 )
12277 }
12278 }
12279 #[inline]
12280 pub fn new_bitfield_4(bass_note: u8, bass_sharp: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
12281 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
12282 __bindgen_bitfield_unit.set(0usize, 4u8, {
12283 let bass_note: u8 = unsafe { ::core::mem::transmute(bass_note) };
12284 bass_note as u64
12285 });
12286 __bindgen_bitfield_unit.set(4usize, 4u8, {
12287 let bass_sharp: u8 = unsafe { ::core::mem::transmute(bass_sharp) };
12288 bass_sharp as u64
12289 });
12290 __bindgen_bitfield_unit
12291 }
12292}
12293pub type snd_ump_msg_set_chord_name_t = _snd_ump_msg_set_chord_name;
12294#[repr(C)]
12295#[derive(Copy, Clone)]
12296pub union _snd_ump_msg_flex_data {
12297 pub meta: snd_ump_msg_flex_data_meta_t,
12298 pub text: snd_ump_msg_flex_data_meta_t,
12299 pub set_tempo: snd_ump_msg_set_tempo_t,
12300 pub set_time_sig: snd_ump_msg_set_time_sig_t,
12301 pub set_metronome: snd_ump_msg_set_metronome_t,
12302 pub set_key_sig: snd_ump_msg_set_key_sig_t,
12303 pub set_chord_name: snd_ump_msg_set_chord_name_t,
12304 pub hdr: snd_ump_msg_hdr_t,
12305 pub raw: [u32; 4usize],
12306}
12307pub type snd_ump_msg_flex_data_t = _snd_ump_msg_flex_data;
12308#[repr(C)]
12309#[derive(Debug, Copy, Clone)]
12310pub struct _snd_ump_msg_mixed_data_header {
12311 pub bytes: u16,
12312 pub _bitfield_align_1: [u8; 0],
12313 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
12314 pub chunk: u16,
12315 pub chunks: u16,
12316 pub device: u16,
12317 pub manufacturer: u16,
12318 pub sub_id_2: u16,
12319 pub sub_id_1: u16,
12320}
12321impl _snd_ump_msg_mixed_data_header {
12322 #[inline]
12323 pub fn mds_id(&self) -> u8 {
12324 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
12325 }
12326 #[inline]
12327 pub fn set_mds_id(&mut self, val: u8) {
12328 unsafe {
12329 let val: u8 = ::core::mem::transmute(val);
12330 self._bitfield_1.set(0usize, 4u8, val as u64)
12331 }
12332 }
12333 #[inline]
12334 pub unsafe fn mds_id_raw(this: *const Self) -> u8 {
12335 unsafe {
12336 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12337 ::core::ptr::addr_of!((*this)._bitfield_1),
12338 0usize,
12339 4u8,
12340 ) as u8)
12341 }
12342 }
12343 #[inline]
12344 pub unsafe fn set_mds_id_raw(this: *mut Self, val: u8) {
12345 unsafe {
12346 let val: u8 = ::core::mem::transmute(val);
12347 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12348 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12349 0usize,
12350 4u8,
12351 val as u64,
12352 )
12353 }
12354 }
12355 #[inline]
12356 pub fn status(&self) -> u8 {
12357 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
12358 }
12359 #[inline]
12360 pub fn set_status(&mut self, val: u8) {
12361 unsafe {
12362 let val: u8 = ::core::mem::transmute(val);
12363 self._bitfield_1.set(4usize, 4u8, val as u64)
12364 }
12365 }
12366 #[inline]
12367 pub unsafe fn status_raw(this: *const Self) -> u8 {
12368 unsafe {
12369 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12370 ::core::ptr::addr_of!((*this)._bitfield_1),
12371 4usize,
12372 4u8,
12373 ) as u8)
12374 }
12375 }
12376 #[inline]
12377 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
12378 unsafe {
12379 let val: u8 = ::core::mem::transmute(val);
12380 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12381 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12382 4usize,
12383 4u8,
12384 val as u64,
12385 )
12386 }
12387 }
12388 #[inline]
12389 pub fn group(&self) -> u8 {
12390 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
12391 }
12392 #[inline]
12393 pub fn set_group(&mut self, val: u8) {
12394 unsafe {
12395 let val: u8 = ::core::mem::transmute(val);
12396 self._bitfield_1.set(8usize, 4u8, val as u64)
12397 }
12398 }
12399 #[inline]
12400 pub unsafe fn group_raw(this: *const Self) -> u8 {
12401 unsafe {
12402 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12403 ::core::ptr::addr_of!((*this)._bitfield_1),
12404 8usize,
12405 4u8,
12406 ) as u8)
12407 }
12408 }
12409 #[inline]
12410 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
12411 unsafe {
12412 let val: u8 = ::core::mem::transmute(val);
12413 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12414 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12415 8usize,
12416 4u8,
12417 val as u64,
12418 )
12419 }
12420 }
12421 #[inline]
12422 pub fn type_(&self) -> u8 {
12423 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
12424 }
12425 #[inline]
12426 pub fn set_type(&mut self, val: u8) {
12427 unsafe {
12428 let val: u8 = ::core::mem::transmute(val);
12429 self._bitfield_1.set(12usize, 4u8, val as u64)
12430 }
12431 }
12432 #[inline]
12433 pub unsafe fn type__raw(this: *const Self) -> u8 {
12434 unsafe {
12435 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12436 ::core::ptr::addr_of!((*this)._bitfield_1),
12437 12usize,
12438 4u8,
12439 ) as u8)
12440 }
12441 }
12442 #[inline]
12443 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
12444 unsafe {
12445 let val: u8 = ::core::mem::transmute(val);
12446 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12447 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12448 12usize,
12449 4u8,
12450 val as u64,
12451 )
12452 }
12453 }
12454 #[inline]
12455 pub fn new_bitfield_1(
12456 mds_id: u8,
12457 status: u8,
12458 group: u8,
12459 type_: u8,
12460 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
12461 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
12462 __bindgen_bitfield_unit.set(0usize, 4u8, {
12463 let mds_id: u8 = unsafe { ::core::mem::transmute(mds_id) };
12464 mds_id as u64
12465 });
12466 __bindgen_bitfield_unit.set(4usize, 4u8, {
12467 let status: u8 = unsafe { ::core::mem::transmute(status) };
12468 status as u64
12469 });
12470 __bindgen_bitfield_unit.set(8usize, 4u8, {
12471 let group: u8 = unsafe { ::core::mem::transmute(group) };
12472 group as u64
12473 });
12474 __bindgen_bitfield_unit.set(12usize, 4u8, {
12475 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
12476 type_ as u64
12477 });
12478 __bindgen_bitfield_unit
12479 }
12480}
12481pub type snd_ump_msg_mixed_data_header_t = _snd_ump_msg_mixed_data_header;
12482#[repr(C)]
12483#[derive(Debug, Copy, Clone)]
12484pub struct _snd_ump_msg_mixed_data_payload {
12485 pub payload1: u16,
12486 pub _bitfield_align_1: [u8; 0],
12487 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
12488 pub payloads: [u32; 3usize],
12489}
12490impl _snd_ump_msg_mixed_data_payload {
12491 #[inline]
12492 pub fn mds_id(&self) -> u8 {
12493 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
12494 }
12495 #[inline]
12496 pub fn set_mds_id(&mut self, val: u8) {
12497 unsafe {
12498 let val: u8 = ::core::mem::transmute(val);
12499 self._bitfield_1.set(0usize, 4u8, val as u64)
12500 }
12501 }
12502 #[inline]
12503 pub unsafe fn mds_id_raw(this: *const Self) -> u8 {
12504 unsafe {
12505 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12506 ::core::ptr::addr_of!((*this)._bitfield_1),
12507 0usize,
12508 4u8,
12509 ) as u8)
12510 }
12511 }
12512 #[inline]
12513 pub unsafe fn set_mds_id_raw(this: *mut Self, val: u8) {
12514 unsafe {
12515 let val: u8 = ::core::mem::transmute(val);
12516 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12517 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12518 0usize,
12519 4u8,
12520 val as u64,
12521 )
12522 }
12523 }
12524 #[inline]
12525 pub fn status(&self) -> u8 {
12526 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
12527 }
12528 #[inline]
12529 pub fn set_status(&mut self, val: u8) {
12530 unsafe {
12531 let val: u8 = ::core::mem::transmute(val);
12532 self._bitfield_1.set(4usize, 4u8, val as u64)
12533 }
12534 }
12535 #[inline]
12536 pub unsafe fn status_raw(this: *const Self) -> u8 {
12537 unsafe {
12538 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12539 ::core::ptr::addr_of!((*this)._bitfield_1),
12540 4usize,
12541 4u8,
12542 ) as u8)
12543 }
12544 }
12545 #[inline]
12546 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
12547 unsafe {
12548 let val: u8 = ::core::mem::transmute(val);
12549 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12550 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12551 4usize,
12552 4u8,
12553 val as u64,
12554 )
12555 }
12556 }
12557 #[inline]
12558 pub fn group(&self) -> u8 {
12559 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
12560 }
12561 #[inline]
12562 pub fn set_group(&mut self, val: u8) {
12563 unsafe {
12564 let val: u8 = ::core::mem::transmute(val);
12565 self._bitfield_1.set(8usize, 4u8, val as u64)
12566 }
12567 }
12568 #[inline]
12569 pub unsafe fn group_raw(this: *const Self) -> u8 {
12570 unsafe {
12571 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12572 ::core::ptr::addr_of!((*this)._bitfield_1),
12573 8usize,
12574 4u8,
12575 ) as u8)
12576 }
12577 }
12578 #[inline]
12579 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
12580 unsafe {
12581 let val: u8 = ::core::mem::transmute(val);
12582 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12583 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12584 8usize,
12585 4u8,
12586 val as u64,
12587 )
12588 }
12589 }
12590 #[inline]
12591 pub fn type_(&self) -> u8 {
12592 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
12593 }
12594 #[inline]
12595 pub fn set_type(&mut self, val: u8) {
12596 unsafe {
12597 let val: u8 = ::core::mem::transmute(val);
12598 self._bitfield_1.set(12usize, 4u8, val as u64)
12599 }
12600 }
12601 #[inline]
12602 pub unsafe fn type__raw(this: *const Self) -> u8 {
12603 unsafe {
12604 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12605 ::core::ptr::addr_of!((*this)._bitfield_1),
12606 12usize,
12607 4u8,
12608 ) as u8)
12609 }
12610 }
12611 #[inline]
12612 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
12613 unsafe {
12614 let val: u8 = ::core::mem::transmute(val);
12615 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12616 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12617 12usize,
12618 4u8,
12619 val as u64,
12620 )
12621 }
12622 }
12623 #[inline]
12624 pub fn new_bitfield_1(
12625 mds_id: u8,
12626 status: u8,
12627 group: u8,
12628 type_: u8,
12629 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
12630 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
12631 __bindgen_bitfield_unit.set(0usize, 4u8, {
12632 let mds_id: u8 = unsafe { ::core::mem::transmute(mds_id) };
12633 mds_id as u64
12634 });
12635 __bindgen_bitfield_unit.set(4usize, 4u8, {
12636 let status: u8 = unsafe { ::core::mem::transmute(status) };
12637 status as u64
12638 });
12639 __bindgen_bitfield_unit.set(8usize, 4u8, {
12640 let group: u8 = unsafe { ::core::mem::transmute(group) };
12641 group as u64
12642 });
12643 __bindgen_bitfield_unit.set(12usize, 4u8, {
12644 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
12645 type_ as u64
12646 });
12647 __bindgen_bitfield_unit
12648 }
12649}
12650pub type snd_ump_msg_mixed_data_payload_t = _snd_ump_msg_mixed_data_payload;
12651#[repr(C)]
12652#[derive(Copy, Clone)]
12653pub union _snd_ump_msg_mixed_data {
12654 pub header: snd_ump_msg_mixed_data_header_t,
12655 pub payload: snd_ump_msg_mixed_data_payload_t,
12656 pub raw: [u32; 4usize],
12657}
12658pub type snd_ump_msg_mixed_data_t = _snd_ump_msg_mixed_data;
12659#[repr(C, packed)]
12660#[derive(Debug, Copy, Clone)]
12661pub struct _snd_ump_msg_jr_clock {
12662 pub time: u16,
12663 pub _bitfield_align_1: [u8; 0],
12664 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
12665}
12666impl _snd_ump_msg_jr_clock {
12667 #[inline]
12668 pub fn reserved(&self) -> u8 {
12669 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
12670 }
12671 #[inline]
12672 pub fn set_reserved(&mut self, val: u8) {
12673 unsafe {
12674 let val: u8 = ::core::mem::transmute(val);
12675 self._bitfield_1.set(0usize, 4u8, val as u64)
12676 }
12677 }
12678 #[inline]
12679 pub unsafe fn reserved_raw(this: *const Self) -> u8 {
12680 unsafe {
12681 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12682 ::core::ptr::addr_of!((*this)._bitfield_1),
12683 0usize,
12684 4u8,
12685 ) as u8)
12686 }
12687 }
12688 #[inline]
12689 pub unsafe fn set_reserved_raw(this: *mut Self, val: u8) {
12690 unsafe {
12691 let val: u8 = ::core::mem::transmute(val);
12692 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12693 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12694 0usize,
12695 4u8,
12696 val as u64,
12697 )
12698 }
12699 }
12700 #[inline]
12701 pub fn status(&self) -> u8 {
12702 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
12703 }
12704 #[inline]
12705 pub fn set_status(&mut self, val: u8) {
12706 unsafe {
12707 let val: u8 = ::core::mem::transmute(val);
12708 self._bitfield_1.set(4usize, 4u8, val as u64)
12709 }
12710 }
12711 #[inline]
12712 pub unsafe fn status_raw(this: *const Self) -> u8 {
12713 unsafe {
12714 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12715 ::core::ptr::addr_of!((*this)._bitfield_1),
12716 4usize,
12717 4u8,
12718 ) as u8)
12719 }
12720 }
12721 #[inline]
12722 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
12723 unsafe {
12724 let val: u8 = ::core::mem::transmute(val);
12725 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12726 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12727 4usize,
12728 4u8,
12729 val as u64,
12730 )
12731 }
12732 }
12733 #[inline]
12734 pub fn group(&self) -> u8 {
12735 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
12736 }
12737 #[inline]
12738 pub fn set_group(&mut self, val: u8) {
12739 unsafe {
12740 let val: u8 = ::core::mem::transmute(val);
12741 self._bitfield_1.set(8usize, 4u8, val as u64)
12742 }
12743 }
12744 #[inline]
12745 pub unsafe fn group_raw(this: *const Self) -> u8 {
12746 unsafe {
12747 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12748 ::core::ptr::addr_of!((*this)._bitfield_1),
12749 8usize,
12750 4u8,
12751 ) as u8)
12752 }
12753 }
12754 #[inline]
12755 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
12756 unsafe {
12757 let val: u8 = ::core::mem::transmute(val);
12758 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12759 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12760 8usize,
12761 4u8,
12762 val as u64,
12763 )
12764 }
12765 }
12766 #[inline]
12767 pub fn type_(&self) -> u8 {
12768 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
12769 }
12770 #[inline]
12771 pub fn set_type(&mut self, val: u8) {
12772 unsafe {
12773 let val: u8 = ::core::mem::transmute(val);
12774 self._bitfield_1.set(12usize, 4u8, val as u64)
12775 }
12776 }
12777 #[inline]
12778 pub unsafe fn type__raw(this: *const Self) -> u8 {
12779 unsafe {
12780 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12781 ::core::ptr::addr_of!((*this)._bitfield_1),
12782 12usize,
12783 4u8,
12784 ) as u8)
12785 }
12786 }
12787 #[inline]
12788 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
12789 unsafe {
12790 let val: u8 = ::core::mem::transmute(val);
12791 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12792 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12793 12usize,
12794 4u8,
12795 val as u64,
12796 )
12797 }
12798 }
12799 #[inline]
12800 pub fn new_bitfield_1(
12801 reserved: u8,
12802 status: u8,
12803 group: u8,
12804 type_: u8,
12805 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
12806 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
12807 __bindgen_bitfield_unit.set(0usize, 4u8, {
12808 let reserved: u8 = unsafe { ::core::mem::transmute(reserved) };
12809 reserved as u64
12810 });
12811 __bindgen_bitfield_unit.set(4usize, 4u8, {
12812 let status: u8 = unsafe { ::core::mem::transmute(status) };
12813 status as u64
12814 });
12815 __bindgen_bitfield_unit.set(8usize, 4u8, {
12816 let group: u8 = unsafe { ::core::mem::transmute(group) };
12817 group as u64
12818 });
12819 __bindgen_bitfield_unit.set(12usize, 4u8, {
12820 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
12821 type_ as u64
12822 });
12823 __bindgen_bitfield_unit
12824 }
12825}
12826pub type snd_ump_msg_jr_clock_t = _snd_ump_msg_jr_clock;
12827#[repr(C, packed)]
12828#[derive(Debug, Copy, Clone)]
12829pub struct _snd_ump_msg_dctpq {
12830 pub ticks: u16,
12831 pub _bitfield_align_1: [u8; 0],
12832 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
12833}
12834impl _snd_ump_msg_dctpq {
12835 #[inline]
12836 pub fn reserved(&self) -> u8 {
12837 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) }
12838 }
12839 #[inline]
12840 pub fn set_reserved(&mut self, val: u8) {
12841 unsafe {
12842 let val: u8 = ::core::mem::transmute(val);
12843 self._bitfield_1.set(0usize, 4u8, val as u64)
12844 }
12845 }
12846 #[inline]
12847 pub unsafe fn reserved_raw(this: *const Self) -> u8 {
12848 unsafe {
12849 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12850 ::core::ptr::addr_of!((*this)._bitfield_1),
12851 0usize,
12852 4u8,
12853 ) as u8)
12854 }
12855 }
12856 #[inline]
12857 pub unsafe fn set_reserved_raw(this: *mut Self, val: u8) {
12858 unsafe {
12859 let val: u8 = ::core::mem::transmute(val);
12860 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12861 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12862 0usize,
12863 4u8,
12864 val as u64,
12865 )
12866 }
12867 }
12868 #[inline]
12869 pub fn status(&self) -> u8 {
12870 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) }
12871 }
12872 #[inline]
12873 pub fn set_status(&mut self, val: u8) {
12874 unsafe {
12875 let val: u8 = ::core::mem::transmute(val);
12876 self._bitfield_1.set(4usize, 4u8, val as u64)
12877 }
12878 }
12879 #[inline]
12880 pub unsafe fn status_raw(this: *const Self) -> u8 {
12881 unsafe {
12882 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12883 ::core::ptr::addr_of!((*this)._bitfield_1),
12884 4usize,
12885 4u8,
12886 ) as u8)
12887 }
12888 }
12889 #[inline]
12890 pub unsafe fn set_status_raw(this: *mut Self, val: u8) {
12891 unsafe {
12892 let val: u8 = ::core::mem::transmute(val);
12893 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12894 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12895 4usize,
12896 4u8,
12897 val as u64,
12898 )
12899 }
12900 }
12901 #[inline]
12902 pub fn group(&self) -> u8 {
12903 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 4u8) as u8) }
12904 }
12905 #[inline]
12906 pub fn set_group(&mut self, val: u8) {
12907 unsafe {
12908 let val: u8 = ::core::mem::transmute(val);
12909 self._bitfield_1.set(8usize, 4u8, val as u64)
12910 }
12911 }
12912 #[inline]
12913 pub unsafe fn group_raw(this: *const Self) -> u8 {
12914 unsafe {
12915 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12916 ::core::ptr::addr_of!((*this)._bitfield_1),
12917 8usize,
12918 4u8,
12919 ) as u8)
12920 }
12921 }
12922 #[inline]
12923 pub unsafe fn set_group_raw(this: *mut Self, val: u8) {
12924 unsafe {
12925 let val: u8 = ::core::mem::transmute(val);
12926 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12927 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12928 8usize,
12929 4u8,
12930 val as u64,
12931 )
12932 }
12933 }
12934 #[inline]
12935 pub fn type_(&self) -> u8 {
12936 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 4u8) as u8) }
12937 }
12938 #[inline]
12939 pub fn set_type(&mut self, val: u8) {
12940 unsafe {
12941 let val: u8 = ::core::mem::transmute(val);
12942 self._bitfield_1.set(12usize, 4u8, val as u64)
12943 }
12944 }
12945 #[inline]
12946 pub unsafe fn type__raw(this: *const Self) -> u8 {
12947 unsafe {
12948 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(
12949 ::core::ptr::addr_of!((*this)._bitfield_1),
12950 12usize,
12951 4u8,
12952 ) as u8)
12953 }
12954 }
12955 #[inline]
12956 pub unsafe fn set_type_raw(this: *mut Self, val: u8) {
12957 unsafe {
12958 let val: u8 = ::core::mem::transmute(val);
12959 <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(
12960 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
12961 12usize,
12962 4u8,
12963 val as u64,
12964 )
12965 }
12966 }
12967 #[inline]
12968 pub fn new_bitfield_1(
12969 reserved: u8,
12970 status: u8,
12971 group: u8,
12972 type_: u8,
12973 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
12974 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
12975 __bindgen_bitfield_unit.set(0usize, 4u8, {
12976 let reserved: u8 = unsafe { ::core::mem::transmute(reserved) };
12977 reserved as u64
12978 });
12979 __bindgen_bitfield_unit.set(4usize, 4u8, {
12980 let status: u8 = unsafe { ::core::mem::transmute(status) };
12981 status as u64
12982 });
12983 __bindgen_bitfield_unit.set(8usize, 4u8, {
12984 let group: u8 = unsafe { ::core::mem::transmute(group) };
12985 group as u64
12986 });
12987 __bindgen_bitfield_unit.set(12usize, 4u8, {
12988 let type_: u8 = unsafe { ::core::mem::transmute(type_) };
12989 type_ as u64
12990 });
12991 __bindgen_bitfield_unit
12992 }
12993}
12994pub type snd_ump_msg_dctpq_t = _snd_ump_msg_dctpq;
12995#[repr(C, packed)]
12996#[derive(Debug, Copy, Clone)]
12997pub struct _snd_ump_msg_dc {
12998 pub _bitfield_align_1: [u8; 0],
12999 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
13000}
13001impl _snd_ump_msg_dc {
13002 #[inline]
13003 pub fn ticks(&self) -> u32 {
13004 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 20u8) as u32) }
13005 }
13006 #[inline]
13007 pub fn set_ticks(&mut self, val: u32) {
13008 unsafe {
13009 let val: u32 = ::core::mem::transmute(val);
13010 self._bitfield_1.set(0usize, 20u8, val as u64)
13011 }
13012 }
13013 #[inline]
13014 pub unsafe fn ticks_raw(this: *const Self) -> u32 {
13015 unsafe {
13016 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
13017 ::core::ptr::addr_of!((*this)._bitfield_1),
13018 0usize,
13019 20u8,
13020 ) as u32)
13021 }
13022 }
13023 #[inline]
13024 pub unsafe fn set_ticks_raw(this: *mut Self, val: u32) {
13025 unsafe {
13026 let val: u32 = ::core::mem::transmute(val);
13027 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
13028 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
13029 0usize,
13030 20u8,
13031 val as u64,
13032 )
13033 }
13034 }
13035 #[inline]
13036 pub fn status(&self) -> u32 {
13037 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 4u8) as u32) }
13038 }
13039 #[inline]
13040 pub fn set_status(&mut self, val: u32) {
13041 unsafe {
13042 let val: u32 = ::core::mem::transmute(val);
13043 self._bitfield_1.set(20usize, 4u8, val as u64)
13044 }
13045 }
13046 #[inline]
13047 pub unsafe fn status_raw(this: *const Self) -> u32 {
13048 unsafe {
13049 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
13050 ::core::ptr::addr_of!((*this)._bitfield_1),
13051 20usize,
13052 4u8,
13053 ) as u32)
13054 }
13055 }
13056 #[inline]
13057 pub unsafe fn set_status_raw(this: *mut Self, val: u32) {
13058 unsafe {
13059 let val: u32 = ::core::mem::transmute(val);
13060 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
13061 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
13062 20usize,
13063 4u8,
13064 val as u64,
13065 )
13066 }
13067 }
13068 #[inline]
13069 pub fn group(&self) -> u32 {
13070 unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 4u8) as u32) }
13071 }
13072 #[inline]
13073 pub fn set_group(&mut self, val: u32) {
13074 unsafe {
13075 let val: u32 = ::core::mem::transmute(val);
13076 self._bitfield_1.set(24usize, 4u8, val as u64)
13077 }
13078 }
13079 #[inline]
13080 pub unsafe fn group_raw(this: *const Self) -> u32 {
13081 unsafe {
13082 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
13083 ::core::ptr::addr_of!((*this)._bitfield_1),
13084 24usize,
13085 4u8,
13086 ) as u32)
13087 }
13088 }
13089 #[inline]
13090 pub unsafe fn set_group_raw(this: *mut Self, val: u32) {
13091 unsafe {
13092 let val: u32 = ::core::mem::transmute(val);
13093 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
13094 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
13095 24usize,
13096 4u8,
13097 val as u64,
13098 )
13099 }
13100 }
13101 #[inline]
13102 pub fn type_(&self) -> u32 {
13103 unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 4u8) as u32) }
13104 }
13105 #[inline]
13106 pub fn set_type(&mut self, val: u32) {
13107 unsafe {
13108 let val: u32 = ::core::mem::transmute(val);
13109 self._bitfield_1.set(28usize, 4u8, val as u64)
13110 }
13111 }
13112 #[inline]
13113 pub unsafe fn type__raw(this: *const Self) -> u32 {
13114 unsafe {
13115 ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
13116 ::core::ptr::addr_of!((*this)._bitfield_1),
13117 28usize,
13118 4u8,
13119 ) as u32)
13120 }
13121 }
13122 #[inline]
13123 pub unsafe fn set_type_raw(this: *mut Self, val: u32) {
13124 unsafe {
13125 let val: u32 = ::core::mem::transmute(val);
13126 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
13127 ::core::ptr::addr_of_mut!((*this)._bitfield_1),
13128 28usize,
13129 4u8,
13130 val as u64,
13131 )
13132 }
13133 }
13134 #[inline]
13135 pub fn new_bitfield_1(
13136 ticks: u32,
13137 status: u32,
13138 group: u32,
13139 type_: u32,
13140 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
13141 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
13142 __bindgen_bitfield_unit.set(0usize, 20u8, {
13143 let ticks: u32 = unsafe { ::core::mem::transmute(ticks) };
13144 ticks as u64
13145 });
13146 __bindgen_bitfield_unit.set(20usize, 4u8, {
13147 let status: u32 = unsafe { ::core::mem::transmute(status) };
13148 status as u64
13149 });
13150 __bindgen_bitfield_unit.set(24usize, 4u8, {
13151 let group: u32 = unsafe { ::core::mem::transmute(group) };
13152 group as u64
13153 });
13154 __bindgen_bitfield_unit.set(28usize, 4u8, {
13155 let type_: u32 = unsafe { ::core::mem::transmute(type_) };
13156 type_ as u64
13157 });
13158 __bindgen_bitfield_unit
13159 }
13160}
13161pub type snd_ump_msg_dc_t = _snd_ump_msg_dc;
13162#[repr(C)]
13163#[derive(Copy, Clone)]
13164pub union _snd_ump_msg_utility {
13165 pub jr_clock: snd_ump_msg_jr_clock_t,
13166 pub dctpq: snd_ump_msg_dctpq_t,
13167 pub dc: snd_ump_msg_dc_t,
13168 pub hdr: snd_ump_msg_hdr_t,
13169 pub raw: u32,
13170}
13171pub type snd_ump_msg_utility_t = _snd_ump_msg_utility;
13172pub const SND_UMP_MSG_TYPE_UTILITY: _bindgen_ty_6 = 0;
13173pub const SND_UMP_MSG_TYPE_SYSTEM: _bindgen_ty_6 = 1;
13174pub const SND_UMP_MSG_TYPE_MIDI1_CHANNEL_VOICE: _bindgen_ty_6 = 2;
13175pub const SND_UMP_MSG_TYPE_DATA: _bindgen_ty_6 = 3;
13176pub const SND_UMP_MSG_TYPE_MIDI2_CHANNEL_VOICE: _bindgen_ty_6 = 4;
13177pub const SND_UMP_MSG_TYPE_EXTENDED_DATA: _bindgen_ty_6 = 5;
13178pub const SND_UMP_MSG_TYPE_FLEX_DATA: _bindgen_ty_6 = 13;
13179pub const SND_UMP_MSG_TYPE_STREAM: _bindgen_ty_6 = 15;
13180pub type _bindgen_ty_6 = ::core::ffi::c_uint;
13181pub const SND_UMP_MSG_PER_NOTE_RCC: _bindgen_ty_7 = 0;
13182pub const SND_UMP_MSG_PER_NOTE_ACC: _bindgen_ty_7 = 1;
13183pub const SND_UMP_MSG_RPN: _bindgen_ty_7 = 2;
13184pub const SND_UMP_MSG_NRPN: _bindgen_ty_7 = 3;
13185pub const SND_UMP_MSG_RELATIVE_RPN: _bindgen_ty_7 = 4;
13186pub const SND_UMP_MSG_RELATIVE_NRPN: _bindgen_ty_7 = 5;
13187pub const SND_UMP_MSG_PER_NOTE_PITCHBEND: _bindgen_ty_7 = 6;
13188pub const SND_UMP_MSG_NOTE_OFF: _bindgen_ty_7 = 8;
13189pub const SND_UMP_MSG_NOTE_ON: _bindgen_ty_7 = 9;
13190pub const SND_UMP_MSG_POLY_PRESSURE: _bindgen_ty_7 = 10;
13191pub const SND_UMP_MSG_CONTROL_CHANGE: _bindgen_ty_7 = 11;
13192pub const SND_UMP_MSG_PROGRAM_CHANGE: _bindgen_ty_7 = 12;
13193pub const SND_UMP_MSG_CHANNEL_PRESSURE: _bindgen_ty_7 = 13;
13194pub const SND_UMP_MSG_PITCHBEND: _bindgen_ty_7 = 14;
13195pub const SND_UMP_MSG_PER_NOTE_MGMT: _bindgen_ty_7 = 15;
13196pub type _bindgen_ty_7 = ::core::ffi::c_uint;
13197pub const SND_UMP_MSG_REALTIME: _bindgen_ty_8 = 240;
13198pub const SND_UMP_MSG_SYSEX_START: _bindgen_ty_8 = 240;
13199pub const SND_UMP_MSG_MIDI_TIME_CODE: _bindgen_ty_8 = 241;
13200pub const SND_UMP_MSG_SONG_POSITION: _bindgen_ty_8 = 242;
13201pub const SND_UMP_MSG_SONG_SELECT: _bindgen_ty_8 = 243;
13202pub const SND_UMP_MSG_TUNE_REQUEST: _bindgen_ty_8 = 246;
13203pub const SND_UMP_MSG_SYSEX_END: _bindgen_ty_8 = 247;
13204pub const SND_UMP_MSG_TIMING_CLOCK: _bindgen_ty_8 = 248;
13205pub const SND_UMP_MSG_START: _bindgen_ty_8 = 250;
13206pub const SND_UMP_MSG_CONTINUE: _bindgen_ty_8 = 251;
13207pub const SND_UMP_MSG_STOP: _bindgen_ty_8 = 252;
13208pub const SND_UMP_MSG_ACTIVE_SENSING: _bindgen_ty_8 = 254;
13209pub const SND_UMP_MSG_RESET: _bindgen_ty_8 = 255;
13210pub type _bindgen_ty_8 = ::core::ffi::c_uint;
13211pub const SND_UMP_SYSEX_STATUS_SINGLE: _bindgen_ty_9 = 0;
13212pub const SND_UMP_SYSEX_STATUS_START: _bindgen_ty_9 = 1;
13213pub const SND_UMP_SYSEX_STATUS_CONTINUE: _bindgen_ty_9 = 2;
13214pub const SND_UMP_SYSEX_STATUS_END: _bindgen_ty_9 = 3;
13215pub type _bindgen_ty_9 = ::core::ffi::c_uint;
13216pub const SND_UMP_MIXED_DATA_SET_STATUS_HEADER: _bindgen_ty_10 = 8;
13217pub const SND_UMP_MIXED_DATA_SET_STATUS_PAYLOAD: _bindgen_ty_10 = 9;
13218pub type _bindgen_ty_10 = ::core::ffi::c_uint;
13219pub const SND_UMP_UTILITY_MSG_STATUS_NOOP: _bindgen_ty_11 = 0;
13220pub const SND_UMP_UTILITY_MSG_STATUS_JR_CLOCK: _bindgen_ty_11 = 1;
13221pub const SND_UMP_UTILITY_MSG_STATUS_JR_TSTAMP: _bindgen_ty_11 = 2;
13222pub const SND_UMP_UTILITY_MSG_STATUS_DCTPQ: _bindgen_ty_11 = 3;
13223pub const SND_UMP_UTILITY_MSG_STATUS_DC: _bindgen_ty_11 = 4;
13224pub type _bindgen_ty_11 = ::core::ffi::c_uint;
13225pub const SND_UMP_STREAM_MSG_STATUS_EP_DISCOVERY: _bindgen_ty_12 = 0;
13226pub const SND_UMP_STREAM_MSG_STATUS_EP_INFO: _bindgen_ty_12 = 1;
13227pub const SND_UMP_STREAM_MSG_STATUS_DEVICE_INFO: _bindgen_ty_12 = 2;
13228pub const SND_UMP_STREAM_MSG_STATUS_EP_NAME: _bindgen_ty_12 = 3;
13229pub const SND_UMP_STREAM_MSG_STATUS_PRODUCT_ID: _bindgen_ty_12 = 4;
13230pub const SND_UMP_STREAM_MSG_STATUS_STREAM_CFG_REQUEST: _bindgen_ty_12 = 5;
13231pub const SND_UMP_STREAM_MSG_STATUS_STREAM_CFG: _bindgen_ty_12 = 6;
13232pub const SND_UMP_STREAM_MSG_STATUS_FB_DISCOVERY: _bindgen_ty_12 = 16;
13233pub const SND_UMP_STREAM_MSG_STATUS_FB_INFO: _bindgen_ty_12 = 17;
13234pub const SND_UMP_STREAM_MSG_STATUS_FB_NAME: _bindgen_ty_12 = 18;
13235pub const SND_UMP_STREAM_MSG_STATUS_START_CLIP: _bindgen_ty_12 = 32;
13236pub const SND_UMP_STREAM_MSG_STATUS_END_CLIP: _bindgen_ty_12 = 33;
13237pub type _bindgen_ty_12 = ::core::ffi::c_uint;
13238pub const SND_UMP_STREAM_MSG_REQUEST_EP_INFO: _bindgen_ty_13 = 1;
13239pub const SND_UMP_STREAM_MSG_REQUEST_DEVICE_INFO: _bindgen_ty_13 = 2;
13240pub const SND_UMP_STREAM_MSG_REQUEST_EP_NAME: _bindgen_ty_13 = 4;
13241pub const SND_UMP_STREAM_MSG_REQUEST_PRODUCT_ID: _bindgen_ty_13 = 8;
13242pub const SND_UMP_STREAM_MSG_REQUEST_STREAM_CFG: _bindgen_ty_13 = 16;
13243pub type _bindgen_ty_13 = ::core::ffi::c_uint;
13244pub const SND_UMP_STREAM_MSG_REQUEST_FB_INFO: _bindgen_ty_14 = 1;
13245pub const SND_UMP_STREAM_MSG_REQUEST_FB_NAME: _bindgen_ty_14 = 2;
13246pub type _bindgen_ty_14 = ::core::ffi::c_uint;
13247pub const SND_UMP_STREAM_MSG_EP_INFO_CAP_TXJR: _bindgen_ty_15 = 1;
13248pub const SND_UMP_STREAM_MSG_EP_INFO_CAP_RXJR: _bindgen_ty_15 = 2;
13249pub const SND_UMP_STREAM_MSG_EP_INFO_CAP_MIDI1: _bindgen_ty_15 = 256;
13250pub const SND_UMP_STREAM_MSG_EP_INFO_CAP_MIDI2: _bindgen_ty_15 = 512;
13251pub type _bindgen_ty_15 = ::core::ffi::c_uint;
13252pub const SND_UMP_STREAM_MSG_FORMAT_SINGLE: _bindgen_ty_16 = 0;
13253pub const SND_UMP_STREAM_MSG_FORMAT_START: _bindgen_ty_16 = 1;
13254pub const SND_UMP_STREAM_MSG_FORMAT_CONTINUE: _bindgen_ty_16 = 2;
13255pub const SND_UMP_STREAM_MSG_FORMAT_END: _bindgen_ty_16 = 3;
13256pub type _bindgen_ty_16 = ::core::ffi::c_uint;
13257pub const SND_UMP_FLEX_DATA_MSG_FORMAT_SINGLE: _bindgen_ty_17 = 0;
13258pub const SND_UMP_FLEX_DATA_MSG_FORMAT_START: _bindgen_ty_17 = 1;
13259pub const SND_UMP_FLEX_DATA_MSG_FORMAT_CONTINUE: _bindgen_ty_17 = 2;
13260pub const SND_UMP_FLEX_DATA_MSG_FORMAT_END: _bindgen_ty_17 = 3;
13261pub type _bindgen_ty_17 = ::core::ffi::c_uint;
13262pub const SND_UMP_FLEX_DATA_MSG_ADDR_CHANNEL: _bindgen_ty_18 = 0;
13263pub const SND_UMP_FLEX_DATA_MSG_ADDR_GROUP: _bindgen_ty_18 = 1;
13264pub type _bindgen_ty_18 = ::core::ffi::c_uint;
13265pub const SND_UMP_FLEX_DATA_MSG_BANK_SETUP: _bindgen_ty_19 = 0;
13266pub const SND_UMP_FLEX_DATA_MSG_BANK_METADATA: _bindgen_ty_19 = 1;
13267pub const SND_UMP_FLEX_DATA_MSG_BANK_PERF_TEXT: _bindgen_ty_19 = 2;
13268pub type _bindgen_ty_19 = ::core::ffi::c_uint;
13269pub const SND_UMP_FLEX_DATA_MSG_STATUS_SET_TEMPO: _bindgen_ty_20 = 0;
13270pub const SND_UMP_FLEX_DATA_MSG_STATUS_SET_TIME_SIGNATURE: _bindgen_ty_20 = 1;
13271pub const SND_UMP_FLEX_DATA_MSG_STATUS_SET_METRONOME: _bindgen_ty_20 = 2;
13272pub const SND_UMP_FLEX_DATA_MSG_STATUS_SET_KEY_SIGNATURE: _bindgen_ty_20 = 5;
13273pub const SND_UMP_FLEX_DATA_MSG_STATUS_SET_CHORD_NAME: _bindgen_ty_20 = 6;
13274pub type _bindgen_ty_20 = ::core::ffi::c_uint;
13275pub const SND_UMP_FLEX_DATA_MSG_STATUS_PROJECT_NAME: _bindgen_ty_21 = 1;
13276pub const SND_UMP_FLEX_DATA_MSG_STATUS_SONG_NAME: _bindgen_ty_21 = 2;
13277pub const SND_UMP_FLEX_DATA_MSG_STATUS_MIDI_CLIP_NAME: _bindgen_ty_21 = 3;
13278pub const SND_UMP_FLEX_DATA_MSG_STATUS_COPYRIGHT_NOTICE: _bindgen_ty_21 = 4;
13279pub const SND_UMP_FLEX_DATA_MSG_STATUS_COMPOSER_NAME: _bindgen_ty_21 = 5;
13280pub const SND_UMP_FLEX_DATA_MSG_STATUS_LYRICIST_NAME: _bindgen_ty_21 = 6;
13281pub const SND_UMP_FLEX_DATA_MSG_STATUS_ARRANGER_NAME: _bindgen_ty_21 = 7;
13282pub const SND_UMP_FLEX_DATA_MSG_STATUS_PUBLISHER_NAME: _bindgen_ty_21 = 8;
13283pub const SND_UMP_FLEX_DATA_MSG_STATUS_PRIMARY_PERFORMER: _bindgen_ty_21 = 9;
13284pub const SND_UMP_FLEX_DATA_MSG_STATUS_ACCOMPANY_PERFORMAER: _bindgen_ty_21 = 10;
13285pub const SND_UMP_FLEX_DATA_MSG_STATUS_RECORDING_DATE: _bindgen_ty_21 = 11;
13286pub const SND_UMP_FLEX_DATA_MSG_STATUS_RECORDING_LOCATION: _bindgen_ty_21 = 12;
13287pub type _bindgen_ty_21 = ::core::ffi::c_uint;
13288pub const SND_UMP_FLEX_DATA_MSG_STATUS_LYRICS: _bindgen_ty_22 = 1;
13289pub const SND_UMP_FLEX_DATA_MSG_STATUS_LYRICS_LANGUAGE: _bindgen_ty_22 = 2;
13290pub const SND_UMP_FLEX_DATA_MSG_STATUS_RUBY: _bindgen_ty_22 = 3;
13291pub const SND_UMP_FLEX_DATA_MSG_STATUS_RUBY_LANGUAGE: _bindgen_ty_22 = 4;
13292pub type _bindgen_ty_22 = ::core::ffi::c_uint;
13293unsafe extern "C" {
13294 pub fn snd_ump_msg_sysex_expand(
13295 ump: *const u32,
13296 buf: *mut u8,
13297 maxlen: usize,
13298 filled: *mut usize,
13299 ) -> ::core::ffi::c_int;
13300}
13301unsafe extern "C" {
13302 pub fn snd_ump_packet_length(type_: ::core::ffi::c_uint) -> ::core::ffi::c_int;
13303}
13304pub type snd_seq_event_type_t = ::core::ffi::c_uchar;
13305pub const SND_SEQ_EVENT_SYSTEM: snd_seq_event_type = 0;
13306pub const SND_SEQ_EVENT_RESULT: snd_seq_event_type = 1;
13307pub const SND_SEQ_EVENT_NOTE: snd_seq_event_type = 5;
13308pub const SND_SEQ_EVENT_NOTEON: snd_seq_event_type = 6;
13309pub const SND_SEQ_EVENT_NOTEOFF: snd_seq_event_type = 7;
13310pub const SND_SEQ_EVENT_KEYPRESS: snd_seq_event_type = 8;
13311pub const SND_SEQ_EVENT_CONTROLLER: snd_seq_event_type = 10;
13312pub const SND_SEQ_EVENT_PGMCHANGE: snd_seq_event_type = 11;
13313pub const SND_SEQ_EVENT_CHANPRESS: snd_seq_event_type = 12;
13314pub const SND_SEQ_EVENT_PITCHBEND: snd_seq_event_type = 13;
13315pub const SND_SEQ_EVENT_CONTROL14: snd_seq_event_type = 14;
13316pub const SND_SEQ_EVENT_NONREGPARAM: snd_seq_event_type = 15;
13317pub const SND_SEQ_EVENT_REGPARAM: snd_seq_event_type = 16;
13318pub const SND_SEQ_EVENT_SONGPOS: snd_seq_event_type = 20;
13319pub const SND_SEQ_EVENT_SONGSEL: snd_seq_event_type = 21;
13320pub const SND_SEQ_EVENT_QFRAME: snd_seq_event_type = 22;
13321pub const SND_SEQ_EVENT_TIMESIGN: snd_seq_event_type = 23;
13322pub const SND_SEQ_EVENT_KEYSIGN: snd_seq_event_type = 24;
13323pub const SND_SEQ_EVENT_START: snd_seq_event_type = 30;
13324pub const SND_SEQ_EVENT_CONTINUE: snd_seq_event_type = 31;
13325pub const SND_SEQ_EVENT_STOP: snd_seq_event_type = 32;
13326pub const SND_SEQ_EVENT_SETPOS_TICK: snd_seq_event_type = 33;
13327pub const SND_SEQ_EVENT_SETPOS_TIME: snd_seq_event_type = 34;
13328pub const SND_SEQ_EVENT_TEMPO: snd_seq_event_type = 35;
13329pub const SND_SEQ_EVENT_CLOCK: snd_seq_event_type = 36;
13330pub const SND_SEQ_EVENT_TICK: snd_seq_event_type = 37;
13331pub const SND_SEQ_EVENT_QUEUE_SKEW: snd_seq_event_type = 38;
13332pub const SND_SEQ_EVENT_SYNC_POS: snd_seq_event_type = 39;
13333pub const SND_SEQ_EVENT_TUNE_REQUEST: snd_seq_event_type = 40;
13334pub const SND_SEQ_EVENT_RESET: snd_seq_event_type = 41;
13335pub const SND_SEQ_EVENT_SENSING: snd_seq_event_type = 42;
13336pub const SND_SEQ_EVENT_ECHO: snd_seq_event_type = 50;
13337pub const SND_SEQ_EVENT_OSS: snd_seq_event_type = 51;
13338pub const SND_SEQ_EVENT_CLIENT_START: snd_seq_event_type = 60;
13339pub const SND_SEQ_EVENT_CLIENT_EXIT: snd_seq_event_type = 61;
13340pub const SND_SEQ_EVENT_CLIENT_CHANGE: snd_seq_event_type = 62;
13341pub const SND_SEQ_EVENT_PORT_START: snd_seq_event_type = 63;
13342pub const SND_SEQ_EVENT_PORT_EXIT: snd_seq_event_type = 64;
13343pub const SND_SEQ_EVENT_PORT_CHANGE: snd_seq_event_type = 65;
13344pub const SND_SEQ_EVENT_PORT_SUBSCRIBED: snd_seq_event_type = 66;
13345pub const SND_SEQ_EVENT_PORT_UNSUBSCRIBED: snd_seq_event_type = 67;
13346pub const SND_SEQ_EVENT_UMP_EP_CHANGE: snd_seq_event_type = 68;
13347pub const SND_SEQ_EVENT_UMP_BLOCK_CHANGE: snd_seq_event_type = 69;
13348pub const SND_SEQ_EVENT_USR0: snd_seq_event_type = 90;
13349pub const SND_SEQ_EVENT_USR1: snd_seq_event_type = 91;
13350pub const SND_SEQ_EVENT_USR2: snd_seq_event_type = 92;
13351pub const SND_SEQ_EVENT_USR3: snd_seq_event_type = 93;
13352pub const SND_SEQ_EVENT_USR4: snd_seq_event_type = 94;
13353pub const SND_SEQ_EVENT_USR5: snd_seq_event_type = 95;
13354pub const SND_SEQ_EVENT_USR6: snd_seq_event_type = 96;
13355pub const SND_SEQ_EVENT_USR7: snd_seq_event_type = 97;
13356pub const SND_SEQ_EVENT_USR8: snd_seq_event_type = 98;
13357pub const SND_SEQ_EVENT_USR9: snd_seq_event_type = 99;
13358pub const SND_SEQ_EVENT_SYSEX: snd_seq_event_type = 130;
13359pub const SND_SEQ_EVENT_BOUNCE: snd_seq_event_type = 131;
13360pub const SND_SEQ_EVENT_USR_VAR0: snd_seq_event_type = 135;
13361pub const SND_SEQ_EVENT_USR_VAR1: snd_seq_event_type = 136;
13362pub const SND_SEQ_EVENT_USR_VAR2: snd_seq_event_type = 137;
13363pub const SND_SEQ_EVENT_USR_VAR3: snd_seq_event_type = 138;
13364pub const SND_SEQ_EVENT_USR_VAR4: snd_seq_event_type = 139;
13365pub const SND_SEQ_EVENT_NONE: snd_seq_event_type = 255;
13366pub type snd_seq_event_type = ::core::ffi::c_uint;
13367#[repr(C)]
13368#[derive(Debug, Copy, Clone)]
13369pub struct snd_seq_addr {
13370 pub client: ::core::ffi::c_uchar,
13371 pub port: ::core::ffi::c_uchar,
13372}
13373pub type snd_seq_addr_t = snd_seq_addr;
13374#[repr(C)]
13375#[derive(Debug, Copy, Clone)]
13376pub struct snd_seq_connect {
13377 pub sender: snd_seq_addr_t,
13378 pub dest: snd_seq_addr_t,
13379}
13380pub type snd_seq_connect_t = snd_seq_connect;
13381#[repr(C)]
13382#[derive(Debug, Copy, Clone)]
13383pub struct snd_seq_real_time {
13384 pub tv_sec: ::core::ffi::c_uint,
13385 pub tv_nsec: ::core::ffi::c_uint,
13386}
13387pub type snd_seq_real_time_t = snd_seq_real_time;
13388pub type snd_seq_tick_time_t = ::core::ffi::c_uint;
13389#[repr(C)]
13390#[derive(Copy, Clone)]
13391pub union snd_seq_timestamp {
13392 pub tick: snd_seq_tick_time_t,
13393 pub time: snd_seq_real_time,
13394}
13395pub type snd_seq_timestamp_t = snd_seq_timestamp;
13396#[repr(C)]
13397#[derive(Debug, Copy, Clone)]
13398pub struct snd_seq_ev_note {
13399 pub channel: ::core::ffi::c_uchar,
13400 pub note: ::core::ffi::c_uchar,
13401 pub velocity: ::core::ffi::c_uchar,
13402 pub off_velocity: ::core::ffi::c_uchar,
13403 pub duration: ::core::ffi::c_uint,
13404}
13405pub type snd_seq_ev_note_t = snd_seq_ev_note;
13406#[repr(C)]
13407#[derive(Debug, Copy, Clone)]
13408pub struct snd_seq_ev_ctrl {
13409 pub channel: ::core::ffi::c_uchar,
13410 pub unused: [::core::ffi::c_uchar; 3usize],
13411 pub param: ::core::ffi::c_uint,
13412 pub value: ::core::ffi::c_int,
13413}
13414pub type snd_seq_ev_ctrl_t = snd_seq_ev_ctrl;
13415#[repr(C)]
13416#[derive(Debug, Copy, Clone)]
13417pub struct snd_seq_ev_raw8 {
13418 pub d: [::core::ffi::c_uchar; 12usize],
13419}
13420pub type snd_seq_ev_raw8_t = snd_seq_ev_raw8;
13421#[repr(C)]
13422#[derive(Debug, Copy, Clone)]
13423pub struct snd_seq_ev_raw32 {
13424 pub d: [::core::ffi::c_uint; 3usize],
13425}
13426pub type snd_seq_ev_raw32_t = snd_seq_ev_raw32;
13427#[repr(C, packed)]
13428#[derive(Debug, Copy, Clone)]
13429pub struct snd_seq_ev_ext {
13430 pub len: ::core::ffi::c_uint,
13431 pub ptr: *mut ::core::ffi::c_void,
13432}
13433pub type snd_seq_ev_ext_t = snd_seq_ev_ext;
13434#[repr(C)]
13435#[derive(Debug, Copy, Clone)]
13436pub struct snd_seq_result {
13437 pub event: ::core::ffi::c_int,
13438 pub result: ::core::ffi::c_int,
13439}
13440pub type snd_seq_result_t = snd_seq_result;
13441#[repr(C)]
13442#[derive(Debug, Copy, Clone)]
13443pub struct snd_seq_queue_skew {
13444 pub value: ::core::ffi::c_uint,
13445 pub base: ::core::ffi::c_uint,
13446}
13447pub type snd_seq_queue_skew_t = snd_seq_queue_skew;
13448#[repr(C)]
13449#[derive(Copy, Clone)]
13450pub struct snd_seq_ev_queue_control {
13451 pub queue: ::core::ffi::c_uchar,
13452 pub unused: [::core::ffi::c_uchar; 3usize],
13453 pub param: snd_seq_ev_queue_control__bindgen_ty_1,
13454}
13455#[repr(C)]
13456#[derive(Copy, Clone)]
13457pub union snd_seq_ev_queue_control__bindgen_ty_1 {
13458 pub value: ::core::ffi::c_int,
13459 pub time: snd_seq_timestamp_t,
13460 pub position: ::core::ffi::c_uint,
13461 pub skew: snd_seq_queue_skew_t,
13462 pub d32: [::core::ffi::c_uint; 2usize],
13463 pub d8: [::core::ffi::c_uchar; 8usize],
13464}
13465pub type snd_seq_ev_queue_control_t = snd_seq_ev_queue_control;
13466#[repr(C)]
13467#[derive(Debug, Copy, Clone)]
13468pub struct snd_seq_ev_ump_notify {
13469 pub client: ::core::ffi::c_uchar,
13470 pub block: ::core::ffi::c_uchar,
13471}
13472pub type snd_seq_ev_ump_notify_t = snd_seq_ev_ump_notify;
13473#[repr(C)]
13474#[derive(Copy, Clone)]
13475pub union snd_seq_event_data {
13476 pub note: snd_seq_ev_note_t,
13477 pub control: snd_seq_ev_ctrl_t,
13478 pub raw8: snd_seq_ev_raw8_t,
13479 pub raw32: snd_seq_ev_raw32_t,
13480 pub ext: snd_seq_ev_ext_t,
13481 pub queue: snd_seq_ev_queue_control_t,
13482 pub time: snd_seq_timestamp_t,
13483 pub addr: snd_seq_addr_t,
13484 pub connect: snd_seq_connect_t,
13485 pub result: snd_seq_result_t,
13486 pub ump_notify: snd_seq_ev_ump_notify_t,
13487}
13488pub type snd_seq_event_data_t = snd_seq_event_data;
13489#[repr(C)]
13490#[derive(Copy, Clone)]
13491pub struct snd_seq_event {
13492 pub type_: snd_seq_event_type_t,
13493 pub flags: ::core::ffi::c_uchar,
13494 pub tag: ::core::ffi::c_uchar,
13495 pub queue: ::core::ffi::c_uchar,
13496 pub time: snd_seq_timestamp_t,
13497 pub source: snd_seq_addr_t,
13498 pub dest: snd_seq_addr_t,
13499 pub data: snd_seq_event_data_t,
13500}
13501pub type snd_seq_event_t = snd_seq_event;
13502#[repr(C)]
13503#[derive(Copy, Clone)]
13504pub struct snd_seq_ump_event {
13505 pub type_: snd_seq_event_type_t,
13506 pub flags: ::core::ffi::c_uchar,
13507 pub tag: ::core::ffi::c_uchar,
13508 pub queue: ::core::ffi::c_uchar,
13509 pub time: snd_seq_timestamp_t,
13510 pub source: snd_seq_addr_t,
13511 pub dest: snd_seq_addr_t,
13512 pub __bindgen_anon_1: snd_seq_ump_event__bindgen_ty_1,
13513}
13514#[repr(C)]
13515#[derive(Copy, Clone)]
13516pub union snd_seq_ump_event__bindgen_ty_1 {
13517 pub data: snd_seq_event_data_t,
13518 pub ump: [::core::ffi::c_uint; 4usize],
13519}
13520pub type snd_seq_ump_event_t = snd_seq_ump_event;
13521#[repr(C)]
13522#[derive(Debug, Copy, Clone)]
13523pub struct _snd_seq {
13524 _unused: [u8; 0],
13525}
13526pub type snd_seq_t = _snd_seq;
13527pub const SND_SEQ_TYPE_HW: _snd_seq_type = 0;
13528pub const SND_SEQ_TYPE_SHM: _snd_seq_type = 1;
13529pub const SND_SEQ_TYPE_INET: _snd_seq_type = 2;
13530pub type _snd_seq_type = ::core::ffi::c_uint;
13531pub use self::_snd_seq_type as snd_seq_type_t;
13532unsafe extern "C" {
13533 pub fn snd_seq_open(
13534 handle: *mut *mut snd_seq_t,
13535 name: *const ::core::ffi::c_char,
13536 streams: ::core::ffi::c_int,
13537 mode: ::core::ffi::c_int,
13538 ) -> ::core::ffi::c_int;
13539}
13540unsafe extern "C" {
13541 pub fn snd_seq_open_lconf(
13542 handle: *mut *mut snd_seq_t,
13543 name: *const ::core::ffi::c_char,
13544 streams: ::core::ffi::c_int,
13545 mode: ::core::ffi::c_int,
13546 lconf: *mut snd_config_t,
13547 ) -> ::core::ffi::c_int;
13548}
13549unsafe extern "C" {
13550 pub fn snd_seq_name(seq: *mut snd_seq_t) -> *const ::core::ffi::c_char;
13551}
13552unsafe extern "C" {
13553 pub fn snd_seq_type(seq: *mut snd_seq_t) -> snd_seq_type_t;
13554}
13555unsafe extern "C" {
13556 pub fn snd_seq_close(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
13557}
13558unsafe extern "C" {
13559 pub fn snd_seq_poll_descriptors_count(
13560 handle: *mut snd_seq_t,
13561 events: ::core::ffi::c_short,
13562 ) -> ::core::ffi::c_int;
13563}
13564unsafe extern "C" {
13565 pub fn snd_seq_poll_descriptors(
13566 handle: *mut snd_seq_t,
13567 pfds: *mut pollfd,
13568 space: ::core::ffi::c_uint,
13569 events: ::core::ffi::c_short,
13570 ) -> ::core::ffi::c_int;
13571}
13572unsafe extern "C" {
13573 pub fn snd_seq_poll_descriptors_revents(
13574 seq: *mut snd_seq_t,
13575 pfds: *mut pollfd,
13576 nfds: ::core::ffi::c_uint,
13577 revents: *mut ::core::ffi::c_ushort,
13578 ) -> ::core::ffi::c_int;
13579}
13580unsafe extern "C" {
13581 pub fn snd_seq_nonblock(
13582 handle: *mut snd_seq_t,
13583 nonblock: ::core::ffi::c_int,
13584 ) -> ::core::ffi::c_int;
13585}
13586unsafe extern "C" {
13587 pub fn snd_seq_client_id(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
13588}
13589unsafe extern "C" {
13590 pub fn snd_seq_get_output_buffer_size(handle: *mut snd_seq_t) -> usize;
13591}
13592unsafe extern "C" {
13593 pub fn snd_seq_get_input_buffer_size(handle: *mut snd_seq_t) -> usize;
13594}
13595unsafe extern "C" {
13596 pub fn snd_seq_set_output_buffer_size(
13597 handle: *mut snd_seq_t,
13598 size: usize,
13599 ) -> ::core::ffi::c_int;
13600}
13601unsafe extern "C" {
13602 pub fn snd_seq_set_input_buffer_size(handle: *mut snd_seq_t, size: usize)
13603 -> ::core::ffi::c_int;
13604}
13605#[repr(C)]
13606#[derive(Debug, Copy, Clone)]
13607pub struct _snd_seq_system_info {
13608 _unused: [u8; 0],
13609}
13610pub type snd_seq_system_info_t = _snd_seq_system_info;
13611unsafe extern "C" {
13612 pub fn snd_seq_system_info_sizeof() -> usize;
13613}
13614unsafe extern "C" {
13615 pub fn snd_seq_system_info_malloc(ptr: *mut *mut snd_seq_system_info_t) -> ::core::ffi::c_int;
13616}
13617unsafe extern "C" {
13618 pub fn snd_seq_system_info_free(ptr: *mut snd_seq_system_info_t);
13619}
13620unsafe extern "C" {
13621 pub fn snd_seq_system_info_copy(
13622 dst: *mut snd_seq_system_info_t,
13623 src: *const snd_seq_system_info_t,
13624 );
13625}
13626unsafe extern "C" {
13627 pub fn snd_seq_system_info_get_queues(info: *const snd_seq_system_info_t)
13628 -> ::core::ffi::c_int;
13629}
13630unsafe extern "C" {
13631 pub fn snd_seq_system_info_get_clients(
13632 info: *const snd_seq_system_info_t,
13633 ) -> ::core::ffi::c_int;
13634}
13635unsafe extern "C" {
13636 pub fn snd_seq_system_info_get_ports(info: *const snd_seq_system_info_t) -> ::core::ffi::c_int;
13637}
13638unsafe extern "C" {
13639 pub fn snd_seq_system_info_get_channels(
13640 info: *const snd_seq_system_info_t,
13641 ) -> ::core::ffi::c_int;
13642}
13643unsafe extern "C" {
13644 pub fn snd_seq_system_info_get_cur_clients(
13645 info: *const snd_seq_system_info_t,
13646 ) -> ::core::ffi::c_int;
13647}
13648unsafe extern "C" {
13649 pub fn snd_seq_system_info_get_cur_queues(
13650 info: *const snd_seq_system_info_t,
13651 ) -> ::core::ffi::c_int;
13652}
13653unsafe extern "C" {
13654 pub fn snd_seq_system_info(
13655 handle: *mut snd_seq_t,
13656 info: *mut snd_seq_system_info_t,
13657 ) -> ::core::ffi::c_int;
13658}
13659#[repr(C)]
13660#[derive(Debug, Copy, Clone)]
13661pub struct _snd_seq_client_info {
13662 _unused: [u8; 0],
13663}
13664pub type snd_seq_client_info_t = _snd_seq_client_info;
13665pub const SND_SEQ_USER_CLIENT: snd_seq_client_type = 1;
13666pub const SND_SEQ_KERNEL_CLIENT: snd_seq_client_type = 2;
13667pub type snd_seq_client_type = ::core::ffi::c_uint;
13668pub use self::snd_seq_client_type as snd_seq_client_type_t;
13669pub const SND_SEQ_CLIENT_LEGACY_MIDI: _bindgen_ty_23 = 0;
13670pub const SND_SEQ_CLIENT_UMP_MIDI_1_0: _bindgen_ty_23 = 1;
13671pub const SND_SEQ_CLIENT_UMP_MIDI_2_0: _bindgen_ty_23 = 2;
13672pub type _bindgen_ty_23 = ::core::ffi::c_uint;
13673unsafe extern "C" {
13674 pub fn snd_seq_client_info_sizeof() -> usize;
13675}
13676unsafe extern "C" {
13677 pub fn snd_seq_client_info_malloc(ptr: *mut *mut snd_seq_client_info_t) -> ::core::ffi::c_int;
13678}
13679unsafe extern "C" {
13680 pub fn snd_seq_client_info_free(ptr: *mut snd_seq_client_info_t);
13681}
13682unsafe extern "C" {
13683 pub fn snd_seq_client_info_copy(
13684 dst: *mut snd_seq_client_info_t,
13685 src: *const snd_seq_client_info_t,
13686 );
13687}
13688unsafe extern "C" {
13689 pub fn snd_seq_client_info_get_client(info: *const snd_seq_client_info_t)
13690 -> ::core::ffi::c_int;
13691}
13692unsafe extern "C" {
13693 pub fn snd_seq_client_info_get_type(
13694 info: *const snd_seq_client_info_t,
13695 ) -> snd_seq_client_type_t;
13696}
13697unsafe extern "C" {
13698 pub fn snd_seq_client_info_get_name(
13699 info: *mut snd_seq_client_info_t,
13700 ) -> *const ::core::ffi::c_char;
13701}
13702unsafe extern "C" {
13703 pub fn snd_seq_client_info_get_broadcast_filter(
13704 info: *const snd_seq_client_info_t,
13705 ) -> ::core::ffi::c_int;
13706}
13707unsafe extern "C" {
13708 pub fn snd_seq_client_info_get_error_bounce(
13709 info: *const snd_seq_client_info_t,
13710 ) -> ::core::ffi::c_int;
13711}
13712unsafe extern "C" {
13713 pub fn snd_seq_client_info_get_card(info: *const snd_seq_client_info_t) -> ::core::ffi::c_int;
13714}
13715unsafe extern "C" {
13716 pub fn snd_seq_client_info_get_pid(info: *const snd_seq_client_info_t) -> ::core::ffi::c_int;
13717}
13718unsafe extern "C" {
13719 pub fn snd_seq_client_info_get_event_filter(
13720 info: *const snd_seq_client_info_t,
13721 ) -> *const ::core::ffi::c_uchar;
13722}
13723unsafe extern "C" {
13724 pub fn snd_seq_client_info_get_num_ports(
13725 info: *const snd_seq_client_info_t,
13726 ) -> ::core::ffi::c_int;
13727}
13728unsafe extern "C" {
13729 pub fn snd_seq_client_info_get_event_lost(
13730 info: *const snd_seq_client_info_t,
13731 ) -> ::core::ffi::c_int;
13732}
13733unsafe extern "C" {
13734 pub fn snd_seq_client_info_get_midi_version(
13735 info: *const snd_seq_client_info_t,
13736 ) -> ::core::ffi::c_int;
13737}
13738unsafe extern "C" {
13739 pub fn snd_seq_client_info_get_ump_group_enabled(
13740 info: *const snd_seq_client_info_t,
13741 group: ::core::ffi::c_int,
13742 ) -> ::core::ffi::c_int;
13743}
13744unsafe extern "C" {
13745 pub fn snd_seq_client_info_get_ump_groupless_enabled(
13746 info: *const snd_seq_client_info_t,
13747 ) -> ::core::ffi::c_int;
13748}
13749unsafe extern "C" {
13750 pub fn snd_seq_client_info_get_ump_conversion(
13751 info: *const snd_seq_client_info_t,
13752 ) -> ::core::ffi::c_int;
13753}
13754unsafe extern "C" {
13755 pub fn snd_seq_client_info_set_client(
13756 info: *mut snd_seq_client_info_t,
13757 client: ::core::ffi::c_int,
13758 );
13759}
13760unsafe extern "C" {
13761 pub fn snd_seq_client_info_set_name(
13762 info: *mut snd_seq_client_info_t,
13763 name: *const ::core::ffi::c_char,
13764 );
13765}
13766unsafe extern "C" {
13767 pub fn snd_seq_client_info_set_broadcast_filter(
13768 info: *mut snd_seq_client_info_t,
13769 val: ::core::ffi::c_int,
13770 );
13771}
13772unsafe extern "C" {
13773 pub fn snd_seq_client_info_set_error_bounce(
13774 info: *mut snd_seq_client_info_t,
13775 val: ::core::ffi::c_int,
13776 );
13777}
13778unsafe extern "C" {
13779 pub fn snd_seq_client_info_set_event_filter(
13780 info: *mut snd_seq_client_info_t,
13781 filter: *mut ::core::ffi::c_uchar,
13782 );
13783}
13784unsafe extern "C" {
13785 pub fn snd_seq_client_info_set_midi_version(
13786 info: *mut snd_seq_client_info_t,
13787 midi_version: ::core::ffi::c_int,
13788 );
13789}
13790unsafe extern "C" {
13791 pub fn snd_seq_client_info_set_ump_group_enabled(
13792 info: *mut snd_seq_client_info_t,
13793 group: ::core::ffi::c_int,
13794 enable: ::core::ffi::c_int,
13795 );
13796}
13797unsafe extern "C" {
13798 pub fn snd_seq_client_info_set_ump_groupless_enabled(
13799 info: *mut snd_seq_client_info_t,
13800 enable: ::core::ffi::c_int,
13801 );
13802}
13803unsafe extern "C" {
13804 pub fn snd_seq_client_info_set_ump_conversion(
13805 info: *mut snd_seq_client_info_t,
13806 enable: ::core::ffi::c_int,
13807 );
13808}
13809unsafe extern "C" {
13810 pub fn snd_seq_client_info_event_filter_clear(info: *mut snd_seq_client_info_t);
13811}
13812unsafe extern "C" {
13813 pub fn snd_seq_client_info_event_filter_add(
13814 info: *mut snd_seq_client_info_t,
13815 event_type: ::core::ffi::c_int,
13816 );
13817}
13818unsafe extern "C" {
13819 pub fn snd_seq_client_info_event_filter_del(
13820 info: *mut snd_seq_client_info_t,
13821 event_type: ::core::ffi::c_int,
13822 );
13823}
13824unsafe extern "C" {
13825 pub fn snd_seq_client_info_event_filter_check(
13826 info: *mut snd_seq_client_info_t,
13827 event_type: ::core::ffi::c_int,
13828 ) -> ::core::ffi::c_int;
13829}
13830unsafe extern "C" {
13831 pub fn snd_seq_get_client_info(
13832 handle: *mut snd_seq_t,
13833 info: *mut snd_seq_client_info_t,
13834 ) -> ::core::ffi::c_int;
13835}
13836unsafe extern "C" {
13837 pub fn snd_seq_get_any_client_info(
13838 handle: *mut snd_seq_t,
13839 client: ::core::ffi::c_int,
13840 info: *mut snd_seq_client_info_t,
13841 ) -> ::core::ffi::c_int;
13842}
13843unsafe extern "C" {
13844 pub fn snd_seq_set_client_info(
13845 handle: *mut snd_seq_t,
13846 info: *mut snd_seq_client_info_t,
13847 ) -> ::core::ffi::c_int;
13848}
13849unsafe extern "C" {
13850 pub fn snd_seq_query_next_client(
13851 handle: *mut snd_seq_t,
13852 info: *mut snd_seq_client_info_t,
13853 ) -> ::core::ffi::c_int;
13854}
13855unsafe extern "C" {
13856 pub fn snd_seq_get_ump_endpoint_info(
13857 seq: *mut snd_seq_t,
13858 client: ::core::ffi::c_int,
13859 info: *mut ::core::ffi::c_void,
13860 ) -> ::core::ffi::c_int;
13861}
13862unsafe extern "C" {
13863 pub fn snd_seq_get_ump_block_info(
13864 seq: *mut snd_seq_t,
13865 client: ::core::ffi::c_int,
13866 blk: ::core::ffi::c_int,
13867 info: *mut ::core::ffi::c_void,
13868 ) -> ::core::ffi::c_int;
13869}
13870unsafe extern "C" {
13871 pub fn snd_seq_set_ump_endpoint_info(
13872 seq: *mut snd_seq_t,
13873 info: *const ::core::ffi::c_void,
13874 ) -> ::core::ffi::c_int;
13875}
13876unsafe extern "C" {
13877 pub fn snd_seq_set_ump_block_info(
13878 seq: *mut snd_seq_t,
13879 blk: ::core::ffi::c_int,
13880 info: *const ::core::ffi::c_void,
13881 ) -> ::core::ffi::c_int;
13882}
13883#[repr(C)]
13884#[derive(Debug, Copy, Clone)]
13885pub struct _snd_seq_client_pool {
13886 _unused: [u8; 0],
13887}
13888pub type snd_seq_client_pool_t = _snd_seq_client_pool;
13889unsafe extern "C" {
13890 pub fn snd_seq_client_pool_sizeof() -> usize;
13891}
13892unsafe extern "C" {
13893 pub fn snd_seq_client_pool_malloc(ptr: *mut *mut snd_seq_client_pool_t) -> ::core::ffi::c_int;
13894}
13895unsafe extern "C" {
13896 pub fn snd_seq_client_pool_free(ptr: *mut snd_seq_client_pool_t);
13897}
13898unsafe extern "C" {
13899 pub fn snd_seq_client_pool_copy(
13900 dst: *mut snd_seq_client_pool_t,
13901 src: *const snd_seq_client_pool_t,
13902 );
13903}
13904unsafe extern "C" {
13905 pub fn snd_seq_client_pool_get_client(info: *const snd_seq_client_pool_t)
13906 -> ::core::ffi::c_int;
13907}
13908unsafe extern "C" {
13909 pub fn snd_seq_client_pool_get_output_pool(info: *const snd_seq_client_pool_t) -> usize;
13910}
13911unsafe extern "C" {
13912 pub fn snd_seq_client_pool_get_input_pool(info: *const snd_seq_client_pool_t) -> usize;
13913}
13914unsafe extern "C" {
13915 pub fn snd_seq_client_pool_get_output_room(info: *const snd_seq_client_pool_t) -> usize;
13916}
13917unsafe extern "C" {
13918 pub fn snd_seq_client_pool_get_output_free(info: *const snd_seq_client_pool_t) -> usize;
13919}
13920unsafe extern "C" {
13921 pub fn snd_seq_client_pool_get_input_free(info: *const snd_seq_client_pool_t) -> usize;
13922}
13923unsafe extern "C" {
13924 pub fn snd_seq_client_pool_set_output_pool(info: *mut snd_seq_client_pool_t, size: usize);
13925}
13926unsafe extern "C" {
13927 pub fn snd_seq_client_pool_set_input_pool(info: *mut snd_seq_client_pool_t, size: usize);
13928}
13929unsafe extern "C" {
13930 pub fn snd_seq_client_pool_set_output_room(info: *mut snd_seq_client_pool_t, size: usize);
13931}
13932unsafe extern "C" {
13933 pub fn snd_seq_get_client_pool(
13934 handle: *mut snd_seq_t,
13935 info: *mut snd_seq_client_pool_t,
13936 ) -> ::core::ffi::c_int;
13937}
13938unsafe extern "C" {
13939 pub fn snd_seq_set_client_pool(
13940 handle: *mut snd_seq_t,
13941 info: *mut snd_seq_client_pool_t,
13942 ) -> ::core::ffi::c_int;
13943}
13944#[repr(C)]
13945#[derive(Debug, Copy, Clone)]
13946pub struct _snd_seq_port_info {
13947 _unused: [u8; 0],
13948}
13949pub type snd_seq_port_info_t = _snd_seq_port_info;
13950unsafe extern "C" {
13951 pub fn snd_seq_port_info_sizeof() -> usize;
13952}
13953unsafe extern "C" {
13954 pub fn snd_seq_port_info_malloc(ptr: *mut *mut snd_seq_port_info_t) -> ::core::ffi::c_int;
13955}
13956unsafe extern "C" {
13957 pub fn snd_seq_port_info_free(ptr: *mut snd_seq_port_info_t);
13958}
13959unsafe extern "C" {
13960 pub fn snd_seq_port_info_copy(dst: *mut snd_seq_port_info_t, src: *const snd_seq_port_info_t);
13961}
13962unsafe extern "C" {
13963 pub fn snd_seq_port_info_get_client(info: *const snd_seq_port_info_t) -> ::core::ffi::c_int;
13964}
13965unsafe extern "C" {
13966 pub fn snd_seq_port_info_get_port(info: *const snd_seq_port_info_t) -> ::core::ffi::c_int;
13967}
13968unsafe extern "C" {
13969 pub fn snd_seq_port_info_get_addr(info: *const snd_seq_port_info_t) -> *const snd_seq_addr_t;
13970}
13971unsafe extern "C" {
13972 pub fn snd_seq_port_info_get_name(
13973 info: *const snd_seq_port_info_t,
13974 ) -> *const ::core::ffi::c_char;
13975}
13976unsafe extern "C" {
13977 pub fn snd_seq_port_info_get_capability(
13978 info: *const snd_seq_port_info_t,
13979 ) -> ::core::ffi::c_uint;
13980}
13981unsafe extern "C" {
13982 pub fn snd_seq_port_info_get_type(info: *const snd_seq_port_info_t) -> ::core::ffi::c_uint;
13983}
13984unsafe extern "C" {
13985 pub fn snd_seq_port_info_get_midi_channels(
13986 info: *const snd_seq_port_info_t,
13987 ) -> ::core::ffi::c_int;
13988}
13989unsafe extern "C" {
13990 pub fn snd_seq_port_info_get_midi_voices(
13991 info: *const snd_seq_port_info_t,
13992 ) -> ::core::ffi::c_int;
13993}
13994unsafe extern "C" {
13995 pub fn snd_seq_port_info_get_synth_voices(
13996 info: *const snd_seq_port_info_t,
13997 ) -> ::core::ffi::c_int;
13998}
13999unsafe extern "C" {
14000 pub fn snd_seq_port_info_get_read_use(info: *const snd_seq_port_info_t) -> ::core::ffi::c_int;
14001}
14002unsafe extern "C" {
14003 pub fn snd_seq_port_info_get_write_use(info: *const snd_seq_port_info_t) -> ::core::ffi::c_int;
14004}
14005unsafe extern "C" {
14006 pub fn snd_seq_port_info_get_port_specified(
14007 info: *const snd_seq_port_info_t,
14008 ) -> ::core::ffi::c_int;
14009}
14010unsafe extern "C" {
14011 pub fn snd_seq_port_info_get_timestamping(
14012 info: *const snd_seq_port_info_t,
14013 ) -> ::core::ffi::c_int;
14014}
14015unsafe extern "C" {
14016 pub fn snd_seq_port_info_get_timestamp_real(
14017 info: *const snd_seq_port_info_t,
14018 ) -> ::core::ffi::c_int;
14019}
14020unsafe extern "C" {
14021 pub fn snd_seq_port_info_get_timestamp_queue(
14022 info: *const snd_seq_port_info_t,
14023 ) -> ::core::ffi::c_int;
14024}
14025unsafe extern "C" {
14026 pub fn snd_seq_port_info_get_direction(info: *const snd_seq_port_info_t) -> ::core::ffi::c_int;
14027}
14028unsafe extern "C" {
14029 pub fn snd_seq_port_info_get_ump_group(info: *const snd_seq_port_info_t) -> ::core::ffi::c_int;
14030}
14031unsafe extern "C" {
14032 pub fn snd_seq_port_info_get_ump_is_midi1(
14033 info: *const snd_seq_port_info_t,
14034 ) -> ::core::ffi::c_int;
14035}
14036unsafe extern "C" {
14037 pub fn snd_seq_port_info_set_client(info: *mut snd_seq_port_info_t, client: ::core::ffi::c_int);
14038}
14039unsafe extern "C" {
14040 pub fn snd_seq_port_info_set_port(info: *mut snd_seq_port_info_t, port: ::core::ffi::c_int);
14041}
14042unsafe extern "C" {
14043 pub fn snd_seq_port_info_set_addr(info: *mut snd_seq_port_info_t, addr: *const snd_seq_addr_t);
14044}
14045unsafe extern "C" {
14046 pub fn snd_seq_port_info_set_name(
14047 info: *mut snd_seq_port_info_t,
14048 name: *const ::core::ffi::c_char,
14049 );
14050}
14051unsafe extern "C" {
14052 pub fn snd_seq_port_info_set_capability(
14053 info: *mut snd_seq_port_info_t,
14054 capability: ::core::ffi::c_uint,
14055 );
14056}
14057unsafe extern "C" {
14058 pub fn snd_seq_port_info_set_type(info: *mut snd_seq_port_info_t, type_: ::core::ffi::c_uint);
14059}
14060unsafe extern "C" {
14061 pub fn snd_seq_port_info_set_midi_channels(
14062 info: *mut snd_seq_port_info_t,
14063 channels: ::core::ffi::c_int,
14064 );
14065}
14066unsafe extern "C" {
14067 pub fn snd_seq_port_info_set_midi_voices(
14068 info: *mut snd_seq_port_info_t,
14069 voices: ::core::ffi::c_int,
14070 );
14071}
14072unsafe extern "C" {
14073 pub fn snd_seq_port_info_set_synth_voices(
14074 info: *mut snd_seq_port_info_t,
14075 voices: ::core::ffi::c_int,
14076 );
14077}
14078unsafe extern "C" {
14079 pub fn snd_seq_port_info_set_port_specified(
14080 info: *mut snd_seq_port_info_t,
14081 val: ::core::ffi::c_int,
14082 );
14083}
14084unsafe extern "C" {
14085 pub fn snd_seq_port_info_set_timestamping(
14086 info: *mut snd_seq_port_info_t,
14087 enable: ::core::ffi::c_int,
14088 );
14089}
14090unsafe extern "C" {
14091 pub fn snd_seq_port_info_set_timestamp_real(
14092 info: *mut snd_seq_port_info_t,
14093 realtime: ::core::ffi::c_int,
14094 );
14095}
14096unsafe extern "C" {
14097 pub fn snd_seq_port_info_set_timestamp_queue(
14098 info: *mut snd_seq_port_info_t,
14099 queue: ::core::ffi::c_int,
14100 );
14101}
14102unsafe extern "C" {
14103 pub fn snd_seq_port_info_set_direction(
14104 info: *mut snd_seq_port_info_t,
14105 direction: ::core::ffi::c_int,
14106 );
14107}
14108unsafe extern "C" {
14109 pub fn snd_seq_port_info_set_ump_group(
14110 info: *mut snd_seq_port_info_t,
14111 ump_group: ::core::ffi::c_int,
14112 );
14113}
14114unsafe extern "C" {
14115 pub fn snd_seq_port_info_set_ump_is_midi1(
14116 info: *mut snd_seq_port_info_t,
14117 is_midi1: ::core::ffi::c_int,
14118 );
14119}
14120unsafe extern "C" {
14121 pub fn snd_seq_create_port(
14122 handle: *mut snd_seq_t,
14123 info: *mut snd_seq_port_info_t,
14124 ) -> ::core::ffi::c_int;
14125}
14126unsafe extern "C" {
14127 pub fn snd_seq_delete_port(
14128 handle: *mut snd_seq_t,
14129 port: ::core::ffi::c_int,
14130 ) -> ::core::ffi::c_int;
14131}
14132unsafe extern "C" {
14133 pub fn snd_seq_get_port_info(
14134 handle: *mut snd_seq_t,
14135 port: ::core::ffi::c_int,
14136 info: *mut snd_seq_port_info_t,
14137 ) -> ::core::ffi::c_int;
14138}
14139unsafe extern "C" {
14140 pub fn snd_seq_get_any_port_info(
14141 handle: *mut snd_seq_t,
14142 client: ::core::ffi::c_int,
14143 port: ::core::ffi::c_int,
14144 info: *mut snd_seq_port_info_t,
14145 ) -> ::core::ffi::c_int;
14146}
14147unsafe extern "C" {
14148 pub fn snd_seq_set_port_info(
14149 handle: *mut snd_seq_t,
14150 port: ::core::ffi::c_int,
14151 info: *mut snd_seq_port_info_t,
14152 ) -> ::core::ffi::c_int;
14153}
14154unsafe extern "C" {
14155 pub fn snd_seq_query_next_port(
14156 handle: *mut snd_seq_t,
14157 info: *mut snd_seq_port_info_t,
14158 ) -> ::core::ffi::c_int;
14159}
14160#[repr(C)]
14161#[derive(Debug, Copy, Clone)]
14162pub struct _snd_seq_port_subscribe {
14163 _unused: [u8; 0],
14164}
14165pub type snd_seq_port_subscribe_t = _snd_seq_port_subscribe;
14166unsafe extern "C" {
14167 pub fn snd_seq_port_subscribe_sizeof() -> usize;
14168}
14169unsafe extern "C" {
14170 pub fn snd_seq_port_subscribe_malloc(
14171 ptr: *mut *mut snd_seq_port_subscribe_t,
14172 ) -> ::core::ffi::c_int;
14173}
14174unsafe extern "C" {
14175 pub fn snd_seq_port_subscribe_free(ptr: *mut snd_seq_port_subscribe_t);
14176}
14177unsafe extern "C" {
14178 pub fn snd_seq_port_subscribe_copy(
14179 dst: *mut snd_seq_port_subscribe_t,
14180 src: *const snd_seq_port_subscribe_t,
14181 );
14182}
14183unsafe extern "C" {
14184 pub fn snd_seq_port_subscribe_get_sender(
14185 info: *const snd_seq_port_subscribe_t,
14186 ) -> *const snd_seq_addr_t;
14187}
14188unsafe extern "C" {
14189 pub fn snd_seq_port_subscribe_get_dest(
14190 info: *const snd_seq_port_subscribe_t,
14191 ) -> *const snd_seq_addr_t;
14192}
14193unsafe extern "C" {
14194 pub fn snd_seq_port_subscribe_get_queue(
14195 info: *const snd_seq_port_subscribe_t,
14196 ) -> ::core::ffi::c_int;
14197}
14198unsafe extern "C" {
14199 pub fn snd_seq_port_subscribe_get_exclusive(
14200 info: *const snd_seq_port_subscribe_t,
14201 ) -> ::core::ffi::c_int;
14202}
14203unsafe extern "C" {
14204 pub fn snd_seq_port_subscribe_get_time_update(
14205 info: *const snd_seq_port_subscribe_t,
14206 ) -> ::core::ffi::c_int;
14207}
14208unsafe extern "C" {
14209 pub fn snd_seq_port_subscribe_get_time_real(
14210 info: *const snd_seq_port_subscribe_t,
14211 ) -> ::core::ffi::c_int;
14212}
14213unsafe extern "C" {
14214 pub fn snd_seq_port_subscribe_set_sender(
14215 info: *mut snd_seq_port_subscribe_t,
14216 addr: *const snd_seq_addr_t,
14217 );
14218}
14219unsafe extern "C" {
14220 pub fn snd_seq_port_subscribe_set_dest(
14221 info: *mut snd_seq_port_subscribe_t,
14222 addr: *const snd_seq_addr_t,
14223 );
14224}
14225unsafe extern "C" {
14226 pub fn snd_seq_port_subscribe_set_queue(
14227 info: *mut snd_seq_port_subscribe_t,
14228 q: ::core::ffi::c_int,
14229 );
14230}
14231unsafe extern "C" {
14232 pub fn snd_seq_port_subscribe_set_exclusive(
14233 info: *mut snd_seq_port_subscribe_t,
14234 val: ::core::ffi::c_int,
14235 );
14236}
14237unsafe extern "C" {
14238 pub fn snd_seq_port_subscribe_set_time_update(
14239 info: *mut snd_seq_port_subscribe_t,
14240 val: ::core::ffi::c_int,
14241 );
14242}
14243unsafe extern "C" {
14244 pub fn snd_seq_port_subscribe_set_time_real(
14245 info: *mut snd_seq_port_subscribe_t,
14246 val: ::core::ffi::c_int,
14247 );
14248}
14249unsafe extern "C" {
14250 pub fn snd_seq_get_port_subscription(
14251 handle: *mut snd_seq_t,
14252 sub: *mut snd_seq_port_subscribe_t,
14253 ) -> ::core::ffi::c_int;
14254}
14255unsafe extern "C" {
14256 pub fn snd_seq_subscribe_port(
14257 handle: *mut snd_seq_t,
14258 sub: *mut snd_seq_port_subscribe_t,
14259 ) -> ::core::ffi::c_int;
14260}
14261unsafe extern "C" {
14262 pub fn snd_seq_unsubscribe_port(
14263 handle: *mut snd_seq_t,
14264 sub: *mut snd_seq_port_subscribe_t,
14265 ) -> ::core::ffi::c_int;
14266}
14267#[repr(C)]
14268#[derive(Debug, Copy, Clone)]
14269pub struct _snd_seq_query_subscribe {
14270 _unused: [u8; 0],
14271}
14272pub type snd_seq_query_subscribe_t = _snd_seq_query_subscribe;
14273pub const SND_SEQ_QUERY_SUBS_READ: snd_seq_query_subs_type_t = 0;
14274pub const SND_SEQ_QUERY_SUBS_WRITE: snd_seq_query_subs_type_t = 1;
14275pub type snd_seq_query_subs_type_t = ::core::ffi::c_uint;
14276unsafe extern "C" {
14277 pub fn snd_seq_query_subscribe_sizeof() -> usize;
14278}
14279unsafe extern "C" {
14280 pub fn snd_seq_query_subscribe_malloc(
14281 ptr: *mut *mut snd_seq_query_subscribe_t,
14282 ) -> ::core::ffi::c_int;
14283}
14284unsafe extern "C" {
14285 pub fn snd_seq_query_subscribe_free(ptr: *mut snd_seq_query_subscribe_t);
14286}
14287unsafe extern "C" {
14288 pub fn snd_seq_query_subscribe_copy(
14289 dst: *mut snd_seq_query_subscribe_t,
14290 src: *const snd_seq_query_subscribe_t,
14291 );
14292}
14293unsafe extern "C" {
14294 pub fn snd_seq_query_subscribe_get_client(
14295 info: *const snd_seq_query_subscribe_t,
14296 ) -> ::core::ffi::c_int;
14297}
14298unsafe extern "C" {
14299 pub fn snd_seq_query_subscribe_get_port(
14300 info: *const snd_seq_query_subscribe_t,
14301 ) -> ::core::ffi::c_int;
14302}
14303unsafe extern "C" {
14304 pub fn snd_seq_query_subscribe_get_root(
14305 info: *const snd_seq_query_subscribe_t,
14306 ) -> *const snd_seq_addr_t;
14307}
14308unsafe extern "C" {
14309 pub fn snd_seq_query_subscribe_get_type(
14310 info: *const snd_seq_query_subscribe_t,
14311 ) -> snd_seq_query_subs_type_t;
14312}
14313unsafe extern "C" {
14314 pub fn snd_seq_query_subscribe_get_index(
14315 info: *const snd_seq_query_subscribe_t,
14316 ) -> ::core::ffi::c_int;
14317}
14318unsafe extern "C" {
14319 pub fn snd_seq_query_subscribe_get_num_subs(
14320 info: *const snd_seq_query_subscribe_t,
14321 ) -> ::core::ffi::c_int;
14322}
14323unsafe extern "C" {
14324 pub fn snd_seq_query_subscribe_get_addr(
14325 info: *const snd_seq_query_subscribe_t,
14326 ) -> *const snd_seq_addr_t;
14327}
14328unsafe extern "C" {
14329 pub fn snd_seq_query_subscribe_get_queue(
14330 info: *const snd_seq_query_subscribe_t,
14331 ) -> ::core::ffi::c_int;
14332}
14333unsafe extern "C" {
14334 pub fn snd_seq_query_subscribe_get_exclusive(
14335 info: *const snd_seq_query_subscribe_t,
14336 ) -> ::core::ffi::c_int;
14337}
14338unsafe extern "C" {
14339 pub fn snd_seq_query_subscribe_get_time_update(
14340 info: *const snd_seq_query_subscribe_t,
14341 ) -> ::core::ffi::c_int;
14342}
14343unsafe extern "C" {
14344 pub fn snd_seq_query_subscribe_get_time_real(
14345 info: *const snd_seq_query_subscribe_t,
14346 ) -> ::core::ffi::c_int;
14347}
14348unsafe extern "C" {
14349 pub fn snd_seq_query_subscribe_set_client(
14350 info: *mut snd_seq_query_subscribe_t,
14351 client: ::core::ffi::c_int,
14352 );
14353}
14354unsafe extern "C" {
14355 pub fn snd_seq_query_subscribe_set_port(
14356 info: *mut snd_seq_query_subscribe_t,
14357 port: ::core::ffi::c_int,
14358 );
14359}
14360unsafe extern "C" {
14361 pub fn snd_seq_query_subscribe_set_root(
14362 info: *mut snd_seq_query_subscribe_t,
14363 addr: *const snd_seq_addr_t,
14364 );
14365}
14366unsafe extern "C" {
14367 pub fn snd_seq_query_subscribe_set_type(
14368 info: *mut snd_seq_query_subscribe_t,
14369 type_: snd_seq_query_subs_type_t,
14370 );
14371}
14372unsafe extern "C" {
14373 pub fn snd_seq_query_subscribe_set_index(
14374 info: *mut snd_seq_query_subscribe_t,
14375 _index: ::core::ffi::c_int,
14376 );
14377}
14378unsafe extern "C" {
14379 pub fn snd_seq_query_port_subscribers(
14380 seq: *mut snd_seq_t,
14381 subs: *mut snd_seq_query_subscribe_t,
14382 ) -> ::core::ffi::c_int;
14383}
14384#[repr(C)]
14385#[derive(Debug, Copy, Clone)]
14386pub struct _snd_seq_queue_info {
14387 _unused: [u8; 0],
14388}
14389pub type snd_seq_queue_info_t = _snd_seq_queue_info;
14390#[repr(C)]
14391#[derive(Debug, Copy, Clone)]
14392pub struct _snd_seq_queue_status {
14393 _unused: [u8; 0],
14394}
14395pub type snd_seq_queue_status_t = _snd_seq_queue_status;
14396#[repr(C)]
14397#[derive(Debug, Copy, Clone)]
14398pub struct _snd_seq_queue_tempo {
14399 _unused: [u8; 0],
14400}
14401pub type snd_seq_queue_tempo_t = _snd_seq_queue_tempo;
14402#[repr(C)]
14403#[derive(Debug, Copy, Clone)]
14404pub struct _snd_seq_queue_timer {
14405 _unused: [u8; 0],
14406}
14407pub type snd_seq_queue_timer_t = _snd_seq_queue_timer;
14408unsafe extern "C" {
14409 pub fn snd_seq_queue_info_sizeof() -> usize;
14410}
14411unsafe extern "C" {
14412 pub fn snd_seq_queue_info_malloc(ptr: *mut *mut snd_seq_queue_info_t) -> ::core::ffi::c_int;
14413}
14414unsafe extern "C" {
14415 pub fn snd_seq_queue_info_free(ptr: *mut snd_seq_queue_info_t);
14416}
14417unsafe extern "C" {
14418 pub fn snd_seq_queue_info_copy(
14419 dst: *mut snd_seq_queue_info_t,
14420 src: *const snd_seq_queue_info_t,
14421 );
14422}
14423unsafe extern "C" {
14424 pub fn snd_seq_queue_info_get_queue(info: *const snd_seq_queue_info_t) -> ::core::ffi::c_int;
14425}
14426unsafe extern "C" {
14427 pub fn snd_seq_queue_info_get_name(
14428 info: *const snd_seq_queue_info_t,
14429 ) -> *const ::core::ffi::c_char;
14430}
14431unsafe extern "C" {
14432 pub fn snd_seq_queue_info_get_owner(info: *const snd_seq_queue_info_t) -> ::core::ffi::c_int;
14433}
14434unsafe extern "C" {
14435 pub fn snd_seq_queue_info_get_locked(info: *const snd_seq_queue_info_t) -> ::core::ffi::c_int;
14436}
14437unsafe extern "C" {
14438 pub fn snd_seq_queue_info_get_flags(info: *const snd_seq_queue_info_t) -> ::core::ffi::c_uint;
14439}
14440unsafe extern "C" {
14441 pub fn snd_seq_queue_info_set_name(
14442 info: *mut snd_seq_queue_info_t,
14443 name: *const ::core::ffi::c_char,
14444 );
14445}
14446unsafe extern "C" {
14447 pub fn snd_seq_queue_info_set_owner(info: *mut snd_seq_queue_info_t, owner: ::core::ffi::c_int);
14448}
14449unsafe extern "C" {
14450 pub fn snd_seq_queue_info_set_locked(
14451 info: *mut snd_seq_queue_info_t,
14452 locked: ::core::ffi::c_int,
14453 );
14454}
14455unsafe extern "C" {
14456 pub fn snd_seq_queue_info_set_flags(
14457 info: *mut snd_seq_queue_info_t,
14458 flags: ::core::ffi::c_uint,
14459 );
14460}
14461unsafe extern "C" {
14462 pub fn snd_seq_create_queue(
14463 seq: *mut snd_seq_t,
14464 info: *mut snd_seq_queue_info_t,
14465 ) -> ::core::ffi::c_int;
14466}
14467unsafe extern "C" {
14468 pub fn snd_seq_alloc_named_queue(
14469 seq: *mut snd_seq_t,
14470 name: *const ::core::ffi::c_char,
14471 ) -> ::core::ffi::c_int;
14472}
14473unsafe extern "C" {
14474 pub fn snd_seq_alloc_queue(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
14475}
14476unsafe extern "C" {
14477 pub fn snd_seq_free_queue(handle: *mut snd_seq_t, q: ::core::ffi::c_int) -> ::core::ffi::c_int;
14478}
14479unsafe extern "C" {
14480 pub fn snd_seq_get_queue_info(
14481 seq: *mut snd_seq_t,
14482 q: ::core::ffi::c_int,
14483 info: *mut snd_seq_queue_info_t,
14484 ) -> ::core::ffi::c_int;
14485}
14486unsafe extern "C" {
14487 pub fn snd_seq_set_queue_info(
14488 seq: *mut snd_seq_t,
14489 q: ::core::ffi::c_int,
14490 info: *mut snd_seq_queue_info_t,
14491 ) -> ::core::ffi::c_int;
14492}
14493unsafe extern "C" {
14494 pub fn snd_seq_query_named_queue(
14495 seq: *mut snd_seq_t,
14496 name: *const ::core::ffi::c_char,
14497 ) -> ::core::ffi::c_int;
14498}
14499unsafe extern "C" {
14500 pub fn snd_seq_get_queue_usage(
14501 handle: *mut snd_seq_t,
14502 q: ::core::ffi::c_int,
14503 ) -> ::core::ffi::c_int;
14504}
14505unsafe extern "C" {
14506 pub fn snd_seq_set_queue_usage(
14507 handle: *mut snd_seq_t,
14508 q: ::core::ffi::c_int,
14509 used: ::core::ffi::c_int,
14510 ) -> ::core::ffi::c_int;
14511}
14512unsafe extern "C" {
14513 pub fn snd_seq_queue_status_sizeof() -> usize;
14514}
14515unsafe extern "C" {
14516 pub fn snd_seq_queue_status_malloc(ptr: *mut *mut snd_seq_queue_status_t)
14517 -> ::core::ffi::c_int;
14518}
14519unsafe extern "C" {
14520 pub fn snd_seq_queue_status_free(ptr: *mut snd_seq_queue_status_t);
14521}
14522unsafe extern "C" {
14523 pub fn snd_seq_queue_status_copy(
14524 dst: *mut snd_seq_queue_status_t,
14525 src: *const snd_seq_queue_status_t,
14526 );
14527}
14528unsafe extern "C" {
14529 pub fn snd_seq_queue_status_get_queue(
14530 info: *const snd_seq_queue_status_t,
14531 ) -> ::core::ffi::c_int;
14532}
14533unsafe extern "C" {
14534 pub fn snd_seq_queue_status_get_events(
14535 info: *const snd_seq_queue_status_t,
14536 ) -> ::core::ffi::c_int;
14537}
14538unsafe extern "C" {
14539 pub fn snd_seq_queue_status_get_tick_time(
14540 info: *const snd_seq_queue_status_t,
14541 ) -> snd_seq_tick_time_t;
14542}
14543unsafe extern "C" {
14544 pub fn snd_seq_queue_status_get_real_time(
14545 info: *const snd_seq_queue_status_t,
14546 ) -> *const snd_seq_real_time_t;
14547}
14548unsafe extern "C" {
14549 pub fn snd_seq_queue_status_get_status(
14550 info: *const snd_seq_queue_status_t,
14551 ) -> ::core::ffi::c_uint;
14552}
14553unsafe extern "C" {
14554 pub fn snd_seq_get_queue_status(
14555 handle: *mut snd_seq_t,
14556 q: ::core::ffi::c_int,
14557 status: *mut snd_seq_queue_status_t,
14558 ) -> ::core::ffi::c_int;
14559}
14560unsafe extern "C" {
14561 pub fn snd_seq_queue_tempo_sizeof() -> usize;
14562}
14563unsafe extern "C" {
14564 pub fn snd_seq_queue_tempo_malloc(ptr: *mut *mut snd_seq_queue_tempo_t) -> ::core::ffi::c_int;
14565}
14566unsafe extern "C" {
14567 pub fn snd_seq_queue_tempo_free(ptr: *mut snd_seq_queue_tempo_t);
14568}
14569unsafe extern "C" {
14570 pub fn snd_seq_queue_tempo_copy(
14571 dst: *mut snd_seq_queue_tempo_t,
14572 src: *const snd_seq_queue_tempo_t,
14573 );
14574}
14575unsafe extern "C" {
14576 pub fn snd_seq_queue_tempo_get_queue(info: *const snd_seq_queue_tempo_t) -> ::core::ffi::c_int;
14577}
14578unsafe extern "C" {
14579 pub fn snd_seq_queue_tempo_get_tempo(info: *const snd_seq_queue_tempo_t)
14580 -> ::core::ffi::c_uint;
14581}
14582unsafe extern "C" {
14583 pub fn snd_seq_queue_tempo_get_ppq(info: *const snd_seq_queue_tempo_t) -> ::core::ffi::c_int;
14584}
14585unsafe extern "C" {
14586 pub fn snd_seq_queue_tempo_get_skew(info: *const snd_seq_queue_tempo_t) -> ::core::ffi::c_uint;
14587}
14588unsafe extern "C" {
14589 pub fn snd_seq_queue_tempo_get_skew_base(
14590 info: *const snd_seq_queue_tempo_t,
14591 ) -> ::core::ffi::c_uint;
14592}
14593unsafe extern "C" {
14594 pub fn snd_seq_queue_tempo_get_tempo_base(
14595 info: *const snd_seq_queue_tempo_t,
14596 ) -> ::core::ffi::c_uint;
14597}
14598unsafe extern "C" {
14599 pub fn snd_seq_queue_tempo_set_tempo(
14600 info: *mut snd_seq_queue_tempo_t,
14601 tempo: ::core::ffi::c_uint,
14602 );
14603}
14604unsafe extern "C" {
14605 pub fn snd_seq_queue_tempo_set_ppq(info: *mut snd_seq_queue_tempo_t, ppq: ::core::ffi::c_int);
14606}
14607unsafe extern "C" {
14608 pub fn snd_seq_queue_tempo_set_skew(
14609 info: *mut snd_seq_queue_tempo_t,
14610 skew: ::core::ffi::c_uint,
14611 );
14612}
14613unsafe extern "C" {
14614 pub fn snd_seq_queue_tempo_set_skew_base(
14615 info: *mut snd_seq_queue_tempo_t,
14616 base: ::core::ffi::c_uint,
14617 );
14618}
14619unsafe extern "C" {
14620 pub fn snd_seq_queue_tempo_set_tempo_base(
14621 info: *mut snd_seq_queue_tempo_t,
14622 tempo_base: ::core::ffi::c_uint,
14623 );
14624}
14625unsafe extern "C" {
14626 pub fn snd_seq_get_queue_tempo(
14627 handle: *mut snd_seq_t,
14628 q: ::core::ffi::c_int,
14629 tempo: *mut snd_seq_queue_tempo_t,
14630 ) -> ::core::ffi::c_int;
14631}
14632unsafe extern "C" {
14633 pub fn snd_seq_set_queue_tempo(
14634 handle: *mut snd_seq_t,
14635 q: ::core::ffi::c_int,
14636 tempo: *mut snd_seq_queue_tempo_t,
14637 ) -> ::core::ffi::c_int;
14638}
14639unsafe extern "C" {
14640 pub fn snd_seq_has_queue_tempo_base(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
14641}
14642pub const SND_SEQ_TIMER_ALSA: snd_seq_queue_timer_type_t = 0;
14643pub const SND_SEQ_TIMER_MIDI_CLOCK: snd_seq_queue_timer_type_t = 1;
14644pub const SND_SEQ_TIMER_MIDI_TICK: snd_seq_queue_timer_type_t = 2;
14645pub type snd_seq_queue_timer_type_t = ::core::ffi::c_uint;
14646unsafe extern "C" {
14647 pub fn snd_seq_queue_timer_sizeof() -> usize;
14648}
14649unsafe extern "C" {
14650 pub fn snd_seq_queue_timer_malloc(ptr: *mut *mut snd_seq_queue_timer_t) -> ::core::ffi::c_int;
14651}
14652unsafe extern "C" {
14653 pub fn snd_seq_queue_timer_free(ptr: *mut snd_seq_queue_timer_t);
14654}
14655unsafe extern "C" {
14656 pub fn snd_seq_queue_timer_copy(
14657 dst: *mut snd_seq_queue_timer_t,
14658 src: *const snd_seq_queue_timer_t,
14659 );
14660}
14661unsafe extern "C" {
14662 pub fn snd_seq_queue_timer_get_queue(info: *const snd_seq_queue_timer_t) -> ::core::ffi::c_int;
14663}
14664unsafe extern "C" {
14665 pub fn snd_seq_queue_timer_get_type(
14666 info: *const snd_seq_queue_timer_t,
14667 ) -> snd_seq_queue_timer_type_t;
14668}
14669unsafe extern "C" {
14670 pub fn snd_seq_queue_timer_get_id(info: *const snd_seq_queue_timer_t) -> *const snd_timer_id_t;
14671}
14672unsafe extern "C" {
14673 pub fn snd_seq_queue_timer_get_resolution(
14674 info: *const snd_seq_queue_timer_t,
14675 ) -> ::core::ffi::c_uint;
14676}
14677unsafe extern "C" {
14678 pub fn snd_seq_queue_timer_set_type(
14679 info: *mut snd_seq_queue_timer_t,
14680 type_: snd_seq_queue_timer_type_t,
14681 );
14682}
14683unsafe extern "C" {
14684 pub fn snd_seq_queue_timer_set_id(info: *mut snd_seq_queue_timer_t, id: *const snd_timer_id_t);
14685}
14686unsafe extern "C" {
14687 pub fn snd_seq_queue_timer_set_resolution(
14688 info: *mut snd_seq_queue_timer_t,
14689 resolution: ::core::ffi::c_uint,
14690 );
14691}
14692unsafe extern "C" {
14693 pub fn snd_seq_get_queue_timer(
14694 handle: *mut snd_seq_t,
14695 q: ::core::ffi::c_int,
14696 timer: *mut snd_seq_queue_timer_t,
14697 ) -> ::core::ffi::c_int;
14698}
14699unsafe extern "C" {
14700 pub fn snd_seq_set_queue_timer(
14701 handle: *mut snd_seq_t,
14702 q: ::core::ffi::c_int,
14703 timer: *mut snd_seq_queue_timer_t,
14704 ) -> ::core::ffi::c_int;
14705}
14706unsafe extern "C" {
14707 pub fn snd_seq_free_event(ev: *mut snd_seq_event_t) -> ::core::ffi::c_int;
14708}
14709unsafe extern "C" {
14710 pub fn snd_seq_event_length(ev: *mut snd_seq_event_t) -> isize;
14711}
14712unsafe extern "C" {
14713 pub fn snd_seq_event_output(
14714 handle: *mut snd_seq_t,
14715 ev: *mut snd_seq_event_t,
14716 ) -> ::core::ffi::c_int;
14717}
14718unsafe extern "C" {
14719 pub fn snd_seq_event_output_buffer(
14720 handle: *mut snd_seq_t,
14721 ev: *mut snd_seq_event_t,
14722 ) -> ::core::ffi::c_int;
14723}
14724unsafe extern "C" {
14725 pub fn snd_seq_event_output_direct(
14726 handle: *mut snd_seq_t,
14727 ev: *mut snd_seq_event_t,
14728 ) -> ::core::ffi::c_int;
14729}
14730unsafe extern "C" {
14731 pub fn snd_seq_event_input(
14732 handle: *mut snd_seq_t,
14733 ev: *mut *mut snd_seq_event_t,
14734 ) -> ::core::ffi::c_int;
14735}
14736unsafe extern "C" {
14737 pub fn snd_seq_event_input_pending(
14738 seq: *mut snd_seq_t,
14739 fetch_sequencer: ::core::ffi::c_int,
14740 ) -> ::core::ffi::c_int;
14741}
14742unsafe extern "C" {
14743 pub fn snd_seq_drain_output(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
14744}
14745unsafe extern "C" {
14746 pub fn snd_seq_event_output_pending(seq: *mut snd_seq_t) -> ::core::ffi::c_int;
14747}
14748unsafe extern "C" {
14749 pub fn snd_seq_extract_output(
14750 handle: *mut snd_seq_t,
14751 ev: *mut *mut snd_seq_event_t,
14752 ) -> ::core::ffi::c_int;
14753}
14754unsafe extern "C" {
14755 pub fn snd_seq_drop_output(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
14756}
14757unsafe extern "C" {
14758 pub fn snd_seq_drop_output_buffer(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
14759}
14760unsafe extern "C" {
14761 pub fn snd_seq_drop_input(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
14762}
14763unsafe extern "C" {
14764 pub fn snd_seq_drop_input_buffer(handle: *mut snd_seq_t) -> ::core::ffi::c_int;
14765}
14766#[repr(C)]
14767#[derive(Debug, Copy, Clone)]
14768pub struct _snd_seq_remove_events {
14769 _unused: [u8; 0],
14770}
14771pub type snd_seq_remove_events_t = _snd_seq_remove_events;
14772unsafe extern "C" {
14773 pub fn snd_seq_remove_events_sizeof() -> usize;
14774}
14775unsafe extern "C" {
14776 pub fn snd_seq_remove_events_malloc(
14777 ptr: *mut *mut snd_seq_remove_events_t,
14778 ) -> ::core::ffi::c_int;
14779}
14780unsafe extern "C" {
14781 pub fn snd_seq_remove_events_free(ptr: *mut snd_seq_remove_events_t);
14782}
14783unsafe extern "C" {
14784 pub fn snd_seq_remove_events_copy(
14785 dst: *mut snd_seq_remove_events_t,
14786 src: *const snd_seq_remove_events_t,
14787 );
14788}
14789unsafe extern "C" {
14790 pub fn snd_seq_remove_events_get_condition(
14791 info: *const snd_seq_remove_events_t,
14792 ) -> ::core::ffi::c_uint;
14793}
14794unsafe extern "C" {
14795 pub fn snd_seq_remove_events_get_queue(
14796 info: *const snd_seq_remove_events_t,
14797 ) -> ::core::ffi::c_int;
14798}
14799unsafe extern "C" {
14800 pub fn snd_seq_remove_events_get_time(
14801 info: *const snd_seq_remove_events_t,
14802 ) -> *const snd_seq_timestamp_t;
14803}
14804unsafe extern "C" {
14805 pub fn snd_seq_remove_events_get_dest(
14806 info: *const snd_seq_remove_events_t,
14807 ) -> *const snd_seq_addr_t;
14808}
14809unsafe extern "C" {
14810 pub fn snd_seq_remove_events_get_channel(
14811 info: *const snd_seq_remove_events_t,
14812 ) -> ::core::ffi::c_int;
14813}
14814unsafe extern "C" {
14815 pub fn snd_seq_remove_events_get_event_type(
14816 info: *const snd_seq_remove_events_t,
14817 ) -> ::core::ffi::c_int;
14818}
14819unsafe extern "C" {
14820 pub fn snd_seq_remove_events_get_tag(
14821 info: *const snd_seq_remove_events_t,
14822 ) -> ::core::ffi::c_int;
14823}
14824unsafe extern "C" {
14825 pub fn snd_seq_remove_events_set_condition(
14826 info: *mut snd_seq_remove_events_t,
14827 flags: ::core::ffi::c_uint,
14828 );
14829}
14830unsafe extern "C" {
14831 pub fn snd_seq_remove_events_set_queue(
14832 info: *mut snd_seq_remove_events_t,
14833 queue: ::core::ffi::c_int,
14834 );
14835}
14836unsafe extern "C" {
14837 pub fn snd_seq_remove_events_set_time(
14838 info: *mut snd_seq_remove_events_t,
14839 time: *const snd_seq_timestamp_t,
14840 );
14841}
14842unsafe extern "C" {
14843 pub fn snd_seq_remove_events_set_dest(
14844 info: *mut snd_seq_remove_events_t,
14845 addr: *const snd_seq_addr_t,
14846 );
14847}
14848unsafe extern "C" {
14849 pub fn snd_seq_remove_events_set_channel(
14850 info: *mut snd_seq_remove_events_t,
14851 channel: ::core::ffi::c_int,
14852 );
14853}
14854unsafe extern "C" {
14855 pub fn snd_seq_remove_events_set_event_type(
14856 info: *mut snd_seq_remove_events_t,
14857 type_: ::core::ffi::c_int,
14858 );
14859}
14860unsafe extern "C" {
14861 pub fn snd_seq_remove_events_set_tag(
14862 info: *mut snd_seq_remove_events_t,
14863 tag: ::core::ffi::c_int,
14864 );
14865}
14866unsafe extern "C" {
14867 pub fn snd_seq_remove_events(
14868 handle: *mut snd_seq_t,
14869 info: *mut snd_seq_remove_events_t,
14870 ) -> ::core::ffi::c_int;
14871}
14872unsafe extern "C" {
14873 pub fn snd_seq_ump_event_output(
14874 seq: *mut snd_seq_t,
14875 ev: *mut snd_seq_ump_event_t,
14876 ) -> ::core::ffi::c_int;
14877}
14878unsafe extern "C" {
14879 pub fn snd_seq_ump_event_output_buffer(
14880 seq: *mut snd_seq_t,
14881 ev: *mut snd_seq_ump_event_t,
14882 ) -> ::core::ffi::c_int;
14883}
14884unsafe extern "C" {
14885 pub fn snd_seq_ump_extract_output(
14886 seq: *mut snd_seq_t,
14887 ev_res: *mut *mut snd_seq_ump_event_t,
14888 ) -> ::core::ffi::c_int;
14889}
14890unsafe extern "C" {
14891 pub fn snd_seq_ump_event_output_direct(
14892 seq: *mut snd_seq_t,
14893 ev: *mut snd_seq_ump_event_t,
14894 ) -> ::core::ffi::c_int;
14895}
14896unsafe extern "C" {
14897 pub fn snd_seq_ump_event_input(
14898 seq: *mut snd_seq_t,
14899 ev: *mut *mut snd_seq_ump_event_t,
14900 ) -> ::core::ffi::c_int;
14901}
14902unsafe extern "C" {
14903 pub fn snd_seq_set_bit(nr: ::core::ffi::c_int, array: *mut ::core::ffi::c_void);
14904}
14905unsafe extern "C" {
14906 pub fn snd_seq_unset_bit(nr: ::core::ffi::c_int, array: *mut ::core::ffi::c_void);
14907}
14908unsafe extern "C" {
14909 pub fn snd_seq_change_bit(
14910 nr: ::core::ffi::c_int,
14911 array: *mut ::core::ffi::c_void,
14912 ) -> ::core::ffi::c_int;
14913}
14914unsafe extern "C" {
14915 pub fn snd_seq_get_bit(
14916 nr: ::core::ffi::c_int,
14917 array: *mut ::core::ffi::c_void,
14918 ) -> ::core::ffi::c_int;
14919}
14920pub const SND_SEQ_EVFLG_RESULT: _bindgen_ty_24 = 0;
14921pub const SND_SEQ_EVFLG_NOTE: _bindgen_ty_24 = 1;
14922pub const SND_SEQ_EVFLG_CONTROL: _bindgen_ty_24 = 2;
14923pub const SND_SEQ_EVFLG_QUEUE: _bindgen_ty_24 = 3;
14924pub const SND_SEQ_EVFLG_SYSTEM: _bindgen_ty_24 = 4;
14925pub const SND_SEQ_EVFLG_MESSAGE: _bindgen_ty_24 = 5;
14926pub const SND_SEQ_EVFLG_CONNECTION: _bindgen_ty_24 = 6;
14927pub const SND_SEQ_EVFLG_SAMPLE: _bindgen_ty_24 = 7;
14928pub const SND_SEQ_EVFLG_USERS: _bindgen_ty_24 = 8;
14929pub const SND_SEQ_EVFLG_INSTR: _bindgen_ty_24 = 9;
14930pub const SND_SEQ_EVFLG_QUOTE: _bindgen_ty_24 = 10;
14931pub const SND_SEQ_EVFLG_NONE: _bindgen_ty_24 = 11;
14932pub const SND_SEQ_EVFLG_RAW: _bindgen_ty_24 = 12;
14933pub const SND_SEQ_EVFLG_FIXED: _bindgen_ty_24 = 13;
14934pub const SND_SEQ_EVFLG_VARIABLE: _bindgen_ty_24 = 14;
14935pub const SND_SEQ_EVFLG_VARUSR: _bindgen_ty_24 = 15;
14936pub type _bindgen_ty_24 = ::core::ffi::c_uint;
14937pub const SND_SEQ_EVFLG_NOTE_ONEARG: _bindgen_ty_25 = 0;
14938pub const SND_SEQ_EVFLG_NOTE_TWOARG: _bindgen_ty_25 = 1;
14939pub type _bindgen_ty_25 = ::core::ffi::c_uint;
14940pub const SND_SEQ_EVFLG_QUEUE_NOARG: _bindgen_ty_26 = 0;
14941pub const SND_SEQ_EVFLG_QUEUE_TICK: _bindgen_ty_26 = 1;
14942pub const SND_SEQ_EVFLG_QUEUE_TIME: _bindgen_ty_26 = 2;
14943pub const SND_SEQ_EVFLG_QUEUE_VALUE: _bindgen_ty_26 = 3;
14944pub type _bindgen_ty_26 = ::core::ffi::c_uint;
14945unsafe extern "C" {
14946 pub fn snd_seq_control_queue(
14947 seq: *mut snd_seq_t,
14948 q: ::core::ffi::c_int,
14949 type_: ::core::ffi::c_int,
14950 value: ::core::ffi::c_int,
14951 ev: *mut snd_seq_event_t,
14952 ) -> ::core::ffi::c_int;
14953}
14954unsafe extern "C" {
14955 pub fn snd_seq_create_simple_port(
14956 seq: *mut snd_seq_t,
14957 name: *const ::core::ffi::c_char,
14958 caps: ::core::ffi::c_uint,
14959 type_: ::core::ffi::c_uint,
14960 ) -> ::core::ffi::c_int;
14961}
14962unsafe extern "C" {
14963 pub fn snd_seq_delete_simple_port(
14964 seq: *mut snd_seq_t,
14965 port: ::core::ffi::c_int,
14966 ) -> ::core::ffi::c_int;
14967}
14968unsafe extern "C" {
14969 pub fn snd_seq_connect_from(
14970 seq: *mut snd_seq_t,
14971 my_port: ::core::ffi::c_int,
14972 src_client: ::core::ffi::c_int,
14973 src_port: ::core::ffi::c_int,
14974 ) -> ::core::ffi::c_int;
14975}
14976unsafe extern "C" {
14977 pub fn snd_seq_connect_to(
14978 seq: *mut snd_seq_t,
14979 my_port: ::core::ffi::c_int,
14980 dest_client: ::core::ffi::c_int,
14981 dest_port: ::core::ffi::c_int,
14982 ) -> ::core::ffi::c_int;
14983}
14984unsafe extern "C" {
14985 pub fn snd_seq_disconnect_from(
14986 seq: *mut snd_seq_t,
14987 my_port: ::core::ffi::c_int,
14988 src_client: ::core::ffi::c_int,
14989 src_port: ::core::ffi::c_int,
14990 ) -> ::core::ffi::c_int;
14991}
14992unsafe extern "C" {
14993 pub fn snd_seq_disconnect_to(
14994 seq: *mut snd_seq_t,
14995 my_port: ::core::ffi::c_int,
14996 dest_client: ::core::ffi::c_int,
14997 dest_port: ::core::ffi::c_int,
14998 ) -> ::core::ffi::c_int;
14999}
15000unsafe extern "C" {
15001 pub fn snd_seq_set_client_name(
15002 seq: *mut snd_seq_t,
15003 name: *const ::core::ffi::c_char,
15004 ) -> ::core::ffi::c_int;
15005}
15006unsafe extern "C" {
15007 pub fn snd_seq_set_client_event_filter(
15008 seq: *mut snd_seq_t,
15009 event_type: ::core::ffi::c_int,
15010 ) -> ::core::ffi::c_int;
15011}
15012unsafe extern "C" {
15013 pub fn snd_seq_set_client_midi_version(
15014 seq: *mut snd_seq_t,
15015 midi_version: ::core::ffi::c_int,
15016 ) -> ::core::ffi::c_int;
15017}
15018unsafe extern "C" {
15019 pub fn snd_seq_set_client_ump_conversion(
15020 seq: *mut snd_seq_t,
15021 enable: ::core::ffi::c_int,
15022 ) -> ::core::ffi::c_int;
15023}
15024unsafe extern "C" {
15025 pub fn snd_seq_set_client_pool_output(seq: *mut snd_seq_t, size: usize) -> ::core::ffi::c_int;
15026}
15027unsafe extern "C" {
15028 pub fn snd_seq_set_client_pool_output_room(
15029 seq: *mut snd_seq_t,
15030 size: usize,
15031 ) -> ::core::ffi::c_int;
15032}
15033unsafe extern "C" {
15034 pub fn snd_seq_set_client_pool_input(seq: *mut snd_seq_t, size: usize) -> ::core::ffi::c_int;
15035}
15036unsafe extern "C" {
15037 pub fn snd_seq_sync_output_queue(seq: *mut snd_seq_t) -> ::core::ffi::c_int;
15038}
15039unsafe extern "C" {
15040 pub fn snd_seq_parse_address(
15041 seq: *mut snd_seq_t,
15042 addr: *mut snd_seq_addr_t,
15043 str_: *const ::core::ffi::c_char,
15044 ) -> ::core::ffi::c_int;
15045}
15046unsafe extern "C" {
15047 pub fn snd_seq_reset_pool_output(seq: *mut snd_seq_t) -> ::core::ffi::c_int;
15048}
15049unsafe extern "C" {
15050 pub fn snd_seq_reset_pool_input(seq: *mut snd_seq_t) -> ::core::ffi::c_int;
15051}
15052unsafe extern "C" {
15053 pub fn snd_seq_create_ump_endpoint(
15054 seq: *mut snd_seq_t,
15055 info: *const snd_ump_endpoint_info_t,
15056 num_groups: ::core::ffi::c_uint,
15057 ) -> ::core::ffi::c_int;
15058}
15059unsafe extern "C" {
15060 pub fn snd_seq_create_ump_block(
15061 seq: *mut snd_seq_t,
15062 blkid: ::core::ffi::c_int,
15063 info: *const snd_ump_block_info_t,
15064 ) -> ::core::ffi::c_int;
15065}
15066#[repr(C)]
15067#[derive(Debug, Copy, Clone)]
15068pub struct snd_midi_event {
15069 _unused: [u8; 0],
15070}
15071pub type snd_midi_event_t = snd_midi_event;
15072unsafe extern "C" {
15073 pub fn snd_midi_event_new(
15074 bufsize: usize,
15075 rdev: *mut *mut snd_midi_event_t,
15076 ) -> ::core::ffi::c_int;
15077}
15078unsafe extern "C" {
15079 pub fn snd_midi_event_resize_buffer(
15080 dev: *mut snd_midi_event_t,
15081 bufsize: usize,
15082 ) -> ::core::ffi::c_int;
15083}
15084unsafe extern "C" {
15085 pub fn snd_midi_event_free(dev: *mut snd_midi_event_t);
15086}
15087unsafe extern "C" {
15088 pub fn snd_midi_event_init(dev: *mut snd_midi_event_t);
15089}
15090unsafe extern "C" {
15091 pub fn snd_midi_event_reset_encode(dev: *mut snd_midi_event_t);
15092}
15093unsafe extern "C" {
15094 pub fn snd_midi_event_reset_decode(dev: *mut snd_midi_event_t);
15095}
15096unsafe extern "C" {
15097 pub fn snd_midi_event_no_status(dev: *mut snd_midi_event_t, on: ::core::ffi::c_int);
15098}
15099unsafe extern "C" {
15100 pub fn snd_midi_event_encode(
15101 dev: *mut snd_midi_event_t,
15102 buf: *const ::core::ffi::c_uchar,
15103 count: ::core::ffi::c_long,
15104 ev: *mut snd_seq_event_t,
15105 ) -> ::core::ffi::c_long;
15106}
15107unsafe extern "C" {
15108 pub fn snd_midi_event_encode_byte(
15109 dev: *mut snd_midi_event_t,
15110 c: ::core::ffi::c_int,
15111 ev: *mut snd_seq_event_t,
15112 ) -> ::core::ffi::c_int;
15113}
15114unsafe extern "C" {
15115 pub fn snd_midi_event_decode(
15116 dev: *mut snd_midi_event_t,
15117 buf: *mut ::core::ffi::c_uchar,
15118 count: ::core::ffi::c_long,
15119 ev: *const snd_seq_event_t,
15120 ) -> ::core::ffi::c_long;
15121}
15122pub type __builtin_va_list = [__va_list_tag; 1usize];
15123#[repr(C)]
15124#[derive(Debug, Copy, Clone)]
15125pub struct __va_list_tag {
15126 pub gp_offset: ::core::ffi::c_uint,
15127 pub fp_offset: ::core::ffi::c_uint,
15128 pub overflow_arg_area: *mut ::core::ffi::c_void,
15129 pub reg_save_area: *mut ::core::ffi::c_void,
15130}