1234567891011121314151617181920212223242526272829303132 |
- //
- // REDBatchNodeManager.h
- // redream_runtime_ios
- //
- // Created by xiao鱼哥 on 2023/8/16.
- //
- #ifndef REDBatchNodeManager_h
- #define REDBatchNodeManager_h
- #include <unordered_set>
- #include <string>
- #include <vector>
- #include <unordered_map>
- namespace redream {
- class REDBatchNodeListener;
- class REDBatchNodeManager
- {
- public:
- static REDBatchNodeManager* getInstance();
- void addListener(const std::string& eventName,REDBatchNodeListener* listener);
- void removeListener(const std::string& eventName,REDBatchNodeListener* listener);
- void removeListener(REDBatchNodeListener* listener);
- void dispatchEvent(const std::string& eventName);
- private:
- std::unordered_map<std::string,std::unordered_set<REDBatchNodeListener*>> _listeners;
- REDBatchNodeManager();
- ~REDBatchNodeManager();
- static REDBatchNodeManager* _instance;
- };
- }
- #endif /* REDBatchNodeManager_h */
|