Class: Bio::Blast::Default::Report::Hit

Inherits:
Object
  • Object
show all
Defined in:
lib/bio/appl/blast/format0.rb

Overview

Bio::Blast::Default::Report::Hit contains information about a hit. It may contain some Bio::Blast::Default::Report::HSP objects.

Direct Known Subclasses

Bl2seq::Report::Hit, WU::Report::Hit

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ Hit

Creates a new Hit object. It is designed to be called only internally from the Bio::Blast::Default::Report::Iteration class. Users should not call the method directly.



803
804
805
806
807
808
809
810
# File 'lib/bio/appl/blast/format0.rb', line 803

def initialize(data)
  @f0hitname = data.shift
  @hsps = []
  while r = data[0] and /\A\s+Score/ =~ r
    @hsps << HSP.new(data)
  end
  @again = false
end

Instance Attribute Details

#hspsObject (readonly)

Hsp(high-scoring segment pair)s of the hit. Returns an array of Bio::Blast::Default::Report::HSP objects.



814
815
816
# File 'lib/bio/appl/blast/format0.rb', line 814

def hsps
  @hsps
end

Instance Method Details

#bit_scoreObject

Returns first hsp’s bit score. (shown in hit list of BLAST result)



836
837
838
839
840
841
842
843
# File 'lib/bio/appl/blast/format0.rb', line 836

def bit_score
  unless defined?(@bit_score)
    if h = @hsps.first then
      @bit_score = h.bit_score
    end
  end
  @bit_score
end

#definitionObject Also known as: target_def

Returns definition of the hit.



878
# File 'lib/bio/appl/blast/format0.rb', line 878

def definition; parse_hitname; @definition; end

#eachObject

Iterates over each hsp(high-scoring segment pair) of the hit. Yields a Bio::Blast::Default::Report::HSP object.



818
819
820
# File 'lib/bio/appl/blast/format0.rb', line 818

def each
  @hsps.each { |x| yield x }
end

#evalueObject

Returns first hsp’s e-value. (shown in hit list of BLAST result)



847
848
849
850
851
852
853
854
# File 'lib/bio/appl/blast/format0.rb', line 847

def evalue
  unless defined?(@evalue)
    if h = @hsps.first then
      @evalue = h.evalue
    end
  end
  @evalue
end

#found_again?Boolean

(PSI-BLAST) Returns true if the hit is found again in the iteration. Otherwise, returns false or nil.

Returns:

  • (Boolean)


825
826
827
# File 'lib/bio/appl/blast/format0.rb', line 825

def found_again?
  @again
end

#identityObject

Same as hsps.first.identity. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



903
# File 'lib/bio/appl/blast/format0.rb', line 903

def identity;      hsp_first :identity;     end

#lap_atObject

Returns an array which contains [ query_start, query_end, target_start, target_end ]. (Compatibility method with FASTA)



948
949
950
# File 'lib/bio/appl/blast/format0.rb', line 948

def lap_at
  [ query_start, query_end, target_start, target_end ]
end

#lenObject Also known as: target_len

Returns length of the hit.



875
# File 'lib/bio/appl/blast/format0.rb', line 875

def len;        parse_hitname; @len;        end

#midlineObject

Same as hsps.first.midline. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



923
# File 'lib/bio/appl/blast/format0.rb', line 923

def midline;       hsp_first :midline;      end

#overlapObject

Same as hsps.first.align_len. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



908
# File 'lib/bio/appl/blast/format0.rb', line 908

def overlap;       hsp_first :align_len;    end

#query_endObject

Same as hsps.first.query_to. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



933
# File 'lib/bio/appl/blast/format0.rb', line 933

def query_end;     hsp_first :query_to;     end

#query_seqObject

Same as hsps.first.qseq. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



913
# File 'lib/bio/appl/blast/format0.rb', line 913

def query_seq;     hsp_first :qseq;         end

#query_startObject

Same as hsps.first.query_from. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



928
# File 'lib/bio/appl/blast/format0.rb', line 928

def query_start;   hsp_first :query_from;   end

#scoreObject

Returns first hsp’s score.



830
831
832
# File 'lib/bio/appl/blast/format0.rb', line 830

def score
  (h = @hsps.first) ? h.score : nil
end

#target_endObject

Same as hsps.first.hit_to. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



943
# File 'lib/bio/appl/blast/format0.rb', line 943

def target_end;    hsp_first :hit_to;       end

#target_idObject



880
# File 'lib/bio/appl/blast/format0.rb', line 880

def target_id; definition[/^\s*(\S+)/, 1]; end

#target_seqObject

Same as hsps.first.hseq. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



918
# File 'lib/bio/appl/blast/format0.rb', line 918

def target_seq;    hsp_first :hseq;         end

#target_startObject

Same as hsps.first.hit_from. Returns nil if there are no hsp in the hit. (Compatibility method with FASTA)



938
# File 'lib/bio/appl/blast/format0.rb', line 938

def target_start;  hsp_first :hit_from;     end