mirror-chatterino2/channels.h

35 lines
753 B
C
Raw Normal View History

#ifndef CHANNELS_H
#define CHANNELS_H
#include "channel.h"
2017-01-18 21:30:23 +01:00
namespace chatterino {
void initChannels();
class Channels
{
public:
static std::shared_ptr<Channel> getWhispers();
static std::shared_ptr<Channel> getMentions();
static std::shared_ptr<Channel> getEmpty();
2017-01-30 19:14:25 +01:00
const static std::vector<std::shared_ptr<Channel>> getItems();
static std::shared_ptr<Channel> addChannel(const QString &channel);
static std::shared_ptr<Channel> getChannel(const QString &channel);
static void removeChannel(const QString &channel);
private:
Channels()
{
}
2017-01-30 19:14:25 +01:00
static QMap<QString, std::tuple<std::shared_ptr<Channel>, int>> channels;
static QMutex channelsMutex;
};
} // namespace chatterino
#endif // CHANNELS_H