ACF $AcfVersion:0$
IApplication.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// Qt includes
6#include <QtCore/QString>
7
8// ACF includes
9#include <istd/IPolymorphic.h>
10
11
12namespace ibase
13{
14
15
22class IApplication: virtual public istd::IPolymorphic
23{
24public:
28 virtual bool InitializeApplication(int argc, char** argv) = 0;
29
33 virtual int Execute(int argc, char** argv) = 0;
34
38 virtual QString GetHelpText() const = 0;
39
43 virtual QStringList GetApplicationArguments() const = 0;
44};
45
46
47} // namespace ibase
48
49
50
51
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.
Base interface for all used interfaces and implementations.
This namespace contains basic implementations of standard primitives on the component level.