aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/LV2/lib/makeplugin/plugin_info.rb
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/LV2/lib/makeplugin/plugin_info.rb')
-rw-r--r--plugins/LV2/lib/makeplugin/plugin_info.rb13
1 files changed, 12 insertions, 1 deletions
diff --git a/plugins/LV2/lib/makeplugin/plugin_info.rb b/plugins/LV2/lib/makeplugin/plugin_info.rb
index 59b7590..15de9d3 100644
--- a/plugins/LV2/lib/makeplugin/plugin_info.rb
+++ b/plugins/LV2/lib/makeplugin/plugin_info.rb
@@ -27,10 +27,12 @@ module MakePlugin
attr_reader :use
attr_reader :desc
attr_reader :comment
+ attr_reader :var_decls
def initialize(root, name)
@name = name
@ctrl_ports = []
+ @var_decls = []
self.find_plugin_info(root)
if @n_ctrl_ports != @ctrl_ports.length
raise "Expected #{@n_ctrl_ports} but found #{@ctrl_ports.length}"
@@ -80,9 +82,18 @@ module MakePlugin
header_file = File.join(root, '../WinVST', @name, "#{@name}.h")
File.open(header_file) do |f|
+ vars = false
f.each_line do |line|
- if line =~ /kNumParameters\s*=\s*(\d+)/
+ if vars
+ if line =~ /^\};$/
+ vars = false
+ else
+ @var_decls << line.chomp
+ end
+ elsif line =~ /kNumParameters\s*=\s*(\d+)/
@n_ctrl_ports = $1.to_i
+ elsif line =~ /std::set<[^>]+>\s*_canDo;/
+ vars = true
end
end
end