qtcamviewfinderrenderergeneric.h qtcamimagesettings.h qtcamvideosettings.h \
qtcamimagemode.h qtcamvideomode.h qtcammetadata.h qtcamcapability.h \
qtcamzoom.h qtcamflash.h qtcamscene.h qtcamevcomp.h qtcamvideotorch.h \
- qtcamwhitebalance.h qtcamcolortone.h qtcamflickerreduction.h
+ qtcamwhitebalance.h qtcamcolortone.h qtcamflickerreduction.h \
+ qtcamnoisereduction.h
SOURCES += qtcamconfig.cpp qtcamera.cpp qtcamscanner.cpp qtcamdevice.cpp qtcamviewfinder.cpp \
qtcammode.cpp qtcamgstreamermessagehandler.cpp qtcamgstreamermessagelistener.cpp \
qtcamviewfinderrenderergeneric.cpp qtcamimagesettings.cpp qtcamvideosettings.cpp \
qtcamimagemode.cpp qtcamvideomode.cpp qtcammetadata.cpp qtcamcapability.cpp \
qtcamzoom.cpp qtcamflash.cpp qtcamscene.cpp qtcamevcomp.cpp qtcamvideotorch.cpp \
- qtcamwhitebalance.cpp qtcamcolortone.cpp qtcamflickerreduction.cpp
+ qtcamwhitebalance.cpp qtcamcolortone.cpp qtcamflickerreduction.cpp \
+ qtcamnoisereduction.cpp
HEADERS += qtcammode_p.h qtcamdevice_p.h qtcamcapability_p.h
--- /dev/null
+#include "qtcamnoisereduction.h"
+#include "qtcamcapability_p.h"
+
+QtCamNoiseReduction::QtCamNoiseReduction(QtCamDevice *dev, QObject *parent) :
+ QtCamCapability(new QtCamCapabilityPrivate(dev, QtCamCapability::NoiseReduction,
+ "noise-reduction"), parent) {
+ // TODO: QML
+}
+
+QtCamNoiseReduction::~QtCamNoiseReduction() {
+
+}
+
+QtCamNoiseReduction::NoiseReductionMode QtCamNoiseReduction::value() {
+ int val = 0;
+ if (!d_ptr->intValue(&val)) {
+ return QtCamNoiseReduction::None;
+ }
+
+ switch (val) {
+ case QtCamNoiseReduction::Bayer:
+ case QtCamNoiseReduction::Ycc:
+ case QtCamNoiseReduction::Temporal:
+ case QtCamNoiseReduction::Fixed:
+ case QtCamNoiseReduction::Extra:
+ return (QtCamNoiseReduction::NoiseReductionMode)val;
+
+ default:
+ return QtCamNoiseReduction::None;
+ }
+}
+
+bool QtCamNoiseReduction::setValue(const QtCamNoiseReduction::NoiseReductionMode& mode) {
+ return d_ptr->setIntValue(mode, false);
+}
--- /dev/null
+// -*- c++ -*-
+
+#ifndef QT_CAM_NOISE_REDUCTION_H
+#define QT_CAM_NOISE_REDUCTION_H
+
+#include "qtcamcapability.h"
+
+class QtCamNoiseReduction : public QtCamCapability {
+ Q_OBJECT
+
+public:
+ typedef enum {
+ None = 0x00000000,
+ Bayer = 0x00000001,
+ Ycc = 0x00000002,
+ Temporal = 0x00000004,
+ Fixed = 0x00000008,
+ Extra = 0x00000010
+ } NoiseReductionMode;
+
+ QtCamNoiseReduction(QtCamDevice *dev, QObject *parent = 0);
+ ~QtCamNoiseReduction();
+
+ NoiseReductionMode value();
+ bool setValue(const NoiseReductionMode& mode);
+};
+
+#endif /* QT_CAM_NOISE_REDUCTION_H */