# ACE_MMAP_Memory_Pool_Options Class Reference

Helper class for MMAP Memory Pool constructor options. More...

`#include <MMAP_Memory_Pool.h>`

List of all members.

## Public Types

enum | { FIRSTCALL_FIXED = 0, ALWAYS_FIXED = 1, NEVER_FIXED = 2 }

## Public Member Functions

| ACE_MMAP_Memory_Pool_Options (const void *base_addr=ACE_DEFAULT_BASE_ADDR, int use_fixed_addr=ALWAYS_FIXED, int write_each_page=1, off_t minimum_bytes=0, u_int flags=0, int guess_on_fault=1, LPSECURITY_ATTRIBUTES sa=0, mode_t file_mode=ACE_DEFAULT_FILE_PERMS)

## Public Attributes

const void * | base_addr_
| Base address of the memory-mapped backing store.
int | use_fixed_addr_
int | write_each_page_
off_t | minimum_bytes_
| What the minimim bytes of the initial segment should be.
u_int | flags_
| Any special flags that need to be used for `mmap`.
int | guess_on_fault_
LPSECURITY_ATTRIBUTES | sa_
| Pointer to a security attributes object. Only used on NT.
mode_t | file_mode_
| File mode for mmaped file, if it is created.

## Private Member Functions

| ACE_MMAP_Memory_Pool_Options (const ACE_MMAP_Memory_Pool_Options &)
ACE_MMAP_Memory_Pool_Options & | operator= (const ACE_MMAP_Memory_Pool_Options &)

## Detailed Description

Helper class for MMAP Memory Pool constructor options.

This should be a nested class, but that breaks too many compilers.

## Member Enumeration Documentation

anonymous enum

Enumeration values:

  FIRSTCALL_FIXED | The base address from the first call to mmap will be used for subsequent calls to mmap.
  ALWAYS_FIXED | The base address specified in base_addr will be used in all calls to mmap.
  NEVER_FIXED | The base address will be selected by the OS for each call to mmap. Caution should be used with this mode since a call that requires the backing store to grow may change pointers that are cached by the application.

## Constructor & Destructor Documentation

ACE_MMAP_Memory_Pool_Options::ACE_MMAP_Memory_Pool_Options | ( | const void * | base_addr = `ACE_DEFAULT_BASE_ADDR`,
|  | int | use_fixed_addr = `ALWAYS_FIXED`,
|  | int | write_each_page = `1`,
|  | off_t | minimum_bytes = `0`,
|  | u_int | flags = `0`,
|  | int | guess_on_fault = `1`,
|  | LPSECURITY_ATTRIBUTES | sa = `0`,
|  | mode_t | file_mode = `ACE_DEFAULT_FILE_PERMS`
| ) |

ACE_MMAP_Memory_Pool_Options::ACE_MMAP_Memory_Pool_Options | ( | const ACE_MMAP_Memory_Pool_Options & |  | ) | `[private]`

## Member Function Documentation

ACE_MMAP_Memory_Pool_Options& ACE_MMAP_Memory_Pool_Options::operator= | ( | const ACE_MMAP_Memory_Pool_Options & |  | ) | `[private]`

## Member Data Documentation

const void* ACE_MMAP_Memory_Pool_Options::base_addr_

| Base address of the memory-mapped backing store.

mode_t ACE_MMAP_Memory_Pool_Options::file_mode_

| File mode for mmaped file, if it is created.

u_int ACE_MMAP_Memory_Pool_Options::flags_

| Any special flags that need to be used for `mmap`.

int ACE_MMAP_Memory_Pool_Options::guess_on_fault_

| Try to remap without knowing the faulting address. This parameter is ignored on platforms that know the faulting address (UNIX with SI_ADDR and Win32).

off_t ACE_MMAP_Memory_Pool_Options::minimum_bytes_

| What the minimim bytes of the initial segment should be.

LPSECURITY_ATTRIBUTES ACE_MMAP_Memory_Pool_Options::sa_

| Pointer to a security attributes object. Only used on NT.

int ACE_MMAP_Memory_Pool_Options::use_fixed_addr_

Determines whether we set `base_addr_` or if mmap(2) selects it FIRSTCALL_FIXED The base address from the first call to mmap will be used for subsequent calls to mmap ALWAYS_FIXED The base address specified in base_addr will be used in all calls to mmap. NEVER_FIXED The base address will be selected by the OS for each call to mmap. Caution should be used with this mode since a call that requires the backing store to grow may change pointers that are cached by the application.

int ACE_MMAP_Memory_Pool_Options::write_each_page_

| Should each page be written eagerly to avoid surprises later on?

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

- MMAP_Memory_Pool.h
- MMAP_Memory_Pool.cpp