summaryrefslogtreecommitdiff
path: root/include/protocol.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/protocol.h')
-rw-r--r--include/protocol.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/protocol.h b/include/protocol.h
index 21e6b5396..85490c1d0 100644
--- a/include/protocol.h
+++ b/include/protocol.h
@@ -14,6 +14,8 @@
#ifndef __PROTOCOL_H__
#define __PROTOCOL_H__
+#include "hashcomp.h"
+
class InspIRCd;
typedef std::deque<std::string> parameterlist;
@@ -27,12 +29,30 @@ class ProtocolInterface : public Extensible
virtual ~ProtocolInterface() { }
virtual void SendEncapsulatedData(parameterlist &encap) { }
+
virtual void SendMetaData(void* target, int type, const std::string &key, const std::string &data) { }
+
virtual void SendTopic(Channel* channel, std::string &topic) { }
+
virtual void SendMode(const std::string &target, parameterlist &modedata) { }
+
+ virtual void SendMode(const std::string &target, const std::string &modeline)
+ {
+ /* Convenience function */
+ irc::spacesepstream x(modeline);
+ parameterlist n;
+ std::string v;
+ while (x.GetToken(v))
+ n.push_back(v);
+ SendMode(target, n);
+ }
+
virtual void SendOperNotice(const std::string &text) { }
+
virtual void SendModeNotice(const std::string &modes, const std::string &text) { }
+
virtual void SendSNONotice(const std::string &snomask, const std::string &text) { }
+
virtual void PushToClient(User* target, const std::string &rawline) { }
};