]>
vaikene.ee Git - evaf/blob - src/main/CLI/main.h
2 * @file main/CLI/main.h
3 * @brief The main eVaf CLI application class
5 * Copyright (c) 2011 Enar Vaikene
7 * This file is part of the eVaf C++ cross-platform application development framework.
9 * This file can be used under the terms of the GNU General Public License
10 * version 3.0 as published by the Free Software Foundation and appearing in
11 * the file LICENSE included in the packaging of this file. Please review the
12 * the following information to ensure the GNU General Public License version
13 * 3.0 requirements will be met: http://www.gnu.org/copyleft/gpl.html.
15 * Alternatively, this file may be used in accordance with the Commercial License
16 * Agreement provided with the Software.
22 #include <QCoreApplication>
27 * The main eVaf command line interface (CLI) application.
29 * eVafGUI is the main CLI executable. It provides an empty CLI application
30 * that is used to load other eVaf modules.
35 * Internal implementation of the main eVaf CLI application.
38 } // namespace eVaf::CLI::Internal
41 * The main eVaf CLI application class
43 class Application
: public QCoreApplication
49 Application(int & argc
, char ** argv
);
51 virtual ~Application();
54 public: // Static methods
57 * Processes command-line arguments
58 * @param argc Number of command-line arguments
59 * @param argv List of command-line arguments
60 * @return True if ok; false if the application should terminate
62 * This function processes command-line arguments and should be called before running
65 static bool processCommandLine(int argc
, char ** argv
);
68 * Prints out help for command-line arguments.
70 static void printHelp();
73 * Prints out help for Qt command-line arguments.
75 static void printQtHelp();
78 * Prints out version information.
80 static void printVersion();
84 } // namespace eVaf::CLI