class Bio::Alignment::FactoryTemplate::Simple

Template class for alignment application factory. The program acts: input: stdin or file, format = fasta format output: stdout (parser should be specified by DEFAULT_PARSER)



Last command-line string. Returns nil or an array of String. Note that filenames described in the command-line may already be removed because these files may be temporary files.


Last output to the stdout.


Last exit status




Last raw result of the program. Return a string (or nil).


program name


Last result object performed by the factory.

Public Class Methods

new(program = self.class::DEFAULT_PROGRAM, options = []) click to toggle source

Creates a new alignment factory

     # File lib/bio/alignment.rb
2215 def initialize(program = self.class::DEFAULT_PROGRAM, options = [])
2216   @program = program
2217   @options = options
2218   @command = nil
2219   @output = nil
2220   @report = nil
2221   @exit_status = nil
2222   @data_stdout = nil
2223 end

Public Instance Methods

query(seqs) click to toggle source

Executes the program. If seqs is not nil, perform alignment for seqs. If seqs is nil, simply executes the program.

Compatibility note: When seqs is nil, returns true if the program exits normally, and returns false if the program exits abnormally.

     # File lib/bio/alignment.rb
2265 def query(seqs)
2266   if seqs then
2267     query_alignment(seqs)
2268   else
2269     exec_local(@options)
2270     @exit_status.exitstatus == 0 ? true : false
2271   end
2272 end
query_align(seqs) click to toggle source

alias of query_alignment.

Compatibility Note: query_align will renamed to query_alignment.

     # File lib/bio/alignment.rb
2286 def query_align(seqs)
2287   #warn 'query_align is renamed to query_alignment.'
2288   query_alignment(seqs)
2289 end
query_alignment(seqs) click to toggle source

Performs alignment for seqs. seqs should be Bio::Alignment or Array of sequences or nil.

     # File lib/bio/alignment.rb
2276 def query_alignment(seqs)
2277   unless seqs.respond_to?(:output_fasta) then
2278     seqs =
2279   end
2280   query_string(seqs.output_fasta(:width => 70))
2281 end
query_by_filename(filename_in) click to toggle source

Performs alignment of sequences in the file named fn.

     # File lib/bio/alignment.rb
2299 def query_by_filename(filename_in)
2300   _query_local(filename_in, @options)
2301   @report
2302 end
query_string(str) click to toggle source

Performs alignment for str. The str should be a string that can be recognized by the program.

     # File lib/bio/alignment.rb
2293 def query_string(str)
2294   _query_string(str, @options)
2295   @report
2296 end
reset() click to toggle source

Clear the internal data and status, except program and options.

     # File lib/bio/alignment.rb
2250 def reset
2251   @command = nil
2252   @output = nil
2253   @report = nil
2254   @exit_status = nil
2255   @data_stdout = nil
2256 end