Update Management authored by Ebru Selin Özcelik's avatar Ebru Selin Özcelik
......@@ -6,32 +6,32 @@ Die Management-Klasse wurde von uns nach dem Singletonkonstrukt umgesetzt. Es da
## Methoden in der Klasse
* init(self)
* get_instance(): Management
* establish_conncetion(self)
* shutdown_connection(self)
* <ins> get_instance(): Management </ins>
* establish_conncetion(self): void
* shutdown_connection(self): void
* connect_vector(self, vector): boolean
* disconnect_vector(self, vector): boolean
* setup_vectors(self): Vector[ ]
* get_videofeed_snapshot(self): byte[]
* get_videofeed_snapshot(self): jpg
**Request Methoden:**
* navigate(self, x, y)
* videofeed(self)
* videofeed(self): byte[ ]
* happy_emotion(self)
* sad_emotion(self)
* change_vector(self, name_vector)
* change_vector(self, name_vector): boolean
**get_instance()**
**<ins> get_instance(): Management </ins>**
* Diese Methode wird aufgerufen, um eine Instanz der Management-Klasse zu erzeugen bzw. die bereits bestehende Instanz zurückzugeben. Sie überprüft zuerst, ob es bereits eine Instanz gibt. Sollte es bereits eine geben, wirft der Konstruktor eine Exception. Falls es noch keine gibt, wird eine neue erzeugt und zurückgegeben.
**establish_connection(self)**
**establish_connection(self): void**
* Diese Methode ist public, also nach außen sichtbar. Sie baut die Verbindung zu dem aktiven Vector auf, indem sie die private connect_vector(self, vector) Methode aufruft.
**shutdown_connection(self)**
**shutdown_connection(self): void**
* Diese Methode ist public, also nach außen sichtbar. Sie beendet die Verbindung zu dem aktiven Vector auf, indem sie die private disconnect_vector(self, vector) Methode aufruft.
......@@ -42,3 +42,32 @@ Die Management-Klasse wurde von uns nach dem Singletonkonstrukt umgesetzt. Es da
**disconnect_vector(self, vector): boolean**
* Hier wird die Verbindung zu dem übergebenen Vector beendet. Sie fängt potenzielle Fehlerszenarien ab und printed eine entsprechende Konsolenausgabe. Konnte die Verbindung erfolgreich beendet werden, gibt sie true zurück. Falls nicht, ist der Rückgabewert ein false.
**setup_vectors(self): Vector[]**
* Liest die Namen und Seriennummern von allen konfigurierten Vectoren und gibt eine Liste, welche die Vector-Objekte enthält, zurück.
**get_videofeed_snapshot(self): jpg**
Liest das aktuelle Bild von der Kamera und gibt es im jgp-Format zurück.
**Request Methoden**
**navigate(self, x, y)**
Diese Methode ist dafür zuständig, die execute-Methode vom Use Case Navigieren [#18] aufzurufen. Als Übergabeparameter werden die Koordinaten, zu denen navigiert werden soll, übergeben.
**videofeed(self): byte[ ]**
Hier wird die statische Methode der VideoFeed-Klasse aufgerufen. Diese gibt einen Videofeed zurück, indem in einer while-Schleife das aktuelle Bild der Kamera eingelesen und als byte Array zurückgegeben wird. Die Schleife wird nach der Rückgabe nicht abgebrochen und so kommt der Feed zustande.
**happy_emotion(self)**
Hier wird die execute-Methode des Use Cases für die glückliche Animation aufgerufen und Vector führt eine glückliche Animation aus.
**sad_emotion(self)**
Hier wird die execute-Methode des Use Cases für die traurige Animation aufgerufen und Vector führt eine traurige Animation aus.
* change_vector(self, name_vector): boolean
\ No newline at end of file