Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

ACE_Shared_Memory_MM Class Reference

Shared memory wrapper based on MMAP. More...

#include <Shared_Memory_MM.h>

Inheritance diagram for ACE_Shared_Memory_MM:

Inheritance graph
[legend]
Collaboration diagram for ACE_Shared_Memory_MM:

Collaboration graph
[legend]
List of all members.

Public Methods

 ACE_Shared_Memory_MM (void)
 Default constructor.

 ACE_Shared_Memory_MM (ACE_HANDLE handle, int length=-1, int prot=PROT_RDWR, int share=ACE_MAP_PRIVATE, char *addr=0, off_t pos=0)
 Constructor.

 ACE_Shared_Memory_MM (const ACE_TCHAR *file_name, int len=-1, int flags=O_RDWR|O_CREAT, int mode=ACE_DEFAULT_FILE_PERMS, int prot=PROT_RDWR, int share=ACE_MAP_SHARED, char *addr=0, off_t pos=0)
 Constructor.

int open (ACE_HANDLE handle, int length=-1, int prot=PROT_RDWR, int share=ACE_MAP_PRIVATE, char *addr=0, off_t pos=0)
 Open method.

int open (const ACE_TCHAR *file_name, int len=-1, int flags=O_RDWR|O_CREAT, int mode=ACE_DEFAULT_FILE_PERMS, int prot=PROT_RDWR, int share=ACE_MAP_SHARED, char *addr=0, off_t pos=0)
 Open method.

const ACE_TCHARfilename (void) const
 Return the name of file that is mapped (if any).

virtual int close (void)
 Close down the shared memory segment.

virtual int remove (void)
 Remove the shared memory segment and the underlying file.

virtual void * malloc (size_t size=0)
 Create a new chuck of memory containing <size> bytes.

virtual int free (void *p)
virtual int get_segment_size (void) const
 Return the size of the shared memory segment.

virtual ACE_HANDLE get_id (void) const
 Return the ID of the shared memory segment (i.e., an ACE_HANDLE).

void dump (void) const
 Dump the state of an object.


Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.


Private Attributes

ACE_Mem_Map shared_memory_
 This version is implemented with memory-mapped files.


Detailed Description

Shared memory wrapper based on MMAP.

This class provides a very simple-minded shared memory manager. For more a powerful memory allocator please see <ACE_Malloc>.


Constructor & Destructor Documentation

ACE_Shared_Memory_MM::ACE_Shared_Memory_MM void   
 

Default constructor.

ACE_Shared_Memory_MM::ACE_Shared_Memory_MM ACE_HANDLE    handle,
int    length = -1,
int    prot = PROT_RDWR,
int    share = ACE_MAP_PRIVATE,
char *    addr = 0,
off_t    pos = 0
 

Constructor.

ACE_Shared_Memory_MM::ACE_Shared_Memory_MM const ACE_TCHAR   file_name,
int    len = -1,
int    flags = O_RDWR|O_CREAT,
int    mode = ACE_DEFAULT_FILE_PERMS,
int    prot = PROT_RDWR,
int    share = ACE_MAP_SHARED,
char *    addr = 0,
off_t    pos = 0
 

Constructor.


Member Function Documentation

ACE_INLINE int ACE_Shared_Memory_MM::close void    [virtual]
 

Close down the shared memory segment.

Implements ACE_Shared_Memory.

void ACE_Shared_Memory_MM::dump void    const
 

Dump the state of an object.

ACE_INLINE const ACE_TCHAR * ACE_Shared_Memory_MM::filename void    const
 

Return the name of file that is mapped (if any).

ACE_INLINE int ACE_Shared_Memory_MM::free void *    p [virtual]
 

Free a chuck of memory allocated by <ACE_Shared_Memory_MM::malloc>.

Implements ACE_Shared_Memory.

ACE_INLINE ACE_HANDLE ACE_Shared_Memory_MM::get_id void    const [virtual]
 

Return the ID of the shared memory segment (i.e., an ACE_HANDLE).

Implements ACE_Shared_Memory.

ACE_INLINE int ACE_Shared_Memory_MM::get_segment_size void    const [virtual]
 

Return the size of the shared memory segment.

Implements ACE_Shared_Memory.

ACE_INLINE void * ACE_Shared_Memory_MM::malloc size_t    size = 0 [virtual]
 

Create a new chuck of memory containing <size> bytes.

Implements ACE_Shared_Memory.

ACE_INLINE int ACE_Shared_Memory_MM::open const ACE_TCHAR   file_name,
int    len = -1,
int    flags = O_RDWR|O_CREAT,
int    mode = ACE_DEFAULT_FILE_PERMS,
int    prot = PROT_RDWR,
int    share = ACE_MAP_SHARED,
char *    addr = 0,
off_t    pos = 0
 

Open method.

ACE_INLINE int ACE_Shared_Memory_MM::open ACE_HANDLE    handle,
int    length = -1,
int    prot = PROT_RDWR,
int    share = ACE_MAP_PRIVATE,
char *    addr = 0,
off_t    pos = 0
 

Open method.

ACE_INLINE int ACE_Shared_Memory_MM::remove void    [virtual]
 

Remove the shared memory segment and the underlying file.

Implements ACE_Shared_Memory.


Member Data Documentation

ACE_Shared_Memory_MM::ACE_ALLOC_HOOK_DECLARE
 

Declare the dynamic allocation hooks.

ACE_Mem_Map ACE_Shared_Memory_MM::shared_memory_ [private]
 

This version is implemented with memory-mapped files.


The documentation for this class was generated from the following files:
Generated on Wed Jan 14 22:47:49 2004 for ACE by doxygen1.2.18