somethings wrong, i can feel it

This commit is contained in:
2023-10-13 14:00:44 +02:00
parent c95964ce0f
commit be1fb22e39
2 changed files with 18 additions and 6 deletions

View File

@ -60,7 +60,7 @@ ReturnValue_t CfdpHandler::initialize() {
result = handleCfdpMessages();
if (result != OK) {
}
uint32_t fsmCount = 0;
uint32_t fsmCount = 1;
const DestHandler::FsmResult& destResult = destHandler.stateMachine();
while (destResult.callStatus == CallStatus::CALL_AGAIN) {
if (fsmCount == config::CFDP_MAX_FSM_CALL_COUNT_DEST_HANDLER) {
@ -70,7 +70,7 @@ ReturnValue_t CfdpHandler::initialize() {
destHandler.stateMachine();
fsmCount++;
}
fsmCount = 0;
fsmCount = 1;
throttlePeriodOngoing = throttleSignal;
@ -78,6 +78,9 @@ ReturnValue_t CfdpHandler::initialize() {
// way without requiring huge amounts of memory for large files.
if (!throttlePeriodOngoing) {
const SourceHandler::FsmResult& srcResult = srcHandler.stateMachine();
if (srcResult.packetsSent > 0) {
signals::CFDP_MSG_COUNTER.fetch_add(srcResult.packetsSent, std::memory_order_relaxed);
}
while (srcResult.callStatus == CallStatus::CALL_AGAIN) {
// Limit number of messages.
if (fsmCount == config::CFDP_MAX_FSM_CALL_COUNT_SRC_HANDLER) {
@ -85,6 +88,9 @@ ReturnValue_t CfdpHandler::initialize() {
break;
}
srcHandler.stateMachine();
if (srcResult.packetsSent > 0) {
signals::CFDP_MSG_COUNTER.fetch_add(srcResult.packetsSent, std::memory_order_relaxed);
}
if (srcResult.result == cfdp::TM_STORE_FULL) {
sif::warning << "CFDP Source Handler: TM store is full" << std::endl;
} else if (srcResult.result == cfdp::TARGET_MSG_QUEUE_FULL) {
@ -92,6 +98,9 @@ ReturnValue_t CfdpHandler::initialize() {
}
fsmCount++;
}
if (signals::CFDP_MSG_COUNTER > 0) {
sif::debug << "CFDP msg count: " << signals::CFDP_MSG_COUNTER << std::endl;
}
}
if (shortDelay) {
TaskFactory::delayTask(config::CFDP_SHORT_DELAY_MS);