added some comments; minor (prelimnary) structural adaptions

This commit is contained in:
Uwe Jakobeit
2026-04-06 01:16:09 +02:00
parent 144f09ab07
commit 71563cba88

View File

@@ -1,6 +1,20 @@
/*
File: Controller.cpp
Description: This is a C++ source file containing implementation code for a program or library component.
Rev: 0.1
Created: 06.04.26
Author: Uwe Jakobeit
Copyright: Binder GmbH TUT 2026
Purpose: Prelimnary version of control algorithm
Notes: [Any relevant details, such as dependencies, usage examples, or known issues.]
*/
#include "Controller.h"
#ifdef BUILD_TARGET_SOM
#include "application/AppLogic.hpp"
#include "application/Environment.hpp"
@@ -16,7 +30,8 @@ bool Controller::initialize(const char *configFilePath, appengine::IAppLogic *ap
auto deviceState = appLogic->deviceState();
MV_ Magnet Variable
SV_ State Variable
// Beispiel:
SV_Temperatur_Variable_ = deviceState.getVariableByKey("Temperatur_Innenraum");
@@ -136,11 +151,13 @@ bool Controller::initialize(const char *configFilePath, appengine::IAppLogic *ap
return true;
}
#endif
void Controller::step() {
void Controller::stepSOM(void)
{
#ifdef BUILD_TARGET_SOM
ClimateAlgorithm::Inputs in{};
in.Istwert_Temperatur = FILTERED_TEMP.step(SV_Temperatur_Variable_->toType<double>());
@@ -210,6 +227,29 @@ void Controller::step() {
#endif
}
void Controller::step(void)
{
#ifdef BUILD_TARGET_SOM
stepSOM();
#else
stepDesk();
#endif
}
void Controller::stepDesk(void)
{
inputs = model->getInputs();
qDebug() << "Tist.: " << inputs->data()->analog.Istwert_Temperatur;
}
void Controller::terminate() {
#ifdef BUILD_TARGET_SOM
subscriptions_.clear();
@@ -222,3 +262,39 @@ ControllerBase *create() {
return new Controller;
}
#endif
// initialize algorithm according to configuration ( not yet available 02.04.26 )
// return plainly true (until otherwise)
bool Controller::initialize(const char *configFilePath)
{
bool result = false;
// uncomment when available
// result = (configFilePath != (const char *) nullptr);
// DataModel* model = new DataModel;
// QList<Input_t>* inputs;
// model->getInputs();
return result;
}
bool Controller::initialize( QList<Input_t>* inputs)
{
return true;
}
bool Controller::initialize( DataModel* instance)
{
model = instance;
inputs = model->getInputs();
return inputs != nullptr;
}