summaryrefslogtreecommitdiff
path: root/EventMsgCenter/EventMsgCenter.lua
diff options
context:
space:
mode:
Diffstat (limited to 'EventMsgCenter/EventMsgCenter.lua')
-rw-r--r--EventMsgCenter/EventMsgCenter.lua34
1 files changed, 34 insertions, 0 deletions
diff --git a/EventMsgCenter/EventMsgCenter.lua b/EventMsgCenter/EventMsgCenter.lua
new file mode 100644
index 0000000..ffb784d
--- /dev/null
+++ b/EventMsgCenter/EventMsgCenter.lua
@@ -0,0 +1,34 @@
+-- <event, {callbacks}>
+local _broadcast = {}
+local EventMsgCenter = {}
+
+EventMsgCenter.registerMsg = function(e, callback)
+ if _broadcast[e] == nil then
+ _broadcast[e] = {}
+ end
+ table.insert(_broadcast[e], callback)
+end
+
+EventMsgCenter.unRegisterMsg = function(e, callback)
+ if _broadcast[e] == nil or callback == nil then
+ return
+ end
+ table.remove(_broadcast[e], callback)
+end
+
+EventMsgCenter.unRegisterAllMsgByEvent = function(e)
+ if _broadcast[e] == nil then
+ return
+ end
+
+end
+
+EventMsgCenter.unRegisterAllMsg = function()
+
+end
+
+EventMsgCenter.sendMsg = function(e, ...)
+
+end
+
+return EventMsgCenter