Implemented white balance mode
[harmattan/cameraplus] / lib / qtcamcapability.h
1 // -*- c++ -*-
2
3 #ifndef QT_CAM_CAPABILITY_H
4 #define QT_CAM_CAPABILITY_H
5
6 #include <QObject>
7
8 class QtCamDevice;
9 class QtCamCapabilityPrivate;
10
11 class QtCamCapability : public QObject {
12   Q_OBJECT
13   Q_FLAGS(Capability Capabilities)
14
15 public:
16   typedef enum {
17     EvComp = (1 << 0),
18     IsoSpeed = (1 << 1),
19     Wb = (1 << 2),
20     ColourTone = (1 << 3),
21     Scene = (1 << 4),
22     Flash = (1 << 5),
23     Zoom = (1 << 6),
24     Focus = (1 << 7),
25     Aperture = (1 << 8),
26     Eposure = (1 << 9),
27     Shake = (1 << 10),
28     NoiseReduction = (1 << 11)
29   } Capability;
30
31   Q_DECLARE_FLAGS(Capabilities, Capability)
32
33   static Capabilities capabilities(QtCamDevice *dev);
34
35   QtCamCapability(QtCamCapabilityPrivate *d, QObject *parent = 0);
36   virtual ~QtCamCapability();
37
38   bool isSupported();
39
40 signals:
41   void valueChanged();
42   void minimumValueChanged();
43   void maximumValueChanged();
44
45 protected:
46   QtCamCapabilityPrivate *d_ptr;
47 };
48
49 #endif /* QT_CAM_CAPABILITY_H */