2021-12-03 15:37:49 +01:00
|
|
|
#include "PromptPduDeserializer.h"
|
|
|
|
|
2022-02-02 10:29:30 +01:00
|
|
|
PromptPduDeserializer::PromptPduDeserializer(const uint8_t *pduBuf, size_t maxSize)
|
|
|
|
: FileDirectiveDeserializer(pduBuf, maxSize) {}
|
2021-12-03 15:37:49 +01:00
|
|
|
|
|
|
|
cfdp::PromptResponseRequired PromptPduDeserializer::getPromptResponseRequired() const {
|
2022-02-02 10:29:30 +01:00
|
|
|
return responseRequired;
|
2021-12-03 15:37:49 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
ReturnValue_t PromptPduDeserializer::parseData() {
|
2022-02-02 10:29:30 +01:00
|
|
|
ReturnValue_t result = FileDirectiveDeserializer::parseData();
|
|
|
|
if (result != HasReturnvaluesIF::RETURN_OK) {
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
size_t currentIdx = FileDirectiveDeserializer::getHeaderSize();
|
|
|
|
if (FileDirectiveDeserializer::getWholePduSize() - currentIdx < 1) {
|
|
|
|
return SerializeIF::STREAM_TOO_SHORT;
|
|
|
|
}
|
|
|
|
responseRequired = static_cast<cfdp::PromptResponseRequired>((rawPtr[currentIdx] >> 7) & 0x01);
|
|
|
|
return HasReturnvaluesIF::RETURN_OK;
|
2021-12-03 15:37:49 +01:00
|
|
|
}
|