ModernCPlusPlusDemo
|
#include <EventBus.hpp>
类 | |
struct | Subscriber |
Public 类型 | |
using | SubscriptionId = size_t |
Public 成员函数 | |
template<typename EventType , typename Callback > | |
SubscriptionId | subscribe (Callback &&callback) |
template<typename EventType > | |
void | publish (const EventType &event) const |
template<typename EventType > | |
void | unsubscribeAll () |
void | unsubscribe (SubscriptionId id) |
Private 类型 | |
using | SubscriberList = std::vector< Subscriber > |
Private 属性 | |
std::shared_mutex | mutex_ |
std::unordered_map< std::type_index, SubscriberList > | subscribers_ |
SubscriptionId | nextSubscriptionId_ = 0 |
|
private |
using EventBus< EventBaseType >::SubscriptionId = size_t |
|
inline |
|
inline |
|
inline |
|
inline |
|
mutableprivate |
|
private |
|
private |