#include <sharelib.h>
Inheritance diagram for Share::RelocPtr< T >:
Public Types | |
typedef T | value_type |
typedef size_t | size_type |
typedef ptrdiff_t | difference_type |
typedef T * | pointer |
typedef const T * | const_pointer |
typedef TVoidPointer< T >::void_pointer | void_pointer |
void pointer type derived from template parameter | |
typedef TVoidPointer< T >::const_void_pointer | const_void_pointer |
const void pointer type derived from template parameter | |
typedef TReference< T >::reference | reference |
Reference type derived from template parameter. | |
typedef TReference< T >::const_reference | const_reference |
Const reference type derived from template parameter. | |
typedef Relocator::relative_pointer | relative_pointer |
Relative pointer type. | |
typedef Relocator::relative_const_pointer | relative_const_pointer |
Relative const pointer type. | |
typedef std::random_access_iterator_tag | iterator_category |
STL iterator category. | |
Public Member Functions | |
RelocPtr () | |
RelocPtr (void_pointer abs) | |
RelocPtr (void_pointer abs, void *base) | |
RelocPtr (const RelocPtr &src) | |
RelocPtr & | operator= (const RelocPtr &src) |
RelocPtr & | operator= (void_pointer abs) |
pointer | operator-> () const |
operator pointer () const | |
Implicit conversion to native pointer. | |
reference | operator[] (size_type i) |
relative_pointer | toRel () const |
Export pointer to number | |
RelocPtr & | operator++ () |
RelocPtr & | operator-- () |
RelocPtr & | operator+= (difference_type count) |
RelocPtr & | operator-= (difference_type count) |
Static Public Member Functions | |
static RelocPtr< T > | fromRel (relative_pointer rel) |
Import pointer from number | |
static void * | operator new (size_t size) throw (ShareException) |
static void * | operator new[] (size_t size) throw (ShareException) |
static void | operator delete (void *addr, size_t) throw () |
static void | operator delete[] (void *addr, size_t) throw () |
static void * | alloc (size_t size) throw (ShareException) |
static void * | alloc (size_t size, size_t count) throw (ShareException) |
static void | free (void *addr) throw () |
Definition at line 422 of file sharelib.h.
typedef T Share::RelocPtr< T >::value_type |
Definition at line 424 of file sharelib.h.
typedef size_t Share::RelocPtr< T >::size_type |
Definition at line 425 of file sharelib.h.
typedef ptrdiff_t Share::RelocPtr< T >::difference_type |
Definition at line 426 of file sharelib.h.
typedef T* Share::RelocPtr< T >::pointer |
Definition at line 427 of file sharelib.h.
typedef const T* Share::RelocPtr< T >::const_pointer |
Definition at line 428 of file sharelib.h.
typedef TVoidPointer<T>::void_pointer Share::RelocPtr< T >::void_pointer |
typedef TVoidPointer<T>::const_void_pointer Share::RelocPtr< T >::const_void_pointer |
typedef TReference<T>::reference Share::RelocPtr< T >::reference |
typedef TReference<T>::const_reference Share::RelocPtr< T >::const_reference |
typedef Relocator::relative_pointer Share::RelocPtr< T >::relative_pointer |
typedef Relocator::relative_const_pointer Share::RelocPtr< T >::relative_const_pointer |
typedef std::random_access_iterator_tag Share::RelocPtr< T >::iterator_category |
Share::RelocPtr< T >::RelocPtr | ( | ) | [inline] |
Construct null pointer
Definition at line 444 of file sharelib.h.
Share::RelocPtr< T >::RelocPtr | ( | void_pointer | abs | ) | [inline] |
Initialize object using ShareManager singleton to obtain relative address.
abs | Absolute pointer to save to object. |
Definition at line 453 of file sharelib.h.
Share::RelocPtr< T >::RelocPtr | ( | void_pointer | abs, | |
void * | base | |||
) | [inline] |
Initialize object using given base address.
abs | Absolute pointer to save to object. | |
base | Base address for relocation. |
Definition at line 463 of file sharelib.h.
Share::RelocPtr< T >::RelocPtr | ( | const RelocPtr< T > & | src | ) | [inline] |
Copy constructor
Definition at line 471 of file sharelib.h.
RelocPtr& Share::RelocPtr< T >::operator= | ( | const RelocPtr< T > & | src | ) | [inline] |
RelocPtr& Share::RelocPtr< T >::operator= | ( | void_pointer | abs | ) | [inline] |
Assignment from absolute pointer
Definition at line 488 of file sharelib.h.
References Share::ShareManager::instance().
pointer Share::RelocPtr< T >::operator-> | ( | ) | const [inline] |
Implicit conversion for accessing members
Definition at line 497 of file sharelib.h.
References Share::ShareManager::instance().
Referenced by Share::RelocPtr< T >::operator pointer().
Share::RelocPtr< T >::operator pointer | ( | ) | const [inline] |
Implicit conversion to native pointer.
Definition at line 506 of file sharelib.h.
References Share::RelocPtr< T >::operator->().
Here is the call graph for this function:
reference Share::RelocPtr< T >::operator[] | ( | size_type | i | ) | [inline] |
relative_pointer Share::RelocPtr< T >::toRel | ( | ) | const [inline] |
Export pointer to number
Definition at line 523 of file sharelib.h.
Referenced by Share::operator-().
static RelocPtr<T> Share::RelocPtr< T >::fromRel | ( | relative_pointer | rel | ) | [inline, static] |
Import pointer from number
Definition at line 530 of file sharelib.h.
References Share::RelocPtr< T >::rel_.
RelocPtr& Share::RelocPtr< T >::operator++ | ( | ) | [inline] |
Pre-increment
Definition at line 539 of file sharelib.h.
RelocPtr& Share::RelocPtr< T >::operator-- | ( | ) | [inline] |
Pre-decrement
Definition at line 546 of file sharelib.h.
RelocPtr& Share::RelocPtr< T >::operator+= | ( | difference_type | count | ) | [inline] |
Overloaded operator +=
Definition at line 554 of file sharelib.h.
RelocPtr& Share::RelocPtr< T >::operator-= | ( | difference_type | count | ) | [inline] |
Overloaded operator -=
Definition at line 562 of file sharelib.h.
static void* Share::SharedObject::operator new | ( | size_t | size | ) | throw (ShareException) [inline, static, inherited] |
Overloaded operator new
ShareException | Library-specific exception derived from std::bad_alloc |
Definition at line 352 of file sharelib.h.
References Share::SharedObject::alloc().
static void* Share::SharedObject::operator new[] | ( | size_t | size | ) | throw (ShareException) [inline, static, inherited] |
Overloaded operator new[]
ShareException | Library-specific exception derived from std::bad_alloc |
Definition at line 361 of file sharelib.h.
References Share::SharedObject::alloc().
static void Share::SharedObject::operator delete | ( | void * | addr, | |
size_t | ||||
) | throw () [inline, static, inherited] |
Overloaded opeartor delete
Definition at line 369 of file sharelib.h.
References Share::SharedObject::free().
static void Share::SharedObject::operator delete[] | ( | void * | addr, | |
size_t | ||||
) | throw () [inline, static, inherited] |
Overloaded operator delete[]
Definition at line 377 of file sharelib.h.
References Share::SharedObject::free().
static void* Share::SharedObject::alloc | ( | size_t | size | ) | throw (ShareException) [inline, static, inherited] |
Allocate block of memory inside shared segment.
size | Desired size of block to allocate. |
ShareException | Library-specific exception derived from std::bad_alloc |
Definition at line 388 of file sharelib.h.
References Share::ShareManager::instance().
Referenced by Share::SharedObject::alloc(), Share::SharedObject::operator new(), and Share::SharedObject::operator new[]().
static void* Share::SharedObject::alloc | ( | size_t | size, | |
size_t | count | |||
) | throw (ShareException) [inline, static, inherited] |
Allocate block of memory inside shared segment.
size | Desired size of block to allocate. |
ShareException | Library-specific exception derived from std::bad_alloc |
count | Objects count to allocate. |
Definition at line 398 of file sharelib.h.
References Share::SharedObject::alloc().
static void Share::SharedObject::free | ( | void * | addr | ) | throw () [inline, static, inherited] |
Free block of memory previously allocated by alloc() method.
addr | Address of block returned by alloc() method. |
Definition at line 407 of file sharelib.h.
References Share::ShareManager::instance().
Referenced by Share::SharedObject::operator delete(), and Share::SharedObject::operator delete[]().