ommui_data 0.39.0

OMMUI data structures
Documentation
use indexmap::IndexMap;

pub mod filesystem;
pub mod loadable_device;

pub use loadable_device::LoadableDevice;

#[derive(Clone, Debug)]
pub struct Sampling {
    pub mappings: IndexMap<String, Mapping>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
#[serde(rename_all = "camelCase")]
pub struct Mapping {
    pub result_mapping: IndexMap<String, String>,
    #[serde(default, skip_serializing_if = "IndexMap::is_empty")]
    pub curve_mapping: IndexMap<String, CurveMapping>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
#[serde(rename_all = "camelCase")]
pub struct CurveMapping {
    pub coordinate_system: CoordinateSystemMapping,

    #[serde(default, skip_serializing_if = "IndexMap::is_empty")]
    pub markers: IndexMap<String, CoordinateSystemMapping>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
#[serde(rename_all = "camelCase")]
pub struct CoordinateSystemMapping {
    pub x: String,
    pub y: String,
}