Rudiments
sharedmemory.h
1 // Copyright (c) 1999-2018 David Muse
2 // See the COPYING file for more information.
3 
4 #ifndef RUDIMENTS_SHAREDMEMORY_H
5 #define RUDIMENTS_SHAREDMEMORY_H
6 
7 #include <rudiments/private/sharedmemoryincludes.h>
8 
19 class RUDIMENTS_DLLSPEC sharedmemory {
20  public:
23 
29 
34  bool create(key_t key, size_t size, mode_t permissions);
35 
38  bool attach(key_t key, size_t size);
39 
43  bool createOrAttach(key_t key, size_t size,
44  mode_t permissions);
45 
53  void dontRemove();
54 
57  bool forceRemove();
58 
61  int32_t getId() const;
62 
66  void *getPointer() const;
67 
75  bool setUserName(const char *username);
76 
84  bool setGroupName(const char *groupname);
85 
88  bool setUserId(uid_t uid);
89 
92  bool setGroupId(gid_t gid);
93 
97 
105  const char *getUserName();
106 
114  const char *getGroupName();
115 
118  uid_t getUserId();
119 
122  gid_t getGroupId();
123 
126  mode_t getPermissions();
127 
130  static bool supported();
131 
132  #include <rudiments/private/sharedmemory.h>
133 };
134 
135 #endif
Definition: permissions.h:28
Definition: sharedmemory.h:19
bool create(key_t key, size_t size, mode_t permissions)
void dontRemove()
bool attach(key_t key, size_t size)
bool setPermissions(mode_t permissions)
uid_t getUserId()
bool forceRemove()
static bool supported()
const char * getGroupName()
bool setGroupId(gid_t gid)
bool setGroupName(const char *groupname)
bool setUserId(uid_t uid)
bool createOrAttach(key_t key, size_t size, mode_t permissions)
void * getPointer() const
int32_t getId() const
bool setUserName(const char *username)
gid_t getGroupId()
const char * getUserName()
mode_t getPermissions()