summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/api2/CameraDeviceClient.h
diff options
context:
space:
mode:
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;