GCS  0.2.3
gu_mmap.hpp
1 /*
2  * Copyright (C) 2009-2013 Codership Oy <info@codership.com>
3  *
4  * $Id: gu_mmap.hpp 3190 2013-08-07 21:49:17Z alex $
5  */
6 
7 #ifndef __GCACHE_MMAP__
8 #define __GCACHE_MMAP__
9 
10 #include "gu_fdesc.hpp"
11 
12 namespace gu
13 {
14 
15 class MMap
16 {
17 
18 public:
19 
20  size_t const size;
21  void* const ptr;
22 
23  MMap (const FileDescriptor& fd, bool sequential = false);
24 
25  ~MMap ();
26 
27  void dont_need() const;
28  void sync() const;
29  void unmap();
30 
31 private:
32 
33  bool mapped;
34 
35  // This class is definitely non-copyable
36  MMap (const MMap&);
37  MMap& operator = (const MMap);
38 };
39 
40 } /* namespace gu */
41 
42 #endif /* __GCACHE_MMAP__ */
Definition: gu_fdesc.hpp:18
Definition: gu_mmap.hpp:15