[PVR][Estuary] Timer settings dialog: Show client name in timer type selection dialog...
[xbmc.git] / xbmc / utils / BufferObjectFactory.cpp
blob13ada4bac6b4f0498788ca7b52938c8d4d905b75
1 /*
2 * Copyright (C) 2005-2020 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
7 */
9 #include "BufferObjectFactory.h"
11 std::list<std::function<std::unique_ptr<CBufferObject>()>> CBufferObjectFactory::m_bufferObjects;
13 std::unique_ptr<CBufferObject> CBufferObjectFactory::CreateBufferObject(bool needsCreateBySize)
15 for (const auto& bufferObject : m_bufferObjects)
17 auto bo = bufferObject();
19 if (needsCreateBySize)
21 if (!bo->CreateBufferObject(1))
22 continue;
24 bo->DestroyBufferObject();
27 return bo;
30 return nullptr;
33 void CBufferObjectFactory::RegisterBufferObject(
34 const std::function<std::unique_ptr<CBufferObject>()>& createFunc)
36 m_bufferObjects.emplace_front(createFunc);
39 void CBufferObjectFactory::ClearBufferObjects()
41 m_bufferObjects.clear();