SmartApp_Miun

Dependents:   Light

Committer:
biwa1400
Date:
Wed Apr 12 05:28:25 2017 +0000
Revision:
0:3cd336aba723
B

Who changed what in which revision?

UserRevisionLine numberNew contents of line
biwa1400 0:3cd336aba723 1
biwa1400 0:3cd336aba723 2 #ifndef __MIUN_APP_UNIT__
biwa1400 0:3cd336aba723 3 #define __MIUN_APP_UNIT__
biwa1400 0:3cd336aba723 4
biwa1400 0:3cd336aba723 5 #include "mDot.h"
biwa1400 0:3cd336aba723 6 #include <queue>
biwa1400 0:3cd336aba723 7
biwa1400 0:3cd336aba723 8 namespace MIUN
biwa1400 0:3cd336aba723 9 {
biwa1400 0:3cd336aba723 10
biwa1400 0:3cd336aba723 11
biwa1400 0:3cd336aba723 12 class SendPayload
biwa1400 0:3cd336aba723 13 {
biwa1400 0:3cd336aba723 14 public:
biwa1400 0:3cd336aba723 15 SendPayload(std::string payload,uint8_t appNumber):payload(payload),appNumber(appNumber){}
biwa1400 0:3cd336aba723 16 private:
biwa1400 0:3cd336aba723 17 std::string payload;
biwa1400 0:3cd336aba723 18 uint8_t appNumber;
biwa1400 0:3cd336aba723 19 public:
biwa1400 0:3cd336aba723 20 std::string getPayload()
biwa1400 0:3cd336aba723 21 {
biwa1400 0:3cd336aba723 22 return payload;
biwa1400 0:3cd336aba723 23 }
biwa1400 0:3cd336aba723 24 uint8_t getAppNumber()
biwa1400 0:3cd336aba723 25 {
biwa1400 0:3cd336aba723 26 return appNumber;
biwa1400 0:3cd336aba723 27 }
biwa1400 0:3cd336aba723 28 };
biwa1400 0:3cd336aba723 29
biwa1400 0:3cd336aba723 30 class AppUnit
biwa1400 0:3cd336aba723 31 {
biwa1400 0:3cd336aba723 32 /*** constructor ***/
biwa1400 0:3cd336aba723 33 public:
biwa1400 0:3cd336aba723 34 AppUnit(uint8_t in_appNumber);
biwa1400 0:3cd336aba723 35 virtual ~AppUnit();
biwa1400 0:3cd336aba723 36
biwa1400 0:3cd336aba723 37 private:
biwa1400 0:3cd336aba723 38 uint8_t appNumber;
biwa1400 0:3cd336aba723 39 static std::queue<SendPayload> payloadQueue;
biwa1400 0:3cd336aba723 40
biwa1400 0:3cd336aba723 41 /*** Getter Setters ***/
biwa1400 0:3cd336aba723 42 public:
biwa1400 0:3cd336aba723 43 uint8_t getAppNumber();
biwa1400 0:3cd336aba723 44
biwa1400 0:3cd336aba723 45 /*** Static Handle ***/
biwa1400 0:3cd336aba723 46 public:
biwa1400 0:3cd336aba723 47 static SendPayload getSendPayload();
biwa1400 0:3cd336aba723 48 static bool hasSendPayload();
biwa1400 0:3cd336aba723 49
biwa1400 0:3cd336aba723 50 /*** Handle ***/
biwa1400 0:3cd336aba723 51 public:
biwa1400 0:3cd336aba723 52 void send(std::string payload);
biwa1400 0:3cd336aba723 53
biwa1400 0:3cd336aba723 54 /*** Need to be implemented ***/
biwa1400 0:3cd336aba723 55 virtual void run(std::string payload);
biwa1400 0:3cd336aba723 56 virtual void interrupt();
biwa1400 0:3cd336aba723 57 };
biwa1400 0:3cd336aba723 58
biwa1400 0:3cd336aba723 59
biwa1400 0:3cd336aba723 60 }
biwa1400 0:3cd336aba723 61
biwa1400 0:3cd336aba723 62 #endif