|
Kagome
Polkadot Runtime Engine in C++17
|
#include <author_api_impl.hpp>
Public Types | |
| using | EventType = EventKey |
| using | ReceiverType = Receiver |
| using | Hash = size_t |
| using | SubscriptionEngineType = SubscriptionEngine< EventType, ReceiverType, Arguments... > |
| using | SubscriptionEnginePtr = std::shared_ptr< SubscriptionEngineType > |
| using | CallbackFnType = std::function< void(SubscriptionSetId, ReceiverType &, const EventType &, const Arguments &...)> |
Public Member Functions | |
| template<typename... SubscriberConstructorArgs> | |
| Subscriber (SubscriptionEnginePtr &ptr, SubscriberConstructorArgs &&...args) | |
| ~Subscriber () | |
| Subscriber (const Subscriber &)=delete | |
| Subscriber & | operator= (const Subscriber &)=delete |
| Subscriber (Subscriber &&)=default | |
| Subscriber & | operator= (Subscriber &&)=default |
| void | setCallback (CallbackFnType &&f) |
| SubscriptionSetId | generateSubscriptionSetId () |
| void | subscribe (SubscriptionSetId id, const EventType &key) |
| bool | unsubscribe (SubscriptionSetId id, const EventType &key) |
| bool | unsubscribe (SubscriptionSetId id) |
| void | unsubscribe () |
| void | on_notify (SubscriptionSetId set_id, const EventType &key, const Arguments &...args) |
| ReceiverType & | get () |
Private Types | |
| using | SubscriptionsContainer = std::unordered_map< EventType, typename SubscriptionEngineType::IteratorType > |
| using | SubscriptionsSets = std::unordered_map< SubscriptionSetId, SubscriptionsContainer > |
Private Attributes | |
| SubscriptionEnginePtr | engine_ |
| ReceiverType | object_ |
| std::mutex | subscriptions_cs_ |
| SubscriptionsSets | subscriptions_sets_ |
| CallbackFnType | on_notify_callback_ |
Is a wrapper class, which provides subscription to events from SubscriptionEngine
| EventKey | is a type of a particular subscription event (might be a key from an observed storage or a specific event type from an enumeration). |
| ReceiverType | is a type of an object which is a part of Subscriber's internal state and can be accessed on every event notification. |
| Arguments | is a set of types of objects that are passed on every event notification. |
Definition at line 51 of file author_api_impl.hpp.
| using kagome::subscription::Subscriber< EventKey, Receiver, Arguments >::CallbackFnType = std::function<void(SubscriptionSetId, ReceiverType &, const EventType &, const Arguments &...)> |
Definition at line 49 of file subscriber.hpp.
| using kagome::subscription::Subscriber< EventKey, Receiver, Arguments >::EventType = EventKey |
Definition at line 38 of file subscriber.hpp.
| using kagome::subscription::Subscriber< EventKey, Receiver, Arguments >::Hash = size_t |
Definition at line 40 of file subscriber.hpp.
| using kagome::subscription::Subscriber< EventKey, Receiver, Arguments >::ReceiverType = Receiver |
Definition at line 39 of file subscriber.hpp.
| using kagome::subscription::Subscriber< EventKey, Receiver, Arguments >::SubscriptionEnginePtr = std::shared_ptr<SubscriptionEngineType> |
Definition at line 44 of file subscriber.hpp.
| using kagome::subscription::Subscriber< EventKey, Receiver, Arguments >::SubscriptionEngineType = SubscriptionEngine<EventType, ReceiverType, Arguments...> |
Definition at line 43 of file subscriber.hpp.
|
private |
Definition at line 54 of file subscriber.hpp.
|
private |
Definition at line 56 of file subscriber.hpp.
|
inlineexplicit |
Definition at line 67 of file subscriber.hpp.
|
inline |
Definition at line 72 of file subscriber.hpp.
|
delete |
|
default |
|
inline |
Definition at line 88 of file subscriber.hpp.
|
inline |
Definition at line 155 of file subscriber.hpp.
|
inline |
Definition at line 148 of file subscriber.hpp.
|
delete |
|
default |
|
inline |
Definition at line 84 of file subscriber.hpp.
|
inline |
Here we check first local subscriptions because of strong connection with SubscriptionEngine.
Definition at line 92 of file subscriber.hpp.
|
inline |
| id | – subscription set id that unsubscribes from
|
| key | – event key to unsubscribe from |
Definition at line 108 of file subscriber.hpp.
|
inline |
| id | – subscription set id to unsubscribe from |
Definition at line 127 of file subscriber.hpp.
|
inline |
Definition at line 140 of file subscriber.hpp.
|
private |
Definition at line 57 of file subscriber.hpp.
|
private |
Definition at line 58 of file subscriber.hpp.
|
private |
Definition at line 63 of file subscriber.hpp.
|
private |
Definition at line 60 of file subscriber.hpp.
|
private |
Definition at line 61 of file subscriber.hpp.