Plugin

Struct Plugin 

Source
pub struct Plugin<'core> { /* private fields */ }
Expand description

A VapourSynth plugin.

Implementations§

Source§

impl<'core> Plugin<'core>

Source

pub fn path(&self) -> Option<&'core CStr>

Returns the absolute path to the plugin, including the plugin’s file name. This is the real location of the plugin, i.e. there are no symbolic links in the path.

Path elements are always delimited with forward slashes.

Source

pub fn invoke( &self, name: &str, args: &Map<'core>, ) -> Result<OwnedMap<'core>, NulError>

Invokes a filter.

invoke() makes sure the filter has no compat input nodes, checks that the args passed to the filter are consistent with the argument list registered by the plugin that contains the filter, creates the filter, and checks that the filter doesn’t return any compat nodes. If everything goes smoothly, the filter will be ready to generate frames after invoke() returns.

Returns a map containing the filter’s return value(s). Use Map::error() to check if the filter was invoked successfully.

Most filters will either add an error to the map, or one or more clips with the key clip. The exception to this are functions, for example LoadPlugin, which doesn’t return any clips for obvious reasons.

Source

pub fn register_function<F: FilterFunction>( &self, filter_function: F, ) -> Result<(), NulError>

Registers a filter function to be exported by a non-readonly plugin.

Source

pub fn get_plugin_function_by_name( &self, name: &str, ) -> Result<Option<PluginFunction<'core>>, NulError>

Returns a plugin function by name.

This function retrieves a specific filter function exported by the plugin. In VapourSynth v4, this is the recommended way to query plugin functions, as the functions() method has been removed.

Returns None if no function with the given name exists.

Trait Implementations§

Source§

impl<'core> Clone for Plugin<'core>

Source§

fn clone(&self) -> Plugin<'core>

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl<'core> Debug for Plugin<'core>

Source§

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

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

impl<'core> Copy for Plugin<'core>

Source§

impl<'core> Send for Plugin<'core>

Source§

impl<'core> Sync for Plugin<'core>

Auto Trait Implementations§

§

impl<'core> Freeze for Plugin<'core>

§

impl<'core> RefUnwindSafe for Plugin<'core>

§

impl<'core> Unpin for Plugin<'core>

§

impl<'core> UnwindSafe for Plugin<'core>

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

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

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

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

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

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

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

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

Source§

type Error = Infallible

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

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

Performs the conversion.
Source§

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

Source§

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

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

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

Performs the conversion.