Struct alsa::pcm::IO [] [src]

pub struct IO<'a, S: Copy>(_, _);
[]

Sample format dependent struct for reading from and writing data to a PCM. Also implements std::io::Read and std::io::Write.

Note: Only one IO object is allowed in scope at a time (for mmap safety).

Methods

impl<'a, S: Copy> IO<'a, S>
[src]

[]

On success, returns number of frames written. (Multiply with number of channels to get number of items in buf successfully written.)

[]

On success, returns number of frames read. (Multiply with number of channels to get number of items in buf successfully read.)

[]

Wrapper around snd_pcm_mmap_begin and snd_pcm_mmap_commit.

You can read/write into the sound card's buffer during the call to the closure. According to alsa-lib docs, you should call avail_update before calling this function.

All calculations are in frames, i e, the closure should return number of frames processed. Also, there might not be as many frames to read/write as requested, and there can even be an empty buffer supplied to the closure.

Note: This function works only with interleaved access mode.

Trait Implementations

impl<'a, S: Copy> Drop for IO<'a, S>
[src]

[]

A method called when the value goes out of scope. Read more

impl<'a, S: Copy> Read for IO<'a, S>
[src]

[]

Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more

[]

🔬 This is a nightly-only experimental API. (read_initializer)

Determines if this Reader can work with buffers of uninitialized memory. Read more

[]

Read all bytes until EOF in this source, placing them into buf. Read more

[]

Read all bytes until EOF in this source, placing them into buf. Read more

[]

Read the exact number of bytes required to fill buf. Read more

[]

Creates a "by reference" adaptor for this instance of Read. Read more

[]

Transforms this Read instance to an Iterator over its bytes. Read more

[]

🔬 This is a nightly-only experimental API. (io)

the semantics of a partial read/write of where errors happen is currently unclear and may change

Transforms this Read instance to an Iterator over chars. Read more

[]

Creates an adaptor which will chain this stream with another. Read more

[]

Creates an adaptor which will read at most limit bytes from it. Read more

impl<'a, S: Copy> Write for IO<'a, S>
[src]

[]

Write a buffer into this object, returning how many bytes were written. Read more

[]

Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more

[]

Attempts to write an entire buffer into this write. Read more

[]

Writes a formatted string into this writer, returning any error encountered. Read more

[]

Creates a "by reference" adaptor for this instance of Write. Read more