paqueteCnC
Loading...
Searching...
No Matches
packet_extended_housekeeping_25.h
Go to the documentation of this file.
1
30#ifndef PACKET_EXTENDED_HOUSEKEEPING_25_H
31#define PACKET_EXTENDED_HOUSEKEEPING_25_H
32
33#include <vector>
34#include <unordered_map>
35
36#include "../packet.h"
39
41public:
42 enum class GenerationMode : uint8_t {
43 PERIODIC = 0,
44 FILTERED_THRESHOLD = 1,
45 FILTERED_TIMEOUT = 2,
46 };
47
48 // Extraction of the samples in the parameters input field is done here
49 PacketExtendedHousekeeping25(const Packet& packet, uint16_t structureId,
50 GenerationMode mode, const std::vector<std::byte>& parameters);
51
52 /****** Methods from composited classes ******/
53
60
67
72 uint16_t getStructureIdentifier();
73
74 /****** Methods from this class ******/
75
81 std::vector<uint8_t> getSampledParameters();
82 void setSampledParameters(const std::vector<uint8_t> newSampledParameters);
83
89 std::vector<std::vector<uint8_t>> getSampledArrays();
90 void setSampledArrays(const std::vector<std::vector<uint8_t>> newSampledArrays);
91
99 GenerationMode getGenerationMode();
100 void setGenerationMode(const GenerationMode newMode);
101
102private:
103 PacketExtendedHousekeeping packetHousekeepingBasic_;
104 GenerationMode mode_;
105
106 /*
107 * Parameters is a sequence of sampled parameters followed by a
108 * sequence of fixed-length arrays that also each contain parameters
109 * but that may be sampled more than once.
110 *
111 * See PacketExtendedKeeping2 class description, which is the definition
112 * of a new diagnostic parameter report.
113 */
114 std::vector<uint8_t> sampledParameters_;
115 std::vector<std::vector<uint8_t>> sampledArrays_;
116
121 void interpretInputParameters(uint16_t structureId);
122};
123
124#endif
Definition: packet_extended_housekeeping_25.h:40
Packet & getPacket()
Calls the packet extended housekeeping implementation of this method.
Definition: packet_extended_housekeeping_25.cpp:11
GenerationMode getGenerationMode()
0 = periodic, 1 = filtered threshold, 2 = filtered timeout
Definition: packet_extended_housekeeping_25.cpp:46
PacketExtendedHousekeeping25 swapApplicationIdFields()
Calls the packet extended housekeeping implementation of this method.
Definition: packet_extended_housekeeping_25.cpp:15
std::vector< uint8_t > getSampledParameters()
Calls the packet extended housekeeping implementation of this method.
Definition: packet_extended_housekeeping_25.cpp:28
uint16_t getStructureIdentifier()
Calls the packet extended housekeeping implementation of this method.
Definition: packet_extended_housekeeping_25.cpp:24
std::vector< std::vector< uint8_t > > getSampledArrays()
Calls the packet extended housekeeping implementation of this method.
Definition: packet_extended_housekeeping_25.cpp:37
Definition: packet_extended_housekeeping_basic.h:36
Definition: packet.h:26
Higher level packet for the services.
Higher level packet for housekeeping and diagnostic data service. Basic packet that all the subtypes ...