Skip to main content

ObsObjectUpdater

Trait ObsObjectUpdater 

pub trait ObsObjectUpdater<'a, K>
where K: Clone,
{ type ToUpdate: ObsObjectTrait<K>; // Required methods fn create_update( runtime: ObsRuntime, updatable: &'a mut Self::ToUpdate, ) -> Result<Self, ObsError> where Self: Sized; fn get_settings(&self) -> &ObsData; fn get_settings_updater(&mut self) -> &mut ObsDataUpdater; fn update(self) -> Result<(), ObsError>; fn runtime(&self) -> &ObsRuntime; fn get_id() -> ObsString; }
Expand description

A trait that is used to represent any struct than can update an OBS object. This can be for example a ´WindowSourceUpdater´, which updates the settings of the WindowSourceRef, when the update method is called.

Required Associated Types§

type ToUpdate: ObsObjectTrait<K>

Required Methods§

fn create_update( runtime: ObsRuntime, updatable: &'a mut Self::ToUpdate, ) -> Result<Self, ObsError>
where Self: Sized,

fn get_settings(&self) -> &ObsData

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

fn update(self) -> Result<(), ObsError>

fn runtime(&self) -> &ObsRuntime

fn get_id() -> ObsString

Returns the ID of the object

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§

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for ObsPipeWireGeneralUpdater<'a>

Available on Linux only.
Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for AlsaInputSourceUpdater<'a>

Available on Linux only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for JackOutputSourceUpdater<'a>

Available on Linux only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for PulseInputSourceUpdater<'a>

Available on Linux only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for PulseOutputSourceUpdater<'a>

Available on Linux only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for V4L2InputSourceUpdater<'a>

Available on Linux only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for X11CaptureSourceUpdater<'a>

Available on Linux only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for XCompositeInputSourceUpdater<'a>

Available on Linux only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for GameCaptureSourceUpdater<'a>

Available on Windows only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for MonitorCaptureSourceUpdater<'a>

Available on Windows only.
Source§

type ToUpdate = ObsSourceRef

Source§

impl<'a> ObsObjectUpdater<'a, *mut obs_source> for WindowCaptureSourceUpdater<'a>

Available on Windows only.
Source§

type ToUpdate = ObsSourceRef