class Bio::LazyBlast::Report::Iteration::Hit::Hsp

Attributes

align_len[R]
bit_score[R]
density[R]
evalue[R]
gaps[R]
hit_frame[R]
hit_from[R]
hit_to[R]
hseq[R]
identity[R]
midline[R]
mismatch_count[R]
num[R]
percent_identity[R]
positive[R]
qseq[R]
query_frame[R]
query_from[R]
query_to[R]

Public Class Methods

new(reader) click to toggle source
# File lib/bio/appl/blast/lazyblastxml.rb, line 141
def initialize(reader)
  @nodes = Enumerator.new do |yielder|
    until (reader.name == "Hsp" and reader.node_type == LibXML::XML::Reader::TYPE_END_ELEMENT) or !reader.read
      yielder << reader if reader.node_type == LibXML::XML::Reader::TYPE_ELEMENT
    end
  end
  setup_hsp_values
end

Public Instance Methods

setup_hsp_values() click to toggle source
# File lib/bio/appl/blast/lazyblastxml.rb, line 150
def setup_hsp_values
  @nodes.each do |node|
    case node.name
    when 'Hsp_num'
      @num = node.read_inner_xml.to_i
    when 'Hsp_bit-score'
      @bit_score = node.read_inner_xml.to_f
    when 'Hsp_evalue'
      @evalue = node.read_inner_xml.to_f
    when 'Hsp_query-from'
      @query_from = node.read_inner_xml.to_i
    when 'Hsp_query-to'
      @query_to = node.read_inner_xml.to_i
    when 'Hsp_query-frame'
      @query_frame = node.read_inner_xml.to_i
    when 'Hsp_hit-frame'
      @hit_frame = node.read_inner_xml.to_i
    when 'Hsp_identity'
      @identity = node.read_inner_xml.to_i
    when 'Hsp_positive'
      @positive = node.read_inner_xml.to_i
    when 'Hsp_align-len'
      @align_len = node.read_inner_xml.to_i
    when 'Hsp_qseq'
      @qseq = node.read_inner_xml
    when 'Hsp_hseq'
      @hseq = node.read_inner_xml
    when 'Hsp_midline'
      @midline = node.read_inner_xml
    end
  end
end