#ifndef FSFW_HOUSEKEEPING_HOUSEKEEPINGPACKETDOWNLINK_H_ #define FSFW_HOUSEKEEPING_HOUSEKEEPINGPACKETDOWNLINK_H_ #include "../datapoollocal/LocalPoolDataSetBase.h" #include "../serialize/SerialLinkedListAdapter.h" #include "../storagemanager/StorageManagerIF.h" /** * @brief This class will be used to serialize general housekeeping packets * which are destined to be downlinked into the store. * @details * The housekeeping packets are stored into the IPC store and forwarded * to the designated housekeeping handler. */ class HousekeepingPacketDownlink: public SerialLinkedListAdapter { public: HousekeepingPacketDownlink(sid_t sid, LocalPoolDataSetBase* dataSetPtr): sourceId(sid.objectId), setId(sid.ownerSetId), hkData(dataSetPtr) { setLinks(); } private: void setLinks() { setStart(&sourceId); sourceId.setNext(&setId); setId.setNext(&hkData); } SerializeElement sourceId; SerializeElement setId; LinkedElement hkData; }; #endif /* FRAMEWORK_HOUSEKEEPING_HOUSEKEEPINGPACKETDOWNLINK_H_ */