summaryrefslogtreecommitdiff
Diffstat
-rw-r--r--common/display/include/HwDisplayConnector.h8
-rw-r--r--common/hwc/ActiveModeMgr.cpp (renamed from hwc2/ActiveModeMgr.cpp)0
-rw-r--r--common/hwc/Android.mk5
-rw-r--r--common/hwc/FixedSizeModeMgr.cpp (renamed from hwc2/FixedSizeModeMgr.cpp)0
-rw-r--r--common/hwc/HwcModeMgr.cpp (renamed from hwc2/HwcModeMgr.cpp)0
-rw-r--r--common/hwc/RealModeMgr.cpp (renamed from hwc2/RealModeMgr.cpp)0
-rw-r--r--common/hwc/VariableModeMgr.cpp (renamed from hwc2/VariableModeMgr.cpp)0
-rw-r--r--common/hwc/include/ActiveModeMgr.h (renamed from hwc2/ActiveModeMgr.h)0
-rw-r--r--common/hwc/include/FixedSizeModeMgr.h (renamed from hwc2/FixedSizeModeMgr.h)0
-rw-r--r--common/hwc/include/RealModeMgr.h (renamed from hwc2/RealModeMgr.h)0
-rw-r--r--common/hwc/include/VariableModeMgr.h (renamed from hwc2/VariableModeMgr.h)0
-rw-r--r--hwc2/Android.mk62
-rwxr-xr-xhwc2/Hwc2Display.cpp18
-rw-r--r--hwc2/Hwc2Display.h4
-rw-r--r--hwc2/Hwc2Module.cpp9
-rw-r--r--hwc2/MesonHwc2.cpp8
-rw-r--r--hwc2/MesonHwc2.h9
-rw-r--r--postprocessor/Android.mk3
-rw-r--r--postprocessor/fbprocessor/CopyProcessor.cpp16
-rw-r--r--service/2.3/default/android.hardware.graphics.composer@2.3-service.droidlogic.xml9
-rw-r--r--service/2.4/default/android.hardware.graphics.composer@2.4-service.droidlogic.xml9
21 files changed, 138 insertions, 22 deletions
diff --git a/hwc2/Hwc2Display.cpp b/hwc2/Hwc2Display.cpp
index bbaa9b3..154d807 100755
--- a/hwc2/Hwc2Display.cpp
+++ b/hwc2/Hwc2Display.cpp
@@ -10,6 +10,7 @@
#include <inttypes.h>
#include "Hwc2Display.h"
+#include "Hwc2Layer.h"
#include "Hwc2Base.h"
#include <DrmTypes.h>
@@ -23,6 +24,10 @@
#include <EventThread.h>
#include <systemcontrol.h>
+#include "am_gralloc_ext.h"
+
+#include "CopyProcessor.h"
+
Hwc2Display::Hwc2Display(std::shared_ptr<Hwc2DisplayObserver> observer) {
mObserver = observer;
mForceClientComposer = false;
@@ -1136,3 +1141,16 @@ void Hwc2Display::dump(String8 & dumpstr) {
dumpHwDisplayPlane(dumpstr);
}
+int32_t Hwc2Display::captureDisplayScreen(buffer_handle_t hnd) {
+ int ret = -1;
+ std::shared_ptr<DrmFramebuffer> capBuffer;
+
+ ALOGD("hwc2Display:: captureDisplayScreen");
+ if (mPostProcessor && hnd) {
+ capBuffer = std::make_shared<DrmFramebuffer>(hnd, -1);
+ //ret = mPostProcessor->getScreencapFb(capBuffer);
+ capBuffer.reset();
+ }
+
+ return ret;
+}