Version FC

Dependencies:   DmTftLibrary eeprom SX1280Lib filesystem mbed

Fork of MSNV2-Terminal_V1-5 by Francis CHATAIN

Committer:
patrick_duc
Date:
Fri Oct 19 06:32:59 2018 +0000
Branch:
Integration
Revision:
38:9b43b2415093
Parent:
20:b0281e8a375a
Child:
39:13e66d087ae9
Suite d'int?gration. Compilation  non encore test?e.

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