lfilesystem  0.0.1
C++ filesystem library
lfilesystem_SpecialDirectories.h
Go to the documentation of this file.
1 /*
2  * ======================================================================================
3  * __ ____ __ __ ____ ___
4  * ( ) (_ _)( \/ )( ___)/ __)
5  * )(__ _)(_ ) ( )__) \__ \
6  * (____)(____)(_/\/\_)(____)(___/
7  *
8  * This file is part of the Limes open source library and is licensed under the terms of the GNU Public License.
9  *
10  * Commercial licenses are available; contact the maintainers at ben.the.vining@gmail.com to inquire for details.
11  *
12  * ======================================================================================
13  */
14 
15 #pragma once
16 
17 #include <vector>
18 #include "lfilesystem/lfilesystem_Export.h"
20 
45 {
46 
60 [[nodiscard]] LFILE_EXPORT Directory cwd();
61 
72 [[nodiscard]] LFILE_EXPORT Directory cwdAtStartup();
73 
82 LFILE_EXPORT bool setCWD (const Path& path);
83 
89 [[nodiscard]] LFILE_EXPORT Directory temp();
90 
107 [[nodiscard]] LFILE_EXPORT std::vector<Directory> PATH();
108 
117 LFILE_EXPORT bool appendToPATH (const Directory& dir);
118 
124 [[nodiscard]] LFILE_EXPORT Directory home();
125 
131 [[nodiscard]] LFILE_EXPORT Directory desktop();
132 
138 [[nodiscard]] LFILE_EXPORT Directory userDocuments();
139 
145 [[nodiscard]] LFILE_EXPORT Directory commonDocuments();
146 
152 [[nodiscard]] LFILE_EXPORT Directory userAppData();
153 
159 [[nodiscard]] LFILE_EXPORT Directory commonAppData();
160 
166 [[nodiscard]] LFILE_EXPORT Directory apps();
167 
173 [[nodiscard]] LFILE_EXPORT Directory downloads();
174 
177 } // namespace limes::files::dirs
This class represents a directory on the filesystem.
std::filesystem::path Path
Convenience typedef for filesystem paths.
This file defines the Directory class.
This namespace contains utility functions for finding some common directories.