class PrankJob(Job) : def __init__(self, callback, sequences) : super(PrankJob, self).__init__(callback) self.sequences = sequences self.prank = Prank() @property def input(self) : return self.sequences @property def tree(self) : return self.prank.tree @property def alignment(self) : return self.prank.alignment def _get_filenames(self) : return [self.infile] + self.prank.output_filenames(self.infile) def _run(self) : global DEBUG self.infile = tmpfasta(self.sequences) start_time = time.time() result = self.prank.run(self.infile, self.infile) elapsed_time = time.time() - start_time q_count, q_sum, q_min, q_max, q_mean, q_sd = fasta_stats(self.infile) if DEBUG : threadsafe_io('prank_stats.txt', "%d %d %d %d %d %.3f %.3f %d" % \ (result, \ q_count, q_sum, q_min, q_max, q_mean, q_sd, \ elapsed_time)) return result
def __init__(self, callback, sequences) : super(PrankJob, self).__init__(callback) self.sequences = sequences self.prank = Prank()