diff options
Diffstat (limited to 'xbmc/events/EventLogManager.cpp')
-rw-r--r-- | xbmc/events/EventLogManager.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/xbmc/events/EventLogManager.cpp b/xbmc/events/EventLogManager.cpp new file mode 100644 index 0000000..d56b88a --- /dev/null +++ b/xbmc/events/EventLogManager.cpp @@ -0,0 +1,28 @@ +/* + * Copyright (C) 2018 Team Kodi + * This file is part of Kodi - https://kodi.tv + * + * SPDX-License-Identifier: GPL-2.0-or-later + * See LICENSES/README.md for more information. + */ + +#include "EventLogManager.h" + +#include "EventLog.h" + +#include <mutex> +#include <utility> + +CEventLog& CEventLogManager::GetEventLog(unsigned int profileId) +{ + std::unique_lock<CCriticalSection> lock(m_eventMutex); + + auto eventLog = m_eventLogs.find(profileId); + if (eventLog == m_eventLogs.end()) + { + m_eventLogs.insert(std::make_pair(profileId, std::unique_ptr<CEventLog>(new CEventLog))); + eventLog = m_eventLogs.find(profileId); + } + + return *eventLog->second; +} |