51 Abc_NtkChangeCiOrder( pNtk, vSupp, fReverse );
72 pFile = fopen( pFileName,
"r" );
73 vSupp = Vec_PtrAlloc( Abc_NtkCiNum(pNtk) );
74 while ( fscanf( pFile,
"%s", Buffer ) == 1 )
77 if ( pObj == NULL || !Abc_ObjIsCi(pObj) )
79 printf(
"Name \"%s\" is not a PI name. Cannot use this order.\n", Buffer );
84 Vec_PtrPush( vSupp, pObj );
87 if ( Vec_PtrSize(vSupp) != Abc_NtkCiNum(pNtk) )
89 printf(
"The number of names in the order (%d) is not the same as the number of PIs (%d).\n", Vec_PtrSize(vSupp), Abc_NtkCiNum(pNtk) );
93 Abc_NtkChangeCiOrder( pNtk, vSupp, fReverse );
112 assert( Vec_PtrSize(vSupp) == Abc_NtkCiNum(pNtk) );
116 Vec_PtrWriteEntry( pNtk->
vCis, Vec_PtrSize(vSupp)-1-i, pObj );
119 Vec_PtrWriteEntry( pNtk->
vCis, i, pObj );
121 Vec_PtrClear( pNtk->
vPis );
123 if ( Abc_ObjIsPi(pObj) )
124 Vec_PtrPush( pNtk->
vPis, pObj );
void Abc_NtkFindCiOrder(Abc_Ntk_t *pNtk, int fReverse, int fVerbose)
FUNCTION DEFINITIONS ///.
void Abc_NtkImplementCiOrder(Abc_Ntk_t *pNtk, char *pFileName, int fReverse, int fVerbose)
struct Abc_Obj_t_ Abc_Obj_t
ABC_DLL Abc_Obj_t * Abc_NtkFindCi(Abc_Ntk_t *pNtk, char *pName)
ABC_DLL Vec_Ptr_t * Abc_NtkSupport(Abc_Ntk_t *pNtk)
struct Abc_Ntk_t_ Abc_Ntk_t
#define Abc_NtkForEachCi(pNtk, pCi, i)
#define ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_END
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
#define Vec_PtrForEachEntry(Type, vVec, pEntry, i)
MACRO DEFINITIONS ///.