added limited queue

This commit is contained in:
fourtf
2017-02-02 20:35:12 +01:00
parent 5390272279
commit 93660233fd
10 changed files with 191 additions and 46 deletions
+15 -10
View File
@@ -3,11 +3,13 @@
#include "concurrentmap.h"
#include "messages/lazyloadedimage.h"
#include "messages/limitedqueue.h"
#include <QMap>
#include <QMutex>
#include <QString>
#include <QVector>
#include <boost/signals2.hpp>
#include <memory>
namespace chatterino {
@@ -20,6 +22,11 @@ class Channel
public:
Channel(const QString &channel);
boost::signals2::signal<void(std::shared_ptr<messages::Message> &)>
messageRemovedFromStart;
boost::signals2::signal<void(std::shared_ptr<messages::Message> &)>
messageAppended;
// properties
ConcurrentMap<QString, messages::LazyLoadedImage *> &
getBttvChannelEmotes()
@@ -95,25 +102,23 @@ public:
}
// methods
void addMessage(std::shared_ptr<messages::Message> message);
QVector<std::shared_ptr<messages::Message>> getMessagesClone();
QVector<std::shared_ptr<messages::Message>> &
getMessages()
messages::LimitedQueueSnapshot<std::shared_ptr<messages::Message>>
getMessageSnapshot()
{
return messages;
return messages.getSnapshot();
}
void addMessage(std::shared_ptr<messages::Message> message);
void
reloadChannelEmotes()
{
reloadBttvEmotes();
reloadFfzEmotes();
this->reloadBttvEmotes();
this->reloadFfzEmotes();
}
private:
QVector<std::shared_ptr<messages::Message>> messages;
messages::LimitedQueue<std::shared_ptr<messages::Message>> messages;
QString name;
int roomID;