diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2021-03-23 15:14:28 +0100 |
---|---|---|
committer | Jacopo Mondi <jacopo@jmondi.org> | 2021-05-25 15:21:59 +0200 |
commit | 07c2a4257d9ef3bae35af1848f9f36ac8ce8044d (patch) | |
tree | 01f5eca1598af8fcdb061cc9670252cdee48b087 /src/android/camera_hal_config.h | |
parent | 6570f85454e2ef6ef07680f088fa01ad675bf16e (diff) |
android: Add CameraHalConfig class
Add a CameraHalConfig class to the Android Camera3 HAL layer.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
Diffstat (limited to 'src/android/camera_hal_config.h')
-rw-r--r-- | src/android/camera_hal_config.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/android/camera_hal_config.h b/src/android/camera_hal_config.h new file mode 100644 index 00000000..0555c6da --- /dev/null +++ b/src/android/camera_hal_config.h @@ -0,0 +1,40 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ +/* + * Copyright (C) 2021, Google Inc. + * + * camera_hal_config.h - Camera HAL configuration file manager + */ +#ifndef __ANDROID_CAMERA_HAL_CONFIG_H__ +#define __ANDROID_CAMERA_HAL_CONFIG_H__ + +#include <filesystem> +#include <map> +#include <string> + +#include <libcamera/class.h> + +struct CameraConfigData { + int facing = -1; + int rotation = -1; +}; + +class CameraHalConfig final : public libcamera::Extensible +{ + LIBCAMERA_DECLARE_PRIVATE() + +public: + CameraHalConfig(); + + bool exists() const { return exists_; } + bool isValid() const { return valid_; } + + const CameraConfigData *cameraConfigData(const std::string &cameraId) const; + +private: + bool exists_; + bool valid_; + std::map<std::string, CameraConfigData> cameras_; + + int parseConfigurationFile(); +}; +#endif /* __ANDROID_CAMERA_HAL_CONFIG_H__ */ |