1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
qTox/videosource.h

28 lines
561 B
C
Raw Normal View History

2014-10-07 22:59:21 +08:00
#ifndef VIDEOSOURCE_H
#define VIDEOSOURCE_H
2014-10-08 20:25:32 +08:00
#include <QObject>
2014-10-07 22:59:21 +08:00
#include <QSize>
2014-10-08 20:25:32 +08:00
class VideoSource : public QObject
2014-10-07 22:59:21 +08:00
{
2014-10-08 20:25:32 +08:00
Q_OBJECT
2014-10-07 22:59:21 +08:00
public:
2014-10-08 20:25:32 +08:00
virtual void* getData() = 0; // a pointer to a frame
virtual int getDataSize() = 0; // size of a frame in bytes
virtual void lock() = 0; // locks a frame so that it can't change
2014-10-07 22:59:21 +08:00
virtual void unlock() = 0;
2014-10-08 20:25:32 +08:00
virtual QSize resolution() = 0; // resolution of a frame
2014-10-07 22:59:21 +08:00
virtual void subscribe() = 0;
virtual void unsubscribe() = 0;
2014-10-08 20:25:32 +08:00
signals:
void frameAvailable();
2014-10-07 22:59:21 +08:00
};
#endif // VIDEOSOURCE_H