The shared handle. More...
#include <core.hpp>
Classes | |
class | Object |
The shared object. More... | |
Public Member Functions | |
SharedHandle (void) | |
Create shared handle with no object pointing to. More... | |
SharedHandle (SharedHandle::Object *so) | |
Create shared handle that points to shared object so. More... | |
SharedHandle (const SharedHandle &sh) | |
Copy constructor maintaining reference count. More... | |
SharedHandle & | operator= (const SharedHandle &sh) |
Assignment operator maintaining reference count. More... | |
void | update (Space &home, bool share, SharedHandle &sh) |
Updating during cloning. More... | |
~SharedHandle (void) | |
Destructor that maintains reference count. More... | |
Protected Member Functions | |
SharedHandle::Object * | object (void) const |
Access to the shared object. More... | |
void | object (SharedHandle::Object *n) |
Modify shared object. More... | |
The shared handle.
A shared handle provides access to an object that lives outside a space, and is shared between entities that possibly reside inside different spaces. The handle has an update mechanism that supports updates with and without sharing. An update without sharing makes sure that a single copy of the object is created when the space is copied.
This is the base class that all shared handles must inherit from.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprotected |
|
inlineprotected |