1 /*
2 * barrier -- mouse and keyboard sharing utility
3 * Copyright (C) 2018 Debauchee Open Source Group
4 *
5 * This package is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * found in the file LICENSE that should have accompanied this file.
8 *
9 * This package is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 */
17 
18 #pragma once
19 
20 #include <string>
21 
22 class DataDirectories
23 {
24 public:
25     static const std::string& profile();
26     static const std::string& profile(const std::string& path);
27 
28     static const std::string& global();
29     static const std::string& global(const std::string& path);
30 
31     static const std::string& systemconfig();
32     static const std::string& systemconfig(const std::string& path);
33 
34 private:
35     // static class
DataDirectories()36     DataDirectories() {}
37 
38     static std::string _profile;
39     static std::string _global;
40     static std::string _systemconfig;
41 };
42