11 : messenger_(messenger) {}
18 const std::function<
void(
void)>& input_block_cb,
19 const std::function<
void(
void)>& input_unblock_cb) {
20 std::string channel(message.
channel);
22 auto callback_iterator = callbacks_.find(channel);
24 if (callback_iterator == callbacks_.end()) {
29 auto& callback_info = callback_iterator->second;
33 bool block_input = input_blocking_channels_.count(channel) > 0;
37 message_callback(messenger_, &message, callback_info.second);
44 const std::string& channel,
48 callbacks_.erase(channel);
51 callbacks_[channel] = std::make_pair(callback,
user_data);
55 const std::string& channel) {
56 input_blocking_channels_.insert(channel);