def __init__(self, options, log_info=None): #{ BasePredictorCls.__init__(self, 'fusion', 'fus', 'fusion', options, log_info=log_info) #dup_gene_path = GetFilePath(options.output_dir, options.lib, # "%s.dup_genes" % self.ext) #self.dup_gene_file = FileBoxCls(dup_gene_path, "w", # "cannot create duplicated gene %s output file" % self.description) #mix_dir_path = GetFilePath(options.output_dir, options.lib, # "%s.mix_dirs" % self.ext) #self.mix_dir_file = FileBoxCls(mix_dir_path, "w", # "cannot create mixed gene directions %s output file" % self.description) self.AddOutFile("dup_gene", "%s.dup_genes" % self.ext, "duplicated gene %s" % self.description) self.AddOutFile("mix_dirs", "%s.mix_dirs" % self.ext, "mixed sense %s" % self.description) # TEMPORARY file to keep track of contigs for which one side is missing # from the realignment results self.AddOutFile("align_miss", "%s.align_miss.tmp" % self.ext, "missing realignment %s" % self.description) # file for potential "read-through" type events self.AddOutFile("readthru", "%s.rth" % self.ext, "read-through %s" % self.description) # gene_directions[id_type][id] = {+,-,*} where "*" = both directions self.gene_directions = {'gene_name':dict(), 'transcript_id':dict()} # get gene directions from annotation file if (self.options.use_gene_directions): #{ self.GetGeneDirections() #} end if self.bad_topologies = set([ 'end-duplication', 'junction-duplication', ])
def __init__(self, options, log_info=None): #{ BasePredictorCls.__init__(self, 'ptd', 'ptd', 'partial tandem duplication', options, log_info=log_info) self.good_topologies = set([ 'end-duplication', 'intrachr-non-colinear', 'junction-duplication', ])
def __init__(self, options, log_info=None): #{ BasePredictorCls.__init__(self, 'itd', 'itd', 'internal tandem duplication', options, log_info=log_info) self.good_topologies = set([ 'gap-tandem-duplication', 'gap-nontandem-duplication', ]) if (options.allow_non_gap_itds): #{ self.good_topologies.update([ 'end-duplication', 'intrachr-non-colinear', 'junction-duplication', ]) #} end if #self.store_seq = True #multi_exon_path = GetFilePath(options.output_dir, options.lib, # "%s.multi_exon" % self.ext) #self.multi_exon_file = FileBoxCls(multi_exon_path, "w", "cannot " # "create multiple exon duplication %s output file" % self.description) #full_ctg_dup_path = GetFilePath(options.output_dir, options.lib, # "%s.full_ctg_dup" % self.ext) #self.full_ctg_dup_file = FileBoxCls(full_ctg_dup_path, "w", "cannot " # "create full contig duplication %s output file" % self.description) #edge_gap_path = GetFilePath(options.output_dir, options.lib, # "%s.edge_gap" % self.ext) #self.edge_gap_file = FileBoxCls(edge_gap_path, "w", "cannot create " # "edge-gap duplication %s output file" % self.description) self.AddOutFile("internal_me", "%s.multi_exon" % self.ext, "multiple exon duplication %s" % self.description) self.AddOutFile("edge", "%s.edge_gap" % self.ext, "edge-gap duplication %s" % self.description) self.AddOutFile("edge_me", "%s.edge_gap.multi_exon" % self.ext, "edge-gap multiple exon duplication %s" % self.description) self.AddOutFile("full", "%s.full_ctg_dup" % self.ext, "full contig duplication %s" % self.description) self.AddOutFile("full_me", "%s.full_ctg_dup.multi_exon" % self.ext, "multiple exon full contig duplication %s" % self.description) self.num_over_aligned = 0