summaryrefslogtreecommitdiffstats
path: root/include/camera
diff options
context:
space:
mode:
Diffstat (limited to 'include/camera')
-rw-r--r--include/camera/IProCameraCallbacks.h7
-rw-r--r--include/camera/ProCamera.h17
2 files changed, 18 insertions, 6 deletions
diff --git a/include/camera/IProCameraCallbacks.h b/include/camera/IProCameraCallbacks.h
index e5be099..fc24026 100644
--- a/include/camera/IProCameraCallbacks.h
+++ b/include/camera/IProCameraCallbacks.h
@@ -24,6 +24,8 @@
#include <utils/Timers.h>
#include <system/camera.h>
+struct camera_metadata;
+
namespace android {
class IProCameraCallbacks: public IInterface
@@ -47,6 +49,11 @@ public:
};
virtual void onLockStatusChanged(LockStatus newLockStatus) = 0;
+
+ /** Missing by design: implementation is client-side in ProCamera.cpp **/
+ // virtual void onBufferReceived(int streamId,
+ // const CpuConsumer::LockedBufer& buf);
+ virtual void onResultReceived(int32_t frameId, camera_metadata* result) = 0;
};
// ----------------------------------------------------------------------------
diff --git a/include/camera/ProCamera.h b/include/camera/ProCamera.h
index 4dda533..7cd9138 100644
--- a/include/camera/ProCamera.h
+++ b/include/camera/ProCamera.h
@@ -49,17 +49,19 @@ public:
// OnBufferReceived and OnRequestReceived can come in with any order,
// use android.sensor.timestamp and LockedBuffer.timestamp to correlate them
- // TODO: implement in IProCameraCallbacks, ProCamera2Client
-
// A new frame buffer has been received for this stream.
// -- This callback only fires for createStreamCpu streams
+ // -- Use buf.timestamp to correlate with metadata's
+ // android.sensor.timestamp
// -- The buffer must not be accessed after this function call completes
virtual void onBufferReceived(int streamId,
const CpuConsumer::LockedBuffer& buf) = 0;
- // A new metadata buffer has been received.
- // -- Ownership of request passes on to the callee,
- // free with free_camera_metadata.
- virtual void onRequestReceived(camera_metadata* request) = 0;
+ /**
+ * A new metadata buffer has been received.
+ * -- Ownership of request passes on to the callee, free with
+ * free_camera_metadata.
+ */
+ virtual void onResultReceived(int32_t frameId, camera_metadata* result) = 0;
};
class ProCamera : public BnProCameraCallbacks, public IBinder::DeathRecipient
@@ -189,6 +191,9 @@ protected:
virtual void onLockStatusChanged(
IProCameraCallbacks::LockStatus newLockStatus);
+ virtual void onResultReceived(int32_t frameId,
+ camera_metadata* result);
+
class DeathNotifier: public IBinder::DeathRecipient
{
public: