Fotobot
Get data from your photovoltaic plant
static.cpp
Go to the documentation of this file.
1 
7 #include "static.h"
8 #include <QCoreApplication>
9 #include <QDir>
10 #include <QFile>
11 #include <QString>
12 
13 QString Static::configDir=0;
14 
15 TemplateLoader* Static::templateLoader=0;
16 
17 HttpSessionStore* Static::sessionStore=0;
18 
19 StaticFileController* Static::staticFileController=0;
20 
21 DATABASE* Static::db = 0;
22 
23 INVERTORS* Static::invertors = 0;
24 
25 INTERFACEBOX* Static::interfacebox = 0;
26 
27 SLUNCE* Static::slunce = 0;
28 
30  return QString("%1/%2.ini").arg(getConfigDir()).arg(QCoreApplication::applicationName());
31 }
32 
34  if (!configDir.isNull()) {
35  return configDir;
36  }
37  // Search config file
38 
39  QString binDir=QCoreApplication::applicationDirPath();
40  QString organization=QCoreApplication::organizationName();
41  QString configFileName=QCoreApplication::applicationName()+".ini";
42 
43  QStringList searchList;
44  searchList.append(QDir::cleanPath(binDir));
45  searchList.append(QDir::cleanPath(binDir+"/../etc"));
46  searchList.append(QDir::cleanPath(binDir+"/../../etc")); // for development under windows
47  searchList.append(QDir::rootPath()+"etc/xdg/"+organization);
48  searchList.append(QDir::rootPath()+"etc/opt");
49  searchList.append(QDir::rootPath()+"etc");
50 
51  foreach (QString dir, searchList) {
52  QFile file(dir+"/"+configFileName);
53  if (file.exists()) {
54  // found
55  configDir=dir;
56  qDebug("Using config file %s",qPrintable(file.fileName()));
57  return configDir;
58  }
59  }
60 
61  // not found
62  foreach (QString dir, searchList) {
63  qWarning("%s/%s not found",qPrintable(dir),qPrintable(configFileName));
64  }
65  qFatal("Cannot find config file %s",qPrintable(configFileName));
66  return 0;
67 }
68 
Manages list of invertors and their threads.
Definition: invertors.h:36
Astronomické výpočty polohy slunce.
Definition: slunce.h:18
static StaticFileController * staticFileController
Definition: static.h:60
static QString getConfigDir()
Definition: static.cpp:33
static HttpSessionStore * sessionStore
Definition: static.h:57
Virtual class for invertor communication.
Definition: interfacebox.h:29
static TemplateLoader * templateLoader
Definition: static.h:54
static QString configDir
Definition: static.h:73
Class for communication with database.
Definition: database.h:47
static QString getConfigFileName()
Definition: static.cpp:29