diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2020-05-25 16:08:22 +0200 |
---|---|---|
committer | Jacopo Mondi <jacopo@jmondi.org> | 2020-06-04 09:58:02 +0200 |
commit | 64f4f667ed1c58d4889a3b00c6750a2ddfc625f2 (patch) | |
tree | 06d912ed12ebf21af1d6c6984fef4fe0a03e3761 /src/android/camera_device.h | |
parent | 0ffb3a20ed61a53ba20e6d6724b1f23030bc20f8 (diff) |
android: hal_manager: Do not hardcode properties
The CameraHalManager::getCameraInfo() method hardcodes the camera facing
side and orientation (which corresponds, confusingly, to libcamera's
location and rotation properties).
Instead of hard-coding the values based on the camera id, inspect the
libcamera properties that report the camera location and rotation in a
new initialize() method, and use them to report the android camera info
and to populate the static metadata buffer.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src/android/camera_device.h')
-rw-r--r-- | src/android/camera_device.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/android/camera_device.h b/src/android/camera_device.h index 9d5c6952..a87f7623 100644 --- a/src/android/camera_device.h +++ b/src/android/camera_device.h @@ -27,12 +27,17 @@ public: CameraDevice(unsigned int id, const std::shared_ptr<libcamera::Camera> &camera); ~CameraDevice(); + int initialize(); + int open(const hw_module_t *hardwareModule); void close(); unsigned int id() const { return id_; } camera3_device_t *camera3Device() { return &camera3Device_; } + int facing() const { return facing_; } + int orientation() const { return orientation_; } + void setCallbacks(const camera3_callback_ops_t *callbacks); const camera_metadata_t *getStaticMetadata(); const camera_metadata_t *constructDefaultRequestSettings(int type); @@ -69,6 +74,9 @@ private: CameraMetadata *staticMetadata_; std::map<unsigned int, CameraMetadata *> requestTemplates_; const camera3_callback_ops_t *callbacks_; + + int facing_; + int orientation_; }; #endif /* __ANDROID_CAMERA_DEVICE_H__ */ |