#ifndef YACREADER_LOCAL_SERVER_H #define YACREADER_LOCAL_SERVER_H #include #include #include class QLocalServer; class QLocalSocket; class ComicDB; class YACReaderLocalServer : public QObject { Q_OBJECT public: explicit YACReaderLocalServer(QObject *parent = 0); signals: void comicUpdated(quint64 libraryId, const ComicDB & comic); public slots: bool isListening(); void sendResponse(); static bool isRunning(); void close(); private: //void run(); QLocalServer * localServer; }; class YACReaderClientConnectionWorker : public QThread { Q_OBJECT public: YACReaderClientConnectionWorker( QLocalSocket *clientConnection); ~YACReaderClientConnectionWorker(); signals: void comicUpdated(quint64 libraryId, const ComicDB & comic); private: static QMutex dbMutex; //static int count; void run(); void getComicInfo(quint64 libraryId, ComicDB & comic, QList & sibling); void updateComic(quint64 libraryId, ComicDB & comic); QLocalSocket *clientConnection; }; #endif // YACREADER_LOCAL_SERVER_H