2
* Copyright © 2013 Canonical Ltd.
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU Lesser General Public License version 3 as
6
* published by the Free Software Foundation.
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU Lesser General Public License for more details.
13
* You should have received a copy of the GNU Lesser General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
16
* Authored by: Kevin DuBois <kevin.dubois@canonical.com>
19
#ifndef MIR_GRAPHICS_ANDROID_DISPLAY_SUPPORT_PROVIDER_H_
20
#define MIR_GRAPHICS_ANDROID_DISPLAY_SUPPORT_PROVIDER_H_
22
#include "mir/graphics/renderable.h"
23
#include "mir_toolkit/common.h"
35
class RenderableListCompositor;
36
class SwappingGLContext;
41
virtual ~DisplayDevice() = default;
43
virtual void post_gl(SwappingGLContext const& context) = 0;
44
/* \returns true if the DisplayDevice can support the renderlist
45
false if the display device cannot support drawing the given renderlist.
47
virtual bool post_overlays(
48
SwappingGLContext const& context,
49
RenderableList const& list,
50
RenderableListCompositor const& list_compositor) = 0;
52
//TODO: remove the following from this interface
53
virtual void mode(MirPowerMode mode) = 0;
56
DisplayDevice() = default;
57
DisplayDevice& operator=(DisplayDevice const&) = delete;
58
DisplayDevice(DisplayDevice const&) = delete;
65
#endif /* MIR_GRAPHICS_ANDROID_DISPLAY_SUPPORT_PROVIDER_H_ */