X-Git-Url: https://vaikene.ee/gitweb/pswgen11.html?a=blobdiff_plain;f=src%2Flibs%2FCommon%2Fglobals.cpp;h=6814648532b70058db4362d241713e14a629c8a7;hb=de270ece1b764b19968e14420f538321f1c06b15;hp=63d4bce2bd6c3a988c333459d3e42220fb56957d;hpb=be0e791df48f5a8c9bb4c16f65b62e41e1149552;p=evaf
diff --git a/src/libs/Common/globals.cpp b/src/libs/Common/globals.cpp
index 63d4bce..6814648 100644
--- a/src/libs/Common/globals.cpp
+++ b/src/libs/Common/globals.cpp
@@ -3,7 +3,7 @@
* @brief Global constants and macros for eVaf
* @author Enar Vaikene
*
- * Copyright (c) 2011 Enar Vaikene
+ * Copyright (c) 2011-2019 Enar Vaikene
*
* This file is part of the eVaf C++ cross-platform application development framework.
*
@@ -19,9 +19,12 @@
#include "globals.h"
#include "app.h"
+#include "config.h"
+#include "prop.h"
#include "logger.h"
#include "version.h"
#include "ilogger.h"
+#include "iregistry.h"
#include
@@ -30,7 +33,7 @@
bool eVaf::Common::init()
{
- if (QCoreApplication::instance() == 0) {
+ if (QCoreApplication::instance() == nullptr) {
EVAF_FATAL_ERROR("QApplication is not instantiated");
return false;
}
@@ -40,13 +43,25 @@ bool eVaf::Common::init()
// Initialize all the common interface implementations in the proper sequence
eVaf::Common::Internal::App * app =
- qobject_cast(eVaf::Common::iApp::instance());
+ qobject_cast(eVaf::Common::iApp::instance());
if (app) {
if (!app->init())
return false;
}
+ eVaf::Common::Internal::Config * config =
+ qobject_cast(eVaf::Common::iConfig::instance());
+ if (config) {
+ if (!config->init())
+ return false;
+ }
+ eVaf::Common::Internal::Prop * prop =
+ qobject_cast(eVaf::Common::iProp::instance());
+ if (prop) {
+ if (!prop->init())
+ return false;
+ }
eVaf::Common::Internal::Logger * logger =
- qobject_cast(eVaf::Common::iLogger::instance());
+ qobject_cast(eVaf::Common::iLogger::instance());
if (logger) {
if (!logger->init())
return false;
@@ -56,3 +71,15 @@ bool eVaf::Common::init()
return true;
}
+
+void eVaf::Common::done()
+{
+ EVAF_INFO("Finalizing %s-Globals", VER_MODULE_NAME_STR);
+
+ //eVaf::Common::Internal::Logger::destroyInstance();
+ eVaf::Common::Internal::Prop::destroyInstance();
+ eVaf::Common::Internal::Config::destroyInstance();
+ eVaf::Common::Internal::App::destroyInstance();
+
+ EVAF_INFO("%s-Globals finalized", VER_MODULE_NAME_STR);
+}