Die zentrale Komponente von SandUhr ist die SandUhr::Timer-Schnittstelle. Sie repräsentiert das sanduhrförmige Fenster und alle damit verbundenen Informationen.
Der Zustand des Timers:
enum TimerState { TSPrepare, TSRunning, TSDone }; readonly attribute TimerState State;
Dieser Wert ist TSPrepare falls die Uhr noch nicht gestartet ist (z.B. während das Anfangsfenster noch offen ist), TSRunning während die Uhr läuft und TSDone nachdem die Uhr abgelaufen ist (z.B. während der Alarm gerade ausgeliefert wird).
Die Alarmzeit:
attribute string TimeSpec;
Das Format dieses Strings wird in der Anleitung im Abschnitt Die Alarmzeit erklärt.
Die Alarmmeldung:
attribute string Message;
Dieser Text wird der Alarmmethode zur Zustellung übergeben.
Die Alarmmethode:
attribute AlarmAction Alarm;
Es stehen mehrere vordefinierte Subklassen von SandUhr::AlarmAction zur Verfügung. Diese werden in SandUhr::AlarmAction(3) beschrieben.
Die Sandfarbe:
struct Color { unsigned short Red, Green, Blue; }; attribute Color SandColor;
Gültige Werte für die Farbkomponenten liegen im Bereich von 0 bis 255, beide Werte inklusive. (0,0,0) steht für weiß und (255,255,255) steht für schwarz.
Die Destroy-Funktion:
void Destroy ();
Dies zerstört den Timer ohne den Alarm auszuliefern.
Die verbleibende Zeit:
unsigned long TimeLeft () raises (NotRunning);
Dies liefert die verbleibende Zeit, die die Uhr noch läuft, in Sekunden. Falls der Zustand der Uhr nicht TSRunning ist, wird eine NotRunning-Ausnahme ausgelöst.
Zurück | Zum Anfang | Nach vorne |
Die SandUhr CORBA-Schnittstelle | Nach oben | SandUhr::AlarmAction |