$$PWD/camerabinrecorder.h \
$$PWD/camerabincontainer.h \
$$PWD/camerabinimagecapture.h \
+ $$PWD/camerabinzoom.h \
$$PWD/camerabinimageprocessing.h \
$$PWD/camerabinmetadata.h \
$$PWD/camerabinvideoencoder.h \
$$PWD/camerabincontainer.cpp \
$$PWD/camerabinimagecapture.cpp \
$$PWD/camerabinimageencoder.cpp \
+ $$PWD/camerabinzoom.cpp \
$$PWD/camerabinimageprocessing.cpp \
$$PWD/camerabinmetadata.cpp \
$$PWD/camerabinrecorder.cpp \
$$PWD/camerabinfocus.h \
$$PWD/camerabinexposure.h \
$$PWD/camerabinflash.h \
- $$PWD/camerabinlocks.h \
- $$PWD/camerabinzoom.h
+ $$PWD/camerabinlocks.h
SOURCES += \
$$PWD/camerabinexposure.cpp \
$$PWD/camerabinflash.cpp \
$$PWD/camerabinfocus.cpp \
- $$PWD/camerabinlocks.cpp \
- $$PWD/camerabinzoom.cpp
+ $$PWD/camerabinlocks.cpp
LIBS += -lgstphotography-$$GST_VERSION
DEFINES += GST_USE_UNSTABLE_API #prevents warnings because of unstable photography API
#include "camerabinflash.h"
#include "camerabinfocus.h"
#include "camerabinlocks.h"
-#include "camerabinzoom.h"
#endif
+#include "camerabinzoom.h"
#include "camerabinimageprocessing.h"
#include "camerabinviewfindersettings.h"
m_videoInputFactory(0),
m_viewfinder(0),
m_viewfinderInterface(0),
+#ifdef HAVE_GST_PHOTOGRAPHY
+ m_cameraExposureControl(0),
+ m_cameraFlashControl(0),
+ m_cameraFocusControl(0),
+ m_cameraLocksControl(0),
+#endif
m_cameraSrc(0),
m_videoSrc(0),
m_viewfinderElement(0),
m_imageEncodeControl = new CameraBinImageEncoder(this);
m_recorderControl = new CameraBinRecorder(this);
m_mediaContainerControl = new CameraBinContainer(this);
-
-#ifdef HAVE_GST_PHOTOGRAPHY
- m_cameraExposureControl = new CameraBinExposure(this);
- m_cameraFlashControl = new CameraBinFlash(this);
- m_cameraFocusControl = new CameraBinFocus(this);
- m_cameraLocksControl = new CameraBinLocks(this);
m_cameraZoomControl = new CameraBinZoom(this);
-#endif
m_imageProcessingControl = new CameraBinImageProcessing(this);
m_captureDestinationControl = new CameraBinCaptureDestination(this);
m_captureBufferFormatControl = new CameraBinCaptureBufferFormat(this);
return 0;
}
+
+CameraBinExposure *CameraBinSession::cameraExposureControl()
+{
+ if (!m_cameraExposureControl && photography())
+ m_cameraExposureControl = new CameraBinExposure(this);
+ return m_cameraExposureControl;
+}
+
+CameraBinFlash *CameraBinSession::cameraFlashControl()
+{
+ if (!m_cameraFlashControl && photography())
+ m_cameraFlashControl = new CameraBinFlash(this);
+ return m_cameraFlashControl;
+}
+
+CameraBinFocus *CameraBinSession::cameraFocusControl()
+{
+ if (!m_cameraFocusControl && photography())
+ m_cameraFocusControl = new CameraBinFocus(this);
+ return m_cameraFocusControl;
+}
+
+CameraBinLocks *CameraBinSession::cameraLocksControl()
+{
+ if (!m_cameraLocksControl && photography())
+ m_cameraLocksControl = new CameraBinLocks(this);
+ return m_cameraLocksControl;
+}
#endif
CameraBinSession::CameraRole CameraBinSession::cameraRole() const
CameraBinImageEncoder *imageEncodeControl() const { return m_imageEncodeControl; }
#ifdef HAVE_GST_PHOTOGRAPHY
- CameraBinExposure *cameraExposureControl() const { return m_cameraExposureControl; }
- CameraBinFlash *cameraFlashControl() const { return m_cameraFlashControl; }
- CameraBinFocus *cameraFocusControl() const { return m_cameraFocusControl; }
- CameraBinLocks *cameraLocksControl() const { return m_cameraLocksControl; }
- CameraBinZoom *cameraZoomControl() const { return m_cameraZoomControl; }
+ CameraBinExposure *cameraExposureControl();
+ CameraBinFlash *cameraFlashControl();
+ CameraBinFocus *cameraFocusControl();
+ CameraBinLocks *cameraLocksControl();
#endif
+ CameraBinZoom *cameraZoomControl() const { return m_cameraZoomControl; }
CameraBinImageProcessing *imageProcessingControl() const { return m_imageProcessingControl; }
CameraBinCaptureDestination *captureDestinationControl() const { return m_captureDestinationControl; }
CameraBinCaptureBufferFormat *captureBufferFormatControl() const { return m_captureBufferFormatControl; }
CameraBinFlash *m_cameraFlashControl;
CameraBinFocus *m_cameraFocusControl;
CameraBinLocks *m_cameraLocksControl;
- CameraBinZoom *m_cameraZoomControl;
#endif
-
+ CameraBinZoom *m_cameraZoomControl;
CameraBinImageProcessing *m_imageProcessingControl;
CameraBinCaptureDestination *m_captureDestinationControl;
CameraBinCaptureBufferFormat *m_captureBufferFormatControl;
#include "camerabinzoom.h"
#include "camerabinsession.h"
-#include <gst/interfaces/photography.h>
-
#define ZOOM_PROPERTY "zoom"
#define MAX_ZOOM_PROPERTY "max-zoom"