[libcamera-devel,v4,14/16] cam: Validate camera configuration

Message ID 20190619025129.21164-15-niklas.soderlund@ragnatech.se
State Accepted
Headers show
Series
  • libcamera: Add support for format information and validation
Related show

Commit Message

Niklas Söderlund June 19, 2019, 2:51 a.m. UTC
Use CameraConfiguration::validate() to validate and possibly update the
camera configuration when its prepared.

Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 src/cam/main.cpp | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Patch

diff --git a/src/cam/main.cpp b/src/cam/main.cpp
index 784f58cb2d8758e4..4e9abf666fedf211 100644
--- a/src/cam/main.cpp
+++ b/src/cam/main.cpp
@@ -243,6 +243,18 @@  int CamApp::prepareConfig()
 		}
 	}
 
+	switch (config_->validate()) {
+	case CameraConfiguration::Valid:
+		break;
+	case CameraConfiguration::Adjusted:
+		std::cout << "Camera configuration adjusted" << std::endl;
+		break;
+	case CameraConfiguration::Invalid:
+		std::cout << "Camera configuration invalid" << std::endl;
+		config_.reset();
+		return -EINVAL;
+	}
+
 	return 0;
 }