use sim_citizen_derive::Citizen;
use sim_kernel::{CapabilityName, Symbol};
#[derive(Clone, Debug, PartialEq, Citizen)]
#[citizen(symbol = "view/LensDescriptor", version = 1)]
pub struct ViewLensDescriptor {
pub id: Symbol,
pub kind: Symbol,
pub claimed_classes: Vec<Symbol>,
pub required_capabilities: Vec<CapabilityName>,
pub universal_default: bool,
}
impl Default for ViewLensDescriptor {
fn default() -> Self {
Self {
id: Symbol::new(crate::UNIVERSAL_DEFAULT_LENS),
kind: Symbol::new("view"),
claimed_classes: Vec::new(),
required_capabilities: Vec::new(),
universal_default: true,
}
}
}
pub fn view_lens_descriptor_class_symbol() -> Symbol {
Symbol::qualified("view", "LensDescriptor")
}