4 #ifndef RUDIMENTS_MEMORYMAP_H
5 #define RUDIMENTS_MEMORYMAP_H
7 #include <rudiments/private/memorymapincludes.h>
9 #ifdef RUDIMENTS_NAMESPACE
13 class memorymapprivate;
62 bool attach(int32_t fd, off64_t offset,
size_t len,
63 int32_t protection, int32_t flags);
72 bool setProtection(int32_t protection);
90 bool setProtection(off64_t offset,
size_t len,
114 bool sync(
bool immediate,
bool invalidate);
130 bool sync(off64_t offset,
size_t len,
131 bool immediate,
bool invalidate);
143 bool sequentialAccess(off64_t offset,
size_t len);
154 bool randomAccess(off64_t offset,
size_t len);
165 bool willNeed(off64_t offset,
size_t len);
176 bool wontNeed(off64_t offset,
size_t len);
187 bool normalAccess(off64_t offset,
size_t len);
202 bool lock(off64_t offset,
size_t len);
217 bool unlock(off64_t offset,
size_t len);
236 bool inMemory(off64_t offset,
size_t len);
247 static bool lockAll();
257 static bool lockAllCurrent();
267 static bool lockAllFuture();
275 static bool unlockAll();
277 #include <rudiments/private/memorymap.h>
280 #ifdef RUDIMENTS_NAMESPACE