pub struct AddonSignal {
pub id: &'static str,
pub name: &'static str,
pub description: &'static str,
}Expand description
A named boolean fact an addon publishes about its target.
FR-062. Recording, streaming, in a call, muted, playing. An overlay can be conditioned on one (ADR-0011), which makes a signal a resolution input and therefore a stronger obligation than FR-047’s display state: a stale label is a cosmetic problem, a stale signal is a device doing the wrong thing.
Boolean, and FR-063 keeps it that way until a specified need exists for more. The same reasoning as the RPC being deliberately small: a value set that grows on speculation grows a conversion for every consumer, and the consumers here include third-party addons.
Fields§
§id: &'static strStable identifier, unqualified — recording, not obs.recording.
The addon’s own id qualifies it, so an addon cannot claim a name in
another’s space by choosing a clever string.
Stored in configurations, so a rename silently breaks someone’s
overlay, exactly as AddonAction::id does.
name: &'static strWhat to call it.
description: &'static strWhat it means, in a sentence. Shown next to a live value, so it has to say what true means rather than what the signal is about: “Spotify is playing” beats “playback state”.
Trait Implementations§
Source§impl Clone for AddonSignal
impl Clone for AddonSignal
Source§fn clone(&self) -> AddonSignal
fn clone(&self) -> AddonSignal
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AddonSignal
impl Debug for AddonSignal
Source§impl PartialEq for AddonSignal
impl PartialEq for AddonSignal
Source§fn eq(&self, other: &AddonSignal) -> bool
fn eq(&self, other: &AddonSignal) -> bool
self and other values to be equal, and is used by ==.