supla-device
Loading...
Searching...
No Matches
condition_getter.h
1// SPDX-FileCopyrightText: AC SOFTWARE SP. Z O.O.
2// SPDX-License-Identifier: GPL-2.0-or-later
3
4#ifndef SRC_SUPLA_CONDITION_GETTER_H_
5#define SRC_SUPLA_CONDITION_GETTER_H_
6
7#include <stdint.h>
8#include <supla-common/proto.h>
9
10namespace Supla {
11
12class Element;
13
15 public:
16 virtual ~ConditionGetter() {}
17 virtual double getValue(Supla::Element *element, bool *isValid) = 0;
18 protected:
19 TElectricityMeter_Measurement *getMeasurement(Supla::Element *element,
20 _supla_int_t *measuredValues);
21};
22
23
24}; // namespace Supla
25
26Supla::ConditionGetter *EmVoltage(int8_t phase = 0);
27Supla::ConditionGetter *EmCurrent(int8_t phase = 0);
28Supla::ConditionGetter *EmTotalCurrent();
29Supla::ConditionGetter *EmPowerActiveW(int8_t phase = 0);
30Supla::ConditionGetter *EmTotalPowerActiveW();
31Supla::ConditionGetter *EmPowerApparentVA(int8_t phase = 0);
32Supla::ConditionGetter *EmTotalPowerApparentVA();
33Supla::ConditionGetter *EmPowerReactiveVar(int8_t phase = 0);
34Supla::ConditionGetter *EmTotalPowerReactiveVar();
35
44Supla::ConditionGetter *CountdownTimerRemainingSec();
45
46#endif // SRC_SUPLA_CONDITION_GETTER_H_
Definition condition_getter.h:14
Base class for all elements of SuplaDevice.
Definition element.h:27
Definition proto.h:1909