ObsObjectBuilder

Trait ObsObjectBuilder 

Source
pub trait ObsObjectBuilder {
    // Required methods
    fn new<T: Into<ObsString> + Send + Sync>(
        name: T,
        runtime: ObsRuntime,
    ) -> Result<Self, ObsError>
       where Self: Sized;
    fn get_name(&self) -> ObsString;
    fn build(self) -> Result<ObjectInfo, ObsError>
       where Self: Sized;
    fn get_settings(&self) -> &ObsData;
    fn get_settings_updater(&mut self) -> &mut ObsDataUpdater;
    fn get_hotkeys(&self) -> &ObsData;
    fn get_hotkeys_updater(&mut self) -> &mut ObsDataUpdater;
    fn get_id() -> ObsString;
}
Expand description

Trait for building OBS sources.

Required Methods§

Source

fn new<T: Into<ObsString> + Send + Sync>( name: T, runtime: ObsRuntime, ) -> Result<Self, ObsError>
where Self: Sized,

Source

fn get_name(&self) -> ObsString

Returns the name of the source.

Source

fn build(self) -> Result<ObjectInfo, ObsError>
where Self: Sized,

Source

fn get_settings(&self) -> &ObsData

Source

fn get_settings_updater(&mut self) -> &mut ObsDataUpdater

Source

fn get_hotkeys(&self) -> &ObsData

Source

fn get_hotkeys_updater(&mut self) -> &mut ObsDataUpdater

Source

fn get_id() -> ObsString

Returns the ID of the source.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§