| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- /*
- * Device.cpp
- *
- * Created on: 2020年9月14日
- * Author: vsbes
- */
-
- #include "Device.h"
-
- #include <stddef.h>
- #include <utility>
-
- #include "../../utils/Util.h"
-
- Device::Device()
- {
- // TODO Auto-generated constructor stub
- chargeOrDisChargeState = 0;
-
- P = 0.0;
-
- SOC = 0.0;
-
- chargeEnergy = 0.0;
-
- disChargeEnergy = 0.0;
-
- chargeEnergy_o = 0.0;
-
- disChargeEnergy_o = 0.0;
-
- chargeEnergyDaily = 0.0;
-
- disChargeEnergyDaily = 0.0;
- }
-
- Device::~Device()
- {
- // TODO Auto-generated destructor stub
- }
-
- Device* Device::addParam(const std::string key, const std::string value)
- {
- if (!key.empty() && !value.empty())
- {
- params.insert(make_pair(key, value));
- }
-
- return this;
- }
-
- HRESULT Device::init()
- {
- chargeStateUUID = getParam("chargeState");
- disChargeStateUUID = getParam("disChargeState");
-
- chargeEnergyUUID = getParam("chargeEnergy");
- disChargeEnergyUUID = getParam("disChargeEnergy");
-
- chargeEnergyDailyUUID = getParam("chargeEnergyDaily");
- disChargeEnergyDailyUUID = getParam("disChargeEnergyDaily");
-
- return S_OK;
- }
-
- void Device::other()
- {
- if (chargeOrDisChargeState == 0)
- {
- Util::setItemIntValue(chargeStateUUID, 0, 101);
- Util::setItemIntValue(disChargeStateUUID, 0, 101);
- }
- else if (chargeOrDisChargeState == 1)
- {
- Util::setItemIntValue(chargeStateUUID, 1, 101);
- Util::setItemIntValue(disChargeStateUUID, 0, 101);
-
- chargeEnergy += (fabs(P) * 0.000277777778);
- }
- else if (chargeOrDisChargeState == 2)
- {
- Util::setItemIntValue(chargeStateUUID, 0, 101);
- Util::setItemIntValue(disChargeStateUUID, 1, 101);
-
- disChargeEnergy += (fabs(P) * 0.000277777778);
- }
- else
- {
- Util::setItemIntValue(chargeStateUUID, 0, 101);
- Util::setItemIntValue(disChargeStateUUID, 0, 101);
- }
-
- chargeEnergyDaily = chargeEnergy - chargeEnergy_o;
- disChargeEnergyDaily = disChargeEnergy - disChargeEnergy_o;
-
- Util::setItemFloatValue(chargeEnergyUUID, chargeEnergy, 101);
- Util::setItemFloatValue(disChargeEnergyUUID, disChargeEnergy, 101);
-
- Util::setItemFloatValue(chargeEnergyDailyUUID, chargeEnergyDaily, 101);
- Util::setItemFloatValue(disChargeEnergyDailyUUID, disChargeEnergyDaily, 101);
- }
-
- std::string Device::getParam(std::string key)
- {
- size_t index = params.count(key);
- if (index == 0)
- {
- return "";
- }
- else
- {
- return params.find(key)->second;
- }
- }
|