icrate 0.1.2

Bindings to Apple's frameworks
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use crate::common::*;
use crate::AppKit::*;
use crate::Foundation::*;
use crate::MediaPlayer::*;

extern_protocol!(
    pub unsafe trait MPMediaPlayback {
        #[method(prepareToPlay)]
        unsafe fn prepareToPlay(&self);

        #[method(isPreparedToPlay)]
        unsafe fn isPreparedToPlay(&self) -> bool;

        #[method(play)]
        unsafe fn play(&self);

        #[method(pause)]
        unsafe fn pause(&self);

        #[method(stop)]
        unsafe fn stop(&self);

        #[method(currentPlaybackTime)]
        unsafe fn currentPlaybackTime(&self) -> NSTimeInterval;

        #[method(setCurrentPlaybackTime:)]
        unsafe fn setCurrentPlaybackTime(&self, current_playback_time: NSTimeInterval);

        #[method(currentPlaybackRate)]
        unsafe fn currentPlaybackRate(&self) -> c_float;

        #[method(setCurrentPlaybackRate:)]
        unsafe fn setCurrentPlaybackRate(&self, current_playback_rate: c_float);

        #[method(beginSeekingForward)]
        unsafe fn beginSeekingForward(&self);

        #[method(beginSeekingBackward)]
        unsafe fn beginSeekingBackward(&self);

        #[method(endSeeking)]
        unsafe fn endSeeking(&self);
    }

    unsafe impl ProtocolType for dyn MPMediaPlayback {}
);

extern_static!(MPMediaPlaybackIsPreparedToPlayDidChangeNotification: Option<&'static NSString>);