From 42e767c2943ee14fb85fec3fa1f45610dcc424bb Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Wed, 31 Oct 2012 10:49:38 -0700 Subject: External APIs needed to use ABC as a static library. --- src/aig/miniaig/abcapis.h | 66 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 src/aig/miniaig/abcapis.h diff --git a/src/aig/miniaig/abcapis.h b/src/aig/miniaig/abcapis.h new file mode 100644 index 00000000..cc7cd87d --- /dev/null +++ b/src/aig/miniaig/abcapis.h @@ -0,0 +1,66 @@ +/**CFile**************************************************************** + + FileName [abcapis.h] + + SystemName [ABC: Logic synthesis and verification system.] + + PackageName [Include this file in the external code calling ABC.] + + Synopsis [External declarations.] + + Author [Alan Mishchenko] + + Affiliation [UC Berkeley] + + Date [Ver. 1.0. Started - September 29, 2012.] + + Revision [$Id: abcapis.h,v 1.00 2012/09/29 00:00:00 alanmi Exp $] + +***********************************************************************/ + +#ifndef MINI_AIG__abc_apis_h +#define MINI_AIG__abc_apis_h + +//////////////////////////////////////////////////////////////////////// +/// INCLUDES /// +//////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////// +/// PARAMETERS /// +//////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////// +/// BASIC TYPES /// +//////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////// +/// MACRO DEFINITIONS /// +//////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////// +/// FUNCTION DECLARATIONS /// +//////////////////////////////////////////////////////////////////////// + +// procedures to start and stop the ABC framework +extern void Abc_Start(); +extern void Abc_Stop(); + +// procedures to get the ABC framework (pAbc) and execute commands in it +extern void * Abc_FrameGetGlobalFrame(); +extern int Cmd_CommandExecute( void * pAbc, char * pCommandLine ); + +// procedures to input/output 'mini AIG' +extern void Abc_NtkInputMiniAig( void * pAbc, void * pMiniAig ); +extern void * Abc_NtkOutputMiniAig( void * pAbc ); + +// procedures to access verifization status and a counter-example +extern int Abc_FrameReadProbStatus( void * pAbc ); +extern void * Abc_FrameReadCex( void * pAbc ); + + +#endif + +//////////////////////////////////////////////////////////////////////// +/// END OF FILE /// +//////////////////////////////////////////////////////////////////////// + -- cgit v1.2.3