another small bugfix
This commit is contained in:
parent
7ff9c29b62
commit
1f70b1159d
@ -90,6 +90,14 @@ public:
|
|||||||
*/
|
*/
|
||||||
ReturnValue_t initializeAfterTaskCreation(uint8_t nonDiagInvlFactor = 5);
|
ReturnValue_t initializeAfterTaskCreation(uint8_t nonDiagInvlFactor = 5);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This should be called in the periodic handler of the owner.
|
||||||
|
* It performs all the periodic functionalities of the data pool manager,
|
||||||
|
* for example generating periodic HK packets.
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
ReturnValue_t performHkOperation();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@ -108,12 +116,6 @@ public:
|
|||||||
*/
|
*/
|
||||||
void setNonDiagnosticIntervalFactor(uint8_t nonDiagInvlFactor);
|
void setNonDiagnosticIntervalFactor(uint8_t nonDiagInvlFactor);
|
||||||
|
|
||||||
/**
|
|
||||||
* This should be called in the periodic handler of the owner.
|
|
||||||
* It performs all the periodic functionalities of the data pool manager.
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
ReturnValue_t performHkOperation();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generate a housekeeping packet with a given SID.
|
* Generate a housekeeping packet with a given SID.
|
||||||
|
@ -148,7 +148,7 @@ void HousekeepingMessage::clear(CommandMessage* message) {
|
|||||||
case(DIAGNOSTICS_REPORT):
|
case(DIAGNOSTICS_REPORT):
|
||||||
case(HK_DEFINITIONS_REPORT):
|
case(HK_DEFINITIONS_REPORT):
|
||||||
case(DIAGNOSTICS_DEFINITION_REPORT):
|
case(DIAGNOSTICS_DEFINITION_REPORT):
|
||||||
case(UPDATE_SNAPSHOT):{
|
case(UPDATE_SNAPSHOT): {
|
||||||
store_address_t storeId;
|
store_address_t storeId;
|
||||||
getHkDataReply(message, &storeId);
|
getHkDataReply(message, &storeId);
|
||||||
StorageManagerIF *ipcStore = objectManager->get<StorageManagerIF>(
|
StorageManagerIF *ipcStore = objectManager->get<StorageManagerIF>(
|
||||||
|
@ -10,7 +10,7 @@ void PeriodicHousekeepingHelper::initialize(float collectionInterval,
|
|||||||
dur_millis_t minimumPeriodicInterval, bool isDiagnostics,
|
dur_millis_t minimumPeriodicInterval, bool isDiagnostics,
|
||||||
uint8_t nonDiagIntervalFactor) {
|
uint8_t nonDiagIntervalFactor) {
|
||||||
this->minimumPeriodicInterval = minimumPeriodicInterval;
|
this->minimumPeriodicInterval = minimumPeriodicInterval;
|
||||||
if(isDiagnostics) {
|
if(not isDiagnostics) {
|
||||||
this->minimumPeriodicInterval = this->minimumPeriodicInterval *
|
this->minimumPeriodicInterval = this->minimumPeriodicInterval *
|
||||||
nonDiagIntervalFactor;
|
nonDiagIntervalFactor;
|
||||||
}
|
}
|
||||||
|
@ -21,9 +21,12 @@ public:
|
|||||||
InternalErrorDataset(sid_t sid):
|
InternalErrorDataset(sid_t sid):
|
||||||
StaticLocalDataSet(sid) {}
|
StaticLocalDataSet(sid) {}
|
||||||
|
|
||||||
lp_var_t<uint32_t> tmHits = lp_var_t<uint32_t>(TM_HITS, sid.objectId, this);
|
lp_var_t<uint32_t> tmHits = lp_var_t<uint32_t>(TM_HITS,
|
||||||
lp_var_t<uint32_t> queueHits = lp_var_t<uint32_t>(QUEUE_HITS, sid.objectId, this);
|
hkManager->getOwner(), this);
|
||||||
lp_var_t<uint32_t> storeHits = lp_var_t<uint32_t>(STORE_HITS, sid.objectId, this);
|
lp_var_t<uint32_t> queueHits = lp_var_t<uint32_t>(QUEUE_HITS,
|
||||||
|
hkManager->getOwner(), this);
|
||||||
|
lp_var_t<uint32_t> storeHits = lp_var_t<uint32_t>(STORE_HITS,
|
||||||
|
hkManager->getOwner(), this);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -50,6 +50,8 @@ ReturnValue_t InternalErrorReporter::performOperation(uint8_t opCode) {
|
|||||||
|
|
||||||
internalErrorDataset.commit(INTERNAL_ERROR_MUTEX_TIMEOUT);
|
internalErrorDataset.commit(INTERNAL_ERROR_MUTEX_TIMEOUT);
|
||||||
|
|
||||||
|
poolManager.performHkOperation();
|
||||||
|
|
||||||
CommandMessage message;
|
CommandMessage message;
|
||||||
ReturnValue_t result = commandQueue->receiveMessage(&message);
|
ReturnValue_t result = commandQueue->receiveMessage(&message);
|
||||||
if(result != MessageQueueIF::EMPTY) {
|
if(result != MessageQueueIF::EMPTY) {
|
||||||
@ -155,8 +157,6 @@ ReturnValue_t InternalErrorReporter::initializeLocalDataPool(
|
|||||||
new PoolEntry<uint32_t>());
|
new PoolEntry<uint32_t>());
|
||||||
localDataPoolMap.emplace(errorPoolIds::STORE_HITS,
|
localDataPoolMap.emplace(errorPoolIds::STORE_HITS,
|
||||||
new PoolEntry<uint32_t>());
|
new PoolEntry<uint32_t>());
|
||||||
// todo: Only send HK if values have changed, will be supported by
|
|
||||||
// pool manager soon.
|
|
||||||
poolManager.subscribeForPeriodicPacket(internalErrorSid, false,
|
poolManager.subscribeForPeriodicPacket(internalErrorSid, false,
|
||||||
getPeriodicOperationFrequency(), true);
|
getPeriodicOperationFrequency(), true);
|
||||||
return HasReturnvaluesIF::RETURN_OK;
|
return HasReturnvaluesIF::RETURN_OK;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user