17#ifndef IOX_HOOFS_POSIX_WRAPPER_POSIX_ACCESS_RIGHTS_HPP
18#define IOX_HOOFS_POSIX_WRAPPER_POSIX_ACCESS_RIGHTS_HPP
20#include "iceoryx_hoofs/cxx/optional.hpp"
21#include "iceoryx_hoofs/cxx/string.hpp"
22#include "iceoryx_hoofs/cxx/vector.hpp"
23#include "iceoryx_hoofs/platform/types.hpp"
31static constexpr int MaxNumberOfGroups = 888;
35 PosixRights(
bool f_read,
bool f_write,
bool f_execute)
noexcept;
45 explicit PosixGroup(
const gid_t f_id)
noexcept;
48 bool operator==(
const PosixGroup& other)
const noexcept;
51 gid_t getID()
const noexcept;
53 bool doesExist()
const noexcept;
55 static PosixGroup getGroupOfCurrentProcess()
noexcept;
62 bool m_doesExist{
false};
71 explicit PosixUser(
const uid_t f_id)
noexcept;
76 uid_t getID()
const noexcept;
78 bool doesExist()
const noexcept;
80 static PosixUser getUserOfCurrentProcess()
noexcept;
87 bool m_doesExist{
false};
Optional implementation from the C++17 standard with C++11. The interface is analog to the C++17 stan...
Definition optional.hpp:69
string implementation with some adjustments in the API, because we are not allowed to throw exception...
Definition string.hpp:90
C++11 compatible vector implementation. We needed to do some adjustments in the API since we do not u...
Definition vector.hpp:39
Definition posix_access_rights.hpp:42
Definition posix_access_rights.hpp:66
building block to easily create free function for logging in a library context
Definition lockfree_queue.hpp:29
Definition posix_access_rights.hpp:34