Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

# ACE_SV_Shared_Memory Class Reference

This is a wrapper for System V shared memory. More...

`#include <SV_Shared_Memory.h>`

List of all members.

## Public Types
enum | { ACE_CREATE = IPC_CREAT, ACE_OPEN = 0 }
## Public Member Functions
| ACE_SV_Shared_Memory (void)
| ACE_SV_Shared_Memory (key_t external_id, size_t size, int create, int perms=ACE_DEFAULT_FILE_PERMS, void *virtual_addr=0, int flags=0)
| ACE_SV_Shared_Memory (ACE_HANDLE internal_id, int flags=0)
int | open (key_t external_id, size_t size, int create=ACE_SV_Shared_Memory::ACE_OPEN, int perms=ACE_DEFAULT_FILE_PERMS)
int | open_and_attach (key_t external_id, size_t size, int create=ACE_SV_Shared_Memory::ACE_OPEN, int perms=ACE_DEFAULT_FILE_PERMS, void *virtual_addr=0, int flags=0)
int | attach (void *virtual_addr=0, int flags=0)
| Attach this shared memory segment.
int | detach (void)
| Detach this shared memory segment.
int | remove (void)
| Remove this shared memory segment.
int | control (int cmd, void *buf)
| Forward to underlying System V <shmctl>.
void * | get_segment_ptr (void) const
size_t | get_segment_size (void) const
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.
## Protected Types
enum | { ALIGN_WORDB = 8 }
## Protected Member Functions
size_t | round_up (size_t len)
| Round up to an appropriate page size.
## Protected Attributes
ACE_HANDLE | internal_id_
| Internal identifier.
size_t | size_
| Size of the mapped segment.
void * | segment_ptr_
| Pointer to the beginning of the segment.

## Detailed Description

This is a wrapper for System V shared memory.

## Member Enumeration Documentation

anonymous enum

  | Enumeration values:
  ACE_CREATE |
  ACE_OPEN |

anonymous enum`[protected]`

  | Enumeration values:
  ALIGN_WORDB | Most restrictive alignment.

## Constructor & Destructor Documentation

ACE_SV_Shared_Memory::ACE_SV_Shared_Memory | ( | void |  | ) |

ACE_SV_Shared_Memory::ACE_SV_Shared_Memory | ( | key_t | external_id,
|  | size_t | size,
|  | int | create,
|  | int | perms = `ACE_DEFAULT_FILE_PERMS`,
|  | void * | virtual_addr = `0`,
|  | int | flags = `0`
| ) |

ACE_SV_Shared_Memory::ACE_SV_Shared_Memory | ( | ACE_HANDLE | internal_id,
|  | int | flags = `0`
| ) |

## Member Function Documentation

ACE_INLINE int ACE_SV_Shared_Memory::attach | ( | void * | virtual_addr = `0`,
|  | int | flags = `0`
| ) |

| Attach this shared memory segment.

ACE_INLINE int ACE_SV_Shared_Memory::control | ( | int | cmd,
|  | void * | buf
| ) |

| Forward to underlying System V <shmctl>.

ACE_INLINE int ACE_SV_Shared_Memory::detach | ( | void |  | ) |

| Detach this shared memory segment.

ACE_BEGIN_VERSIONED_NAMESPACE_DECL void ACE_SV_Shared_Memory::dump | ( | void |  | ) | const

| Dump the state of an object.

ACE_INLINE ACE_HANDLE ACE_SV_Shared_Memory::get_id | ( | void |  | ) | const

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

ACE_INLINE void * ACE_SV_Shared_Memory::get_segment_ptr | ( | void |  | ) | const

ACE_INLINE size_t ACE_SV_Shared_Memory::get_segment_size | ( | void |  | ) | const

ACE_INLINE int ACE_SV_Shared_Memory::open | ( | key_t | external_id,
|  | size_t | size,
|  | int | create = `ACE_SV_Shared_Memory::ACE_OPEN`,
|  | int | perms = `ACE_DEFAULT_FILE_PERMS`
| ) |

int ACE_SV_Shared_Memory::open_and_attach | ( | key_t | external_id,
|  | size_t | size,
|  | int | create = `ACE_SV_Shared_Memory::ACE_OPEN`,
|  | int | perms = `ACE_DEFAULT_FILE_PERMS`,
|  | void * | virtual_addr = `0`,
|  | int | flags = `0`
| ) |

ACE_INLINE int ACE_SV_Shared_Memory::remove | ( | void |  | ) |

| Remove this shared memory segment.

ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE size_t ACE_SV_Shared_Memory::round_up | ( | size_t | len | ) | `[protected]`

| Round up to an appropriate page size.

## Member Data Documentation

ACE_SV_Shared_Memory::ACE_ALLOC_HOOK_DECLARE

| Declare the dynamic allocation hooks.

ACE_HANDLE ACE_SV_Shared_Memory::internal_id_`[protected]`

| Internal identifier.

void* ACE_SV_Shared_Memory::segment_ptr_`[protected]`

| Pointer to the beginning of the segment.

size_t ACE_SV_Shared_Memory::size_`[protected]`

| Size of the mapped segment.

The documentation for this class was generated from the following files:

- SV_Shared_Memory.h
- SV_Shared_Memory.cpp
- SV_Shared_Memory.inl