Ersa Wearable Platform
Embedded smartwatch firmware and application framework
Loading...
Searching...
No Matches
application.h
Go to the documentation of this file.
1#pragma once
2
3#include "ersa/common/types.h"
4#include "ersa/events/event.h"
6#include "ersa/hal/display.h"
7#include "ersa/ui/canvas.h"
8#include <stdint.h>
9
10namespace ersa {
11namespace app {
12
23public:
25 virtual ~Application() = default;
26
28 virtual const char* getId() const = 0;
30 virtual const char* getTitle() const = 0;
31
39 virtual void onCreate() {}
46 virtual void onStart() {}
52 virtual void onResume() {}
58 virtual void onPause() {}
64 virtual void onStop() {}
70 virtual void onDestroy() {}
71
77 virtual void onEnter() {}
79 virtual void onExit() {}
80
88 void onEvent(const events::Event& event) override { (void)event; }
89
97 virtual void render(hal::IDisplay& display, bool fullRefresh) { (void)display; (void)fullRefresh; }
103 virtual void render(ui::Canvas& canvas) { (void)canvas; }
104
112 virtual Rect getPartialBounds() const { return Rect{0, 0, 200, 200}; }
113
120 virtual void tick() {}
121};
122
123} // namespace app
124} // namespace ersa
Definition application.h:22
virtual void onStart()
Definition application.h:46
virtual void onExit()
Definition application.h:79
void onEvent(const events::Event &event) override
Definition application.h:88
virtual void onEnter()
Definition application.h:77
virtual void tick()
Definition application.h:120
virtual const char * getId() const =0
virtual void onStop()
Definition application.h:64
virtual void onDestroy()
Definition application.h:70
virtual const char * getTitle() const =0
virtual void onResume()
Definition application.h:52
virtual Rect getPartialBounds() const
Definition application.h:112
virtual void render(ui::Canvas &canvas)
Definition application.h:103
virtual void onCreate()
Definition application.h:39
virtual ~Application()=default
virtual void onPause()
Definition application.h:58
virtual void render(hal::IDisplay &display, bool fullRefresh)
Definition application.h:97
Definition event_bus.h:13
Definition display.h:40
Definition canvas.h:28
Definition application.h:10
Definition types.h:121
Definition event.h:134