Public Methods |
| | ACE_Mem_Map (void) |
| | Default constructor.
|
| | ACE_Mem_Map (ACE_HANDLE handle, int length = -1, int prot = PROT_RDWR, int share = ACE_MAP_PRIVATE, void *addr = 0, off_t offset = 0, LPSECURITY_ATTRIBUTES sa = 0) |
| | Map a file from an open file descriptor <handle>. This function will lookup the length of the file if it is not given.
|
| | ACE_Mem_Map (const ACE_TCHAR *filename, int len = -1, int flags = O_RDWR | O_CREAT, int mode = ACE_DEFAULT_FILE_PERMS, int prot = PROT_RDWR, int share = ACE_MAP_PRIVATE, void *addr = 0, off_t offset = 0, LPSECURITY_ATTRIBUTES sa = 0) |
| | Map a file specified by <file_name>.
|
| int | map (ACE_HANDLE handle, int length = -1, int prot = PROT_RDWR, int share = ACE_MAP_PRIVATE, void *addr = 0, off_t offset = 0, LPSECURITY_ATTRIBUTES sa = 0) |
| | Map a file from an open file descriptor <handle>. This function will lookup the length of the file if it is not given.
|
| int | map (int length = -1, int prot = PROT_RDWR, int share = ACE_MAP_PRIVATE, void *addr = 0, off_t offset = 0, LPSECURITY_ATTRIBUTES sa = 0) |
| | Remap the file associated with <handle_>.
|
| int | map (const ACE_TCHAR *filename, int len = -1, int flags = O_RDWR | O_CREAT, int mode = ACE_DEFAULT_FILE_PERMS, int prot = PROT_RDWR, int share = ACE_MAP_PRIVATE, void *addr = 0, off_t offset = 0, LPSECURITY_ATTRIBUTES sa = 0) |
| | Map a file specified by <filename>.
|
| | ~ACE_Mem_Map (void) |
| | Destructor.
|
| int | open (const ACE_TCHAR *filename, int flags = O_RDWR | O_CREAT, int mode = ACE_DEFAULT_FILE_PERMS, LPSECURITY_ATTRIBUTES sa = 0) |
| | Open the file without mapping it.
|
| int | close (void) |
| | Close down the <handle_> if necessary and unmap the mapping.
|
| int | close_handle (void) |
| | Close down the <handle_> if necessary.
|
| int | close_filemapping_handle (void) |
| int | operator() (void *&addr) |
| | This operator passes back the starting address of the mapped file.
|
| void* | addr (void) const |
| | Return the base address.
|
| size_t | size (void) const |
| | This function returns the number of bytes currently mapped in the file.
|
| int | unmap (int len = -1) |
| | Unmap the region starting at <base_addr_>.
|
| int | unmap (void *addr, int len) |
| | Unmap the region starting at .
|
| int | sync (ssize_t len = -1, int flags = MS_SYNC) |
| int | sync (void *addr, size_t len, int flags = MS_SYNC) |
| | Sync <len> bytes of the memory region to the backing store starting at .
|
| int | protect (ssize_t len = -1, int prot = PROT_RDWR) |
| int | protect (void *addr, size_t len, int prot = PROT_RDWR) |
| | Change the protection of the pages of the mapped region to <prot> starting at up to <len> bytes.
|
| int | remove (void) |
| | Close and remove the file from the file system.
|
| int | advise (int behavior, int len = -1) |
| | Hook into the underlying VM system.
|
| ACE_HANDLE | handle (void) const |
| | Return the underlying <handle_>.
|
| const ACE_TCHAR* | filename (void) const |
| | Return the name of file that is mapped (if any).
|
| void | dump (void) const |
| | Dump the state of an object.
|
Public Attributes |
| | ACE_ALLOC_HOOK_DECLARE |
| | Declare the dynamic allocation hooks.
|
Private Methods |
| int | map_it (ACE_HANDLE handle, int len = -1, int prot = PROT_RDWR, int share = MAP_SHARED, void *addr = 0, off_t offset = 0, LPSECURITY_ATTRIBUTES sa = 0) |
| | This method does the dirty work of actually calling mmap to map the file into memory.
|
| | ACE_Mem_Map (const ACE_Mem_Map &) |
| void | operator= (const ACE_Mem_Map &) |
Private Attributes |
| void* | base_addr_ |
| | Base address of the memory-mapped file.
|
| ACE_TCHAR | filename_ [MAXPATHLEN + 1] |
| | Name of the file that is mapped.
|
| size_t | length_ |
| | Length of the mapping.
|
| ACE_HANDLE | handle_ |
| | HANDLE for the open file.
|
| ACE_HANDLE | file_mapping_ |
| | HANDLE for the open mapping.
|
| int | close_handle_ |
| | Keeps track of whether we need to close the handle. This is set if we opened the file.
|
This class works with both the mmap(2) UNIX system and the Win32 family of memory mapping system calls.