summaryrefslogtreecommitdiffstats
path: root/libcamera/LibCameraWrapper.h
diff options
context:
space:
mode:
Diffstat (limited to 'libcamera/LibCameraWrapper.h')
-rw-r--r--libcamera/LibCameraWrapper.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/libcamera/LibCameraWrapper.h b/libcamera/LibCameraWrapper.h
new file mode 100644
index 0000000..e999706
--- /dev/null
+++ b/libcamera/LibCameraWrapper.h
@@ -0,0 +1,64 @@
+#ifndef ANDROID_HARDWARE_LIB_CAMERA_WRAPPER_H
+#define ANDROID_HARDWARE_LIB_CAMERA_WRAPPER_H
+
+#include <camera/CameraHardwareInterface.h>
+
+namespace android {
+
+class LibCameraWrapper : public CameraHardwareInterface {
+public:
+ virtual sp<IMemoryHeap> getPreviewHeap() const;
+ virtual sp<IMemoryHeap> getRawHeap() const;
+
+ virtual void setCallbacks(notify_callback notify_cb,
+ data_callback data_cb,
+ data_callback_timestamp data_cb_timestamp,
+ void *user);
+
+ virtual void enableMsgType(int32_t msgType);
+ virtual void disableMsgType(int32_t msgType);
+ virtual bool msgTypeEnabled(int32_t msgType);
+
+ virtual status_t startPreview();
+ virtual bool useOverlay();
+ virtual status_t setOverlay(const sp<Overlay> &overlay);
+ virtual void stopPreview();
+ virtual bool previewEnabled();
+
+ virtual status_t startRecording();
+ virtual void stopRecording();
+ virtual bool recordingEnabled();
+ virtual void releaseRecordingFrame(const sp<IMemory> &mem);
+
+ virtual status_t autoFocus();
+ virtual status_t cancelAutoFocus();
+ virtual status_t takePicture();
+ virtual status_t cancelPicture();
+ virtual status_t dump(int fd, const Vector<String16> &args) const;
+ virtual status_t setParameters(const CameraParameters& params);
+ virtual CameraParameters getParameters() const;
+ virtual status_t sendCommand(int32_t command, int32_t arg1,
+ int32_t arg2);
+ virtual void release();
+
+ static sp<CameraHardwareInterface> createInstance(int cameraId);
+
+private:
+ LibCameraWrapper(int CameraId);
+ virtual ~LibCameraWrapper();
+
+ sp<CameraHardwareInterface> mLibInterface;
+ int mCameraId;
+ bool mVideoMode;
+ bool mContinuousAf;
+ bool mTouchFocus;
+ int mTouchFocusX;
+ int mTouchFocusY;
+
+ static wp<CameraHardwareInterface> singleton[2];
+
+};
+
+}; // namespace android
+
+#endif