This template class defines a facade as a C++ interface for applying C-style functions to C-style structs, which represent decision diagrams. It is used to wrapp functions calls to raw pointers of the nodes and the context to an C++-style object.
More...
|
| void | checkSameManager (const diagram_type &other) const |
| | Test, whether both operands. More...
|
| |
| diagram_type | diagram (node_ptr node) const |
| | Get diagram of the same context. More...
|
| |
|
| template<class MgrType > |
| diagram_type | apply (node_ptr(*func)(MgrType, node_ptr)) const |
| | Unary function. More...
|
| |
| template<class MgrType > |
| diagram_type | apply (node_ptr(*func)(MgrType, node_ptr, node_ptr), const diagram_type &rhs) const |
| | Binary function (two diagrams) More...
|
| |
| template<class MgrType > |
| diagram_type | apply (node_ptr(*func)(MgrType, node_ptr, node_ptr, node_ptr), const diagram_type &first, const diagram_type &second) const |
| | Ternary function (three diagrams) More...
|
| |
| template<class MgrType , class Type > |
| diagram_type | apply (node_ptr(*func)(MgrType, node_ptr, Type), Type value) const |
| | Binary functions with non-diagram right-hand side. More...
|
| |
| template<class MgrType , class ResultType > |
| ResultType | apply (ResultType(*func)(MgrType, node_ptr)) const |
| | Unary functions with non-diagram result value. More...
|
| |
template<class DiagramType, class NodePtr>
class polybori::CApplyNodeFacade< DiagramType, NodePtr >
This template class defines a facade as a C++ interface for applying C-style functions to C-style structs, which represent decision diagrams. It is used to wrapp functions calls to raw pointers of the nodes and the context to an C++-style object.
- Attention
- We assume that the
DiagramType owns member functions ring(), getNode() and getManager().
- Note
- This template class is a facade and hence it is intented for internal use only, e.g. as a base class for BooleSet.