Sha256: 53b83e829deeb458bc9543f3aaee0037e6dfcf845035cbbe183e4ea34b7f337b

Contents?: true

Size: 646 Bytes

Versions: 2

Compression:

Stored size: 646 Bytes

Contents

require 'forwardable'
require 'tempfile'

module NpSearch
  # A class to hold sequence data
  class Signalp
    class << self
      extend Forwardable
      def_delegators NpSearch, :opt

      def analyse_sequence(seq)
        sp_headers = %w(name cmax cmax_pos ymax ymax_pos smax smax_pos smean d
                        sp dmaxcut networks)
        f = Tempfile.new('signalp')
        f.write(">seq\n#{seq}")
        f.close
        s = `#{opt[:signalp_path]} -t euk -f short -U 0.3 -u 0.3 '#{f.path}' | \
             sed -n '3 p'`
        Hash[sp_headers.map(&:to_sym).zip(s.split)]
      ensure
        f.unlink
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
npsearch-2.0.1 lib/npsearch/signalp.rb
npsearch-2.0.0 lib/npsearch/signalp.rb