pub(crate) struct MpvIpc {
socket: Framed<UnixStream, LinesCodec>,
command_channel: Receiver<(MpvIpcCommand, Sender<MpvIpcResponse>)>,
event_channel: Sender<MpvIpcEvent>,
}
Expand description
Container for all state that regards communication with the mpv IPC socket
and message passing with Mpv
controllers.
Fields§
§socket: Framed<UnixStream, LinesCodec>
§command_channel: Receiver<(MpvIpcCommand, Sender<MpvIpcResponse>)>
§event_channel: Sender<MpvIpcEvent>
Implementations§
Source§impl MpvIpc
impl MpvIpc
pub(crate) fn new( socket: UnixStream, command_channel: Receiver<(MpvIpcCommand, Sender<MpvIpcResponse>)>, event_channel: Sender<MpvIpcEvent>, ) -> Self
pub(crate) async fn send_command( &mut self, command: &[Value], ) -> Result<Option<Value>, MpvError>
pub(crate) async fn get_mpv_property( &mut self, property: &str, ) -> Result<Option<Value>, MpvError>
pub(crate) async fn set_mpv_property( &mut self, property: &str, value: Value, ) -> Result<Option<Value>, MpvError>
pub(crate) async fn observe_property( &mut self, id: usize, property: &str, ) -> Result<Option<Value>, MpvError>
pub(crate) async fn unobserve_property( &mut self, id: usize, ) -> Result<Option<Value>, MpvError>
async fn handle_event(&mut self, event: Result<Value, MpvError>)
pub(crate) async fn run(self) -> Result<(), MpvError>
Auto Trait Implementations§
impl Freeze for MpvIpc
impl RefUnwindSafe for MpvIpc
impl Send for MpvIpc
impl Sync for MpvIpc
impl Unpin for MpvIpc
impl UnwindSafe for MpvIpc
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