4#ifndef SRC_SUPLA_SENSOR_GENERAL_PURPOSE_METER_H_
5#define SRC_SUPLA_SENSOR_GENERAL_PURPOSE_METER_H_
7#include "general_purpose_channel_base.h"
8#include <supla/action_handler.h>
17 uint8_t counterType = 0;
18 uint8_t includeValueAddedInHistory = 0;
19 uint8_t fillMissingData = 0;
24 bool addMemoryVariableDriver =
true);
30 int *size, uint8_t configType)
override;
31 void handleAction(
int event,
int action)
override;
37 void setCounter(
double newValue);
39 void incCounter(
double incrementBy = 0);
41 void decCounter(
double decrementBy = 0);
42 void setValueStep(
double newValueStep);
43 void setResetToValue(
double newResetToValue);
45 void setCounterResetSupportFlag(
bool support);
47 void setKeepStateInStorage(
bool keep);
49 uint8_t getCounterType()
const;
50 uint8_t getIncludeValueAddedInHistory()
const;
51 uint8_t getFillMissingData()
const;
53 void setCounterType(uint8_t counterType,
bool local =
true);
54 void setIncludeValueAddedInHistory(uint8_t includeValueAddedInHistory,
56 void setFillMissingData(uint8_t fillMissingData,
bool local =
true);
59 void saveMeterSpecificConfig();
61 double resetToValue = 0;
62 bool isCounterResetSupported =
true;
63 bool keepStateInStorage =
false;
Definition SuplaDevice.h:167
Definition action_handler.h:8
Base class for General Purpose Measurement (GPM/KPOP) and General Purpose Meter (GPM/KLOP)
Definition general_purpose_channel_base.h:22
Definition general_purpose_meter.h:13
void onLoadState() override
Second method called on element in SuplaDevice.begin().
Definition general_purpose_meter.cpp:293
void onLoadConfig(SuplaDeviceClass *sdc) override
Supla::Element::onLoadConfig() - called by SuplaDeviceClass::loadConfig() during initialization.
Definition general_purpose_meter.cpp:25
void onSaveState() override
Method called periodically during SuplaDevice iteration.
Definition general_purpose_meter.cpp:286
Supla::ApplyConfigResult applyChannelConfig(TSD_ChannelConfig *result, bool local) override
Applies new Channel Config (i.e.
Definition general_purpose_meter.cpp:44
int handleCalcfgFromServer(TSD_DeviceCalCfgRequest *request) override
Handles CALCFG requests from server.
Definition general_purpose_meter.cpp:234
void fillChannelConfig(void *channelConfig, int *size, uint8_t configType) override
Fills Channel Config.
Definition general_purpose_meter.cpp:105
Definition measurement_driver.h:9
Definition general_purpose_meter.h:16