X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fabstractmessageprocessor.h;h=50247a86fbb2898147db9c3211b7255b2d17e588;hp=b140ac19d311dbb30dc2bec383e8828002e6329a;hb=0480c16e33acc3cc6b1f1b507aa8696a70627bf8;hpb=efa00e5a912c34c37bcc6dad7b8bc6e3a6f3e4fb diff --git a/src/client/abstractmessageprocessor.h b/src/client/abstractmessageprocessor.h index b140ac19..50247a86 100644 --- a/src/client/abstractmessageprocessor.h +++ b/src/client/abstractmessageprocessor.h @@ -21,23 +21,26 @@ #ifndef ABSTRACTMESSAGEPROCESSOR_H_ #define ABSTRACTMESSAGEPROCESSOR_H_ +#include "client.h" #include "message.h" +#include "networkmodel.h" class AbstractMessageProcessor : public QObject { Q_OBJECT public: AbstractMessageProcessor(QObject *parent); + virtual void reset() = 0; public slots: - void process(Message &msg); - void process(QList &msgs); + virtual void process(Message &msg) = 0; + virtual void process(QList &msgs) = 0; signals: + void progressUpdated(int value, int maximum); protected: - virtual void processMessage(Message &msg) = 0; - virtual void processMessages(QList &msgs) = 0; + inline void postProcess(Message &msg) { Client::networkModel()->updateBufferActivity(msg); } };