- Created `tactility-headless` to support ESP32 firmwares that don't require graphics - `tactility` subproject now contains both PC and ESP32 code (to avoid having to split up `tactility` and `tactility-headless` into separate projects, which would result in a very complex dependency tree) - `tactility` subproject is now defined as component for ESP32 and as regular module for PC - Improvements for dispatcher - Added `project-structure.puml` to docs - `Gui` service now depends on `Loader` service instead of the reverse - Added `statusbar_updater` service for updating Wi-Fi and SD card icons
35 lines
630 B
C
35 lines
630 B
C
#pragma once
|
|
|
|
#include "tactility_core.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef void* Service;
|
|
|
|
typedef void (*ServiceOnStart)(Service service);
|
|
typedef void (*ServiceOnStop)(Service service);
|
|
|
|
typedef struct {
|
|
/**
|
|
* The identifier by which the app is launched by the system and other apps.
|
|
*/
|
|
const char* id;
|
|
|
|
/**
|
|
* Non-blocking method to call when service is started.
|
|
*/
|
|
const ServiceOnStart _Nullable on_start;
|
|
|
|
/**
|
|
* Non-blocking method to call when service is stopped.
|
|
*/
|
|
const ServiceOnStop _Nullable on_stop;
|
|
|
|
} ServiceManifest;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|