summaryrefslogtreecommitdiff
path: root/hwc2/include/IComposer.h (plain)
blob: 011faa6c8fba4ecba008deb755e5f3bf696cd8b4
1/*
2// Copyright(c) 2016 Amlogic Corporation
3*/
4#ifndef ICOMPOSER_H
5#define ICOMPOSER_H
6
7#include <HwcLayer.h>
8
9namespace android {
10namespace amlogic {
11
12// aml composer interface
13class IComposer {
14public:
15 IComposer() {}
16 virtual ~IComposer() {}
17public:
18 virtual bool initialize(framebuffer_info_t* fbInfo) = 0;
19 virtual void deinitialize() = 0;
20 virtual int32_t startCompose(Vector< hwc2_layer_t > hwcLayers, int32_t *offset = 0, int32_t frameCount = 0) = 0;
21 virtual const char* getName() const = 0;
22 // virtual void setCurGlesFbSlot(uint32_t slot) = 0;
23 virtual const buffer_handle_t getBufHnd() = 0;
24 virtual void mergeRetireFence(int32_t slot, int32_t retireFence) = 0;
25 virtual void removeRetireFence(int32_t slot) = 0;
26 virtual void setVideoOverlayLayerId(hwc2_layer_t layerId) = 0;
27 virtual void fillRectangle(hwc_rect_t clipRect, uint32_t color, uint32_t offset, int shared_fd) = 0;
28};
29
30}
31}
32
33#endif /* IDISPLAY_DEVICE_H */
34