/*! * * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. * \copyright \n * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, \n * IN PART OR IN WHOLE, \n * WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. \n * * \file main.cpp * \date 2019/09/30 * \author Behrouz NematiPour * */ /*! * \mainpage UI Software Design Description * \section Detailed Description * This document has been generated by Doxygen.\n * This document describes the detail description of the UI Application Software design.\n * UI Application starts by Application Initialization which happens in \ref main.cpp "Initialization section".\n */ // Qt #include #include #include #include // Project #include "maintimer.h" #include "applicationcontroller.h" /*! \brief Application Initialization\n * this section includes: */ int main(int argc, char *argv[]) { //! - Qt Application initialization and parameters settings // Qt Core Application parameters settings // Qt Core Application Initialization QGuiApplication app(argc, argv); QCoreApplication::setApplicationName(QLatin1String("Denali")); QCoreApplication::setOrganizationName(QLatin1String("Diality Inc.")); //! - Setting the application version regarding the Bamboo build number. QString ver_revis = QString("%1").arg(VER_REVIS); if (ver_revis.isEmpty()) ver_revis = QString("%1").arg(VER_DEVEL); QCoreApplication::setApplicationVersion(QString("%1.%2.%3") .arg(VER_MAJOR) .arg(VER_MINOR) .arg(ver_revis)); //! - Translation initialization QTranslator translator; if (translator.load(QLocale(), app.applicationName(), QLatin1String("_"), QLatin1String(":/translations"))) app.installTranslator(&translator); //! - Initializing Main Timer MainTimer::I()->init(); //! - Initializing Application Controller QObject::connect(ApplicationController::I(), &ApplicationController::quit, &app, [](int retcode) { // TODO : Logger needs to log this issue qDebug() << "Application Terminated:" << retcode; QCoreApplication::exit(retcode); }, Qt::QueuedConnection); ApplicationController::I()->init(); return app.exec(); }