- EnergyArbitrator : public SmartChargingManager — raison documentée dans AGENTS.md §DÉCISIONS DE DESIGN - SmartChargingManager : protected slots + virtual update() + 3 accesseurs inline [ETM] - RuleBasedScheduler::getPlan() wraps planSurplusCharging/planSpotMarketCharging, annote chaque action d'un reason français - EvAdapter : ILoadAdapter concret pour evcharger — applyAction() implémenté, NON appelé en 3b (dispatch via adjustEvChargers() amont, iso-fonctionnel) - ETM_ARBITRATOR : commenté dans .pro — ne s'active qu'après preuve iso-fonctionnelle (3b-iv) - Doxygen \brief + invariants + contrats sur toutes les classes/méthodes publiques etm/ (DoD §5) - plan.h : timeSlots (pas slots, mot-clé Qt) ; commentaire JSON sérialisation "slots" OPTIMIZER_PROTOCOL §6 - .clangd : flags de repli Qt/nymea pour clangd via symlink ~/Schreibtisch/ - compile_commands.json gitignore (chemins absolus locaux) - Build : 0 erreurs, 0 warnings — libnymea_energypluginnymea.so 914 KB Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
42 lines
1.2 KiB
Prolog
42 lines
1.2 KiB
Prolog
TEMPLATE = lib
|
|
TARGET = $$qtLibraryTarget(nymea_energypluginnymea)
|
|
|
|
CONFIG += plugin link_pkgconfig
|
|
|
|
PKGCONFIG += nymea nymea-energy
|
|
|
|
QT *= network
|
|
|
|
# [ETM] Activate ETM arbitrator — replaces SmartChargingManager::update() with EnergyArbitrator.
|
|
# Uncomment to enable. Committed DISABLED until iso-functional proof (3b-iv).
|
|
# DEFINES += ETM_ARBITRATOR
|
|
|
|
include(energyplugin.pri)
|
|
|
|
HEADERS += \
|
|
energypluginnymea.h
|
|
|
|
SOURCES += \
|
|
energypluginnymea.cpp
|
|
|
|
target.path = $$[QT_INSTALL_LIBS]/nymea/energy/
|
|
INSTALLS += target
|
|
|
|
# Install translation files
|
|
TRANSLATIONS *= $$files($${_PRO_FILE_PWD_}/translations/*ts, true)
|
|
lupdate.depends = FORCE
|
|
lupdate.depends += qmake_all
|
|
lupdate.commands = lupdate -recursive -no-obsolete $${_PRO_FILE_PWD_}/etm-powersync-energy-plugin-etm.pro
|
|
QMAKE_EXTRA_TARGETS += lupdate
|
|
|
|
# make lrelease to build .qm from .ts
|
|
lrelease.depends = FORCE
|
|
lrelease.commands += lrelease $$files($$_PRO_FILE_PWD_/translations/*.ts, true);
|
|
QMAKE_EXTRA_TARGETS += lrelease
|
|
|
|
translations.depends += lrelease
|
|
translations.path = /usr/share/nymea/translations
|
|
translations.files = $$_PRO_FILE_PWD_/translations/*.qm
|
|
message("Translation files: $${translations.files}")
|
|
INSTALLS += translations
|