Класс входит в проект Covellite.App
Базовый класс приложения для Android.
Подробнее...
#include <Application.hpp>
|
::std::string | GetCommandLine (void) const |
| Функция получения параметров командной строки, которые были переданы программе ее при запуске. Подробнее...
|
|
| Application (Continuous) |
| Конструктор класса создания объекта приложения для непрерывной отрисовки окна программы.
|
|
| Application (EventBased) |
| Конструктор класса создания объекта приложения для отрисовки окна программы после события.
|
|
template<class TWindow , class ... TArgs> |
TWindow & | MakeWindow (TArgs &&... _Args) |
| Функция создания объекта окна программы. Подробнее...
|
|
|
template<class > |
static void | Main (void *) noexcept |
| Функция точки входа в программу. Подробнее...
|
|
|
const Run_t | Run |
| Объект функции запуска главного цикла программы.
|
|
|
static void | Main (CreateApp_t, void *) noexcept |
| Платформозависимая реализация функции точки входа в программу. Подробнее...
|
|
Класс входит в проект Covellite.App
Базовый класс приложения для Android.
- Содержит главный цикл приложения.
- Для создания объекта приложения следует создать класс-наследник от этого класса и в его конструкторе подписаться на сообщения, которые следует обрабатывать.
- Для того, чтобы на Android при смене ориентации устройства программа не завершалась, необходимо в AndroidManifest.xml добавить
<activity ...
android:configChanges="keyboardHidden|orientation|screenSize">
- Версия
- 1.0.0.0
2.0.0.0
- Дата
- 17 Ноябрь 2016
20 Июнь 2018
- Автор
- CTAPOBEP (unico.nosp@m.rnum.nosp@m..veru.nosp@m.m@gm.nosp@m.ail.c.nosp@m.om)
- Авторство
- © CTAPOBEP 2016 - 2018
◆ GetCommandLine()
std::string Application::GetCommandLine |
( |
void |
| ) |
const |
Функция получения параметров командной строки, которые были переданы программе ее при запуске.
- Для Android функция не имеет смысла.
◆ Main() [1/2]
void Application::Main |
( |
CreateApp_t |
_fnCreateApp, |
|
|
void * |
_pParams |
|
) |
| |
|
staticprivatenoexcept |
Платформозависимая реализация функции точки входа в программу.
- Функция вызывается внутри макроса APPLICATION_ENTRY_POINT.
- Аргументы
-
[in] | _fnCreateApp | Функция создания объекта приложения. |
[in] | _pParams | Дополнительные параметры запуска программы. |
◆ Main() [2/2]
template<class TApplication >
void Application::Main |
( |
void * |
_pParams | ) |
|
|
inlinestaticnoexcept |
Функция точки входа в программу.
- Именно эта функция вызывается внутри макроса точки входа в программу.
- Параметры шаблона
-
- Аргументы
-
[in] | _pParams | Параметры запуска программы:
- Windows: параметры командной строки.
- Android: указатель на объект android_main.
|
◆ MakeWindow()
template<class TWindow , class ... TArgs>
TWindow& covellite::app::Application::MakeWindow |
( |
TArgs &&... |
_Args | ) |
|
|
inline |
Функция создания объекта окна программы.
- Функция создает объект окна программы класса, указанного в качестве параметра шаблона.
- Функция должна быть вызвана в классе главного объекта программы в функции обработки сообщения Application.Create для всего необходимого приложению набора объектов окон (окно операционной системы, окно графического API, окно реализации приложения, окно реализации GUI).
- Параметры шаблона
-
- Аргументы
-
_Args | Параметры, передаваемые конструктору создаваемого объекта окна. |
- Исключения
-
std::exception |
- Действие невозможно (подробнее см. описание исключения).
|
◆ PostCommand()
bool Application::PostCommand |
( |
bool |
_IsWaitMessage | ) |
|
|
private |
Функция вызова сигнала произошедшего события..
- При появлении события будет вызвана функция EventHandler::CommandHandler(), вторым параметром которой будет передан идентификатор произошедшего события или или EventHandler::InputHandler().
- Аргументы
-
[in] | _IsWaitMessage | Признак того, нужно или нет ждать появления события. |
- Возвращает
- true
- Появилось событие и был вызыван обработчик этого события.
-
false
Объявления и описания членов классов находятся в файлах:
- Solution/Solution/Covellite.App/Covellite.App/Application.hpp
- Solution/Solution/Covellite.App/Covellite.App/Application.android.cpp
- Solution/Solution/Covellite.App/Covellite.App/Application.inl
- Solution/Solution/Covellite.App/Covellite.App/Application.windows.cpp