Blender V5.0
AppConfig.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
11
12#include <algorithm>
13#include <string>
14
15#include "../system/Precision.h"
16
17#include "MEM_guardedalloc.h"
18
19using namespace std;
20
21namespace Freestyle {
22
23namespace Config {
24
25class Path {
26 protected:
32 string _EnvMapDir;
33 string _MapsDir;
34 string _HomeDir;
35
36 public:
37 Path();
38 virtual ~Path();
39 static Path *getInstance();
40
41 void setRootDir(const string &iRootDir);
42 void setHomeDir(const string &iHomeDir);
43
44 const string &getProjectDir() const
45 {
46 return _ProjectDir;
47 }
48 const string &getModelsPath() const
49 {
50 return _ModelsPath;
51 }
52 const string &getPatternsPath() const
53 {
54 return _PatternsPath;
55 }
56 const string &getBrushesPath() const
57 {
58 return _BrushesPath;
59 }
60 const string &getEnvMapDir() const
61 {
62 return _EnvMapDir;
63 }
64 const string &getMapsDir() const
65 {
66 return _MapsDir;
67 }
68 const string &getHomeDir() const
69 {
70 return _HomeDir;
71 }
72
73 static string getEnvVar(const string &iEnvVarName);
74
75 MEM_CXX_CLASS_ALLOC_FUNCS("Freestyle:Config:Path")
76};
77
78//
79// Configuration, default values
80//
82
83// Application
84static const string APPLICATION_NAME("APPNAME");
85static const string APPLICATION_VERSION("APPVERSION");
86
87// ViewMap
88static const string VIEWMAP_EXTENSION("vm");
89static const string VIEWMAP_MAGIC("ViewMap File");
90static const string VIEWMAP_VERSION("1.9");
91
92// Style modules
93static const string STYLE_MODULE_EXTENSION("py");
94static const string STYLE_MODULES_LIST_EXTENSION("sml");
95
96// Options
97static const string OPTIONS_DIR("." + APPLICATION_NAME);
98static const string OPTIONS_FILE("options.xml");
99static const string OPTIONS_CURRENT_DIRS_FILE("current_dirs.xml");
100static const string OPTIONS_QGLVIEWER_FILE("qglviewer.xml");
101
102} // namespace Config
103
104} /* namespace Freestyle */
Read Guarded memory(de)allocation.
Define the float precision used in the program.
const string & getMapsDir() const
Definition AppConfig.h:64
static string getEnvVar(const string &iEnvVarName)
Definition AppConfig.cpp:60
void setRootDir(const string &iRootDir)
Definition AppConfig.cpp:32
const string & getPatternsPath() const
Definition AppConfig.h:52
static Path * getInstance()
Definition AppConfig.cpp:55
const string & getHomeDir() const
Definition AppConfig.h:68
void setHomeDir(const string &iHomeDir)
Definition AppConfig.cpp:45
const string & getModelsPath() const
Definition AppConfig.h:48
const string & getProjectDir() const
Definition AppConfig.h:44
const string & getEnvMapDir() const
Definition AppConfig.h:60
static Path * _pInstance
Definition AppConfig.h:27
const string & getBrushesPath() const
Definition AppConfig.h:56
static const string VIEWMAP_EXTENSION("vm")
static const string OPTIONS_DIR("."+APPLICATION_NAME)
static const string OPTIONS_QGLVIEWER_FILE("qglviewer.xml")
static const string OPTIONS_CURRENT_DIRS_FILE("current_dirs.xml")
static const string STYLE_MODULE_EXTENSION("py")
static const string STYLE_MODULES_LIST_EXTENSION("sml")
static const string OPTIONS_FILE("options.xml")
static const string VIEWMAP_VERSION("1.9")
static const string VIEWMAP_MAGIC("ViewMap File")
static const string APPLICATION_NAME("APPNAME")
static const string APPLICATION_VERSION("APPVERSION")
inherits from class Rep
Definition AppCanvas.cpp:20