6#include <QtCore/QCoreApplication>
7#include <QtCore/QStringList>
38 I_REGISTER_SUBELEMENT(RuntimeStatus);
40 I_REGISTER_SUBELEMENT_INTERFACE(RuntimeStatus,
imod::IModel, ExtractRuntimeStatus);
41 I_REGISTER_SUBELEMENT_INTERFACE(RuntimeStatus,
istd::IChangeable, ExtractRuntimeStatus);
42 I_ASSIGN(m_applicationInfoCompPtr,
"ApplicationInfo",
"Info about the worker application",
true,
"ApplicationInfo");
43 I_ASSIGN_MULTI_0(m_componentsToInitializeCompPtr,
"ComponentsToInitialize",
"List of components to be initialized after creation of the application instance (QCoreApplication)",
false);
48 virtual int Execute(
int argc,
char** argv)
override;
66 void OnKeyPressed(
char ch);
67 void OnEventLoopStarted();
87 template <
class InterfaceType>
90 return &component.m_runtimeStatus;
97 QStringList m_applicationArguments;
Console (non-gui) application.
void EmitEventLoopStarted()
virtual QString GetHelpText() const override
Get information about the possible command line arguments of this application.
virtual QStringList GetApplicationArguments() const override
Get the command line arguments of this application.
virtual int Execute(int argc, char **argv) override
Start execution loop of the application.
virtual bool InitializeApplication(int argc, char **argv) override
Initialize the application object.
virtual void OnComponentDestroyed() override
Called when component is destroyed.
ilog::CLoggerComponentBase BaseClass
virtual void OnApplicationShutdown()
Callback for the application's shutdown.
Interface for the main entry point of a component-based application.
This interface provides some information about the application.
Provider of the run-time status.
Template wrapper adding comprehensive logging functionality to components.
Common interface for model objects, that supports Model/Observer design pattern.
This model wrapper provides a simple connection between a concrete istd::IChangeable implementation a...
User-input reader for command line console.
Common interface for data model objects, which can be changed.
Base interface for all used interfaces and implementations.
Pointer wrapper providing activatable deleting pointed object during destruction.
This namespace contains basic implementations of standard primitives on the component level.