HistorieClient.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #pragma once
  2. #include "../Include/KSGNetwork.h"
  3. #include <Critical.h>
  4. namespace KSGClient
  5. {
  6. // Wird verwendet um Statistiken und Aufzeichnungen von vergangenen Spielen abzufragen
  7. // Kann nur von eingeloggten Clients verwendet werden
  8. class HistorieClient : public HistorieServerClient
  9. {
  10. private:
  11. Framework::Text ip;
  12. unsigned short port;
  13. int cId;
  14. Network::Klient* k;
  15. char* key;
  16. unsigned char keyLen;
  17. Framework::Critical cs;
  18. Framework::Text err;
  19. int spielId;
  20. protected:
  21. // verbindet sich mit dem zugewiesenen Historie Server
  22. // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
  23. bool verbinde() override;
  24. // Trennt die Verbindung zum Server
  25. // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
  26. // Sollte erst nach einem erfolgreichen Aufruf von verbinde aufgerufen werden
  27. bool trenne(bool abmelden) override;
  28. public:
  29. // Konstruktor
  30. HistorieClient(int klientId, unsigned short port, const char* ip, const char* key, unsigned char keyLen, int spielId);
  31. // Destruktor
  32. ~HistorieClient();
  33. // Lädt die Spiel Aufzeichnung eines Spiels herunter und speichert sie unter data/tmp/historie/{spielId}
  34. // Die Spielid wurde dem Objekt zum Zeitpunkt der Erstellung vom Information Server mitgegeben
  35. // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
  36. // Diese Funktion verbindet sich selbstständig mit dem Server und trennt die Verbindung nach Beendigung des Vorgangs
  37. bool downloadSpielHistorie() override;
  38. // gibt den Letzten Fehlertext zuück
  39. // sollte erst aufgerufen werden, nachdem eine andere aufgerufene Methode fehlgeschlagen ist
  40. const char* getLetzterFehler() const override;
  41. };
  42. }