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.



792
793
794
795
796
797
798
799
# File 'lib/bio/appl/blast/format0.rb', line 792

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.



803
804
805
# File 'lib/bio/appl/blast/format0.rb', line 803

def hsps
  @hsps
end

Instance Method Details

#bit_scoreObject

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



825
826
827
828
829
830
831
832
# File 'lib/bio/appl/blast/format0.rb', line 825

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.



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

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.



807
808
809
# File 'lib/bio/appl/blast/format0.rb', line 807

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

#evalueObject

Returns first hsp’s e-value. (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 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)


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

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)



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

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)



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

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

#lenObject Also known as: target_len

Returns length of the hit.



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

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)



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

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)



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

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)



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

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)



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

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)



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

def query_start;   hsp_first :query_from;   end

#scoreObject

Returns first hsp’s score.



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

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)



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

def target_end;    hsp_first :hit_to;       end

#target_idObject



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

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)



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

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)



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

def target_start;  hsp_first :hit_from;     end