no payload packet impl

This commit is contained in:
2022-11-07 10:30:09 +01:00
parent 32865d1834
commit 23025eec7a
4 changed files with 137 additions and 111 deletions

View File

@ -14,12 +14,12 @@ struct SpTcParams {
SpTcParams(SpacePacketCreator& creator, uint8_t* buf, size_t maxSize)
: creator(creator), buf(buf), maxSize(maxSize) {}
void setFullPacketLen(size_t fullPacketLen_) { fullPacketLen = fullPacketLen_; }
void setFullPayloadLen(size_t fullPayloadLen_) { fullPayloadLen = fullPayloadLen_; }
SpacePacketCreator& creator;
uint8_t* buf = nullptr;
size_t maxSize = 0;
size_t fullPacketLen = 0;
size_t fullPayloadLen = 0;
};
class SpTcBase {
@ -37,7 +37,7 @@ class SpTcBase {
}
void updateSpFields() {
spParams.creator.setDataLenField(spParams.fullPacketLen - 1);
spParams.creator.setDataLenField(spParams.fullPayloadLen - 1);
spParams.creator.setPacketType(ccsds::PacketType::TC);
}
@ -48,7 +48,7 @@ class SpTcBase {
uint16_t getApid() const { return spParams.creator.getApid(); }
ReturnValue_t checkPayloadLen() {
if (ccsds::HEADER_LEN + spParams.fullPacketLen > spParams.maxSize) {
if (ccsds::HEADER_LEN + spParams.fullPayloadLen > spParams.maxSize) {
return SerializeIF::BUFFER_TOO_SHORT;
}
@ -69,7 +69,7 @@ class SpTcBase {
return serializeHeader();
}
ReturnValue_t calcCrc() {
ReturnValue_t calcAndSetCrc() {
/* Calculate crc */
uint16_t crc = CRC::crc16ccitt(spParams.buf, getFullPacketLen() - 2);