![]() |
Rosetta Utilities
2014.35
|
Interface class for reference counted polymorphic classes. More...
#include <ReferenceCountMI.hh>
Public Types | |
typedef platform::Size | Size |
typedef platform::Size | size_type |
Public Member Functions | |
virtual | ~ReferenceCountMI () |
Destructor. More... | |
virtual Size | ref_count () const =0 |
Reference count. More... | |
Protected Member Functions | |
ReferenceCountMI () | |
Default constructor. More... | |
ReferenceCountMI (ReferenceCountMI const &) | |
Copy constructor. More... | |
ReferenceCountMI & | operator= (ReferenceCountMI const &) |
Copy assignment. More... | |
virtual void | add_ref () const =0 |
Add a reference: Increment the count. More... | |
virtual void | remove_ref () const =0 |
Remove a reference: Decrement the count: Self-destruct if count hits zero. More... | |
Friends | |
template<typename T > | |
void | owning_ptr_acquire (T *) |
Add a reference to the object acquired by an owning_ptr. More... | |
template<typename T > | |
void | owning_ptr_release (T *) |
Remove a reference from the object released by an owning_ptr. More... | |
Interface class for reference counted polymorphic classes.
|
inlineprotected |
Default constructor.
|
inlineprotected |
Copy constructor.
|
inlinevirtual |
Destructor.
|
protectedpure virtual |
Add a reference: Increment the count.
Implemented in utility::pointer::ReferenceCountMI_.
|
inlineprotected |
Copy assignment.
|
pure virtual |
Reference count.
Implemented in utility::pointer::ReferenceCountMI_.
|
protectedpure virtual |
Remove a reference: Decrement the count: Self-destruct if count hits zero.
Implemented in utility::pointer::ReferenceCountMI_.
|
friend |
Add a reference to the object acquired by an owning_ptr.
|
friend |
Remove a reference from the object released by an owning_ptr.