Esempio n. 1
0
    def GetAlignandum(self, nid):

        if self.mTableSource.GetNumNeighbours(
                nid, max_filter=self.mFilter) >= self.mMinProfileSize:
            if self.mLogLevel >= 3:
                print "# using profile for nid %i" % nid
                sys.stdout.flush()

            profile = alignlib.makeEmptyProfile(self.mRegularizor,
                                                self.mLogOddor)

            pairsdblib.fillProfileNeighbours(profile, self.mConnectionPairsdb,
                                             nid, self.mTableNameSource,
                                             self.mMaxLinesMali)
            self.mIsProfile[nid] = 1

        else:
            if self.mLogLevel >= 3:
                print "# using sequence for nid %i" % nid
                sys.stdout.flush()
            profile = pairsdblib.makeSequenceFromPairsdb(
                self.mConnectionPairsdb, nid)
            self.mIsProfile[nid] = 0

        if self.mMask:
            self.MaskAlignandum(nid, profile)

        profile.Prepare()

        if self.mLogLevel >= 5:
            print "# alignandum for rep %i" % nid
            print profile.Write()
            sys.stdout.flush()

        return profile
Esempio n. 2
0
    def GetAlignandum( self, nid, nrdb_from, nrdb_to ):

        n = self.mTableNeighbours.GetNumNeighbours( nid )
        
        if n >= self.mMinProfileSize:
            
            profile = alignlib.makeEmptyProfile( self.mRegularizor, self.mLogOddor )

            pairsdblib.fillProfileNeighbours( profile,
                                              self.mConnectionPairsdb,
                                              nid,
                                              self.mTableNameNeighbours,
                                              self.mMaxLinesMali,
                                              0,
                                              self.mMaxLevel,
                                              self.mMinLevel )
            if self.mLogLevel >= 3:
                print "# ------> using profile for rep %i" % nid
                
        else:
            profile = pairsdblib.makeSequenceFromPicasso( self.mConnectionPairsdb, nid )
            if self.mLogLevel >= 3:
                print "# ------> using sequence for rep %i" % nid
            
        profile.useSegment( nrdb_from, nrdb_to )
                                          
        return profile, (str(n),)
Esempio n. 3
0
    def GetAlignandum(self, nid, nrdb_from, nrdb_to):

        n = self.mTableNeighbours.GetNumNeighbours(nid)

        if n >= self.mMinProfileSize:

            profile = alignlib.makeEmptyProfile(self.mRegularizor,
                                                self.mLogOddor)

            pairsdblib.fillProfileNeighbours(profile, self.mConnectionPairsdb,
                                             nid, self.mTableNameNeighbours,
                                             self.mMaxLinesMali, 0,
                                             self.mMaxLevel, self.mMinLevel)
            if self.mLogLevel >= 3:
                print "# ------> using profile for rep %i" % nid

        else:
            profile = pairsdblib.makeSequenceFromPicasso(
                self.mConnectionPairsdb, nid)
            if self.mLogLevel >= 3:
                print "# ------> using sequence for rep %i" % nid

        profile.useSegment(nrdb_from, nrdb_to)

        return profile, (str(n), )