summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-12-07 18:32:31 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-12-07 18:32:31 +0000
commit4c6b7c70ce61cb431df07780eba935eca529a65b (patch)
tree8c52c386b50043bc8768a9a38ebc96e2e63872a1 /include
parent2d821f2980825be73e3f90b47ffff365b0ec5ecb (diff)
Added Metadata API (for transferring extensibles over a network transparent to the protocol)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2253 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'include')
-rw-r--r--include/base.h9
-rw-r--r--include/modules.h8
2 files changed, 17 insertions, 0 deletions
diff --git a/include/base.h b/include/base.h
index cec519e5c..ac03a748c 100644
--- a/include/base.h
+++ b/include/base.h
@@ -20,6 +20,7 @@
#include "inspircd_config.h"
#include <time.h>
#include <map>
+#include <deque>
#include <string>
typedef void* VoidPointer;
@@ -86,6 +87,14 @@ public:
* @return If you provide a non-existent key name, the function returns NULL, otherwise a pointer to the item referenced by the key is returned.
*/
char* GetExt(std::string key);
+
+ /** Get a list of all extension items names.
+ *
+ * @param list A deque of strings to receive the list
+ *
+ * @return This function writes a list of all extension items stored in this object by name into the given deque and returns void.
+ */
+ void GetExtList(std::deque<std::string> &list);
};
/** BoolSet is a utility class designed to hold eight bools in a bitmask.
diff --git a/include/modules.h b/include/modules.h
index de9ba0c79..2c1cf4ff7 100644
--- a/include/modules.h
+++ b/include/modules.h
@@ -435,7 +435,15 @@ class Module : public classbase
virtual void OnSyncChannel(chanrec* chan, Module* proto, void* opaque);
+ virtual void OnSyncChannelMetaData(chanrec* chan, Module* proto,void* opaque, std::string extname);
+
+ virtual void OnSyncUserMetaData(userrec* user, Module* proto,void* opaque, std::string extname);
+
+ virtual void OnDecodeMetaData(int target_type, void* target, std::string extname, std::string extdata);
+
virtual void ProtoSendMode(void* opaque, int target_type, void* target, std::string modeline);
+
+ virtual void ProtoSendMetaData(void* opaque, int target_type, void* target, std::string extname, std::string extdata);
virtual void OnWallops(userrec* user, std::string text);