D Programming Language 2.0

- Comments
- D
- Search
- Home

Last update Tue Aug 10 19:14:15 2010

# std.mmfile

Read and write memory mapped files.

License:
Boost License 1.0.

Authors:
Walter Bright, Matthew Wilson

Copyright Digital Mars 2004 - 2009. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at ) http:
//www.boost.org/LICENSE_1_0.txt

class MmFile;
  MmFile objects control the memory mapped file resource.

  enum Mode;
    The mode the memory mapped file is opened with.

    Read
      read existing file

    ReadWriteNew
      delete existing file, write new file

    ReadWrite
      read/write existing file, create if not existing

    ReadCopyOnWrite
      read/write existing file, copy on write

  this(string filename);
    Open memory mapped file filename for reading. File is closed when the object instance is deleted.

    Throws:
    std.file.FileException

  this(string filename, Mode mode, ulong size, void* address, size_t window = 0);
    Open memory mapped file filename in mode. File is closed when the object instance is deleted.

    Parameters:

    string filename | name of the file. If null, an anonymous file mapping is created.
    Mode mode | access mode defined above.
    ulong size | the size of the file. If 0, it is taken to be the size of the existing file.
    void* address | the preferred address to map the file to, although the system is not required to honor it. If null, the system selects the most convenient address.
    size_t window | preferred block size of the amount of data to map at one time with 0 meaning map the entire file. The window size must be a multiple of the memory allocation page size.

    Throws:
    std.file.FileException

  ulong length();
    Gives size in bytes of the memory mapped file.

  Mode mode();
    Read-only property returning the file mode.

  void[] opSlice();
    Returns entire file contents as an array.

  void[] opSlice(ulong i1, ulong i2);
    Returns slice of file contents as an array.

  ubyte opIndex(ulong i);
    Returns byte at index i in file.

  ubyte opIndexAssign(ubyte value, ulong i);
    Sets and returns byte at index i in file to value.

Copyright Digital Mars 2004 - 2009. | Page generated by Ddoc.