def togff(self, gff={}): """ Overwrites BasicGFF.togff() functionality """ if not self._gff.has_key('gname'): self._gff['gname'] = "%s_%s" % (self.start, self.end) if not self._gff.has_key('gclass'): self._gff['gclass'] = self.__class__.__name__ # call basal BasicGFF.togff() function gfflines = [BasicGFF.togff(self)] # gff default for TSS/ATG tss_gff = { 'fref': self._gff['fref'], 'gname': self._gff['gname'], 'gclass': self._gff['gclass'], } # if SignalPeptide is spliced -> make 2 tracks! if self.intron: # calculate lengths signalp_length = self.end - self.start signalp_5p_length = self.intron.donor.pos - self.start signalp_3p_length = signalp_length - signalp_5p_length # create SignalP 5p and 3p tracks exon5p = list(gfflines[0]) exon3p = list(gfflines[0]) exon5p[4] = self.intron.donor.pos exon3p[3] = self.intron.acceptor.pos + 1 exon3p[4] = self.intron.acceptor.pos + signalp_3p_length if self.tss: exon5p[3] += 3 gfflines = [tuple(exon5p), tuple(exon3p)] if self.tss: gfflines.insert(0, self.tss.togff(gff=tss_gff)) elif self.tss: # correct SignalPeptide start coord to 1nt after the ATG codon track = list(gfflines[0]) track[3] += 3 gfflines = [tuple(track)] gfflines.insert(0, self.tss.togff(gff=tss_gff)) else: pass # return list with gff tuples return gfflines
def togff(self,gff={}): """ Overwrites BasicGFF.togff() functionality """ if not self._gff.has_key('gname'): self._gff['gname'] = "%s_%s" % (self.start,self.end) if not self._gff.has_key('gclass'): self._gff['gclass'] = self.__class__.__name__ # call basal BasicGFF.togff() function gfflines = [ BasicGFF.togff(self) ] # gff default for TSS/ATG tss_gff = { 'fref' : self._gff['fref'], 'gname' : self._gff['gname'], 'gclass': self._gff['gclass'], } # if SignalPeptide is spliced -> make 2 tracks! if self.intron: # calculate lengths signalp_length = self.end-self.start signalp_5p_length = self.intron.donor.pos - self.start signalp_3p_length = signalp_length - signalp_5p_length # create SignalP 5p and 3p tracks exon5p = list(gfflines[0]) exon3p = list(gfflines[0]) exon5p[4] = self.intron.donor.pos exon3p[3] = self.intron.acceptor.pos + 1 exon3p[4] = self.intron.acceptor.pos + signalp_3p_length if self.tss: exon5p[3]+=3 gfflines = [ tuple(exon5p), tuple(exon3p) ] if self.tss: gfflines.insert(0, self.tss.togff(gff=tss_gff) ) elif self.tss: # correct SignalPeptide start coord to 1nt after the ATG codon track = list(gfflines[0]) track[3]+=3 gfflines = [ tuple(track) ] gfflines.insert(0, self.tss.togff(gff=tss_gff) ) else: pass # return list with gff tuples return gfflines
def togff(self,gff={}): """ Overwrites BasicGFF.togff() """ if not gff.has_key('gname'): gff['gname'] = str(self.pos) return BasicGFF.togff(self,gff=gff)
def togff(self,gff={}): """ Overwrites BasicGFF.togff() """ if not gff.has_key('gname') and not self._gff.has_key('gname'): gff['gname'] = "%s-%s" % (self.start, self.end) return BasicGFF.togff(self,gff=gff)
def togff(self, gff={}): """ Overwrites BasicGFF.togff() """ if not gff.has_key('gname'): gff['gname'] = str(self.pos) return BasicGFF.togff(self, gff=gff)