Merge branch 'v2.1.0-dev' into tm-store-task-base-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
This commit is contained in:
commit
a38f5c78ae
@ -43,6 +43,12 @@ will consitute of a breaking change warranting a new major release:
|
||||
- Disable missed deadlines per default. Not useful in orbit, and triggers all the time on the EM
|
||||
build after a number of subsequent runs, without any apparent reason (deadlines are not actually
|
||||
missed, thread usage displayed is nominal)
|
||||
- TM store dumpes will not be cancelled anymore if the transmitter is off. The dump can be cancelled
|
||||
with an OFF command, and the PTME is perfectly capable of dumping without the transmitter being
|
||||
on.
|
||||
- Transmitter state is not taken into account anymore for writing into the PTME. The PTME should
|
||||
be perfectly capable of generating a valid CADU, even when the transmitter is not ON for any
|
||||
reason.
|
||||
|
||||
## Added
|
||||
|
||||
|
@ -94,13 +94,6 @@ void TmStoreTaskBase::cancelDump(DumpContext& ctx, PersistentTmStore& store, boo
|
||||
ReturnValue_t TmStoreTaskBase::handleOneDump(PersistentTmStoreWithTmQueue& store,
|
||||
DumpContext& dumpContext, bool& dumpPerformed) {
|
||||
ReturnValue_t result = returnvalue::OK;
|
||||
// The PTME might have been reset an transmitter state change, so there is no point in continuing
|
||||
// the dump.
|
||||
// TODO: Will be solved in a cleaner way, this is kind of a hack.
|
||||
if (not channel.isTxOn()) {
|
||||
cancelDump(dumpContext, store, false);
|
||||
return returnvalue::FAILED;
|
||||
}
|
||||
// It is assumed that the PTME will only be locked for a short period (e.g. to change datarate).
|
||||
if (not channel.isBusy() and not ptmeLocked) {
|
||||
performDump(store, dumpContext, dumpPerformed);
|
||||
|
@ -11,10 +11,7 @@ ReturnValue_t VirtualChannel::sendNextTm(const uint8_t* data, size_t size) {
|
||||
}
|
||||
|
||||
ReturnValue_t VirtualChannel::write(const uint8_t* data, size_t size) {
|
||||
if (txOn) {
|
||||
return ptme.writeToVc(vcId, data, size);
|
||||
}
|
||||
return returnvalue::OK;
|
||||
return ptme.writeToVc(vcId, data, size);
|
||||
}
|
||||
|
||||
uint8_t VirtualChannel::getVcid() const { return vcId; }
|
||||
@ -22,10 +19,6 @@ uint8_t VirtualChannel::getVcid() const { return vcId; }
|
||||
const char* VirtualChannel::getName() const { return vcName.c_str(); }
|
||||
|
||||
bool VirtualChannel::isBusy() const {
|
||||
// Data is discarded, so channel is not busy.
|
||||
if (not txOn) {
|
||||
return false;
|
||||
}
|
||||
return ptme.isBusy(vcId);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user