106fa5682f719669c691d47980acc86680daf668
[ardour.git] / libs / surfaces / mackie / scripts / generate-surface.rb
1 #! /usr/bin/ruby
2
3 require 'erb'
4 require 'controls.rb'
5
6 cc_template = ''
7 File.open("surface-cc-template.erb", "r") { |f| cc_template = f.read }
8
9 h_template = ''
10 File.open("surface-h-template.erb", "r") { |f| h_template = f.read }
11
12 sf = Surface.new( ARGV[0] )
13 control_data = ''
14 File.open("#{sf.name.downcase}-controls.csv", "r") { |f| control_data = f.read }
15 sf.parse control_data
16
17 @result = ""
18 erb = ERB.new( cc_template , 0, "%<>-", "@result" )
19 erb.result
20 File.open( "#{sf.name.downcase}_surface.cc", "w" ) { |f| f.write @result }
21
22 erb = ERB.new( h_template , 0, "%<>-", "@result" )
23 erb.result
24 File.open( "#{sf.name.downcase}_surface.h", "w" ) { |f| f.write @result }
25