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.



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

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.



816
817
818
# File 'lib/bio/appl/blast/format0.rb', line 816

def hsps
  @hsps
end

Instance Method Details

#bit_scoreObject

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



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

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.



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

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.



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

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

#evalueObject

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



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

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)


827
828
829
# File 'lib/bio/appl/blast/format0.rb', line 827

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)



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

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)



950
951
952
# File 'lib/bio/appl/blast/format0.rb', line 950

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

#lenObject Also known as: target_len

Returns length of the hit.



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

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)



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

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)



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

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)



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

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)



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

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)



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

def query_start;   hsp_first :query_from;   end

#scoreObject

Returns first hsp’s score.



832
833
834
# File 'lib/bio/appl/blast/format0.rb', line 832

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)



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

def target_end;    hsp_first :hit_to;       end

#target_idObject



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

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)



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

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)



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

def target_start;  hsp_first :hit_from;     end