ACE
6.3.3
|
Maps pointers to the base address of the region to which each pointer belongs. More...
#include <Based_Pointer_Repository.h>
Public Member Functions | |
ACE_Based_Pointer_Repository (void) | |
~ACE_Based_Pointer_Repository (void) | |
int | find (void *addr, void *&base_addr) |
int | bind (void *addr, size_t size) |
int | unbind (void *addr) |
Private Member Functions | |
void | operator= (const ACE_Based_Pointer_Repository &) |
ACE_Based_Pointer_Repository (const ACE_Based_Pointer_Repository &) | |
Private Attributes | |
ACE_Based_Pointer_Repository_Rep * | rep_ |
Maps pointers to the base address of the region to which each pointer belongs.
ACE_Based_Pointer_Repository::ACE_Based_Pointer_Repository | ( | void | ) |
ACE_Based_Pointer_Repository::~ACE_Based_Pointer_Repository | ( | void | ) |
|
private |
int ACE_Based_Pointer_Repository::bind | ( | void * | addr, |
size_t | size | ||
) |
Bind a new entry to the repository or update the size of an existing entry. Returns 0 on success and -1 on failure.
int ACE_Based_Pointer_Repository::find | ( | void * | addr, |
void *& | base_addr | ||
) |
Return the appropriate base_addr region that contains addr. Returns 1 on success and 0 if the addr isn't contained in any base_addr region.
|
private |
int ACE_Based_Pointer_Repository::unbind | ( | void * | addr | ) |
Unbind from the repository the <base_addr> that addr is contained within.
|
private |
Use the "Cheshire-Cat" technique to hide the implementation in order to avoid circular #include dependencies.