3 #ifndef QT_CAM_DEVICE_H
4 #define QT_CAM_DEVICE_H
9 class QtCamDevicePrivate;
11 class QtCamViewfinder;
15 class QtCamGStreamerMessageListener;
17 class QtCamCapability;
19 class QtCamDevice : public QObject {
23 QtCamDevice(QtCamConfig *config, const QString& name, const QVariant& id, QObject *parent = 0);
26 bool setViewfinder(QtCamViewfinder *viewfinder);
32 QtCamImageMode *imageMode() const;
33 QtCamVideoMode *videoMode() const;
35 QtCamMode *activeMode() const;
40 QtCamConfig *config() const;
41 QtCamGStreamerMessageListener *listener() const;
44 void error(const QString& message, int code, const QString& debug);
48 void idleStateChanged(bool isIdle);
50 void runningStateChanged(bool running);
53 Q_PRIVATE_SLOT(d_ptr, void _d_error(const QString&, int, const QString&))
54 Q_PRIVATE_SLOT(d_ptr, void _d_started())
55 Q_PRIVATE_SLOT(d_ptr, void _d_stopped())
56 Q_PRIVATE_SLOT(d_ptr, void _d_stopping())
58 friend class QtCamMetaData;
59 friend class QtCamCapability;
61 QtCamDevicePrivate *d_ptr;
64 #endif /* QT_CAM_DEVICE_H */