Files
MacroLibX/runtime/Sources/Core/EventBus.cpp
2024-10-17 15:37:39 +02:00

28 lines
585 B
C++

#include <PreCompiled.h>
#include <Core/EventBus.h>
#include <Core/Logs.h>
namespace mlx
{
void EventBus::Send(const std::string& listener_name, const EventBase& event)
{
#pragma omp parallel for
for(const EventListener& listener : s_listeners)
{
if(listener.GetName() == listener_name)
{
listener.Call(event);
return;
}
}
Warning("Event Bus : listener not found, '%'", listener_name);
}
void EventBus::SendBroadcast(const EventBase& event)
{
#pragma omp parallel for
for(const EventListener& listener : s_listeners)
listener.Call(event);
}
}