class MgNu::Parser::Blast::Query

Attributes

database[RW]
database_sequence_count[RW]
database_total_letters[RW]
definition[RW]
length[RW]
number[RW]
query_id[RW]
sbjcts[RW]

Public Class Methods

new() click to toggle source

create a new Query object

# File lib/mgnu/parser/blast/query.rb, line 10
def initialize
  @number = nil
  @query_id = ""
  @definition = ""
  @length = nil
  @sbjcts = []
  @best_hit = nil
  @database = nil
  @database_sequence_count = 0
  @database_total_letters = 0
end

Public Instance Methods

best_hit() click to toggle source

Returns the @best_hit instance variable. If not set, it will search this query's sbjcts and find the one with the best evalue and return it

@return [MgNu::Parser::Blast::Sbjct] the best hit for this query

# File lib/mgnu/parser/blast/query.rb, line 28
def best_hit
  return @best_hit unless @best_hit.nil?
  if @sbjcts.length > 0 # make sure there are some hits
    best_hit = @sbjcts[0]
    @sbjcts.each do |s|
      if s.evalue < best_hit.evalue
        best_hit = s
      end
    end
    @best_hit = best_hit
    return best_hit
  end
  return nil
end