This class prepares the CUDD's raw decision diagram manager structure for the use with instrinsive pointers. More...
#include <CCuddCore.h>
Get CUDD-related type definitions | |
| |
typedef mgrcore_traits< Cudd > ::errorfunc_type | errorfunc_type |
typedef mgrcore_traits< Cudd > ::large_size_type | large_size_type |
typedef mgrcore_traits< Cudd > ::refcount_type | refcount_type |
typedef mgrcore_traits< Cudd > ::node_type | node_type |
typedef mgrcore_traits< Cudd > ::mgrcore_type | mgrcore_type |
typedef mgrcore_traits< Cudd > ::unary_int_function | unary_int_function |
typedef mgrcore_traits< Cudd > ::void_function | void_function |
typedef mgrcore_traits< Cudd > ::binary_function | binary_function |
typedef mgrcore_traits< Cudd > ::binary_int_function | binary_int_function |
typedef mgrcore_traits< Cudd > ::ternary_function | ternary_function |
typedef mgrcore_traits< Cudd > ::int_unary_function | int_unary_function |
typedef mgrcore_traits< Cudd > ::size_type | size_type |
typedef mgrcore_traits< Cudd > ::idx_type | idx_type |
typedef CCuddCore | self |
Fix type of *this. | |
typedef boost::intrusive_ptr < self > | mgrcore_ptr |
Fix type for supported smart pointer. | |
typedef CVariableNames | variable_names_type |
Define type for storing names of variables. | |
typedef variable_names_type::const_reference | const_varname_reference |
Define type for getting names of variables. | |
boost::intrusive_ptr< DdManager > | pmanager |
Current raw decision diagram management. | |
refcount_type | ref |
Count instances pointing here. | |
variable_names_type | m_names |
Stores names of variables. | |
std::vector< node_type > | m_vars |
static errorfunc_type | errorHandler = defaultError |
Functions for handling errors from CUDD functions. | |
static bool | verbose = 0 |
Control eloquence of CUDD functionality. | |
CCuddCore (size_type numVars=0, size_type numVarsZ=0, size_type numSlots=CUDD_UNIQUE_SLOTS, size_type cacheSize=CUDD_CACHE_SLOTS, large_size_type maxMemory=0) | |
Initialize raw decision diagram management. | |
CCuddCore (const self &rhs) | |
Copy Constructor (nearly deep copy, but shallow copy of manager). | |
DdManager * | manager () |
DdManager * | getMan (size_type numVars=0, size_type numVarsZ=0, size_type numSlots=CUDD_UNIQUE_SLOTS, size_type cacheSize=CUDD_CACHE_SLOTS, large_size_type maxMemory=0) |
~CCuddCore () | |
Destructor. | |
void | addRef () |
Increment reference count. | |
refcount_type | release () |
Release this by decrementing reference counting. |
This class prepares the CUDD's raw decision diagram manager structure for the use with instrinsive pointers.
The purpose of this wrapper is mainly to provide the necessary functionality for application of intrisive pointers (refernce counting). In addition, some global settings are stored within.
typedef mgrcore_traits<Cudd>::binary_function polybori::CCuddCore::binary_function |
typedef mgrcore_traits<Cudd>::binary_int_function polybori::CCuddCore::binary_int_function |
Define type for getting names of variables.
typedef mgrcore_traits<Cudd>::errorfunc_type polybori::CCuddCore::errorfunc_type |
typedef mgrcore_traits<Cudd>::idx_type polybori::CCuddCore::idx_type |
typedef mgrcore_traits<Cudd>::int_unary_function polybori::CCuddCore::int_unary_function |
typedef mgrcore_traits<Cudd>::large_size_type polybori::CCuddCore::large_size_type |
typedef boost::intrusive_ptr<self> polybori::CCuddCore::mgrcore_ptr |
Fix type for supported smart pointer.
typedef mgrcore_traits<Cudd>::mgrcore_type polybori::CCuddCore::mgrcore_type |
typedef mgrcore_traits<Cudd>::node_type polybori::CCuddCore::node_type |
typedef mgrcore_traits<Cudd>::refcount_type polybori::CCuddCore::refcount_type |
typedef CCuddCore polybori::CCuddCore::self |
Fix type of *this.
typedef mgrcore_traits<Cudd>::size_type polybori::CCuddCore::size_type |
typedef mgrcore_traits<Cudd>::ternary_function polybori::CCuddCore::ternary_function |
typedef mgrcore_traits<Cudd>::unary_int_function polybori::CCuddCore::unary_int_function |
Define type for storing names of variables.
typedef mgrcore_traits<Cudd>::void_function polybori::CCuddCore::void_function |
polybori::CCuddCore::CCuddCore | ( | size_type | numVars = 0 , |
|
size_type | numVarsZ = 0 , |
|||
size_type | numSlots = CUDD_UNIQUE_SLOTS , |
|||
size_type | cacheSize = CUDD_CACHE_SLOTS , |
|||
large_size_type | maxMemory = 0 | |||
) | [inline] |
Initialize raw decision diagram management.
polybori::CCuddCore::CCuddCore | ( | const self & | rhs | ) | [inline] |
Copy Constructor (nearly deep copy, but shallow copy of manager).
polybori::CCuddCore::~CCuddCore | ( | ) | [inline] |
Destructor.
int retval = Cudd_CheckZeroRef(manager);
void polybori::CCuddCore::addRef | ( | ) | [inline] |
Increment reference count.
Referenced by polybori::intrusive_ptr_add_ref().
DdManager* polybori::CCuddCore::getMan | ( | size_type | numVars = 0 , |
|
size_type | numVarsZ = 0 , |
|||
size_type | numSlots = CUDD_UNIQUE_SLOTS , |
|||
size_type | cacheSize = CUDD_CACHE_SLOTS , |
|||
large_size_type | maxMemory = 0 | |||
) | [inline] |
DdManager* polybori::CCuddCore::manager | ( | ) | [inline] |
refcount_type polybori::CCuddCore::release | ( | ) | [inline] |
Release this by decrementing reference counting.
Referenced by polybori::intrusive_ptr_release().
CCuddCore::errorfunc_type polybori::CCuddCore::errorHandler = defaultError [static] |
Functions for handling errors from CUDD functions.
Stores names of variables.
std::vector<node_type> polybori::CCuddCore::m_vars |
boost::intrusive_ptr<DdManager> polybori::CCuddCore::pmanager |
Current raw decision diagram management.
Count instances pointing here.
bool polybori::CCuddCore::verbose = 0 [static] |
Control eloquence of CUDD functionality.