From 06ba3d3e6ceee78cf52c024ac56287e924b00af3 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Wed, 17 Apr 2013 22:18:43 -0700 Subject: Adding command &filter_equiv to filter candidate equivalence classes using indexes of disproved POs after handling SRM as a multi-output miter. --- src/python/pyabc.i | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src/python/pyabc.i') diff --git a/src/python/pyabc.i b/src/python/pyabc.i index 907dec84..e071a74a 100644 --- a/src/python/pyabc.i +++ b/src/python/pyabc.i @@ -320,6 +320,20 @@ PyObject* eq_classes() return eq_classes; } +void _pyabc_array_clear() +{ + Abc_Frame_t* pAbc = Abc_FrameGetGlobalFrame(); + Vec_Int_t *vObjIds = Abc_FrameReadObjIds(pAbc); + Vec_IntClear( vObjIds ); +} + +void _pyabc_array_push(int i) +{ + Abc_Frame_t* pAbc = Abc_FrameGetGlobalFrame(); + Vec_Int_t *vObjIds = Abc_FrameReadObjIds(pAbc); + Vec_IntPush( vObjIds, i ); +} + static PyObject* pyabc_internal_python_command_callback = 0; void pyabc_internal_set_command_callback( PyObject* callback ) @@ -644,6 +658,9 @@ int _cex_get_frame(Abc_Cex_t* pCex); PyObject* eq_classes(); +void _pyabc_array_clear(); +void _pyabc_array_push(int i); + void pyabc_internal_set_command_callback( PyObject* callback ); void pyabc_internal_register_command( char * sGroup, char * sName, int fChanges ); @@ -1168,4 +1185,9 @@ def cmd_python(cmd_args): add_abc_command(cmd_python, "Python", "python", 0) +def create_abc_array(List): + _pyabc_array_clear() + for ObjId in List: + _pyabc_array_push(ObjId) + %} -- cgit v1.2.3