Rewritten the backend, made it hella faster
This commit is contained in:
parent
4209d2767e
commit
d7b59ea326
11 changed files with 176 additions and 144 deletions
12
src/main.cpp
12
src/main.cpp
|
|
@ -48,11 +48,11 @@ int main(int argc, char **argv) {
|
|||
std::string microinvertersToGetHelp{"List of microinverters to fetch, delimited by ','; if omitted, all are fetched"};
|
||||
hoymilesClient.add_option<std::vector<long long>>("-m,--microinverters", microinvertersToGet, microinvertersToGetHelp)->delimiter(',')->group("Microinverters");
|
||||
|
||||
bool microinvertersGetTodayProduction;
|
||||
bool microinvertersGetTodayProduction{false};
|
||||
std::string microinvertersGetTodayProductionHelp{"Show today production for microinverters"};
|
||||
hoymilesClient.add_flag<bool>("-t,--today_production", microinvertersGetTodayProduction, microinvertersGetTodayProductionHelp)->group("Microinverters");
|
||||
|
||||
bool microinvertersGetTotalProduction{};
|
||||
bool microinvertersGetTotalProduction{false};
|
||||
std::string microinvertersGetTotalProductionHelp{"Show total production for microinverters"};
|
||||
hoymilesClient.add_flag<bool>("-T,--total_production", microinvertersGetTotalProduction, microinvertersGetTotalProductionHelp)->group("Microinverters");
|
||||
|
||||
|
|
@ -73,7 +73,7 @@ int main(int argc, char **argv) {
|
|||
auto endTime = std::chrono::high_resolution_clock::now();
|
||||
std::cout << "DTU construction time: " << std::chrono::duration_cast<std::chrono::milliseconds>(endTime - startTime).count() << "ms" << std::endl;
|
||||
|
||||
while (!dtu.modbusError() && (dtu.isConnected() || ignoreNotConnected) && (!parametersToGet.empty() || allParameters)) {
|
||||
while ((dtu.isConnected() || ignoreNotConnected) && (!parametersToGet.empty() || allParameters)) {
|
||||
startTime = std::chrono::high_resolution_clock::now();
|
||||
dtu.updateMicroinverters(parametersToGet, allParameters, microinvertersToGet);
|
||||
endTime = std::chrono::high_resolution_clock::now();
|
||||
|
|
@ -82,9 +82,9 @@ int main(int argc, char **argv) {
|
|||
dtu.printMicroinverters(parametersToGet, allParameters, microinvertersToGet, shortNames, microinvertersGetTodayProduction, microinvertersGetTotalProduction);
|
||||
std::cout << std::endl;
|
||||
}
|
||||
if(dtu.modbusError()) {
|
||||
std::cerr << dtu.modbusErrorMessage() << std::endl;
|
||||
}
|
||||
// if(dtu.modbusError()) {
|
||||
// std::cerr << dtu.modbusErrorMessage() << std::endl;
|
||||
// }
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue