better variables. Display warning if duplicate control ids are encountered.
authorJohn Anderson <ardour@semiosix.com>
Mon, 16 Jul 2007 20:50:16 +0000 (20:50 +0000)
committerJohn Anderson <ardour@semiosix.com>
Mon, 16 Jul 2007 20:50:16 +0000 (20:50 +0000)
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2131 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/surfaces/mackie/scripts/controls.rb
libs/surfaces/mackie/scripts/generate-surface.rb
libs/surfaces/mackie/scripts/test_controls.rb

index b56fd6010d6ea5277ed97b587a19eec5b102a5c8..164467207732510c20e53b0a8ef1fa4f377e68eb 100644 (file)
@@ -191,6 +191,11 @@ class Surface
         end
         
         # add the new control to the various lookups
+        if @controls_by_id.has_key?( row.id ) && control.group.class != Strip
+          duplicated = @controls_by_id[row.id]
+          puts "duplicate id #{control.id}:#{control.name} of #{duplicated.id}:#{duplicated.name}"
+        end
+        
         @controls_by_id[row.id] = control
         @controls << control
         group << control
index c6a028804a465a60eda030eed4322cb9eb100c0a..1c7eda6da312e90bab5c2da3dd193ac981316230 100755 (executable)
@@ -1,18 +1,20 @@
 #! /usr/bin/ruby
 
+this_dir = File.dirname(__FILE__)
+
 require 'erb'
 
-require File.dirname(__FILE__) + '/controls.rb'
+require this_dir + '/controls.rb'
 
 cc_template = ''
-File.open( File.dirname(__FILE__) + "/surface-cc-template.erb", "r" ) { |f| cc_template = f.read }
+File.open( this_dir + "/surface-cc-template.erb", "r" ) { |f| cc_template = f.read }
 
 h_template = ''
-File.open( File.dirname(__FILE__) + "/surface-h-template.erb", "r" ) { |f| h_template = f.read }
+File.open( this_dir + "/surface-h-template.erb", "r" ) { |f| h_template = f.read }
 
 sf = Surface.new( ARGV[0] )
 control_data = ''
-File.open( File.dirname(__FILE__) + "/#{sf.name.downcase}-controls.csv", "r") { |f| control_data = f.read }
+File.open( this_dir + "/#{sf.name.downcase}-controls.csv", "r") { |f| control_data = f.read }
 sf.parse control_data
 
 @result = ""
index 782b0d427ca572e4ca3d2b833ef3f4302ff90901..5fd34914d82d5956ba12b8e6d2f5c45fa7be69a6 100755 (executable)
@@ -4,6 +4,6 @@ require 'controls.rb'
 require 'pp'
 
 sf = Surface.new
-sf.parse
+sf.parse( ARGV[0] )
 sf.types.each{|k,v| puts "%02.x #{v}" % k}