35 std::lock_guard l_Guard(m_Mutex);
37 auto l_It = std::find_if(m_Delegates.begin(), m_Delegates.end(), [&p_Delegate](
const Delegate<
void(t_Args...)> & p_Item) ->
bool {
38 return p_Item.EqualTo(&p_Delegate);
41 if (l_It == m_Delegates.end())
42 m_Delegates.push_back(p_Delegate);
50 std::lock_guard l_Guard(m_Mutex);
52 auto l_It = std::find_if(m_Delegates.begin(), m_Delegates.end(), [&p_Delegate](
const Delegate<
void(t_Args...)> & p_Item) ->
bool {
53 return p_Item.EqualTo(&p_Delegate);
56 if (l_It != m_Delegates.end())
57 m_Delegates.erase(l_It);