SimpleWeather service : new weather implementation

This new implementation of the weather feature provides a new BLE API and a new weather service.
The API uses a single characteristic that allows companion apps to write the weather conditions (current and forecast for the next 5 days).
The SimpleWeather service exposes those data as std::optional fields.

This new implementation replaces the previous WeahterService.

The API is documented in docs/SimpleWeatherService.md.
This commit is contained in:
Jean-François Milants
2023-12-09 20:39:08 +01:00
committed by JF
parent 088082d32d
commit c94a59e7d3
17 changed files with 406 additions and 1245 deletions

View File

@@ -39,6 +39,7 @@ namespace Pinetime {
class HeartRateController;
class MotionController;
class TouchHandler;
class SimpleWeatherService;
}
namespace System {
@@ -74,7 +75,7 @@ namespace Pinetime {
void SetFullRefresh(FullRefreshDirections direction);
void Register(Pinetime::System::SystemTask* systemTask);
void Register(Pinetime::Controllers::WeatherService* weatherService);
void Register(Pinetime::Controllers::SimpleWeatherService* weatherService);
void Register(Pinetime::Controllers::MusicService* musicService);
void Register(Pinetime::Controllers::NavigationService* NavigationService);