1
0
forked from fsfw/fsfw

hk stuff continued

This commit is contained in:
2020-09-19 15:58:34 +02:00
parent 9ecbc8199e
commit 32c0140cc2
16 changed files with 235 additions and 208 deletions

View File

@ -387,7 +387,7 @@ void CommandingServiceBase::acceptPacket(uint8_t reportId,
void CommandingServiceBase::checkAndExecuteFifo(CommandMapIter iter) {
store_address_t address;
if (iter->second.fifo.retrieve(&address) != RETURN_OK) {
commandMap.erase(&iter);
commandMap.erase(iter->first);
} else {
TcPacketStored newPacket(address);
startExecution(&newPacket, iter);
@ -411,8 +411,14 @@ void CommandingServiceBase::checkTimeout() {
uint32_t uptime;
Clock::getUptime(&uptime);
CommandMapIter iter;
// TODO: BUG HERE! Problems with comparison operator of iterator.
for (iter = commandMap.begin(); iter != commandMap.end(); ++iter) {
if(commandMap.empty()) {
// intermediate solution.
break;
}
if ((iter->second.uptimeOfStart + (timeoutSeconds * 1000)) < uptime) {
sif::info << "test" << std::endl;
verificationReporter.sendFailureReport(
TC_VERIFY::COMPLETION_FAILURE, iter->second.tcInfo.ackFlags,
iter->second.tcInfo.tcPacketId, iter->second.tcInfo.tcSequenceControl,

View File

@ -63,8 +63,8 @@ void VerificationReporter::sendFailureReport(uint8_t report_id,
ReturnValue_t status = MessageQueueSenderIF::sendMessage(acknowledgeQueue,
&message);
if (status != HasReturnvaluesIF::RETURN_OK) {
sif::error << "VerificationReporter::sendFailureReport Error writing "
<< "to queue. Code: " << std::hex << status << std::dec
sif::error << "VerificationReporter::sendFailureReport: Error writing "
<< "to queue. Code: " << std::hex << "0x" << status << std::dec
<< std::endl;
}
}
@ -81,8 +81,8 @@ void VerificationReporter::sendFailureReport(uint8_t report_id,
ReturnValue_t status = MessageQueueSenderIF::sendMessage(acknowledgeQueue,
&message);
if (status != HasReturnvaluesIF::RETURN_OK) {
sif::error << "VerificationReporter::sendFailureReport Error writing "
<< "to queue. Code: " << std::hex << status << std::dec
sif::error << "VerificationReporter::sendFailureReport: Error writing "
<< "to queue. Code: " << std::hex << "0x" << status << std::dec
<< std::endl;
}
}