2020-06-23 10:27:44 +02:00
|
|
|
#ifndef FRAMEWORK_HEALTH_HEALTHTABLEIF_H_
|
|
|
|
#define FRAMEWORK_HEALTH_HEALTHTABLEIF_H_
|
2016-06-15 23:48:41 +02:00
|
|
|
|
|
|
|
#include <framework/health/ManagesHealthIF.h>
|
|
|
|
#include <framework/objectmanager/ObjectManagerIF.h>
|
|
|
|
#include <framework/returnvalues/HasReturnvaluesIF.h>
|
|
|
|
#include <map>
|
|
|
|
|
|
|
|
|
|
|
|
class HealthTableIF: public ManagesHealthIF {
|
2020-06-23 10:27:44 +02:00
|
|
|
// TODO: This is in the mission folder and not in the framework folder.
|
|
|
|
// delete it?
|
2016-06-15 23:48:41 +02:00
|
|
|
friend class HealthCommandingService;
|
|
|
|
public:
|
|
|
|
virtual ~HealthTableIF() {
|
|
|
|
}
|
|
|
|
|
|
|
|
virtual ReturnValue_t registerObject(object_id_t object,
|
|
|
|
HasHealthIF::HealthState initilialState = HasHealthIF::HEALTHY) = 0;
|
|
|
|
|
|
|
|
virtual uint32_t getPrintSize() = 0;
|
2020-07-01 14:17:55 +02:00
|
|
|
virtual void printAll(uint8_t *pointer, size_t maxSize) = 0;
|
2016-06-15 23:48:41 +02:00
|
|
|
|
|
|
|
protected:
|
|
|
|
virtual ReturnValue_t iterate(std::pair<object_id_t,HasHealthIF::HealthState> *value, bool reset = false) = 0;
|
|
|
|
};
|
|
|
|
|
2020-06-23 10:27:44 +02:00
|
|
|
#endif /* FRAMEWORK_HEALTH_HEALTHTABLEIF_H_ */
|