Struct playdate_sys::ffi::playdate_sound_sampleplayer

source ·
#[repr(C)]
pub struct playdate_sound_sampleplayer {
Show 17 fields pub newPlayer: Option<unsafe extern "C" fn() -> *mut SamplePlayer>, pub freePlayer: Option<unsafe extern "C" fn(player: *mut SamplePlayer)>, pub setSample: Option<unsafe extern "C" fn(player: *mut SamplePlayer, sample: *mut AudioSample)>, pub play: Option<unsafe extern "C" fn(player: *mut SamplePlayer, repeat: c_int, rate: c_float) -> c_int>, pub isPlaying: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_int>, pub stop: Option<unsafe extern "C" fn(player: *mut SamplePlayer)>, pub setVolume: Option<unsafe extern "C" fn(player: *mut SamplePlayer, left: c_float, right: c_float)>, pub getVolume: Option<unsafe extern "C" fn(player: *mut SamplePlayer, left: *mut c_float, right: *mut c_float)>, pub getLength: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_float>, pub setOffset: Option<unsafe extern "C" fn(player: *mut SamplePlayer, offset: c_float)>, pub setRate: Option<unsafe extern "C" fn(player: *mut SamplePlayer, rate: c_float)>, pub setPlayRange: Option<unsafe extern "C" fn(player: *mut SamplePlayer, start: c_int, end: c_int)>, pub setFinishCallback: Option<unsafe extern "C" fn(player: *mut SamplePlayer, callback: sndCallbackProc, userdata: *mut c_void)>, pub setLoopCallback: Option<unsafe extern "C" fn(player: *mut SamplePlayer, callback: sndCallbackProc, userdata: *mut c_void)>, pub getOffset: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_float>, pub getRate: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_float>, pub setPaused: Option<unsafe extern "C" fn(player: *mut SamplePlayer, flag: c_int)>,
}

Fields§

§newPlayer: Option<unsafe extern "C" fn() -> *mut SamplePlayer>

SamplePlayer* playdate->sound->sampleplayer->newPlayer(void)

Allocates and returns a new SamplePlayer.

§freePlayer: Option<unsafe extern "C" fn(player: *mut SamplePlayer)>

void playdate->sound->sampleplayer->freePlayer(SamplePlayer* player)

Frees the given player.

§setSample: Option<unsafe extern "C" fn(player: *mut SamplePlayer, sample: *mut AudioSample)>

void playdate->sound->sampleplayer->setSample(SamplePlayer* player, AudioSample* sample)

Assigns sample to player.

§play: Option<unsafe extern "C" fn(player: *mut SamplePlayer, repeat: c_int, rate: c_float) -> c_int>

int playdate->sound->sampleplayer->play(SamplePlayer* player, int repeat, float rate)

Starts playing the sample in player.

If repeat is greater than one, it loops the given number of times. If zero, it loops endlessly until it is stopped with playdate->sound->sampleplayer->stop(). If negative one, it does ping-pong looping.

rate is the playback rate for the sample; 1.0 is normal speed, 0.5 is down an octave, 2.0 is up an octave, etc.

Returns 1 on success (which is always, currently).

§isPlaying: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_int>

int playdate->sound->sampleplayer->isPlaying(SamplePlayer* player)

Returns one if player is playing a sample, zero if not.

§stop: Option<unsafe extern "C" fn(player: *mut SamplePlayer)>

void playdate->sound->sampleplayer->stop(SamplePlayer* player)

Stops playing the sample.

§setVolume: Option<unsafe extern "C" fn(player: *mut SamplePlayer, left: c_float, right: c_float)>

void playdate->sound->sampleplayer->setVolume(SamplePlayer* player, float left, float right)

Sets the playback volume for left and right channels.

§getVolume: Option<unsafe extern "C" fn(player: *mut SamplePlayer, left: *mut c_float, right: *mut c_float)>

void playdate->sound->sampleplayer->getVolume(SamplePlayer* player, float* outleft, float* outright)

Gets the current left and right channel volume of the sampleplayer.

§getLength: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_float>

float playdate->sound->sampleplayer->getLength(SamplePlayer* player)

Returns the length, in seconds, of the sample assigned to player.

§setOffset: Option<unsafe extern "C" fn(player: *mut SamplePlayer, offset: c_float)>

void playdate->sound->sampleplayer->setOffset(SamplePlayer* player, float offset)

Sets the current offset of the SamplePlayer, in seconds.

§setRate: Option<unsafe extern "C" fn(player: *mut SamplePlayer, rate: c_float)>

void playdate->sound->sampleplayer->setRate(SamplePlayer* player, float rate)

Sets the playback rate for the player. 1.0 is normal speed, 0.5 is down an octave, 2.0 is up an octave, etc. A negative rate produces backwards playback for PCM files, but does not work for ADPCM-encoded files.

§setPlayRange: Option<unsafe extern "C" fn(player: *mut SamplePlayer, start: c_int, end: c_int)>

void playdate->sound->sampleplayer->setPlayRange(SamplePlayer* player, int start, int end)

When used with a repeat of -1, does ping-pong looping, with a start and end position in frames.

§setFinishCallback: Option<unsafe extern "C" fn(player: *mut SamplePlayer, callback: sndCallbackProc, userdata: *mut c_void)>

void playdate->sound->sampleplayer->setFinishCallback(SamplePlayer* player, sndCallbackProc callback, void* userdata)

Sets a function to be called when playback has completed. See sndCallbackProc.

§setLoopCallback: Option<unsafe extern "C" fn(player: *mut SamplePlayer, callback: sndCallbackProc, userdata: *mut c_void)>§getOffset: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_float>

float playdate->sound->sampleplayer->getOffset(SamplePlayer* player);

Returns the current offset in seconds for player.

§getRate: Option<unsafe extern "C" fn(player: *mut SamplePlayer) -> c_float>

float playdate->sound->sampleplayer->getRate(SamplePlayer* player)

Returns the playback rate for player.

§setPaused: Option<unsafe extern "C" fn(player: *mut SamplePlayer, flag: c_int)>

void playdate->sound->sampleplayer->setPaused(SamplePlayer* player, int paused)

Pauses or resumes playback.

Trait Implementations§

source§

impl Clone for playdate_sound_sampleplayer

source§

fn clone(&self) -> playdate_sound_sampleplayer

Returns a copy of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for playdate_sound_sampleplayer

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for playdate_sound_sampleplayer

source§

fn default() -> playdate_sound_sampleplayer

Returns the “default value” for a type. Read more
source§

impl Hash for playdate_sound_sampleplayer

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given [Hasher]. Read more
1.3.0§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given [Hasher]. Read more
source§

impl Ord for playdate_sound_sampleplayer

source§

fn cmp(&self, other: &playdate_sound_sampleplayer) -> Ordering

This method returns an [Ordering] between self and other. Read more
1.21.0§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl PartialEq for playdate_sound_sampleplayer

source§

fn eq(&self, other: &playdate_sound_sampleplayer) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd for playdate_sound_sampleplayer

source§

fn partial_cmp(&self, other: &playdate_sound_sampleplayer) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Copy for playdate_sound_sampleplayer

source§

impl Eq for playdate_sound_sampleplayer

source§

impl StructuralPartialEq for playdate_sound_sampleplayer

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 68 bytes