Camera2: Fix cropRegion sometimes exceeding the sensor array size

Bug: 7155264
Bug: 7120431
Change-Id: I92a9c695b97ec40acf26dbdaa877964e41a9fd4c
diff --git a/services/camera/libcameraservice/camera2/Parameters.h b/services/camera/libcameraservice/camera2/Parameters.h
index f768605..7789ebb 100644
--- a/services/camera/libcameraservice/camera2/Parameters.h
+++ b/services/camera/libcameraservice/camera2/Parameters.h
@@ -190,6 +190,15 @@
     // Update passed-in request for common parameters
     status_t updateRequest(CameraMetadata *request) const;
 
+    // Calculate the crop region rectangle based on current stream sizes
+    struct CropRegion {
+        float left;
+        float top;
+        float width;
+        float height;
+    };
+    CropRegion calculateCropRegion(void) const;
+
     // Static methods for debugging and converting between camera1 and camera2
     // parameters