Class: Bio::Sim4
- Defined in:
- lib/bio/appl/sim4.rb,
lib/bio/appl/sim4/report.rb
Overview
The sim4 execution wrapper class.
Defined Under Namespace
Classes: Report
Instance Attribute Summary collapse
-
#command ⇒ Object
readonly
last command-line strings executed by the object.
-
#database ⇒ Object
default file name of database(‘seq2’).
-
#options ⇒ Object
options.
-
#output ⇒ Object
readonly
last result text (String).
-
#program ⇒ Object
readonly
name of the program (usually ‘sim4’ in UNIX).
-
#report ⇒ Object
readonly
last result.
Instance Method Summary collapse
-
#exec_local(filename1, filename2 = nil) ⇒ Object
(also: #exec)
Executes the sim4 program.
-
#initialize(program = 'sim4', database = nil, opt = []) ⇒ Sim4
constructor
Creates a new sim4 execution wrapper object.
-
#log ⇒ Object
log is deprecated (no replacement) and returns empty string.
-
#option ⇒ Object
option is deprecated.
-
#query(seq1) ⇒ Object
Executes the sim4 program.
-
#query_pairwise(seq1, seq2) ⇒ Object
Executes the sim4 program.
Constructor Details
#initialize(program = 'sim4', database = nil, opt = []) ⇒ Sim4
Creates a new sim4 execution wrapper object.
program
-
Program name. Usually ‘sim4’ in UNIX.
database
-
Default file name of database(‘seq2’).
option
-
Options (array of strings).
32 33 34 35 36 37 38 39 |
# File 'lib/bio/appl/sim4.rb', line 32 def initialize(program = 'sim4', database = nil, opt = []) @program = program @options = opt @database = database #seq2 @command = nil @output = nil @report = nil end |
Instance Attribute Details
#command ⇒ Object (readonly)
last command-line strings executed by the object
57 58 59 |
# File 'lib/bio/appl/sim4.rb', line 57 def command @command end |
#database ⇒ Object
default file name of database(‘seq2’)
42 43 44 |
# File 'lib/bio/appl/sim4.rb', line 42 def database @database end |
#output ⇒ Object (readonly)
last result text (String)
71 72 73 |
# File 'lib/bio/appl/sim4.rb', line 71 def output @output end |
#program ⇒ Object (readonly)
name of the program (usually ‘sim4’ in UNIX)
45 46 47 |
# File 'lib/bio/appl/sim4.rb', line 45 def program @program end |
#report ⇒ Object (readonly)
last result. Returns a Bio::Sim4::Report object.
74 75 76 |
# File 'lib/bio/appl/sim4.rb', line 74 def report @report end |
Instance Method Details
#exec_local(filename1, filename2 = nil) ⇒ Object Also known as: exec
Executes the sim4 program. Perform mRNA-genome alignment between sequences in given files. filename1
and filename2
should be file name strings. If filename2
is not specified, using self.database
.
109 110 111 112 113 114 115 116 117 118 119 |
# File 'lib/bio/appl/sim4.rb', line 109 def exec_local(filename1, filename2 = nil) @command = [ @program, filename1, (filename2 or @database), *@options ] @output = nil @report = nil Bio::Command.call_command(@command) do |io| io.close_write @output = io.read @report = Bio::Sim4::Report.new(@output) end @report end |
#log ⇒ Object
log is deprecated (no replacement) and returns empty string.
65 66 67 68 |
# File 'lib/bio/appl/sim4.rb', line 65 def log warn "log is deprecated (no replacement) and returns empty string." '' end |
#option ⇒ Object
option is deprecated. Instead, please use options.
51 52 53 54 |
# File 'lib/bio/appl/sim4.rb', line 51 def option warn "option is deprecated. Please use options." end |
#query(seq1) ⇒ Object
Executes the sim4 program. seq1
shall be a Bio::Sequence object. Returns a Bio::Sim4::Report object.
79 80 81 82 83 84 85 86 |
# File 'lib/bio/appl/sim4.rb', line 79 def query(seq1) tf = Tempfile.open('sim4') tf.print seq1.to_fasta('seq1', 70) tf.close(false) r = exec_local(tf.path) tf.close(true) r end |
#query_pairwise(seq1, seq2) ⇒ Object
Executes the sim4 program. Perform mRNA-genome alignment between given sequences. seq1
and seq2
should be Bio::Sequence objects. Returns a Bio::Sim4::Report object.
92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'lib/bio/appl/sim4.rb', line 92 def query_pairwise(seq1, seq2) tf = Tempfile.open('sim4') tf.print seq1.to_fasta('seq1', 70) tf.close(false) tf2 = Tempfile.open('seq2') tf2.print seq1.to_fasta('seq2', 70) tf2.close(false) r = exec_local(tf.path, tf2.path) tf.close(true) tf2.close(true) r end |