scram::core::WeakIntrusivePtr
A weak pointer to store in BDD unique tables. More...
#include <bdd.h>
Inherits from boost::noncopyable
Public Functions
| Name | |
|---|---|
| WeakIntrusivePtr()<br>Default constructor is to allow initialization in tables. | |
| WeakIntrusivePtr(const IntrusivePtr< T > & ptr)<br>Constructs from the shared pointer. | |
| WeakIntrusivePtr & | operator=(const IntrusivePtr< T > & ptr)<br>Copy assignment from shared pointers for convenient initialization with operator[] in hash tables. |
| ~WeakIntrusivePtr()<br>Communicates the pointer destruction to the vertex. | |
| bool | expired() const |
| IntrusivePtr< T > | lock() const |
| T * | get() const |
Friends
| Name | |
|---|---|
| class | Vertex< T > |
Detailed Description
template <class T >
class scram::core::WeakIntrusivePtr;A weak pointer to store in BDD unique tables.
Template Parameters:
- T The type of the main functional BDD vertex.
This weak pointer is unique pointer as well because vertices should not be easily shared among multiple BDDs.
Public Functions Documentation
function WeakIntrusivePtr
inline WeakIntrusivePtr()Default constructor is to allow initialization in tables.
function WeakIntrusivePtr
inline explicit WeakIntrusivePtr(
const IntrusivePtr< T > & ptr
)Constructs from the shared pointer.
Parameters:
- ptr Fully initialized intrusive pointer.
However, there is no weak-to-shared constructor.
function operator=
inline WeakIntrusivePtr & operator=(
const IntrusivePtr< T > & ptr
)Copy assignment from shared pointers for convenient initialization with operator[] in hash tables.
Parameters:
- ptr Fully initialized intrusive pointer.
Return: Reference to this.
function ~WeakIntrusivePtr
inline ~WeakIntrusivePtr()Communicates the pointer destruction to the vertex.
function expired
inline bool expired() constReturn: true if the managed vertex is deleted or not initialized.
function lock
inline IntrusivePtr< T > lock() constReturn: The intrusive pointer of the vertex. nullptr if the vertex is deleted or not initialized.
function get
inline T * get() constReturn: The raw pointer to the vertex. nullptr if the vertex is deleted or not initialized.
Friends
friend Vertex< T >
friend class Vertex< T >(
Vertex< T >
);Updated on 2025-11-11 at 16:51:08 +0000
