Guest User

ladspa.vapi

a guest
Sep 13th, 2016
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Vala 4.03 KB | None | 0 0
  1. [CCode (cheader_filename = "ladspa.h,ladspa-vala.h", cprefix = "LADSPA_")]
  2. namespace LADSPA
  3. {
  4.     public struct Data : float
  5.     {
  6.     }
  7.  
  8.     [CCode (cprefix = "LADSPA_PROPERTY_", cname = "int")]
  9.     [Flags]
  10.     public enum Properties
  11.     {
  12.         REALTIME,
  13.         INPLACE_BROKEN,
  14.         HARD_RT_CAPABLE;
  15.     }
  16.  
  17.     [CCode (cprefix = "LADSPA_PORT_", cname = "int")]
  18.     [Flags]
  19.     public enum PortDescriptor
  20.     {
  21.         INPUT,
  22.         OUTPUT,
  23.         CONTROL,
  24.         AUDIO;
  25.     }
  26.  
  27.     [CCode (cprefix = "LADSPA_HINT_", cname = "int")]
  28.     [Flags]
  29.     public enum PortRangeHintDescriptor
  30.     {
  31.         BOUNDED_BELOW,
  32.         BOUNDED_ABOVE,
  33.         TOGGLED,
  34.         SAMPLE_RATE,
  35.         LOGARITHMIC,
  36.         INTEGER,
  37.         DEFAULT_MASK,
  38.         DEFAULT_NONE,
  39.         DEFAULT_MINIMUM,
  40.         DEFAULT_LOW,
  41.         DEFAULT_MIDDLE,
  42.         DEFAULT_HIGH,
  43.         DEFAULT_MAXIMUM,
  44.         DEFAULT_0,
  45.         DEFAULT_100,
  46.         DEFAULT_440;
  47.     }
  48.  
  49.     public struct PortRangeHint
  50.     {
  51.         [CCode (cname = "HintDescriptor")]
  52.         public PortRangeHintDescriptor descriptor;
  53.         [CCode (cname = "LowerBound")]
  54.         public Data lower_bound;
  55.         [CCode (cname = "UpperBound")]
  56.         public Data upper_bound;
  57.  
  58.     }
  59.  
  60.     [Compact]
  61.     [CCode (free_function = "ladspa_handle_dummy_free")]
  62.     public class Handle
  63.     {
  64.     }
  65.  
  66.     [CCode (cname = "LADSPA_Instantiate_Function", has_target = false)]
  67.     public delegate Handle? InstantiateFunc(Descriptor descriptor, ulong sample_rate);
  68.  
  69.     [CCode (cname = "LADSPA_Connect_Port_Function", has_target = false)]
  70.     public delegate void ConnectPortFunc(Handle instance, ulong port, Data data_location);
  71.  
  72.     [CCode (cname = "LADSPA_Activate_Function", has_target = false)]
  73.     public delegate void ActivateFunc(Handle instance);
  74.  
  75.     [CCode (cname = "LADSPA_Run_Function", has_target = false)]
  76.     public delegate void RunFunc(Handle instance, ulong sample_count);
  77.  
  78.     [CCode (cname = "LADSPA_Run_Adding_Function", has_target = false)]
  79.     public delegate void RunAddingFunc(Handle instance, ulong sample_count);
  80.  
  81.     [CCode (cname = "LADSPA_Set_Run_Adding_Gain_Function", has_target = false)]
  82.     public delegate void SetRunAddingGainFunc(Handle instance, Data gain);
  83.  
  84.     [CCode (cname = "LADSPA_Deactivate_Function", has_target = false)]
  85.     public delegate void DeactivateFunc(Handle instance);
  86.  
  87.     [CCode (cname = "LADSPA_Cleanup_Function", has_target = false)]
  88.     public delegate void CleanupFunc(owned Handle instance);
  89.  
  90.     [Compact, Immutable]
  91.     public class Descriptor
  92.     {
  93.         [CCode (cname = "UniqueID")]
  94.         public ulong unique_id;
  95.         [CCode (cname = "Label")]
  96.         public unowned string label;
  97.         [CCode (cname = "Properties")]
  98.         public Properties properties;
  99.         [CCode (cname = "Name")]
  100.         public unowned string name;
  101.         [CCode (cname = "Maker")]
  102.         public unowned string maker;
  103.         [CCode (cname = "Copyright")]
  104.         public unowned string copyright;
  105.  
  106.         [CCode (cname = "PortDescriptors", array_length_cname = "PortCount", array_length_type = "unsigned long")]
  107.         public PortDescriptor[] port_descriptors;
  108.  
  109.         [CCode (cname = "PortNames", array_length_cname = "PortCount", array_length_type = "unsigned long")]
  110.         public unowned string[] port_names;
  111.  
  112.         [CCode (cname = "PortRangeHints", array_length_cname = "PortCount", array_length_type = "unsigned long")]
  113.         public PortRangeHint[] port_range_hints;
  114.  
  115.         public InstantiateFunc? instantiate;
  116.         public ConnectPortFunc? connect_port;
  117.         public ActivateFunc? activate;
  118.         public RunFunc? run;
  119.         public RunAddingFunc? run_adding;
  120.         public SetRunAddingGainFunc? set_run_adding_gain;
  121.         public DeactivateFunc? deactivate;
  122.         public CleanupFunc? cleanup;
  123.     }
  124.  
  125.     public unowned Descriptor? descriptor(ulong index);
  126.  
  127.     [CCode (cname = "LADSPA_Descriptor_Function", has_target = false)]
  128.     public delegate Descriptor? DescriptorFunc(ulong index);
  129. }
Add Comment
Please, Sign In to add comment