X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=main%2Fglobal.h;fp=main%2Fglobal.h;h=8787eea3701263118d3278476a6ebb79887859b5;hp=1c3666113ca60acbf601ab70f456e03b93b6a1d7;hb=ddc5208315db8ca9ca19f6a59ee7caefe631ffc7;hpb=fd718b6209f1ad2bcd199c44c2dae3b0cb0f633b diff --git a/main/global.h b/main/global.h index 1c366611..8787eea3 100644 --- a/main/global.h +++ b/main/global.h @@ -93,4 +93,35 @@ class Exception { }; +class BufferId { + public: + BufferId() { id = gid = 0; } // FIXME + BufferId(uint uid, QString net, QString buf, uint gid = 0); + + inline uint uid() { return id; } + inline uint groupId() { return gid; } + inline QString network() { return net; } + QString buffer(); // nickfrommask? + + void setGroupId(uint _gid) { gid = _gid; } + + inline bool operator==(const BufferId &other) const { return id == other.id; } + private: + uint id; + uint gid; + QString net; + QString buf; + + friend uint qHash(const BufferId &); + friend QDataStream &operator<<(QDataStream &out, const BufferId &bufferId); + friend QDataStream &operator>>(QDataStream &in, BufferId &bufferId); +}; + +QDataStream &operator<<(QDataStream &out, const BufferId &bufferId); +QDataStream &operator>>(QDataStream &in, BufferId &bufferId); + +Q_DECLARE_METATYPE(BufferId); + +uint qHash(const BufferId &); + #endif