Klassendefinitionen

Aus den Erkenntnissen der Iteration 3 der Systemarchitektur werden mindestens die folgenden Klassen definiert.

System

logger.h

Die Logger Klasse stellt einen Ringbuffer mit einer definierten Anzahl Elemente zur Verfügung. Wenn die maximale Anzahl der Elemente erreicht ist, wird das älteste entfernt und das aktuellste Element vorne angefügt. Die Elemente selbst sind Zeiger auf Objekte (Objekt, Array, Struct, String, …).

PlantUML Syntax:<br />
class logger {<br />
..constructors..<br />
+logger()<br />
+~logger()<br />
+resize()<br />
..getter/setter..<br />
+getSize()<br />
+getMin()<br />
+getMax()<br />
+getMean()<br />
..methods..<br />
+push(element)<br />
+peek(index)<br />
__private data__<br />
_logElements<br />
_loglength<br />
-method1()<br />
}<br />

scheduler.h

Die Scheduler Klasse ruft eine Funktion in einem gegebenen Intervall auf. Das Intervall wird bei der Instanzierung des Objekts oder mittels eines Setters definiert. Über die Methode .probe() wird die angegebene Funktion aufgerufen, falls die Intervall Periode abgelaufen ist.

PlantUML Syntax:<br />
class scheduler {<br />
..constructors..<br />
+scheduler()<br />
+~scheduler()<br />
..getter/setter..<br />
+setFunction()<br />
+setInterval()<br />
+getInterval()<br />
+getLeadTime()<br />
+getMissedCalls()<br />
..methods..<br />
+enable()<br />
+probe()<br />
__private data__<br />
void (* _myFuncPointer)()<br />
int _intervalMillis<br />
int _oldMillis<br />
int _missedCalls<br />
bool _enable<br />
}<br />

Regler

control.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

sht.h

PlantUML Syntax:<br />
class sht {<br />
..constructors..<br />
+sht()<br />
+~sht()<br />
..getter/setter..<br />
+readHumidity()<br />
+readTemperature()<br />
+setResolution()<br />
..methods..<br />
+begin()<br />
__private data__<br />
}<br />

ntc.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

setpoint.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

Konfiguration

config.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

NT3H.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

jSON.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

encryption.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

setpoint.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

Server

mqtt.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

httpd.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

ntp.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

fileserver.h

PlantUML Syntax:<br />
class control {<br />
..constructors..<br />
..getter/setter..<br />
..methods..<br />
__private data__<br />
}<br />

HMI

Leave a Reply