clap_sys/ext/
param_indication.rs

1use crate::{color::*, cstr, id::*, plugin::*};
2
3use std::ffi::{c_char, CStr};
4
5pub const CLAP_EXT_PARAM_INDICATION: &CStr = cstr!("clap.param-indication/4");
6pub const CLAP_EXT_PARAM_INDICATION_COMPAT: &CStr = cstr!("clap.param-indication.draft/4");
7
8pub const CLAP_PARAM_INDICATION_AUTOMATION_NONE: u32 = 0;
9pub const CLAP_PARAM_INDICATION_AUTOMATION_PRESENT: u32 = 1;
10pub const CLAP_PARAM_INDICATION_AUTOMATION_PLAYING: u32 = 2;
11pub const CLAP_PARAM_INDICATION_AUTOMATION_RECORDING: u32 = 3;
12pub const CLAP_PARAM_INDICATION_AUTOMATION_OVERRIDING: u32 = 4;
13
14#[repr(C)]
15#[derive(Debug, Copy, Clone)]
16pub struct clap_plugin_param_indication {
17    pub set_mapping: Option<
18        unsafe extern "C" fn(
19            plugin: *const clap_plugin,
20            param_id: clap_id,
21            has_mapping: bool,
22            color: *const clap_color,
23            label: *const c_char,
24            description: *const c_char,
25        ),
26    >,
27    pub set_automation: Option<
28        unsafe extern "C" fn(
29            plugin: *const clap_plugin,
30            param_id: clap_id,
31            automation_state: u32,
32            color: *const clap_color,
33        ),
34    >,
35}