Version FC

Dependencies:   DmTftLibrary eeprom SX1280Lib filesystem mbed

Fork of MSNV2-Terminal_V1-5 by Francis CHATAIN

Committer:
patrick_duc
Date:
Fri Oct 19 15:08:35 2018 +0000
Branch:
Integration
Revision:
39:13e66d087ae9
Parent:
38:9b43b2415093
Suite d'int?gration (ne compile pas encore).

Who changed what in which revision?

UserRevisionLine numberNew contents of line
patrick_duc 13:5414193da1de 1 #ifndef __PAYLOAD_HPP___HPP__
patrick_duc 13:5414193da1de 2 #define __PAYLOAD_HPP___HPP__
patrick_duc 13:5414193da1de 3
patrick_duc 20:b0281e8a375a 4 #include "Context.h"
patrick_duc 20:b0281e8a375a 5
patrick_duc 13:5414193da1de 6 #include <vector>
patrick_duc 38:9b43b2415093 7 //#include <sstream>
patrick_duc 20:b0281e8a375a 8
patrick_duc 13:5414193da1de 9 #include "Component.hpp"
patrick_duc 13:5414193da1de 10
patrick_duc 20:b0281e8a375a 11
patrick_duc 39:13e66d087ae9 12 namespace misnet {
patrick_duc 39:13e66d087ae9 13 class Payload;
patrick_duc 20:b0281e8a375a 14 }
patrick_duc 20:b0281e8a375a 15
patrick_duc 39:13e66d087ae9 16 class misnet::Payload {
patrick_duc 38:9b43b2415093 17 public:
patrick_duc 38:9b43b2415093 18 // TODO : provide a real list of payload identifiers !
patrick_duc 38:9b43b2415093 19 enum PAYLOAD_ID {
patrick_duc 39:13e66d087ae9 20 IOT_PAYLOAD_1 = 1,
patrick_duc 39:13e66d087ae9 21 IOT_PAYLOAD_2 = 2,
patrick_duc 39:13e66d087ae9 22 IOT_PAYLOAD_3 = 3,
patrick_duc 39:13e66d087ae9 23 IOT_PAYLOAD_4 = 4,
patrick_duc 39:13e66d087ae9 24 IOT_PAYLOAD_5 = 5,
patrick_duc 39:13e66d087ae9 25 IOT_PAYLOAD_6 = 6,
patrick_duc 39:13e66d087ae9 26 SMART_TOOL_PAYLOAD_1 = 7,
patrick_duc 39:13e66d087ae9 27 SMART_TOOL_PAYLOAD_2 = 8,
patrick_duc 39:13e66d087ae9 28 SMART_TOOL_PAYLOAD_3 = 9,
patrick_duc 39:13e66d087ae9 29 SMART_TOOL_PAYLOAD_4 = 10
patrick_duc 39:13e66d087ae9 30 };
patrick_duc 13:5414193da1de 31
patrick_duc 38:9b43b2415093 32 Payload(PAYLOAD_ID id, std::vector<misnet::Component*> components, uint16_t base_period);
patrick_duc 13:5414193da1de 33
patrick_duc 38:9b43b2415093 34 std::vector<misnet::Component*>& getComponents() {
patrick_duc 38:9b43b2415093 35 return this->_components;
patrick_duc 38:9b43b2415093 36 }
patrick_duc 13:5414193da1de 37
patrick_duc 38:9b43b2415093 38 std::vector<misnet::Service*>& getServices() {
patrick_duc 38:9b43b2415093 39 return this->_services;
patrick_duc 38:9b43b2415093 40 }
patrick_duc 13:5414193da1de 41
patrick_duc 38:9b43b2415093 42 misnet::Service* getServiceByRank(short channelRank);
patrick_duc 13:5414193da1de 43
patrick_duc 38:9b43b2415093 44 PAYLOAD_ID getId() {
patrick_duc 38:9b43b2415093 45 return this->_id;
patrick_duc 38:9b43b2415093 46 }
patrick_duc 13:5414193da1de 47
patrick_duc 38:9b43b2415093 48 uint16_t getBasePeriod() {
patrick_duc 38:9b43b2415093 49 return this->_basePeriod;
patrick_duc 38:9b43b2415093 50 }
patrick_duc 20:b0281e8a375a 51
patrick_duc 39:13e66d087ae9 52 #ifdef TEST_ENVIRONMENT
patrick_duc 38:9b43b2415093 53 std::string toString();
patrick_duc 39:13e66d087ae9 54 #endif
patrick_duc 13:5414193da1de 55
patrick_duc 13:5414193da1de 56
patrick_duc 38:9b43b2415093 57 private:
patrick_duc 39:13e66d087ae9 58 const PAYLOAD_ID _id;
patrick_duc 39:13e66d087ae9 59 std::vector<misnet::Component*> _components;
patrick_duc 39:13e66d087ae9 60 std::vector<misnet::Service*> _services;
patrick_duc 39:13e66d087ae9 61 uint16_t _basePeriod;
patrick_duc 13:5414193da1de 62 };
patrick_duc 13:5414193da1de 63
patrick_duc 13:5414193da1de 64 #endif // __PAYLOAD_HPP__