OGLplus  (0.59.0) a C++ wrapper for rendering APIs

user_info.hpp
Go to the documentation of this file.
1 #ifndef EAGINE_USER_INFO_HPP
9 #define EAGINE_USER_INFO_HPP
10 
11 #include "config/platform.hpp"
12 #include "main_ctx_object.hpp"
13 #include "string_span.hpp"
14 #include "valid_if/not_empty.hpp"
15 
16 namespace eagine {
17 
18 class user_info_impl;
19 
22 class user_info : public main_ctx_object {
23 public:
24  user_info(main_ctx_parent parent) noexcept
25  : main_ctx_object{EAGINE_ID(UserInfo), parent} {}
26 
29 
32 
33 private:
34  std::shared_ptr<user_info_impl> _pimpl;
35  auto _impl() noexcept -> user_info_impl*;
36 };
37 
38 } // namespace eagine
39 
40 #if !EAGINE_LINK_LIBRARY || defined(EAGINE_IMPLEMENTING_LIBRARY)
41 #include <eagine/user_info.inl>
42 #endif
43 
44 #endif
Helper class used to initialize main context objects.
Definition: main_ctx_object.hpp:45
auto home_dir_path() -> valid_if_not_empty< string_view >
Paths to the user's home directory.
auto login_name() -> valid_if_not_empty< string_view >
The user's login name.
#define EAGINE_ID(NAME)
Macro for constructing instances of eagine::identifier.
Definition: identifier.hpp:353
Base class for main context objects.
Definition: main_ctx_object.hpp:71
Common code is placed in this namespace.
Definition: eagine.hpp:21
Primary template for conditionally valid values.
Definition: decl.hpp:49
Class providing user-related information.
Definition: user_info.hpp:22

Copyright © 2015-2021 Matúš Chochlík.
<chochlik -at -gmail.com>
Documentation generated on Tue Apr 13 2021 by Doxygen (version 1.8.17).