added distribution events
This commit is contained in:
@@ -45,7 +45,8 @@ std::shared_ptr<IInputDriver> InputDriverFactory::get_InputDriver(std::istream &
|
||||
|
||||
|
||||
void InputDriverFactory::create_input_events(json matrix_config, std::map<char, std::shared_ptr<Event>>& address_event_map,
|
||||
std::map<std::string, std::shared_ptr<Event>>& name_event_map)
|
||||
std::map<std::string, std::shared_ptr<Event>>& name_event_map,
|
||||
std::shared_ptr<IEventNotifier> event_notifier)
|
||||
{
|
||||
auto& event_array = matrix_config.at("input_matrix");
|
||||
for (auto &json_event : event_array)
|
||||
@@ -56,8 +57,10 @@ void InputDriverFactory::create_input_events(json matrix_config, std::map<char,
|
||||
std::string name = json_event.at("name");
|
||||
char address = json_event.at("address").get<json::number_integer_t>();
|
||||
int priority = json_event.at("priority").get<json::number_integer_t>();
|
||||
int deactivation_time = json_event.at("deactivation_time_milli").get<json::number_integer_t>();
|
||||
|
||||
std::shared_ptr<Event> event_ptr(new Event(address, priority, name));
|
||||
std::shared_ptr<Event> event_ptr(new DistributingEvent(address, priority, name,
|
||||
std::chrono::milliseconds(deactivation_time), event_notifier));
|
||||
|
||||
address_event_map.emplace(address, event_ptr);
|
||||
name_event_map.emplace(name, event_ptr);
|
||||
|
||||
Reference in New Issue
Block a user