diff options
author | Sean Paul <seanpaul@chromium.org> | 2015-06-24 18:43:01 -0700 |
---|---|---|
committer | Sean Paul <seanpaul@chromium.org> | 2015-07-13 11:57:56 -0400 |
commit | acb2a4494e79f0026f8615acc561257276a71062 (patch) | |
tree | 4a11dcad21d7b06b2ba12b19c541ac3c44bd5410 /drmdisplaycomposition.h | |
parent | 98e73c89a683a92f44c99fb8dc85e51bdda243ba (diff) |
drm_hwcomposer: Add composition type to DrmComposition
This allows us to have different types of compositions. This will
enable injection of non-frame related compositions such as dpms
and mode.
Change-Id: Ia62421c114c0c6bebccef3ce6ae936366b6aafe2
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Diffstat (limited to 'drmdisplaycomposition.h')
-rw-r--r-- | drmdisplaycomposition.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drmdisplaycomposition.h b/drmdisplaycomposition.h index cf03360..bc8cf2e 100644 --- a/drmdisplaycomposition.h +++ b/drmdisplaycomposition.h @@ -28,6 +28,11 @@ namespace android { +enum DrmCompositionType { + DRM_COMPOSITION_TYPE_EMPTY, + DRM_COMPOSITION_TYPE_FRAME, +}; + typedef struct DrmCompositionLayer { DrmCompositionLayer(); ~DrmCompositionLayer(); @@ -46,6 +51,8 @@ class DrmDisplayComposition { int Init(DrmResources *drm, Importer *importer); + DrmCompositionType type() const; + int AddLayer(hwc_layer_1_t *layer, hwc_drm_bo_t *bo, DrmCrtc *crtc, DrmPlane *plane); @@ -56,9 +63,13 @@ class DrmDisplayComposition { private: DrmDisplayComposition(const DrmDisplayComposition &) = delete; + bool validate_composition_type(DrmCompositionType desired); + DrmResources *drm_; Importer *importer_; + DrmCompositionType type_; + int timeline_fd_; int timeline_; |