test-hwc2: set layer visible region

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
          frameworks/native/libs/gui/BufferQueueCore.cpp.
      Recompile and flash.
      Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
      Push test-hwc2 to device.
      Run "adb root && adb shell stop".
      Run test case. Ex: "./test-hwc2"

Change-Id: I0e620fa6763d258d7875da9bf85d41c182e015d2
diff --git a/services/surfaceflinger/tests/hwc2/Hwc2TestLayer.h b/services/surfaceflinger/tests/hwc2/Hwc2TestLayer.h
index 27885ab..86c3649 100644
--- a/services/surfaceflinger/tests/hwc2/Hwc2TestLayer.h
+++ b/services/surfaceflinger/tests/hwc2/Hwc2TestLayer.h
@@ -30,17 +30,20 @@
 
 class Hwc2TestLayer {
 public:
-    Hwc2TestLayer(Hwc2TestCoverage coverage, const Area& displayArea,
-            uint32_t zOrder = 0);
+    Hwc2TestLayer(Hwc2TestCoverage coverage, const Area& displayArea);
 
     std::string dump() const;
 
     int getBuffer(buffer_handle_t* outHandle,
             android::base::unique_fd* outAcquireFence);
 
+    void setZOrder(uint32_t zOrder);
+    void setVisibleRegion(const android::Region& region);
+
     void reset();
 
     hwc2_blend_mode_t      getBlendMode() const;
+    Area                   getBufferArea() const;
     hwc_color_t            getColor() const;
     hwc2_composition_t     getComposition() const;
     hwc_rect_t             getCursorPosition() const;
@@ -50,6 +53,7 @@
     hwc_frect_t            getSourceCrop() const;
     hwc_region_t           getSurfaceDamage() const;
     hwc_transform_t        getTransform() const;
+    hwc_region_t           getVisibleRegion() const;
     uint32_t               getZOrder() const;
 
     bool advanceBlendMode();
@@ -63,11 +67,12 @@
     bool advanceSourceCrop();
     bool advanceSurfaceDamage();
     bool advanceTransform();
+    bool advanceVisibleRegion();
 
 private:
-    std::array<Hwc2TestContainer*, 9> mProperties = {{
-        &mBlendMode, &mColor, &mComposition, &mDataspace, &mDisplayFrame,
-        &mPlaneAlpha, &mSourceCrop, &mSurfaceDamage, &mTransform
+    std::array<Hwc2TestContainer*, 10> mProperties = {{
+        &mBlendMode, &mBufferArea, &mColor, &mComposition, &mDataspace,
+        &mDisplayFrame, &mPlaneAlpha, &mSourceCrop, &mSurfaceDamage, &mTransform
     }};
 
     Hwc2TestBuffer mBuffer;
@@ -82,8 +87,9 @@
     Hwc2TestSourceCrop mSourceCrop;
     Hwc2TestSurfaceDamage mSurfaceDamage;
     Hwc2TestTransform mTransform;
+    Hwc2TestVisibleRegion mVisibleRegion;
 
-    uint32_t mZOrder;
+    uint32_t mZOrder = UINT32_MAX;
 };
 
 #endif /* ifndef _HWC2_TEST_LAYER_H */