Version FC
Dependencies: DmTftLibrary eeprom SX1280Lib filesystem mbed
Fork of MSNV2-Terminal_V1-5 by
ControlMessagePart.hpp@24:92c30dabfda4, 2018-09-11 (annotated)
- Committer:
- patrick_duc
- Date:
- Tue Sep 11 21:45:52 2018 +0000
- Revision:
- 24:92c30dabfda4
Debut d'ajout des classes de gestion et serialisation de messages.; Attention ! Classes non encore toutes fonctionnelles...; A tester au moyen du driver de test serialisation.cpp dans le repertoire TESTS.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
patrick_duc | 24:92c30dabfda4 | 1 | #ifndef __CONTROLMESSAGEPART_HPP__ |
patrick_duc | 24:92c30dabfda4 | 2 | #define __CONTROLMESSAGEPART_HPP__ |
patrick_duc | 24:92c30dabfda4 | 3 | |
patrick_duc | 24:92c30dabfda4 | 4 | #include <string> |
patrick_duc | 24:92c30dabfda4 | 5 | |
patrick_duc | 24:92c30dabfda4 | 6 | #include "Context.h" |
patrick_duc | 24:92c30dabfda4 | 7 | |
patrick_duc | 24:92c30dabfda4 | 8 | #ifdef TEST_ENVIRONMENT |
patrick_duc | 24:92c30dabfda4 | 9 | #include <cstdint> |
patrick_duc | 24:92c30dabfda4 | 10 | #else |
patrick_duc | 24:92c30dabfda4 | 11 | #include <stdint.h> |
patrick_duc | 24:92c30dabfda4 | 12 | #endif |
patrick_duc | 24:92c30dabfda4 | 13 | |
patrick_duc | 24:92c30dabfda4 | 14 | |
patrick_duc | 24:92c30dabfda4 | 15 | namespace misnet { |
patrick_duc | 24:92c30dabfda4 | 16 | class ControlMessagePart; |
patrick_duc | 24:92c30dabfda4 | 17 | } |
patrick_duc | 24:92c30dabfda4 | 18 | |
patrick_duc | 24:92c30dabfda4 | 19 | |
patrick_duc | 24:92c30dabfda4 | 20 | class misnet::ControlMessagePart { |
patrick_duc | 24:92c30dabfda4 | 21 | public: |
patrick_duc | 24:92c30dabfda4 | 22 | // Data frame type |
patrick_duc | 24:92c30dabfda4 | 23 | enum DATA_FRAME_TYPE { |
patrick_duc | 24:92c30dabfda4 | 24 | CONFIG = 0, |
patrick_duc | 24:92c30dabfda4 | 25 | IOT = 1, |
patrick_duc | 24:92c30dabfda4 | 26 | SYNC = 2 |
patrick_duc | 24:92c30dabfda4 | 27 | }; |
patrick_duc | 24:92c30dabfda4 | 28 | |
patrick_duc | 24:92c30dabfda4 | 29 | ControlMessagePart(DATA_FRAME_TYPE data_frame_type, uint16_t payload_module_id, uint16_t ack_value); |
patrick_duc | 24:92c30dabfda4 | 30 | |
patrick_duc | 24:92c30dabfda4 | 31 | std::string serialize(); // Returns a string that represents the control data to be sent to gateway |
patrick_duc | 24:92c30dabfda4 | 32 | |
patrick_duc | 24:92c30dabfda4 | 33 | private: |
patrick_duc | 24:92c30dabfda4 | 34 | static const uint16_t PAYLOAD_MODULE_ID_MASK = 0x3FFF; |
patrick_duc | 24:92c30dabfda4 | 35 | static const uint16_t ACKNOWLEDGE_VALUE_MASK = 0xFFF; |
patrick_duc | 24:92c30dabfda4 | 36 | |
patrick_duc | 24:92c30dabfda4 | 37 | uint32_t _control_part_info; // Aggregation of data frame type, payload module id and acknowledge value |
patrick_duc | 24:92c30dabfda4 | 38 | uint8_t _data_frame_type; // Data frame type |
patrick_duc | 24:92c30dabfda4 | 39 | uint16_t _payload_module_id; // Payload module identification |
patrick_duc | 24:92c30dabfda4 | 40 | uint16_t _acknowledge_value; // Acknowledge value |
patrick_duc | 24:92c30dabfda4 | 41 | uint32_t _message_integrity_code; // Message Authentication Code |
patrick_duc | 24:92c30dabfda4 | 42 | }; |
patrick_duc | 24:92c30dabfda4 | 43 | |
patrick_duc | 24:92c30dabfda4 | 44 | #endif // __CONTROLMESSAGEPART_HPP__ |