Projet S5 Info / Mbed 2 deprecated Projet_S5

Dependencies:   mbed PowerControl

Fork of Projet_S5 by Jonathan Tousignant

Committer:
joGenie
Date:
Sat Apr 05 18:07:45 2014 +0000
Revision:
7:89be89aeed5a
Parent:
6:ef8bfca9e69b
Child:
8:9bf215a760f5
Analyzer initial

Who changed what in which revision?

UserRevisionLine numberNew contents of line
joGenie 3:17a4ceb30535 1 #ifndef ANALYZER_H
joGenie 3:17a4ceb30535 2 #define ANALIZER_H
joGenie 3:17a4ceb30535 3
joGenie 3:17a4ceb30535 4 #include <mbed.h>
joGenie 3:17a4ceb30535 5 #include <climits>
joGenie 3:17a4ceb30535 6
joGenie 3:17a4ceb30535 7 class Analyzer
joGenie 3:17a4ceb30535 8 {
joGenie 3:17a4ceb30535 9 public:
joGenie 3:17a4ceb30535 10 Analyzer();
joGenie 3:17a4ceb30535 11 ~Analyzer();
joGenie 3:17a4ceb30535 12
joGenie 6:ef8bfca9e69b 13 void setMinMax(signed char* values);
joGenie 7:89be89aeed5a 14 void setInitial(signed char* value);
joGenie 5:6313ddd0dfdd 15 void checkMouvement();
joGenie 3:17a4ceb30535 16
joGenie 3:17a4ceb30535 17 private:
joGenie 3:17a4ceb30535 18 struct Data
joGenie 3:17a4ceb30535 19 {
joGenie 6:ef8bfca9e69b 20 signed char min;
joGenie 6:ef8bfca9e69b 21 signed char max;
joGenie 7:89be89aeed5a 22 signed char initial;
joGenie 3:17a4ceb30535 23
joGenie 7:89be89aeed5a 24 Data(): min(SCHAR_MAX), max(SCHAR_MIN){}
joGenie 3:17a4ceb30535 25
joGenie 6:ef8bfca9e69b 26 void setMinMax(signed char value)
joGenie 3:17a4ceb30535 27 {
joGenie 5:6313ddd0dfdd 28 if (value < min)
joGenie 5:6313ddd0dfdd 29 min = value;
joGenie 3:17a4ceb30535 30
joGenie 5:6313ddd0dfdd 31 if (value > max)
joGenie 5:6313ddd0dfdd 32 max = value;
joGenie 7:89be89aeed5a 33 }
joGenie 7:89be89aeed5a 34
joGenie 7:89be89aeed5a 35 void setInitial(signed char init)
joGenie 7:89be89aeed5a 36 {
joGenie 7:89be89aeed5a 37 initial = init;
joGenie 7:89be89aeed5a 38 min = initial;
joGenie 7:89be89aeed5a 39 max = initial;
joGenie 7:89be89aeed5a 40 }
joGenie 3:17a4ceb30535 41 };
joGenie 3:17a4ceb30535 42
joGenie 3:17a4ceb30535 43 Data x, y, z;
joGenie 3:17a4ceb30535 44 };
joGenie 3:17a4ceb30535 45
joGenie 3:17a4ceb30535 46 // Define function in C for interruption
joGenie 3:17a4ceb30535 47 #ifdef __cplusplus
joGenie 3:17a4ceb30535 48 extern "C" {
joGenie 3:17a4ceb30535 49 #endif
joGenie 3:17a4ceb30535 50
joGenie 3:17a4ceb30535 51 extern void *Analyzer_C_new();
joGenie 3:17a4ceb30535 52 extern void Analyzer_C_delete(void *analyzer);
joGenie 6:ef8bfca9e69b 53 extern void Analyzer_C_setMinMax(signed char* values, void *analyzer);
joGenie 7:89be89aeed5a 54 extern void Analyzer_C_setInitial(signed char* value, void *analyzer);
joGenie 5:6313ddd0dfdd 55 extern void Analyzer_C_checkMouvement(void *analyzer);
joGenie 3:17a4ceb30535 56
joGenie 3:17a4ceb30535 57 #ifdef __cplusplus
joGenie 3:17a4ceb30535 58 }
joGenie 3:17a4ceb30535 59 #endif
joGenie 3:17a4ceb30535 60
joGenie 3:17a4ceb30535 61 #endif