Commit 7bcfe643 by Baruch Sterin

C++ comaptibility: add namespace support to Glucose

parent d438d9c1
...@@ -1043,6 +1043,8 @@ extern ABC_DLL void Abc_NtkPrintCiLevels( Abc_Ntk_t * pNtk ); ...@@ -1043,6 +1043,8 @@ extern ABC_DLL void Abc_NtkPrintCiLevels( Abc_Ntk_t * pNtk );
extern ABC_DLL void Abc_NtkReverseTopoOrder( Abc_Ntk_t * pNtk ); extern ABC_DLL void Abc_NtkReverseTopoOrder( Abc_Ntk_t * pNtk );
extern ABC_DLL int Abc_NtkIsTopo( Abc_Ntk_t * pNtk ); extern ABC_DLL int Abc_NtkIsTopo( Abc_Ntk_t * pNtk );
extern ABC_DLL void Abc_NtkTransferPhases( Abc_Ntk_t * pNtkNew, Abc_Ntk_t * pNtk ); extern ABC_DLL void Abc_NtkTransferPhases( Abc_Ntk_t * pNtkNew, Abc_Ntk_t * pNtk );
extern ABC_DLL Gia_Man_t * Abc_SopSynthesizeOne( char * pSop, int fClp );
/*=== abcVerify.c ==========================================================*/ /*=== abcVerify.c ==========================================================*/
......
...@@ -30,6 +30,8 @@ ...@@ -30,6 +30,8 @@
# ifdef ABC_NAMESPACE # ifdef ABC_NAMESPACE
# define ABC_NAMESPACE_HEADER_START namespace ABC_NAMESPACE { # define ABC_NAMESPACE_HEADER_START namespace ABC_NAMESPACE {
# define ABC_NAMESPACE_HEADER_END } # define ABC_NAMESPACE_HEADER_END }
# define ABC_NAMESPACE_CXX_HEADER_START ABC_NAMESPACE_HEADER_START
# define ABC_NAMESPACE_CXX_HEADER_END ABC_NAMESPACE_HEADER_END
# define ABC_NAMESPACE_IMPL_START namespace ABC_NAMESPACE { # define ABC_NAMESPACE_IMPL_START namespace ABC_NAMESPACE {
# define ABC_NAMESPACE_IMPL_END } # define ABC_NAMESPACE_IMPL_END }
# define ABC_NAMESPACE_PREFIX ABC_NAMESPACE:: # define ABC_NAMESPACE_PREFIX ABC_NAMESPACE::
...@@ -37,6 +39,8 @@ ...@@ -37,6 +39,8 @@
# else # else
# define ABC_NAMESPACE_HEADER_START extern "C" { # define ABC_NAMESPACE_HEADER_START extern "C" {
# define ABC_NAMESPACE_HEADER_END } # define ABC_NAMESPACE_HEADER_END }
# define ABC_NAMESPACE_CXX_HEADER_START
# define ABC_NAMESPACE_CXX_HEADER_END
# define ABC_NAMESPACE_IMPL_START # define ABC_NAMESPACE_IMPL_START
# define ABC_NAMESPACE_IMPL_END # define ABC_NAMESPACE_IMPL_END
# define ABC_NAMESPACE_PREFIX # define ABC_NAMESPACE_PREFIX
...@@ -45,6 +49,8 @@ ...@@ -45,6 +49,8 @@
#else #else
# define ABC_NAMESPACE_HEADER_START # define ABC_NAMESPACE_HEADER_START
# define ABC_NAMESPACE_HEADER_END # define ABC_NAMESPACE_HEADER_END
# define ABC_NAMESPACE_CXX_HEADER_START
# define ABC_NAMESPACE_CXX_HEADER_END
# define ABC_NAMESPACE_IMPL_START # define ABC_NAMESPACE_IMPL_START
# define ABC_NAMESPACE_IMPL_END # define ABC_NAMESPACE_IMPL_END
# define ABC_NAMESPACE_PREFIX # define ABC_NAMESPACE_PREFIX
......
...@@ -26,15 +26,14 @@ ...@@ -26,15 +26,14 @@
#include "sat/glucose/AbcGlucose.h" #include "sat/glucose/AbcGlucose.h"
#include "base/abc/abc.h"
#include "aig/gia/gia.h" #include "aig/gia/gia.h"
#include "sat/cnf/cnf.h" #include "sat/cnf/cnf.h"
#include "misc/extra/extra.h" #include "misc/extra/extra.h"
using namespace Gluco;
ABC_NAMESPACE_IMPL_START ABC_NAMESPACE_IMPL_START
extern "C" { using namespace Gluco;
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
/// DECLARATIONS /// /// DECLARATIONS ///
...@@ -1367,6 +1366,4 @@ int Glucose_SolveAig(Gia_Man_t * p, Glucose_Pars * pPars) ...@@ -1367,6 +1366,4 @@ int Glucose_SolveAig(Gia_Man_t * p, Glucose_Pars * pPars)
/// END OF FILE /// /// END OF FILE ///
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
}
ABC_NAMESPACE_IMPL_END ABC_NAMESPACE_IMPL_END
...@@ -31,13 +31,13 @@ ...@@ -31,13 +31,13 @@
/// PARAMETERS /// /// PARAMETERS ///
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
ABC_NAMESPACE_HEADER_START
#define GLUCOSE_UNSAT -1 #define GLUCOSE_UNSAT -1
#define GLUCOSE_SAT 1 #define GLUCOSE_SAT 1
#define GLUCOSE_UNDEC 0 #define GLUCOSE_UNDEC 0
ABC_NAMESPACE_HEADER_START
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
/// BASIC TYPES /// /// BASIC TYPES ///
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
......
...@@ -23,6 +23,14 @@ ...@@ -23,6 +23,14 @@
#include "sat/glucose/AbcGlucose.h" #include "sat/glucose/AbcGlucose.h"
ABC_NAMESPACE_HEADER_START
void Glucose_Init(Abc_Frame_t *pAbc);
void Glucose_End( Abc_Frame_t * pAbc );
ABC_NAMESPACE_HEADER_END
ABC_NAMESPACE_IMPL_START ABC_NAMESPACE_IMPL_START
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
...@@ -46,7 +54,6 @@ static int Abc_CommandGlucose( Abc_Frame_t * pAbc, int argc, char ** argv ); ...@@ -46,7 +54,6 @@ static int Abc_CommandGlucose( Abc_Frame_t * pAbc, int argc, char ** argv );
SeeAlso [] SeeAlso []
***********************************************************************/ ***********************************************************************/
extern "C" {
void Glucose_Init(Abc_Frame_t *pAbc) void Glucose_Init(Abc_Frame_t *pAbc)
{ {
...@@ -57,8 +64,6 @@ void Glucose_End( Abc_Frame_t * pAbc ) ...@@ -57,8 +64,6 @@ void Glucose_End( Abc_Frame_t * pAbc )
{ {
} }
}
/**Function************************************************************* /**Function*************************************************************
Synopsis [] Synopsis []
......
...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Vec.h" #include "sat/glucose/Vec.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -81,4 +83,6 @@ static inline void append(const vec<T>& from, vec<T>& to){ copy(from, to, true); ...@@ -81,4 +83,6 @@ static inline void append(const vec<T>& from, vec<T>& to){ copy(from, to, true);
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -24,6 +24,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -24,6 +24,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/XAlloc.h" #include "sat/glucose/XAlloc.h"
#include "sat/glucose/Vec.h" #include "sat/glucose/Vec.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -129,4 +131,6 @@ RegionAllocator<T>::alloc(int size) ...@@ -129,4 +131,6 @@ RegionAllocator<T>::alloc(int size)
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -25,6 +25,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -25,6 +25,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Vec.h" #include "sat/glucose/Vec.h"
ABC_NAMESPACE_CXX_HEADER_START
//================================================================================================= //=================================================================================================
namespace Gluco { namespace Gluco {
...@@ -107,4 +109,6 @@ public: ...@@ -107,4 +109,6 @@ public:
} }
//================================================================================================= //=================================================================================================
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -26,6 +26,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -26,6 +26,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/ParseUtils.h" #include "sat/glucose/ParseUtils.h"
#include "sat/glucose/SolverTypes.h" #include "sat/glucose/SolverTypes.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -86,4 +88,6 @@ static void parse_DIMACS(gzFile input_stream, Solver& S) { ...@@ -86,4 +88,6 @@ static void parse_DIMACS(gzFile input_stream, Solver& S) {
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -34,6 +34,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -34,6 +34,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Constants.h" #include "sat/glucose/Constants.h"
#include "sat/glucose/System.h" #include "sat/glucose/System.h"
ABC_NAMESPACE_IMPL_START
using namespace Gluco; using namespace Gluco;
//================================================================================================= //=================================================================================================
...@@ -1491,3 +1493,5 @@ void Solver::reset() ...@@ -1491,3 +1493,5 @@ void Solver::reset()
assumptionPositions.clear(false); assumptionPositions.clear(false);
initialPositions.clear(false); initialPositions.clear(false);
} }
ABC_NAMESPACE_IMPL_END
...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Vec.h" #include "sat/glucose/Vec.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -147,4 +149,6 @@ class Heap { ...@@ -147,4 +149,6 @@ class Heap {
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -44,4 +44,6 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -44,4 +44,6 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#endif #endif
//================================================================================================= //=================================================================================================
#include <misc/util/abc_namespaces.h>
#endif #endif
...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/IntTypes.h" #include "sat/glucose/IntTypes.h"
#include "sat/glucose/Vec.h" #include "sat/glucose/Vec.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -190,4 +192,6 @@ class Map { ...@@ -190,4 +192,6 @@ class Map {
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -21,6 +21,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -21,6 +21,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Options.h" #include "sat/glucose/Options.h"
#include "sat/glucose/ParseUtils.h" #include "sat/glucose/ParseUtils.h"
ABC_NAMESPACE_IMPL_START
using namespace Gluco; using namespace Gluco;
void Gluco::parseOptions(int& argc, char** argv, bool strict) void Gluco::parseOptions(int& argc, char** argv, bool strict)
...@@ -90,3 +92,4 @@ void Gluco::printUsageAndExit (int argc, char** argv, bool verbose) ...@@ -90,3 +92,4 @@ void Gluco::printUsageAndExit (int argc, char** argv, bool verbose)
exit(0); exit(0);
} }
ABC_NAMESPACE_IMPL_END
...@@ -31,6 +31,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -31,6 +31,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Vec.h" #include "sat/glucose/Vec.h"
#include "sat/glucose/ParseUtils.h" #include "sat/glucose/ParseUtils.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================== //==================================================================================================
...@@ -385,4 +387,6 @@ class BoolOption : public Option ...@@ -385,4 +387,6 @@ class BoolOption : public Option
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -27,6 +27,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -27,6 +27,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "misc/zlib/zlib.h" #include "misc/zlib/zlib.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------
...@@ -148,4 +150,6 @@ static bool eagerMatch(B& in, const char* str) { ...@@ -148,4 +150,6 @@ static bool eagerMatch(B& in, const char* str) {
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -23,6 +23,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Vec.h" #include "sat/glucose/Vec.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -66,4 +68,6 @@ public: ...@@ -66,4 +68,6 @@ public:
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -22,6 +22,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -22,6 +22,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/SimpSolver.h" #include "sat/glucose/SimpSolver.h"
#include "sat/glucose/System.h" #include "sat/glucose/System.h"
ABC_NAMESPACE_IMPL_START
using namespace Gluco; using namespace Gluco;
//================================================================================================= //=================================================================================================
...@@ -771,4 +773,4 @@ void SimpSolver::reset() ...@@ -771,4 +773,4 @@ void SimpSolver::reset()
remove_satisfied = false; remove_satisfied = false;
} }
ABC_NAMESPACE_IMPL_END
...@@ -24,6 +24,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -24,6 +24,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Queue.h" #include "sat/glucose/Queue.h"
#include "sat/glucose/Solver.h" #include "sat/glucose/Solver.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
...@@ -201,4 +202,6 @@ inline void SimpSolver::addVar(Var v) { while (v >= nVars()) newVar(); } ...@@ -201,4 +202,6 @@ inline void SimpSolver::addVar(Var v) { while (v >= nVars()) newVar(); }
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -37,6 +37,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -37,6 +37,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/BoundedQueue.h" #include "sat/glucose/BoundedQueue.h"
#include "sat/glucose/Constants.h" #include "sat/glucose/Constants.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
...@@ -488,4 +489,6 @@ inline void Solver::printInitialClause(CRef cr) ...@@ -488,4 +489,6 @@ inline void Solver::printInitialClause(CRef cr)
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -38,6 +38,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -38,6 +38,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/Map.h" #include "sat/glucose/Map.h"
#include "sat/glucose/Alloc.h" #include "sat/glucose/Alloc.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -430,5 +432,6 @@ inline void Clause::strengthen(Lit p) ...@@ -430,5 +432,6 @@ inline void Clause::strengthen(Lit p)
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -26,6 +26,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -26,6 +26,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
//================================================================================================= //=================================================================================================
// Some sorting algorithms for vec's // Some sorting algorithms for vec's
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
...@@ -95,4 +96,6 @@ template <class T> void sort(vec<T>& v) { ...@@ -95,4 +96,6 @@ template <class T> void sort(vec<T>& v) {
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -25,6 +25,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -25,6 +25,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
ABC_NAMESPACE_IMPL_START
using namespace Gluco; using namespace Gluco;
// TODO: split the memory reading functions into two: one for reading high-watermark of RSS, and // TODO: split the memory reading functions into two: one for reading high-watermark of RSS, and
...@@ -72,24 +74,41 @@ double Gluco::memUsedPeak() { ...@@ -72,24 +74,41 @@ double Gluco::memUsedPeak() {
double peak = memReadPeak() / 1024; double peak = memReadPeak() / 1024;
return peak == 0 ? memUsed() : peak; } return peak == 0 ? memUsed() : peak; }
ABC_NAMESPACE_IMPL_END
#elif defined(__FreeBSD__) #elif defined(__FreeBSD__)
ABC_NAMESPACE_IMPL_START
double Gluco::memUsed(void) { double Gluco::memUsed(void) {
struct rusage ru; struct rusage ru;
getrusage(RUSAGE_SELF, &ru); getrusage(RUSAGE_SELF, &ru);
return (double)ru.ru_maxrss / 1024; } return (double)ru.ru_maxrss / 1024; }
double MiniSat::memUsedPeak(void) { return memUsed(); } double MiniSat::memUsedPeak(void) { return memUsed(); }
ABC_NAMESPACE_IMPL_END
#elif defined(__APPLE__) #elif defined(__APPLE__)
#include <malloc/malloc.h> #include <malloc/malloc.h>
ABC_NAMESPACE_IMPL_START
double Gluco::memUsed(void) { double Gluco::memUsed(void) {
malloc_statistics_t t; malloc_statistics_t t;
malloc_zone_statistics(NULL, &t); malloc_zone_statistics(NULL, &t);
return (double)t.max_size_in_use / (1024*1024); } return (double)t.max_size_in_use / (1024*1024); }
ABC_NAMESPACE_IMPL_END
#else #else
ABC_NAMESPACE_IMPL_START
double Gluco::memUsed() { double Gluco::memUsed() {
return 0; } return 0; }
ABC_NAMESPACE_IMPL_END
#endif #endif
...@@ -27,6 +27,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -27,6 +27,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/IntTypes.h" #include "sat/glucose/IntTypes.h"
ABC_NAMESPACE_CXX_HEADER_START
//------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------
namespace Gluco { namespace Gluco {
...@@ -37,24 +39,35 @@ extern double memUsedPeak(); // Peak-memory in mega bytes (returns 0 for ...@@ -37,24 +39,35 @@ extern double memUsedPeak(); // Peak-memory in mega bytes (returns 0 for
} }
ABC_NAMESPACE_CXX_HEADER_END
//------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------
// Implementation of inline functions: // Implementation of inline functions:
#if defined(_MSC_VER) || defined(__MINGW32__) #if defined(_MSC_VER) || defined(__MINGW32__)
#include <time.h> #include <time.h>
ABC_NAMESPACE_CXX_HEADER_START
static inline double Gluco::cpuTime(void) { return (double)clock() / CLOCKS_PER_SEC; } static inline double Gluco::cpuTime(void) { return (double)clock() / CLOCKS_PER_SEC; }
ABC_NAMESPACE_CXX_HEADER_END
#else #else
#include <sys/time.h> #include <sys/time.h>
#include <sys/resource.h> #include <sys/resource.h>
#include <unistd.h> #include <unistd.h>
ABC_NAMESPACE_CXX_HEADER_START
static inline double Gluco::cpuTime(void) { static inline double Gluco::cpuTime(void) {
struct rusage ru; struct rusage ru;
getrusage(RUSAGE_SELF, &ru); getrusage(RUSAGE_SELF, &ru);
return (double)ru.ru_utime.tv_sec + (double)ru.ru_utime.tv_usec / 1000000; } return (double)ru.ru_utime.tv_sec + (double)ru.ru_utime.tv_usec / 1000000; }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
#endif #endif
...@@ -27,6 +27,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -27,6 +27,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include "sat/glucose/IntTypes.h" #include "sat/glucose/IntTypes.h"
#include "sat/glucose/XAlloc.h" #include "sat/glucose/XAlloc.h"
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -127,4 +129,6 @@ void vec<T>::clear(bool dealloc) { ...@@ -127,4 +129,6 @@ void vec<T>::clear(bool dealloc) {
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
...@@ -25,6 +25,10 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA ...@@ -25,6 +25,10 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include <stdlib.h> #include <stdlib.h>
#include <stdio.h> #include <stdio.h>
#include <misc/util/abc_namespaces.h>
ABC_NAMESPACE_CXX_HEADER_START
namespace Gluco { namespace Gluco {
//================================================================================================= //=================================================================================================
...@@ -44,4 +48,6 @@ static inline void* xrealloc(void *ptr, size_t size) ...@@ -44,4 +48,6 @@ static inline void* xrealloc(void *ptr, size_t size)
//================================================================================================= //=================================================================================================
} }
ABC_NAMESPACE_CXX_HEADER_END
#endif #endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment