kodi
RenderFactory.h
1 /*
2  * Copyright (C) 2005-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "BaseRenderer.h"
12 
13 #include <map>
14 #include <string>
15 #include <vector>
16 
17 namespace VIDEOPLAYER
18 {
19 
20 typedef CBaseRenderer* (*CreateRenderer)(CVideoBuffer *buffer);
21 
23 {
24 public:
25  static CBaseRenderer* CreateRenderer(const std::string& id, CVideoBuffer* buffer);
26 
27  static void RegisterRenderer(const std::string& id, VIDEOPLAYER::CreateRenderer createFunc);
28  static std::vector<std::string> GetRenderers();
29  static void ClearRenderer();
30 
31 protected:
32 
33  static std::map<std::string, VIDEOPLAYER::CreateRenderer> m_renderers;
34 };
35 
36 }
Definition: VideoBuffer.h:85
Definition: RenderFactory.h:22
Definition: BaseRenderer.h:48
Definition: ProcessInfoAndroid.h:14