diff options
Diffstat (limited to 'src/plugins/android/src/wrappers/jcamera.h')
-rw-r--r-- | src/plugins/android/src/wrappers/jcamera.h | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/src/plugins/android/src/wrappers/jcamera.h b/src/plugins/android/src/wrappers/jcamera.h index 6bba98402..9b2f5b177 100644 --- a/src/plugins/android/src/wrappers/jcamera.h +++ b/src/plugins/android/src/wrappers/jcamera.h @@ -49,9 +49,15 @@ QT_BEGIN_NAMESPACE -class JCamera : public QObject, public QJNIObjectPrivate +class QThread; + +class JCameraWorker; + +class JCamera : public QObject { Q_OBJECT + Q_ENUMS(CameraFacing) + Q_ENUMS(ImageFormat) public: enum CameraFacing { CameraFacingBack = 0, @@ -72,7 +78,7 @@ public: static JCamera *open(int cameraId); - int cameraId() const { return m_cameraId; } + int cameraId() const; void lock(); void unlock(); @@ -90,7 +96,7 @@ public: ImageFormat getPreviewFormat(); void setPreviewFormat(ImageFormat fmt); - QSize previewSize() const { return m_previewSize; } + QSize previewSize() const; void setPreviewSize(const QSize &size); void setPreviewTexture(jobject surfaceTexture); @@ -149,12 +155,15 @@ public: void takePicture(); - QByteArray fetchLastPreviewFrame(); + void fetchLastPreviewFrame(); + QJNIObjectPrivate getCameraObject(); static bool initJNI(JNIEnv *env); Q_SIGNALS: void previewSizeChanged(); + void previewStarted(); + void previewStopped(); void autoFocusStarted(); void autoFocusComplete(bool success); @@ -163,21 +172,12 @@ Q_SIGNALS: void pictureExposed(); void pictureCaptured(const QByteArray &data); + void previewFetched(const QByteArray &preview); private: - JCamera(int cameraId, jobject cam); - void applyParameters(); - - QStringList callStringListMethod(const char *methodName); - - int m_cameraId; - QJNIObjectPrivate m_info; - QJNIObjectPrivate m_parameters; - - QSize m_previewSize; - int m_rotation; + JCamera(int cameraId, jobject cam, QThread *workerThread); - bool m_hasAPI14; + JCameraWorker *d; }; QT_END_NAMESPACE |