System.Win32.FileMapping
Copyright | (c) Esa Ilari Vuokko, 2006 |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Esa Ilari Vuokko <[email protected]> |
Stability | provisional |
Portability | portable |
Safe Haskell | Trustworthy |
Language | Haskell98 |
Description
A collection of FFI declarations for interfacing with Win32 mapped files.
mapFile :: FilePath -> IO (ForeignPtr a, Int) Source
Maps file fully and returns ForeignPtr and length of the mapped area. The mapped file is opened read-only and shared reading.
mapFileBs :: FilePath -> IO ByteString Source
As mapFile, but returns ByteString
data MappedObject Source
Constructors
MappedObject HANDLE HANDLE FileMapAccess |
Arguments
:: FilePath | Path |
-> Bool | Write? (False = read-only) |
-> Maybe Bool | Sharing mode, no sharing, share read, share read+write |
-> (Integer -> MappedObject -> IO a) | Action |
-> IO a |
Opens an existing file and creates mapping object to it.
Arguments
:: MappedObject | Mapped object, from withMappedFile |
-> Integer | Position in file |
-> Int | Size of mapped area |
-> (Ptr a -> IO b) | Action |
-> IO b |
Maps area into memory.
type ProtectSectionFlags = DWORD Source
sEC_COMMIT :: ProtectSectionFlags Source
sEC_IMAGE :: ProtectSectionFlags Source
sEC_NOCACHE :: ProtectSectionFlags Source
type FileMapAccess = DWORD Source
sEC_RESERVE :: ProtectSectionFlags Source
fILE_MAP_ALL_ACCESS :: FileMapAccess Source
fILE_MAP_COPY :: FileMapAccess Source
fILE_MAP_READ :: FileMapAccess Source
fILE_MAP_WRITE :: FileMapAccess Source
createFileMapping :: Maybe HANDLE -> ProtectFlags -> DDWORD -> Maybe String -> IO HANDLE Source
openFileMapping :: FileMapAccess -> BOOL -> Maybe String -> IO HANDLE Source
mapViewOfFileEx :: HANDLE -> FileMapAccess -> DDWORD -> SIZE_T -> Ptr a -> IO (Ptr b) Source
mapViewOfFile :: HANDLE -> FileMapAccess -> DDWORD -> SIZE_T -> IO (Ptr a) Source
unmapViewOfFile :: Ptr a -> IO () Source
c_OpenFileMapping :: DWORD -> BOOL -> LPCTSTR -> IO HANDLE Source
c_CreateFileMapping :: HANDLE -> Ptr () -> DWORD -> DWORD -> DWORD -> LPCTSTR -> IO HANDLE Source
c_MapViewOfFileEx :: HANDLE -> DWORD -> DWORD -> DWORD -> SIZE_T -> Ptr a -> IO (Ptr b) Source
c_UnmapViewOfFile :: Ptr a -> IO BOOL Source
c_UnmapViewOfFileFinaliser :: FunPtr (Ptr a -> IO ()) Source
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/Win32-2.3.1.0/System-Win32-FileMapping.html