SF: Move DisplaySurface into CompositionEngine

The CompositionEngine now provides the interface for a DisplaySurface.

For the moment SurfaceFlinger still provides implementations, but those
may be moved into CompositionEngine too.

Test: atest libsurfaceflinger_unittest libcompositionengine_test
Bug: 121291683
Change-Id: I446e57952d59abc137b3b23203b2e093f6262ef3
diff --git a/services/surfaceflinger/DisplayDevice.cpp b/services/surfaceflinger/DisplayDevice.cpp
index c3e34d4..80004a1 100644
--- a/services/surfaceflinger/DisplayDevice.cpp
+++ b/services/surfaceflinger/DisplayDevice.cpp
@@ -33,6 +33,7 @@
 #include <compositionengine/CompositionEngine.h>
 #include <compositionengine/Display.h>
 #include <compositionengine/DisplayCreationArgs.h>
+#include <compositionengine/DisplaySurface.h>
 #include <compositionengine/impl/OutputCompositionState.h>
 #include <configstore/Utils.h>
 #include <cutils/properties.h>
@@ -47,7 +48,6 @@
 #include <utils/Log.h>
 #include <utils/RefBase.h>
 
-#include "DisplayHardware/DisplaySurface.h"
 #include "DisplayHardware/HWComposer.h"
 #include "DisplayHardware/HWC2.h"
 #include "SurfaceFlinger.h"
@@ -356,20 +356,20 @@
         }
     }
 
-    DisplaySurface::CompositionType compositionType;
+    compositionengine::DisplaySurface::CompositionType compositionType;
     bool hasClient = hwc.hasClientComposition(id);
     bool hasDevice = hwc.hasDeviceComposition(id);
     if (hasClient && hasDevice) {
-        compositionType = DisplaySurface::COMPOSITION_MIXED;
+        compositionType = compositionengine::DisplaySurface::COMPOSITION_MIXED;
     } else if (hasClient) {
-        compositionType = DisplaySurface::COMPOSITION_GLES;
+        compositionType = compositionengine::DisplaySurface::COMPOSITION_GLES;
     } else if (hasDevice) {
-        compositionType = DisplaySurface::COMPOSITION_HWC;
+        compositionType = compositionengine::DisplaySurface::COMPOSITION_HWC;
     } else {
         // Nothing to do -- when turning the screen off we get a frame like
         // this. Call it a HWC frame since we won't be doing any GLES work but
         // will do a prepare/set cycle.
-        compositionType = DisplaySurface::COMPOSITION_HWC;
+        compositionType = compositionengine::DisplaySurface::COMPOSITION_HWC;
     }
     return mDisplaySurface->prepareFrame(compositionType);
 }