#pragma once #include #include #include #include "ring_buffer.h" #include "analysis_model.h" /** * Hauptklasse für das Sensornetzwerk * @tparam N Größe des Ringpuffers * * Verwaltet alle Komponenten: * - Ringpuffer für Sensordaten * - Analysemodell * - Threads für Sensoren, Analyse und Controller */ template class SensorNetwork { RingBuffer buffer; // Gemeinsamer Datenpuffer AnalysisModel model; // Geteiltes Analysemodell std::atomic running = false; // Steuerflag für Threads std::vector threads; // Alle Threads public: ~SensorNetwork() { if (running) stop(); } void start(size_t sensors, size_t analysers); void stop(); };