Skip to content

Commit

Permalink
keira: add more docstrings to App class
Browse files Browse the repository at this point in the history
  • Loading branch information
and3rson committed Mar 14, 2024
1 parent 77b0baf commit 2d43ab0
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 0 deletions.
Binary file modified docs/_gen/v2_pcb.pdf
Binary file not shown.
Binary file modified docs/_gen/v2_schematic.pdf
Binary file not shown.
2 changes: 2 additions & 0 deletions docs/keira/custom_apps.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ Keira написана на C++, і вона містить ряд вбудов

Для створення власної програми вам потрібно наслідувати клас :cpp:class:`App` та визначити метод :cpp:func:`App::run`. Цей метод буде викликатися при запуску програми.

Ось перелік важливих методів та властивостей класу :cpp:class:`App`:

.. doxygenclass:: App
:members:
:protected-members:
Expand Down
17 changes: 17 additions & 0 deletions firmware/keira/src/app.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,25 @@ class App {
void resume();
void stop();
static void _run(void* data);
/// Повідомити ОС, що програма завершила малювання кадру.
///
/// Цей метод слід викликати після малювання кожного кадру.
///
/// Технічно, цей метод міняє місцями передній буфер (canvas) та задній буфер (backCanvas).
///
/// Якщо цей метод викликається в той час, коли ОС вже малює попередній кадр, то він призведе до нетривалого блокування програми.
/// Іншими словами, якщо ваша програма малює кадри швидше, ніж ОС здатна їх відображати, то цей метод буде час від часу заповільнювати вашу програму.
/// Це не проблема, але варто про це пам'ятати.
void queueDraw();
const char* getName();

eTaskState getState();

/// Вказівник на передній буфер для малювання.
///
/// Програма повинна використовувати цей буфер для малювання всієї графіки.
///
/// Після малювання, буфер потрібно відобразити на екрані за допомогою методу queueDraw().
lilka::Canvas* canvas;

protected:
Expand All @@ -66,10 +80,13 @@ class App {
///
/// Програма завершується, коли цей метод завершується або робить return.
virtual void run() = 0;
/// Цей метод викликається операційною системою, коли вона збирається зупинити вашу програму.
virtual void onSuspend() {
}
/// Цей метод викликається операційною системою, коли вона збирається відновити роботу вашої програми.
virtual void onResume() {
}
/// Цей метод викликається операційною системою, коли вона збирається зупинити вашу програму.
virtual void onStop() {
}

Expand Down

0 comments on commit 2d43ab0

Please sign in to comment.