diff options
author | Ruben Brunk <rubenbrunk@google.com> | 2014-05-09 19:57:56 -0700 |
---|---|---|
committer | Ruben Brunk <rubenbrunk@google.com> | 2014-05-21 18:14:41 -0700 |
commit | b2119af7f4ced0ecfefd4c7388f86b4e3a3ea7d8 (patch) | |
tree | a97770362fc690d625a0383597cb057d48737876 /include | |
parent | 7ac0039611ea7ea18f9545f96a8f5cb31dcdebe5 (diff) | |
download | frameworks_av-b2119af7f4ced0ecfefd4c7388f86b4e3a3ea7d8.zip frameworks_av-b2119af7f4ced0ecfefd4c7388f86b4e3a3ea7d8.tar.gz frameworks_av-b2119af7f4ced0ecfefd4c7388f86b4e3a3ea7d8.tar.bz2 |
camera2: Update CameraService for HAL1 shim.
Updates the camera service to handle shim connections.
Changes include:
- Adds begin/end configure binder calls.
- Adds cache for shim client static camera metadata.
- Implements basic getCameraCharacteristic functionality for shim clients.
Bug: 15116722
Bug: 15117269
Change-Id: I510c5888ca15f8e7d3b8ed1680ff1c7f8f514744
Diffstat (limited to 'include')
-rw-r--r-- | include/camera/CameraParameters.h | 13 | ||||
-rw-r--r-- | include/camera/camera2/ICameraDeviceUser.h | 21 |
2 files changed, 34 insertions, 0 deletions
diff --git a/include/camera/CameraParameters.h b/include/camera/CameraParameters.h index d521543..c6074fc 100644 --- a/include/camera/CameraParameters.h +++ b/include/camera/CameraParameters.h @@ -102,6 +102,12 @@ public: void dump() const; status_t dump(int fd, const Vector<String16>& args) const; + /** + * Returns a Vector containing the supported preview formats + * as enums given in graphics.h. + */ + void getSupportedPreviewFormats(Vector<int>& formats) const; + // Parameter keys to communicate between camera application and driver. // The access (read/write, read only, or write only) is viewed from the // perspective of applications, not driver. @@ -674,6 +680,13 @@ public: // High-dynamic range mode static const char LIGHTFX_HDR[]; + /** + * Returns the the supported preview formats as an enum given in graphics.h + * corrsponding to the format given in the input string or -1 if no such + * conversion exists. + */ + static int previewFormatToEnum(const char* format); + private: DefaultKeyedVector<String8,String8> mMap; }; diff --git a/include/camera/camera2/ICameraDeviceUser.h b/include/camera/camera2/ICameraDeviceUser.h index 913696f..35488bb 100644 --- a/include/camera/camera2/ICameraDeviceUser.h +++ b/include/camera/camera2/ICameraDeviceUser.h @@ -78,6 +78,27 @@ public: /*out*/ int64_t* lastFrameNumber = NULL) = 0; + /** + * Begin the device configuration. + * + * <p> + * beginConfigure must be called before any call to deleteStream, createStream, + * or endConfigure. It is not valid to call this when the device is not idle. + * <p> + */ + virtual status_t beginConfigure() = 0; + + /** + * End the device configuration. + * + * <p> + * endConfigure must be called after stream configuration is complete (i.e. after + * a call to beginConfigure and subsequent createStream/deleteStream calls). This + * must be called before any requests can be submitted. + * <p> + */ + virtual status_t endConfigure() = 0; + virtual status_t deleteStream(int streamId) = 0; virtual status_t createStream( int width, int height, int format, |