Today's the day. Renamed platform to framework.
This commit is contained in:
45
fdir/FaultCounter.h
Normal file
45
fdir/FaultCounter.h
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* FaultCounter.h
|
||||
*
|
||||
* Created on: 15.09.2015
|
||||
* Author: baetz
|
||||
*/
|
||||
|
||||
#ifndef FRAMEWORK_FDIR_FAULTCOUNTER_H_
|
||||
#define FRAMEWORK_FDIR_FAULTCOUNTER_H_
|
||||
|
||||
#include <framework/parameters/HasParametersIF.h>
|
||||
#include <framework/timemanager/Countdown.h>
|
||||
|
||||
class FaultCounter: public HasParametersIF {
|
||||
public:
|
||||
FaultCounter();
|
||||
FaultCounter(uint32_t failureThreshold, uint32_t decrementAfterMs,
|
||||
uint8_t setParameterDomain = 0);
|
||||
virtual ~FaultCounter();
|
||||
|
||||
bool incrementAndCheck(uint32_t amount = 1);
|
||||
|
||||
void increment(uint32_t amount = 1);
|
||||
|
||||
bool checkForDecrement();
|
||||
|
||||
bool aboveThreshold();
|
||||
|
||||
void clear();
|
||||
void setFailureThreshold(uint32_t failureThreshold);
|
||||
void setFaultDecrementTimeMs(uint32_t timeMs);
|
||||
|
||||
virtual ReturnValue_t getParameter(uint8_t domainId, uint16_t parameterId,
|
||||
ParameterWrapper *parameterWrapper,
|
||||
const ParameterWrapper *newValues, uint16_t startAtIndex);
|
||||
|
||||
void setParameterDomain(uint8_t domain);
|
||||
private:
|
||||
uint8_t parameterDomain;
|
||||
Countdown timer;
|
||||
uint32_t faultCount;
|
||||
uint32_t failureThreshold;
|
||||
};
|
||||
|
||||
#endif /* FRAMEWORK_FDIR_FAULTCOUNTER_H_ */
|
Reference in New Issue
Block a user