use Getopt::Long;
use Data::Dumper;
use HADES::TrbNet;
+
+
+trb_init_ports() or die trb_strerror();
+
+
+sub get_file {
+ my $file = $_[0];
+
+ local $/=undef;
+ open FILE, "$file" or die "Couldn't open file: $!";
+ my $string = <FILE>;
+ close FILE;
+ return $string;
+ }
+
+###############################################################################
+#Find available boards & generate files for each of them
+###############################################################################
+system("mkdir -p ../settings_merged/auto");
+system("rm ../settings_merged/auto/????.trbcmd");
+
+
+my @inputs;
+push(@inputs, qx%ls ../settings_*/auto/*.trbcmd%);
+push(@inputs, qx%ls ../settings*/*.trbcmd%);
+chomp(@inputs);
+
+my $boards = trb_register_read(0xfe91,0);
+
+foreach my $addr (keys %$boards) {
+ my $filename = sprintf("%04x.trbcmd",$addr);
+ my $saddr = sprintf("%04x",$addr);
+# open(FILE, '>', $filename) or die $!;
+
+ my @files;
+ push(@files, sort grep { /\.\.\/settings_tdc\/auto\/common.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_tdc\/common.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_tdc\/auto\/$saddr.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_tdc\/$saddr.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_tdc\/auto\/final.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_tdc\/final.*\.trbcmd/ } @inputs);
+
+ system("cat ".join(' ',@files)."> ../settings_merged/auto/$filename");
+
+ print Dumper @files;
+ print "----\n";
+ }
+
+
+$boards = trb_register_read(0xfe90,0);
+
+foreach my $addr (keys %$boards) {
+ my $filename = sprintf("%04x.trbcmd",$addr);
+ my $saddr = sprintf("%04x",$addr);
+# open(FILE, '>', $filename) or die $!;
+
+ my @files;
+ push(@files, sort grep { /\.\.\/settings_oep\/auto\/common.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_oep\/common.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_oep\/auto\/$saddr.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_oep\/$saddr.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_oep\/auto\/final.*\.trbcmd/ } @inputs);
+ push(@files, sort grep { /\.\.\/settings_oep\/final.*\.trbcmd/ } @inputs);
+
+ system("cat ".join(' ',@files)."> ../settings_merged/auto/$filename");
+
+ print Dumper @files;
+ print "----\n";
+ }
+
+
+###############################################################################
+#Cleanup files
+###############################################################################
+foreach my $f (glob("../settings_merged/auto/*.trbcmd")) {
+ system("sed -i '/^\s*#/d' $f");
+
+ }
+