greenhouse
stats_task.cpp
Go to the documentation of this file.
1 #include "Thread.h"
2 #include "mbed.h"
3 #include "tasks/stats_task.h"
4 #include "ui.h"
5 #include <cstdio>
6 
7 using namespace Tasks;
8 
9 #define SAMPLE_TIME_MS 1000
10 #define MAX_THREAD_STACK 384
11 
13 EventQueue *stats_queue = mbed_event_queue();
15 Thread *_thread;
16 
18  _display = display;
19 }
20 
21 void collect_stats() {
22  mbed_stats_cpu_t stats;
23  mbed_stats_cpu_get(&stats);
25 }
26 
27 void Stats::start() {
28  if (_thread) {
29  // we're already running
30  return;
31  }
32 
34 
35  _thread = new Thread(osPriorityNormal, MAX_THREAD_STACK);
36 }
37 
38 void Stats::stop() {
39  if (_thread) {
40  _thread->terminate();
41  }
42 }
void setDisplay(UI::Display *display)
Definition: stats_task.cpp:17
void start()
Definition: stats_task.cpp:27
Definition: ui.h:8
void update_stats(mbed_stats_cpu_t *stats, int sample_time_ms)
Definition: ui.cpp:88
UI::Display * display
Definition: main.cpp:19
UI::Display * _display
Definition: stats_task.cpp:12
EventQueue * stats_queue
Definition: stats_task.cpp:13
Thread * _thread
Definition: stats_task.cpp:15
void collect_stats()
Definition: stats_task.cpp:21
#define MAX_THREAD_STACK
Definition: stats_task.cpp:10
#define SAMPLE_TIME_MS
Definition: stats_task.cpp:9
int _thread_id
Definition: stats_task.cpp:14