pub struct DoubleBufferState {
pub header_ptr: u32,
pub current_buffer: usize,
pub callback_addr: u32,
pub chan_ptr: u32,
pub sample_rate: u32,
pub num_channels: usize,
pub sample_size: usize,
pub last_buffer_seen: bool,
pub waiting_for_callback: bool,
pub pending_callback_buffers: [bool; 2],
}Expand description
Double-buffer playback state for SndPlayDoubleBuffer. Sound 1994, 2-111 to 2-113
Fields§
§header_ptr: u32Guest pointer to the SndDoubleBufferHeader record.
current_buffer: usizeIndex of the buffer currently being played (0 or 1).
callback_addr: u32Guest pointer to the doubleback callback procedure.
chan_ptr: u32Guest pointer to the channel.
sample_rate: u32Sample rate as Mac Fixed 16.16.
num_channels: usizeNumber of interleaved channels in each buffer.
sample_size: usizeBits per sample in each channel.
last_buffer_seen: boolWhether we’ve seen dbLastBuffer and should stop after this buffer.
waiting_for_callback: boolWhether we’re waiting for the callback to finish refilling.
pending_callback_buffers: [bool; 2]Which buffer slots currently have an outstanding doubleback refill.
Trait Implementations§
Source§impl Clone for DoubleBufferState
impl Clone for DoubleBufferState
Source§fn clone(&self) -> DoubleBufferState
fn clone(&self) -> DoubleBufferState
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for DoubleBufferState
impl RefUnwindSafe for DoubleBufferState
impl Send for DoubleBufferState
impl Sync for DoubleBufferState
impl Unpin for DoubleBufferState
impl UnsafeUnpin for DoubleBufferState
impl UnwindSafe for DoubleBufferState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more