ICF 3.0.5.47
Technical documentation of ICF Libraries
IApplication.h
Go to the documentation of this file.
1/********************************************************************************
2** This file is part of the ICF Framework. Copyright (C) Witold Gantzke & Kirill Lepskiy
3** ICF Framework may be used under the terms of the LGPL License v. 2.1 by the Free Software Foundation.
4********************************************************************************/
5
6#pragma once
7
8
9// Qt includes
10#include <QtCore/QString>
11
12// ICF includes
13#include <istd/IPolymorphic.h>
14
15
16namespace ibase
17{
18
19
26class IApplication: virtual public istd::IPolymorphic
27{
28public:
32 virtual bool InitializeApplication(int argc, char** argv) = 0;
33
37 virtual int Execute(int argc, char** argv) = 0;
38
42 virtual QString GetHelpText() const = 0;
43
47 virtual QStringList GetApplicationArguments() const = 0;
48};
49
50
51} // namespace ibase
52
53
Interface for the main entry point of a component-based application.
virtual QString GetHelpText() const =0
Get information about the possible command line arguments of this application.
virtual int Execute(int argc, char **argv)=0
Start execution loop of the application.
virtual QStringList GetApplicationArguments() const =0
Get the command line arguments of this application.
virtual bool InitializeApplication(int argc, char **argv)=0
Initialize the application object.
This namespace contains standard classes based on Qt.

© Witold Gantzke and Kirill Lepskiy