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
impl Clone for playdate_sound_sampleplayer
source§fn clone(&self) -> playdate_sound_sampleplayer
fn clone(&self) -> playdate_sound_sampleplayer
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for playdate_sound_sampleplayer
impl Debug for playdate_sound_sampleplayer
source§impl Default for playdate_sound_sampleplayer
impl Default for playdate_sound_sampleplayer
source§fn default() -> playdate_sound_sampleplayer
fn default() -> playdate_sound_sampleplayer
source§impl Hash for playdate_sound_sampleplayer
impl Hash for playdate_sound_sampleplayer
source§impl Ord for playdate_sound_sampleplayer
impl Ord for playdate_sound_sampleplayer
source§impl PartialEq for playdate_sound_sampleplayer
impl PartialEq for playdate_sound_sampleplayer
source§fn eq(&self, other: &playdate_sound_sampleplayer) -> bool
fn eq(&self, other: &playdate_sound_sampleplayer) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for playdate_sound_sampleplayer
impl PartialOrd for playdate_sound_sampleplayer
source§fn partial_cmp(&self, other: &playdate_sound_sampleplayer) -> Option<Ordering>
fn partial_cmp(&self, other: &playdate_sound_sampleplayer) -> Option<Ordering>
1.0.0§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moreimpl Copy for playdate_sound_sampleplayer
impl Eq for playdate_sound_sampleplayer
impl StructuralPartialEq for playdate_sound_sampleplayer
Auto Trait Implementations§
impl Freeze for playdate_sound_sampleplayer
impl RefUnwindSafe for playdate_sound_sampleplayer
impl Send for playdate_sound_sampleplayer
impl Sync for playdate_sound_sampleplayer
impl Unpin for playdate_sound_sampleplayer
impl UnwindSafe for playdate_sound_sampleplayer
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
§impl<T> ToOwned for Twhere
T: Clone,
impl<T> ToOwned for Twhere
T: Clone,
§impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
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