#include <include/EST_THandle.h>
Public Member Functions | |
EST_THandle (BoxT *p) | |
EST_THandle (const EST_THandle &cp) | |
bool | null () const |
int | shareing (void) const |
EST_THandle & | operator= (EST_THandle h) |
EST_THandle & | operator= (BoxT *t_ptr) |
operator ObjectT * () | |
operator const ObjectT * () const | |
int | operator== (const BoxT *p) const |
int | operator!= (const BoxT *p) const |
const ObjectT & | operator* () const |
ObjectT & | operator* () |
const ObjectT * | operator-> () const |
ObjectT * | operator-> () |
Friends | |
int | operator== (const EST_THandle< BoxT, ObjectT > &a, const EST_THandle< BoxT, ObjectT > &b) |
int | operator!= (const EST_THandle< BoxT, ObjectT > &a, const EST_THandle< BoxT, ObjectT > &b) |
ostream & | operator<< (ostream &s, const EST_THandle< BoxT, ObjectT > &a) |
A ‘smart’ pointer which does reference counting.
Behaves almost like a pointer as far as naive code is concerned, but keeps count of how many handles are holding on to the contents and deletes it when there are none.
You need to be careful there are no dumb C++ pointers to things which are being handled this way.
Things to be handled should implement the same interface as EST_Handleable (either by taking that as a superclass or by reimplementing it) and in addition define {\tt object_ptr()}. See EST_TBox for an example.
There are two parameter types. In most cases the thing which contains the reference count and the data it represents will be the same object, but in the case of boxed values it may not be, so you can specify the type of both independently.
Definition at line 71 of file EST_THandle.h.
|
inline |
Definition at line 78 of file EST_THandle.h.
|
inline |
Definition at line 80 of file EST_THandle.h.
|
inline |
Definition at line 82 of file EST_THandle.h.
|
inline |
Definition at line 88 of file EST_THandle.h.
Definition at line 95 of file EST_THandle.h.
|
inline |
Definition at line 97 of file EST_THandle.h.
|
inline |
Definition at line 99 of file EST_THandle.h.
|
inline |
Definition at line 114 of file EST_THandle.h.
|
inline |
Definition at line 126 of file EST_THandle.h.
|
inline |
Definition at line 130 of file EST_THandle.h.
|
inline |
Definition at line 135 of file EST_THandle.h.
|
inline |
Definition at line 136 of file EST_THandle.h.
|
inline |
Definition at line 138 of file EST_THandle.h.
|
inline |
Definition at line 139 of file EST_THandle.h.
|
inline |
Definition at line 140 of file EST_THandle.h.
|
inline |
Definition at line 141 of file EST_THandle.h.
|
friend |
Definition at line 143 of file EST_THandle.h.
|
friend |
Definition at line 145 of file EST_THandle.h.
Definition at line 148 of file EST_THandle.h.