Merge pull request #26273 from 78andyp/blurayfixes2
[xbmc.git] / xbmc / cores / RetroPlayer / buffers / RenderBufferPoolDMA.h
blob81645bb3b4b829715b155a07d30f791d55cd71df
1 /*
2 * Copyright (C) 2017-2018 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 #pragma once
11 #include "cores/RetroPlayer/buffers/BaseRenderBufferPool.h"
13 namespace KODI
15 namespace RETRO
17 class CRenderContext;
19 /**
20 * @brief Special IRenderBufferPool implementation that converts
21 * AVPixelFormat to DRM_FORMAT_* for use with CRenderBufferDMA.
24 class CRenderBufferPoolDMA : public CBaseRenderBufferPool
26 public:
27 CRenderBufferPoolDMA(CRenderContext& context);
28 ~CRenderBufferPoolDMA() override = default;
30 // implementation of IRenderBufferPool via CBaseRenderBufferPool
31 bool IsCompatible(const CRenderVideoSettings& renderSettings) const override;
33 protected:
34 // implementation of CBaseRenderBufferPool
35 IRenderBuffer* CreateRenderBuffer(void* header = nullptr) override;
36 bool ConfigureInternal() override;
38 // Construction parameters
39 CRenderContext& m_context;
41 // Configuration parameters
42 int m_fourcc = 0;
44 } // namespace RETRO
45 } // namespace KODI