Official reference client implementation for Cumulocity SmartREST on u-blox C027.

Dependencies:   C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed

Fork of MbedSmartRestMain by Vincent Wochnik

Committer:
xinlei
Date:
Wed May 13 13:03:20 2015 +0000
Revision:
108:f1ee3e1eb126
Parent:
106:c61f0d62b625
Child:
117:5de54f09f754
ConfigSync is now singleton

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Cumulocity 41:804f6a0bda26 1 #ifndef MBEDAGENT_H
Cumulocity 41:804f6a0bda26 2 #define MBEDAGENT_H
Cumulocity 41:804f6a0bda26 3
xinlei 94:61d44636f020 4 #include "SmartRest.h"
Cumulocity 41:804f6a0bda26 5 #include "SmartRestTemplate.h"
Cumulocity 41:804f6a0bda26 6 #include "DeviceInfo.h"
Cumulocity 41:804f6a0bda26 7 #include "DeviceBootstrap.h"
Cumulocity 41:804f6a0bda26 8 #include "DeviceIntegration.h"
xinlei 100:47ea098f8a47 9
xinlei 100:47ea098f8a47 10 #include "Signal.h"
xinlei 100:47ea098f8a47 11 #include "Temperature.h"
xinlei 100:47ea098f8a47 12 #include "Location.h"
xinlei 100:47ea098f8a47 13 #include "Potentiometer.h"
xinlei 100:47ea098f8a47 14 #include "Acceleration.h"
xinlei 99:e369fc75c000 15 #include "ConfigSync.h"
xinlei 100:47ea098f8a47 16
vwochnik 57:4af5f1bec3a6 17 #include "OperationSupport.h"
xinlei 93:0acd11870c6a 18 #include "SmartRestConf.h"
xinlei 96:5dfdc8568e9f 19 #include "PollThread.h"
xinlei 94:61d44636f020 20 #include "ReportThread.h"
xinlei 101:dbcd3bc51758 21 #include "LCDDisplay.h"
Cumulocity 41:804f6a0bda26 22
xinlei 100:47ea098f8a47 23 const size_t N = 6;
xinlei 100:47ea098f8a47 24
Cumulocity 41:804f6a0bda26 25 class MbedAgent
Cumulocity 41:804f6a0bda26 26 {
Cumulocity 41:804f6a0bda26 27 public:
xinlei 99:e369fc75c000 28 MbedAgent(DeviceInfo&);
xinlei 93:0acd11870c6a 29
Cumulocity 41:804f6a0bda26 30 bool init();
xinlei 93:0acd11870c6a 31 int run();
xinlei 93:0acd11870c6a 32 void loop();
Cumulocity 41:804f6a0bda26 33
Cumulocity 41:804f6a0bda26 34 private:
xinlei 94:61d44636f020 35 SmartRest _client;
xinlei 100:47ea098f8a47 36 SmartRestTemplate tpl;
Cumulocity 41:804f6a0bda26 37 DeviceBootstrap _bootstrap;
Cumulocity 41:804f6a0bda26 38 DeviceIntegration _integration;
xinlei 100:47ea098f8a47 39 bool lcdThirdLineBlank;
xinlei 100:47ea098f8a47 40 Signal signal;
xinlei 100:47ea098f8a47 41 Temperature temp;
xinlei 100:47ea098f8a47 42 Potentiometer poti;
xinlei 100:47ea098f8a47 43 Location gps;
xinlei 100:47ea098f8a47 44 Acceleration acc;
xinlei 100:47ea098f8a47 45 char buf[SMARTREST_SIZE];
xinlei 106:c61f0d62b625 46 char buf2[SMARTREST_BODY_SIZE];
xinlei 101:dbcd3bc51758 47 char status[DISPLAY_LEN];
xinlei 100:47ea098f8a47 48 AbstractReporter *reporters[N];
xinlei 101:dbcd3bc51758 49 SmartRestSocket sock;
xinlei 94:61d44636f020 50 OperationPool pool;
vwochnik 57:4af5f1bec3a6 51 OperationSupport _operationSupport;
Cumulocity 41:804f6a0bda26 52 };
Cumulocity 41:804f6a0bda26 53
Cumulocity 41:804f6a0bda26 54 #endif