2022-07-19 18:13:25 +02:00
|
|
|
#ifndef FSFW_TMTCPACKET_PUSTMIF_H
|
|
|
|
#define FSFW_TMTCPACKET_PUSTMIF_H
|
|
|
|
|
|
|
|
#include <cstddef>
|
|
|
|
#include <cstdint>
|
|
|
|
|
2022-09-05 14:44:35 +02:00
|
|
|
#include "fsfw/timemanager/TimeWriterIF.h"
|
2022-07-19 18:13:25 +02:00
|
|
|
#include "fsfw/tmtcpacket/pus/PusIF.h"
|
2022-07-21 11:34:11 +02:00
|
|
|
#include "fsfw/tmtcpacket/pus/defs.h"
|
2022-07-19 18:13:25 +02:00
|
|
|
|
|
|
|
class PusTmIF : public PusIF {
|
|
|
|
public:
|
|
|
|
~PusTmIF() override = default;
|
|
|
|
|
2022-07-20 22:21:15 +02:00
|
|
|
/**
|
|
|
|
* Minimum length without timestamp
|
|
|
|
*/
|
|
|
|
static constexpr size_t MIN_SEC_HEADER_LEN = 7;
|
|
|
|
/**
|
|
|
|
* 2 bytes for CRC16
|
|
|
|
*/
|
2022-07-21 11:34:11 +02:00
|
|
|
static constexpr size_t MIN_SIZE = sizeof(ccsds::PrimaryHeader) + MIN_SEC_HEADER_LEN + 2;
|
2022-07-20 22:21:15 +02:00
|
|
|
|
2022-07-19 18:13:25 +02:00
|
|
|
virtual uint8_t getScTimeRefStatus() = 0;
|
|
|
|
virtual uint16_t getMessageTypeCounter() = 0;
|
|
|
|
virtual uint16_t getDestId() = 0;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // FSFW_TMTCPACKET_PUSTMIF_H
|