5050 ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
5151 POSSIBILITY OF SUCH DAMAGE.]
5252
53- Revision [$Id: cudd.h,v 1.180 2012/02/05 01:07:18 fabio Exp $]
53+ Revision [$Id: cudd.h,v 1.182 2015/01/03 18:21:34 fabio Exp $]
5454
5555******************************************************************************/
5656
@@ -72,7 +72,7 @@ extern "C" {
7272/* Constant declarations */
7373/*---------------------------------------------------------------------------*/
7474
75- #define CUDD_VERSION "2.5.0 "
75+ #define CUDD_VERSION "2.5.1 "
7676
7777#ifndef SIZEOF_VOID_P
7878#define SIZEOF_VOID_P 4
@@ -219,6 +219,7 @@ typedef enum {
219219 CUDD_TOO_MANY_NODES ,
220220 CUDD_MAX_MEM_EXCEEDED ,
221221 CUDD_TIMEOUT_EXPIRED ,
222+ CUDD_TERMINATION ,
222223 CUDD_INVALID_ARG ,
223224 CUDD_INTERNAL_ERROR
224225} Cudd_ErrorType ;
@@ -311,6 +312,8 @@ typedef DdNode * (*DD_CTFP1)(DdManager *, DdNode *);
311312typedef void (* DD_OOMFP )(long );
312313/* Type of comparison function for qsort. */
313314typedef int (* DD_QSFP )(const void * , const void * );
315+ /* Type of termination handler. */
316+ typedef int (* DD_THFP )(const void * );
314317
315318/*---------------------------------------------------------------------------*/
316319/* Variable declarations */
@@ -620,6 +623,7 @@ extern DdNode * Cudd_addNewVar (DdManager *dd);
620623extern DdNode * Cudd_addNewVarAtLevel (DdManager * dd , int level );
621624extern DdNode * Cudd_bddNewVar (DdManager * dd );
622625extern DdNode * Cudd_bddNewVarAtLevel (DdManager * dd , int level );
626+ extern int Cudd_bddIsVar (DdManager * dd , DdNode * f );
623627extern DdNode * Cudd_addIthVar (DdManager * dd , int i );
624628extern DdNode * Cudd_bddIthVar (DdManager * dd , int i );
625629extern DdNode * Cudd_zddIthVar (DdManager * dd , int i );
@@ -636,6 +640,8 @@ extern void Cudd_UpdateTimeLimit(DdManager * unique);
636640extern void Cudd_IncreaseTimeLimit (DdManager * unique , unsigned long increase );
637641extern void Cudd_UnsetTimeLimit (DdManager * unique );
638642extern int Cudd_TimeLimited (DdManager * unique );
643+ extern void Cudd_RegisterTerminationCallback (DdManager * unique , DD_THFP callback , void * callback_arg );
644+ extern void Cudd_UnregisterTerminationCallback (DdManager * unique );
639645extern void Cudd_AutodynEnable (DdManager * unique , Cudd_ReorderingType method );
640646extern void Cudd_AutodynDisable (DdManager * unique );
641647extern int Cudd_ReorderingStatus (DdManager * unique , Cudd_ReorderingType * method );
@@ -748,6 +754,8 @@ extern int Cudd_PrintGroupedOrder(DdManager * dd, const char *str, void *data);
748754extern int Cudd_EnableOrderingMonitoring (DdManager * dd );
749755extern int Cudd_DisableOrderingMonitoring (DdManager * dd );
750756extern int Cudd_OrderingMonitoring (DdManager * dd );
757+ extern void Cudd_SetApplicationHook (DdManager * dd , void * value );
758+ extern void * Cudd_ReadApplicationHook (DdManager * dd );
751759extern Cudd_ErrorType Cudd_ReadErrorCode (DdManager * dd );
752760extern void Cudd_ClearErrorCode (DdManager * dd );
753761extern FILE * Cudd_ReadStdout (DdManager * dd );
@@ -888,12 +896,13 @@ extern DdTlcInfo * Cudd_FindTwoLiteralClauses (DdManager * dd, DdNode * f);
888896extern int Cudd_PrintTwoLiteralClauses (DdManager * dd , DdNode * f , char * * names , FILE * fp );
889897extern int Cudd_ReadIthClause (DdTlcInfo * tlc , int i , DdHalfWord * var1 , DdHalfWord * var2 , int * phase1 , int * phase2 );
890898extern void Cudd_tlcInfoFree (DdTlcInfo * t );
891- extern int Cudd_DumpBlif (DdManager * dd , int n , DdNode * * f , char * * inames , char * * onames , char * mname , FILE * fp , int mv );
892- extern int Cudd_DumpBlifBody (DdManager * dd , int n , DdNode * * f , char * * inames , char * * onames , FILE * fp , int mv );
893- extern int Cudd_DumpDot (DdManager * dd , int n , DdNode * * f , char * * inames , char * * onames , FILE * fp );
894- extern int Cudd_DumpDaVinci (DdManager * dd , int n , DdNode * * f , char * * inames , char * * onames , FILE * fp );
895- extern int Cudd_DumpDDcal (DdManager * dd , int n , DdNode * * f , char * * inames , char * * onames , FILE * fp );
896- extern int Cudd_DumpFactoredForm (DdManager * dd , int n , DdNode * * f , char * * inames , char * * onames , FILE * fp );
899+ extern int Cudd_DumpBlif (DdManager * dd , int n , DdNode * * f , char const * const * inames , char const * const * onames , char * mname , FILE * fp , int mv );
900+ extern int Cudd_DumpBlifBody (DdManager * dd , int n , DdNode * * f , char const * const * inames , char const * const * onames , FILE * fp , int mv );
901+ extern int Cudd_DumpDot (DdManager * dd , int n , DdNode * * f , char const * const * inames , char const * const * onames , FILE * fp );
902+ extern int Cudd_DumpDaVinci (DdManager * dd , int n , DdNode * * f , char const * const * inames , char const * const * onames , FILE * fp );
903+ extern int Cudd_DumpDDcal (DdManager * dd , int n , DdNode * * f , char const * const * inames , char const * const * onames , FILE * fp );
904+ extern int Cudd_DumpFactoredForm (DdManager * dd , int n , DdNode * * f , char const * const * inames , char const * const * onames , FILE * fp );
905+ extern char * Cudd_FactoredFormString (DdManager * dd , DdNode * f , char const * const * inames );
897906extern DdNode * Cudd_bddConstrain (DdManager * dd , DdNode * f , DdNode * c );
898907extern DdNode * Cudd_bddRestrict (DdManager * dd , DdNode * f , DdNode * c );
899908extern DdNode * Cudd_bddNPAnd (DdManager * dd , DdNode * f , DdNode * c );
@@ -1044,7 +1053,7 @@ extern DdGen * Cudd_zddFirstPath (DdManager *zdd, DdNode *f, int **path);
10441053extern int Cudd_zddNextPath (DdGen * gen , int * * path );
10451054extern char * Cudd_zddCoverPathToString (DdManager * zdd , int * path , char * str );
10461055extern DdNode * Cudd_zddSupport (DdManager * dd , DdNode * f );
1047- extern int Cudd_zddDumpDot (DdManager * dd , int n , DdNode * * f , char * * inames , char * * onames , FILE * fp );
1056+ extern int Cudd_zddDumpDot (DdManager * dd , int n , DdNode * * f , char const * const * inames , char const * const * onames , FILE * fp );
10481057extern int Cudd_bddSetPiVar (DdManager * dd , int index );
10491058extern int Cudd_bddSetPsVar (DdManager * dd , int index );
10501059extern int Cudd_bddSetNsVar (DdManager * dd , int index );
0 commit comments