def postProcessOutput(self):

        super(BlastOutput6ParserAnalysis,self).postProcessOutput()

        data   = {}

        file   = self.input_files[0]

        with open(file) as fp:

            for line in fp:

                line = line.rstrip('\n')
                ff   = line.split('\t')

                qid = ff[0]
                hid = ff[1]
                pid = float(ff[2])
                alnlen = ff[3]
                mm     = int(ff[4])
                gaps   = int(ff[5])
                qstart = int(ff[6])
                qend   = int(ff[7])
                hstart = int(ff[8])
                hend   = int(ff[9])
                exval   = float(ff[10])
                score  = float(ff[11])

                feat = Feature()

                feat.qid = qid
                feat.qstart = qstart
                feat.qend   = qend
                feat.hid    = hid
                feat.hstart = hstart
                feat.hend   = hend

                feat.pid = pid
                feat.score = score
                
                feat.mm = mm
                feat.gaps = gaps
                feat.exval = exval

                if len(ff) > 12:
                    feat.qlen = int(ff[12])
                    feat.hlen = int(ff[13])
                    feat.qseq = ff[14]
                    feat.hseq = ff[15]

                if not qid in data:
                    data[qid] = []

                tmp = data[qid]

                tmp.append(feat)

            self.data = data
    def parseBlastOutput6(file):
 
      hits = {}

      prev = None

      with open(file) as fp:

         for line in fp:
             
             line = line.rstrip('\n')

             ff   = line.split('\t')

             qid = ff[0]
	     hid = ff[1]
             pid = float(ff[2])
             alnlen = ff[3]
             mm     = int(ff[4])
             gaps   = int(ff[5])
             qstart = int(ff[6])
             qend   = int(ff[7])
             hstart = int(ff[8])
             hend   = int(ff[9])
             exval   = float(ff[10])
             score  = float(ff[11])

             feat = Feature()

             feat.qid = qid
             feat.qstart = qstart
             feat.qend   = qend
             feat.hid    = hid
             feat.hstart = hstart
             feat.hend   = hend

             feat.pid = pid
             feat.score = score
                
             feat.mm = mm
             feat.gaps = gaps
             feat.exval = exval

             if len(ff) > 15:
                 feat.qlen = int(ff[12])
                 feat.hlen = int(ff[13])
                 feat.qseq = ff[14]
                 feat.hseq = ff[15]

             if not qid in hits:
                 hits[qid] = []

             tmp = hits[qid]
             tmp.append(feat)

      return hits