Rudiments
semaphoreset.h
1// Copyright (c) 1999-2018 David Muse
2// See the COPYING file for more information.
3
4#ifndef RUDIMENTS_SEMAPHORESET_H
5#define RUDIMENTS_SEMAPHORESET_H
6
7#include <rudiments/private/semaphoresetincludes.h>
8
44class RUDIMENTS_DLLSPEC semaphoreset : public object {
45 public:
46
49
54
58
65
75 bool create(key_t key, mode_t permissions,
76 int32_t semcount, const int32_t *values);
77
81 bool attach(key_t key, int32_t semcount);
82
87 bool createOrAttach(key_t key, mode_t permissions,
88 int32_t semcount, const int32_t *values);
89
109 void setRemove(bool remove);
110
113 bool getRemove();
114
117
120
132
135
136
140
153
157
158
161
164
165
172 bool setUserName(const char *username);
173
181 bool setGroupName(const char *groupname);
182
185 bool setUserId(uid_t uid);
186
189 bool setGroupId(gid_t gid);
190
194
195
207 const char *getUserName();
208
220 const char *getGroupName();
221
224 uid_t getUserId();
225
228 gid_t getGroupId();
229
232
233
237
241
250
254
257 static bool isSupported();
258
259 #include <rudiments/private/semaphoreset.h>
260};
261
262#endif
Definition avltree.h:11
Definition object.h:10
Definition permissions.h:28
Definition semaphoreset.h:44
bool getRemove()
bool wait(int32_t index, int32_t seconds, int32_t nanoseconds)
bool createOrAttach(key_t key, mode_t permissions, int32_t semcount, const int32_t *values)
bool supportsUndoSemaphoreOperations()
bool create(key_t key, mode_t permissions, int32_t semcount, const int32_t *values)
mode_t getPermissions()
bool setPermissions(mode_t permissions)
static bool isSupported()
gid_t getGroupId()
const char * getUserName()
int32_t getId()
bool setUserId(uid_t uid)
bool signalWithUndo(int32_t index)
const char * getGroupName()
bool getRetryInterruptedOperations()
void setRemove(bool remove)
bool setUserName(const char *username)
uid_t getUserId()
bool wait(int32_t index)
bool setGroupId(gid_t gid)
bool setGroupName(const char *groupname)
bool setValue(int32_t index, int32_t value)
bool attach(key_t key, int32_t semcount)
int32_t getWaitingForIncrement(int32_t index)
int32_t getWaitingForZero(int32_t index)
bool supportsTimedSemaphoreOperations()
bool waitWithUndo(int32_t index)
bool waitWithUndo(int32_t index, int32_t seconds, int32_t nanoseconds)
void setRetryInterruptedOperations(bool retry)
bool signal(int32_t index)
int32_t getValue(int32_t index)