module EcfClassify::HMMER

Constants

DBLOCATION

Public Class Methods

hmmpress(file) click to toggle source
# File lib/ecf_classify/hmmer.rb, line 35
def self.hmmpress(file)
  Dir.glob("#{file}.h3{i,f,m,p}").each { |f| File.delete(f) }
  cmd = "hmmpress #{file}"
  out = `#{cmd}`
  return [out, $?.exitstatus ]
end
hmmscan(infile, outfile, db) click to toggle source
# File lib/ecf_classify/hmmer.rb, line 10
def self.hmmscan(infile, outfile, db)
  if DBLOCATION.key? db
    hmm = Utils.path(DBLOCATION[db])
    cmd = "hmmscan --noali --domtblout #{outfile} #{Utils.path(DBLOCATION[db])} #{infile} 2>&1"
    out = `#{cmd}`
    return [out,$?.exitstatus]
  else
    return ["No such database", 2]
  end
end
hmmsearch(infile, outfile, db) click to toggle source
# File lib/ecf_classify/hmmer.rb, line 21
def self.hmmsearch(infile, outfile, db)
  unless EcfClassify::Zenodo.status
    EcfClassify::Zenodo.download
  end
  if EcfClassify::Zenodo::FILES.key? db
    hmm = EcfClassify::Zenodo.path(db)
    cmd = "hmmsearch --noali --domtblout #{outfile} #{hmm} #{infile} 2>&1"
    out = `#{cmd}`
    return [out, $?.exitstatus]
  else
    return ["No such database", 2]
  end
end