diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2007-07-11 08:01:00 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2007-07-11 08:01:00 -0700 |
commit | 066726076deedaf6d5b38ee4ed27eeb4a2b0061a (patch) | |
tree | 4d8b8eb2f44d4e6ef2f5176aab58e42ed677236e /src/aig/dar/darDfs.c | |
parent | a8d75dcc60da15644efbd20529609a1495df229a (diff) | |
download | abc-066726076deedaf6d5b38ee4ed27eeb4a2b0061a.tar.gz abc-066726076deedaf6d5b38ee4ed27eeb4a2b0061a.tar.bz2 abc-066726076deedaf6d5b38ee4ed27eeb4a2b0061a.zip |
Version abc70711
Diffstat (limited to 'src/aig/dar/darDfs.c')
-rw-r--r-- | src/aig/dar/darDfs.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/aig/dar/darDfs.c b/src/aig/dar/darDfs.c index bdb23c9d..116f428c 100644 --- a/src/aig/dar/darDfs.c +++ b/src/aig/dar/darDfs.c @@ -90,6 +90,35 @@ Vec_Ptr_t * Dar_ManDfs( Dar_Man_t * p ) /**Function************************************************************* + Synopsis [Collects internal nodes in the DFS order.] + + Description [] + + SideEffects [] + + SeeAlso [] + +***********************************************************************/ +Vec_Ptr_t * Dar_ManDfsNodes( Dar_Man_t * p, Dar_Obj_t ** ppNodes, int nNodes ) +{ + Vec_Ptr_t * vNodes; + Dar_Obj_t * pObj; + int i; + assert( Dar_ManLatchNum(p) == 0 ); + Dar_ManIncrementTravId( p ); + // mark constant and PIs + Dar_ObjSetTravIdCurrent( p, Dar_ManConst1(p) ); + Dar_ManForEachPi( p, pObj, i ) + Dar_ObjSetTravIdCurrent( p, pObj ); + // go through the nodes + vNodes = Vec_PtrAlloc( Dar_ManNodeNum(p) ); + for ( i = 0; i < nNodes; i++ ) + Dar_ManDfs_rec( p, ppNodes[i], vNodes ); + return vNodes; +} + +/**Function************************************************************* + Synopsis [Computes the max number of levels in the manager.] Description [] |