next up previous contents index
Weiter: Implementation der Klassen Hinauf: Beispiel eines interrupt-gesteuerten Zurück: Identifizieren der Objekte

Identifizieren der Semantik der Klassen und Objekte und ihrer Beziehungen untereinander

  

Die statische und dynamische Semantik der Objekte Temperatur-Sensor und Heizungsschalter haben wir schon exakt als Ada-Pakete beschrieben. Es bleiben also die Objekte Mittelwertbilder  und Zeitgeber & Entscheider. 

Das Objekt Mittelwertbilder liefert, falls es entsprechend angestoßen wird, den Mittelwert der seit dem letzten Anstoß vom Temperatur-Sensor übergebenen Meßwerte. Sollte seit dem letzten Anstoß kein neuer Wert eingelangt sein, wird der vorherige Wert zurückgegeben. Die Initialisierung des Mittelwertes ist 20o C. Die Schnittstelle des Mittelwertbilder-Objektes kann daher wie folgt festgelegt werden:


with Temperatur_Sensor;

package Mittelwertbilder is

function Gib_Mittelwert
return Temperatur_Sensor.Temperatur;
-
-UebergibtdenMittelwertderseitdemletztenAufruf
-dieserFunktionermitteltenTemperaturwerte.
-FallsinzwischenkeineTemperaturwerteeingelangtsind,
-uebergibtsiedenvorigenWert.
-DerAnfangswertwirdaufGradCelsiusgestellt.

end Mittelwertbilder;

Dieses Objekt ist im Sinne unserer Klassifizierung aus Kapitel 19.1 ein passives Objekt.

Das Objekt Zeitgeber & Entscheider stößt im Intervall von je einer Sekunde den Mittelwertbilder an, um einen Mittelwert zu erhalten. Dann prüft es, ob der erhaltene Temperatur-Mittelwert im vorgebenen Bereich von 50o C bis 55o C liegt. Liegt der Wert über 55o C, so stellt er die Heizung ab, liegt der Wert unter 50o C, so stellt er die Heizung an. Dieses Objekt ist im Sinne unserer Klassifizierung aus Kapitel 19.1 ein aktives Objekt, wir können daher keine sinnvolle Schnittstelle definieren. Erst der entsprechende Body wird das Objekt genauer festlegen.



Johann Blieberger
Wed Feb 11 09:58:52 MET 1998