00001 00021 #ifndef __BDC_H__ 00022 #define __BDC_H__ 00023 00024 #ifdef __cplusplus 00025 extern "C" { 00026 #endif 00027 00031 00035 00039 00040 typedef struct Bdc_Man_t_ Bdc_Man_t; 00041 typedef struct Bdc_Par_t_ Bdc_Par_t; 00042 struct Bdc_Par_t_ 00043 { 00044 // general parameters 00045 int nVarsMax; // the maximum support 00046 int fVerbose; // enable basic stats 00047 int fVeryVerbose; // enable detailed stats 00048 }; 00049 00053 00057 00058 /*=== bdcCore.c ==========================================================*/ 00059 extern Bdc_Man_t * Bdc_ManAlloc( Bdc_Par_t * pPars ); 00060 extern void Bdc_ManFree( Bdc_Man_t * p ); 00061 extern int Bdc_ManDecompose( Bdc_Man_t * p, unsigned * puFunc, unsigned * puCare, int nVars, Vec_Ptr_t * vDivs, int nNodesLimit ); 00062 00063 00064 #ifdef __cplusplus 00065 } 00066 #endif 00067 00068 #endif 00069 00073