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".

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