inprogress
[jalview.git] / forester / ruby / evoruby / lib / evo / tool / multi_sequence_extractor.rb
index ed085a1..40b1211 100644 (file)
@@ -43,6 +43,7 @@ module Evoruby
 
     def initialize()
       @file_to_msa = Hash.new
+      @seqs = 0
     end
 
     def run()
@@ -248,6 +249,7 @@ module Evoruby
       puts basename
 
       File.open( input_file ) do | file |
+        species_counter = 1
         while line = file.gets
           line.strip!
           if !Util.is_string_empty?( line ) && !(line =~ /\s*#/ )
@@ -289,8 +291,9 @@ module Evoruby
                 print_counts( per_species_counter, log, Constants::LINE_DELIMITER )
                 per_species_counter = 0
               end
-              puts " " + current_species + " [" + my_readlink + "]"
-              log << current_species + " [" + my_readlink + "]" + Constants::LINE_DELIMITER
+              puts " " + species_counter.to_s +  ":" + current_species + " [" + my_readlink + "]"
+              log << species_counter.to_s +  ": " + current_species + " [" + my_readlink + "]" + Constants::LINE_DELIMITER
+              species_counter += 1
             end
             puts "   " + seq_name
             log << "   " + seq_name + Constants::LINE_DELIMITER
@@ -549,8 +552,10 @@ module Evoruby
       rescue Exception => e
         Util.fatal_error( PRG_NAME, "error: " + e.to_s )
       end
-      if @file_to_msa.size < 500 && msa.get_number_of_seqs <= 50000
+      if @seqs <= 100000000
         @file_to_msa[ input ] = msa
+        @seqs += msa.get_number_of_seqs
+        puts "   total seqs in memory: " + @seqs.to_s
       end
       msa
     end