Initial implementation
[harmattan/cameraplus] / lib / qtcamvideomode.h
1 // -*- c++ -*-
2
3 #ifndef QT_CAM_VIDEO_MODE_H
4 #define QT_CAM_VIDEO_MODE_H
5
6 #include "qtcammode.h"
7 #include <gst/pbutils/encoding-profile.h>
8
9 class QtCamDevicePrivate;
10 class QtCamVideoModePrivate;
11 class QtCamVideoSettings;
12
13 class QtCamVideoMode : public QtCamMode {
14   Q_OBJECT
15
16 public:
17   QtCamVideoMode(QtCamDevicePrivate *d, QObject *parent = 0);
18   ~QtCamVideoMode();
19
20   virtual bool canCapture();
21   virtual void applySettings();
22
23   bool isRecording();
24   bool startRecording(const QString& fileName);
25   bool stopRecording();
26
27   bool setSettings(const QtCamVideoSettings& settings);
28
29   void setProfile(GstEncodingProfile *profile);
30
31 protected:
32   virtual void start();
33   virtual void stop();
34
35 private:
36   QtCamVideoModePrivate *d_ptr;
37 };
38
39 #endif /* QT_CAM_VIDEO_MODE_H */