#ifndef REQUESTFROMSERVER_H #define REQUESTFROMSERVER_H #include #include "frame.h" #include #include "DetectionClient.hh" /* * Ein Thread, der die Vorabannotationen vom Server Abfragt */ class RequestFromServerThread : public QThread { Q_OBJECT // Fragt die Daten vom Server ab void run() override; public: RequestFromServerThread(QString serverAddress, Frame *f); DetectionClient *client; // Ein zeiger auf den Detection CLient signals: // Wird aufgerufen, sobald der Thread regulär beendet wurde void threadReady( std::vector< std::vector< cv::Point > > *objects ); private: QString serverAddress; // Die Adresse des Servers Frame *f; // Das Bild, das beim Server abgefragt wird }; namespace Ui { class RequestFromServer; } /* * Verwaltet das Fenster, das bei der Abfrage von Vorabannotationen vom Server erscheint. */ class RequestFromServer : public QDialog { Q_OBJECT public: explicit RequestFromServer( QString serverAddress, Frame *f, QWidget *parent = 0); ~RequestFromServer(); std::vector< std::vector< cv::Point > > getObjects(); private slots: // Abfragen von Vorabannotationen abbrechen void on_abbrechen_clicked(); // Abfragen von Vorabannotationen abgeschlossen void onThreadReady( std::vector< std::vector< cv::Point > > *objects ); private: Ui::RequestFromServer *ui; // Ein Zeiger auf alle in requestfromserver.ui spezifizierten Objekte std::vector< std::vector< cv::Point > > objects; // Eine Liste mit Objekt Polygonen (antwort vom server) RequestFromServerThread *rfst; // Der Thread, in dem die Daten vom Server abgefragt werden }; #endif // REQUESTFROMSERVER_H