polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength > Class Template Reference

This template class forms the base for CCommutativeCacheManagement and CacheManager. It is an interface defining find and insert on decision diagram cache. More...

`#include <CCacheManagement.h>`

Inheritance diagram for polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >:

## Public Types

typedef CCacheManBase< manager_type, cache_type, nargs > | base
| Name base type. More...
typedef base::node_type | node_type
| Extracting inherited node type. More...
Get template parameters and global types
enum | { nargs = ArgumentLength }
typedef ManagerType | manager_type
typedef manager_type::deg_type | deg_type
typedef manager_type::size_type | size_type
typedef manager_type::idx_type | idx_type
typedef CacheType | cache_type

## Public Member Functions

| CCacheManagement (const manager_type &mgr)
| Constructor and default constructor. More...

## Detailed Description

### template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>
class polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >

This template class forms the base for CCommutativeCacheManagement and CacheManager. It is an interface defining find and insert on decision diagram cache.

It it mainly a wrapper for the template specialization of CCacheManBase, which allows a simple call of CCacheManagement<CacheType>, if CacheType is inherited from unary_cache_tag, binary_cache_tag, and ternary_cache_tag. It also fixes the ManagerType to CTypes::manager_base.

## Member Typedef Documentation

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

typedef CCacheManBase<manager_type, cache_type, nargs> polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::base

Name base type.

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

typedef CacheType polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::cache_type

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

typedef manager_type::deg_type polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::deg_type

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

typedef manager_type::idx_type polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::idx_type

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

typedef ManagerType polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::manager_type

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

typedef base::node_type polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::node_type

Extracting inherited node type.

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

typedef manager_type::size_type polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::size_type

## Member Enumeration Documentation

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

anonymous enum

Enumerator
nargs |

## Constructor & Destructor Documentation

template<class ManagerType, class CacheType, unsigned ArgumentLength = CacheType::nargs>

polybori::CCacheManagement< ManagerType, CacheType, ArgumentLength >::CCacheManagement | ( | const manager_type & | mgr | ) |

inline

Constructor and default constructor.

The documentation for this class was generated from the following file:

- CCacheManagement.h