pub trait Node: Sized + Sealed {
    type FrameType: Frame;

    // Required methods
    fn as_ptr(&self) -> *const VSNode;
    fn get_frame_filter(
        &self,
        n: i32,
        ctx: &mut FrameContext
    ) -> Self::FrameType;

    // Provided methods
    fn as_mut_ptr(&mut self) -> *mut VSNode { ... }
    fn set_linear_filter(&mut self) -> i32 { ... }
    fn set_cache_mode(&mut self, mode: CacheMode) { ... }
    fn set_cache_options(
        &mut self,
        fixed_size: i32,
        max_size: i32,
        max_history_size: i32
    ) { ... }
    fn get_frame(&self, n: i32) -> Result<Self::FrameType, CString> { ... }
    fn get_frame_async<D, F, Fr>(&self, _n: i32, _data: &mut D)
       where F: Fn(D, Fr, i32) -> Result<(), String>,
             Fr: Frame { ... }
}

Required Associated Types§

Required Methods§

source

fn as_ptr(&self) -> *const VSNode

source

fn get_frame_filter(&self, n: i32, ctx: &mut FrameContext) -> Self::FrameType

Provided Methods§

source

fn as_mut_ptr(&mut self) -> *mut VSNode

source

fn set_linear_filter(&mut self) -> i32

source

fn set_cache_mode(&mut self, mode: CacheMode)

source

fn set_cache_options( &mut self, fixed_size: i32, max_size: i32, max_history_size: i32 )

source

fn get_frame(&self, n: i32) -> Result<Self::FrameType, CString>

Errors

Return the internal error message if the frame is not ready.

source

fn get_frame_async<D, F, Fr>(&self, _n: i32, _data: &mut D)where F: Fn(D, Fr, i32) -> Result<(), String>, Fr: Frame,

Implementors§