summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/api2/CameraDeviceClient.h
diff options
context:
space:
mode:
authorChien-Yu Chen <cychen@google.com>2015-03-13 11:27:17 -0700
committerChien-Yu Chen <cychen@google.com>2015-04-13 17:25:36 -0700
commit618ff8a48a0c895a78f91f5692510c2a809425c3 (patch)
tree9473236e1e759aecf921b87e50302d933bae041d /services/camera/libcameraservice/api2/CameraDeviceClient.h
parent25f82752942b1c78aec8ee303d61afff85cff9d1 (diff)
downloadframeworks_av-618ff8a48a0c895a78f91f5692510c2a809425c3.zip
frameworks_av-618ff8a48a0c895a78f91f5692510c2a809425c3.tar.gz
frameworks_av-618ff8a48a0c895a78f91f5692510c2a809425c3.tar.bz2
camera2: add reprocess support
Add support to create input stream, submit reprocess capture requests, and receive reprocess capture results. Change-Id: Iee2d4313f3d52616a484eaea7a28f5ef9d8a674b
Diffstat (limited to 'services/camera/libcameraservice/api2/CameraDeviceClient.h')
-rw-r--r--services/camera/libcameraservice/api2/CameraDeviceClient.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/services/camera/libcameraservice/api2/CameraDeviceClient.h b/services/camera/libcameraservice/api2/CameraDeviceClient.h
index a3dbb90..f2d8899 100644
--- a/services/camera/libcameraservice/api2/CameraDeviceClient.h
+++ b/services/camera/libcameraservice/api2/CameraDeviceClient.h
@@ -86,6 +86,13 @@ public:
virtual status_t createStream(const OutputConfiguration &outputConfiguration);
+ // Create an input stream of width, height, and format.
+ virtual status_t createInputStream(int width, int height, int format);
+
+ // Get the buffer producer of the input stream
+ virtual status_t getInputBufferProducer(
+ /*out*/sp<IGraphicBufferProducer> *producer);
+
// Create a request object from a template.
virtual status_t createDefaultRequest(int templateId,
/*out*/
@@ -161,10 +168,18 @@ private:
android_dataspace dataSpace, const CameraMetadata& info,
/*out*/int32_t* outWidth, /*out*/int32_t* outHeight);
- // IGraphicsBufferProducer binder -> Stream ID
+ // IGraphicsBufferProducer binder -> Stream ID for output streams
KeyedVector<sp<IBinder>, int> mStreamMap;
- // Stream ID
+ struct InputStreamConfiguration {
+ bool configured;
+ int32_t width;
+ int32_t height;
+ int32_t format;
+ int32_t id;
+ } mInputStream;
+
+ // Request ID
Vector<int> mStreamingRequestList;
int32_t mRequestIdCounter;