Accelerated Computation Engine
ace_settings.h
1 #ifndef ACE_SETTINGS_H
2 #define ACE_SETTINGS_H
3 #include <QString>
4 #include "opencl.h"
5 
6 
7 
8 class QSettings;
9 class QVariant;
10 //
11 
12 
13 
14 namespace Ace
15 {
24  class Settings
25  {
26  public:
27  static QString versionString();
28  static QString organization();
29  static QString application();
30  static QString appVersionString();
31  static int appMajorVersion();
32  static int appMinorVersion();
33  static int appRevision();
34  static void initialize(QString organization, QString application, int majorVersion, int minorVersion, int revision);
35  static Settings& instance();
36  int openCLPlatform() const;
37  int openCLDevice() const;
39  int threadSize() const;
40  int bufferSize() const;
41  QString chunkDir() const;
42  QString chunkPrefix() const;
43  QString chunkExtension() const;
44  bool loggingEnabled() const;
45  int loggingPort() const;
46  void setOpenCLPlatform(int index);
47  void setOpenCLDevice(int index);
48  void setThreadSize(int size);
49  void setBufferSize(int size);
50  void setChunkDir(const QString& path);
51  void setChunkPrefix(const QString& prefix);
52  void setChunkExtension(const QString& extension);
53  void setLoggingEnabled(int state);
54  void setLoggingPort(int port);
58  constexpr static int _majorVersion {MAJOR_VERSION};
62  constexpr static int _minorVersion {MINOR_VERSION};
66  constexpr static int _revision {REVISION};
67  private:
68  Settings();
69  void setValue(const QString& key, const QVariant& value);
73  static int _appMajorVersion;
77  static int _appMinorVersion;
81  static int _appRevision;
85  static QString _organization;
89  static QString _application;
93  constexpr static int _openCLPlatformDefault {0};
97  constexpr static int _openCLDeviceDefault {0};
101  constexpr static int _threadSizeDefault {4};
105  constexpr static int _bufferSizeDefault {4};
109  static const char* _chunkDirDefault;
113  static const char* _chunkPrefixDefault;
117  static const char* _chunkExtensionDefault;
120  static const bool _loggingEnabledDefault;
123  static const int _loggingPortDefault;
127  static const char* _openCLPlatformKey;
131  static const char* _openCLDeviceKey;
135  static const char* _threadSizeKey;
139  static const char* _bufferSizeKey;
144  static const char* _chunkDirKey;
148  static const char* _chunkPrefixKey;
152  static const char* _chunkExtensionKey;
155  static const char* _loggingEnabledKey;
158  static const char* _loggingPortKey;
162  static Settings* _instance;
166  int _openCLPlatform;
170  int _openCLDevice;
174  int _threadSize;
179  int _bufferSize;
183  QString _chunkDir;
187  QString _chunkPrefix;
191  QString _chunkExtension;
194  bool _loggingEnabled;
197  int _loggingPort;
198  };
199 }
200 
201 
202 
203 #endif
static constexpr int _minorVersion
Definition: ace_settings.h:62
int openCLDevice() const
Definition: ace_settings.cpp:293
static constexpr int _revision
Definition: ace_settings.h:66
int openCLPlatform() const
Definition: ace_settings.cpp:278
Definition: ace.h:6
bool loggingEnabled() const
Definition: ace_settings.cpp:410
void setLoggingPort(int port)
Definition: ace_settings.cpp:631
static QString appVersionString()
Definition: ace_settings.cpp:149
void setChunkPrefix(const QString &prefix)
Definition: ace_settings.cpp:568
void setThreadSize(int size)
Definition: ace_settings.cpp:483
void setChunkDir(const QString &path)
Definition: ace_settings.cpp:546
static QString organization()
Definition: ace_settings.cpp:119
static int appRevision()
Definition: ace_settings.cpp:197
void setOpenCLPlatform(int index)
Definition: ace_settings.cpp:440
static constexpr int _majorVersion
Definition: ace_settings.h:58
static void initialize(QString organization, QString application, int majorVersion, int minorVersion, int revision)
Definition: ace_settings.cpp:223
static int appMajorVersion()
Definition: ace_settings.cpp:167
int threadSize() const
Definition: ace_settings.cpp:334
Definition: opencl_device.h:19
QString chunkExtension() const
Definition: ace_settings.cpp:395
OpenCL::Device * openCLDevicePointer() const
Definition: ace_settings.cpp:309
void setBufferSize(int size)
Definition: ace_settings.cpp:515
Definition: ace_settings.h:24
static QString versionString()
Definition: ace_settings.cpp:101
static int appMinorVersion()
Definition: ace_settings.cpp:182
static Settings & instance()
Definition: ace_settings.cpp:255
QString chunkPrefix() const
Definition: ace_settings.cpp:380
void setOpenCLDevice(int index)
Definition: ace_settings.cpp:461
int bufferSize() const
Definition: ace_settings.cpp:350
void setChunkExtension(const QString &extension)
Definition: ace_settings.cpp:589
static QString application()
Definition: ace_settings.cpp:134
QString chunkDir() const
Definition: ace_settings.cpp:365
void setLoggingEnabled(int state)
Definition: ace_settings.cpp:610
int loggingPort() const
Definition: ace_settings.cpp:425