123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- #pragma once
- #include "../Include/KSGNetwork.h"
- #include <Critical.h>
- namespace KSGClient
- {
- class PatchClient : public PatchServerClient
- {
- private:
- Framework::Text ip;
- unsigned short port;
- int cId;
- Network::Klient* k;
- char* key;
- unsigned char keyLen;
- Framework::Critical cs;
- Framework::Text err;
- public:
- // Konstruktor
- PatchClient(int klientId, unsigned short port, const char* ip, const char* key, unsigned char keyLen);
- // Destruktor
- ~PatchClient();
- // verbindet ich mit dem Patch Server
- // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
- bool verbinde() override;
- // Gibt eine Tabelle von Dateigruppen zurück.
- // Gibt bei misserfolg 0 zurück
- Framework::KSGTDatei* getDateiGruppenListe() override;
- // Gibt eine Tabelle von Dateien zurück.
- // gruppe: Die Id der Dateigruppe, zu der die Dateien gehöhren sollen
- // Gibt bei misserfolg 0 zurück
- Framework::KSGTDatei* getDateiListe(int gruppe) override;
- // Gibt die Größe einer Datei in bytes zurück
- // gruppe: Die Id der Dateigruppe der Datei
- // pfad: Der Pfad der Datei
- __int64 getDateiGröße(int gruppe, const char* pfad) override;
- // Lädt eine Datei herunter
- // gruppe: Die Dateigruppe der Datei
- // start: Der Index des bytes, bei dem der download begonnen werden soll (Enthält im Falle eines Abbruchs die Position, von welcher aus als nächstes heruntergeladen werden muss)
- // pfad: Der Pfad der Datei
- // zielPfad: Der Pfad, an den die Datei gespeichert werden soll
- // zFb: Ein Fortschrittsbalken, der automatisch aktualisiert wird
- // abbruch: Wenn diese Variable während des Vorgangs auf 1 gesetzt wird, so wird das Herunterladen abgebrochen.
- // maxbps: Die Anzahl der bytes pro Sekunde, die maximal übertragen werden sollen
- bool downloadDatei(int gruppe, __int64* start, const char* pfad, const char* zielPfad, Framework::FBalken* zFb, bool* abbruch, int maxbps) override;
- // Trennt die Verbindung zum Server
- // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
- // Sollte erst nach einem erfolgreichen Aufruf von verbinde aufgerufen werden
- bool trenne(bool abmelden) override;
- // Gibt 1 zurück, falls der Client verbunden ist, 0 sonst
- bool istVerbunden() const override;
- // Gibt die Anzahl von übertragenen Bytes seit dem letzten Aufruf zurück
- int getDownload() const override;
- // gibt den Letzten Fehlertext zuück
- // sollte erst aufgerufen werden, nachdem eine andere aufgerufene Methode fehlgeschlagen ist
- const char* getLetzterFehler() const override;
- };
- }
|