53 lines
931 B
C++
53 lines
931 B
C++
#ifndef HXVIDEOPIPELINE_H
|
|
#define HXVIDEOPIPELINE_H
|
|
|
|
#include "HxVideoFrame.h"
|
|
#include "HxVideoDevices.h"
|
|
|
|
#include <QQueue>
|
|
#include <QString>
|
|
|
|
class HxVideoPipeline
|
|
{
|
|
public:
|
|
HxVideoPipeline();
|
|
|
|
public:
|
|
/**
|
|
* @brief subscribe
|
|
*/
|
|
void subscribe();
|
|
|
|
/**
|
|
* @brief unsubscribe
|
|
*/
|
|
void unsubscribe();
|
|
|
|
/**
|
|
* @brief set_device_context
|
|
* @param type
|
|
* @param ipAddress
|
|
* @param port
|
|
* @param stream
|
|
*/
|
|
void set_context(QString type, QString address, int port, int channel, int stream);
|
|
|
|
bool subscribe_status();
|
|
|
|
/**
|
|
* @brief equal
|
|
* @param content
|
|
* @return
|
|
*/
|
|
bool equal(HxVideoPipeline *content);
|
|
|
|
virtual void device_stream_callback(HxVideoFrame frame);
|
|
virtual void device_status_callback(ConnectionStatus status);
|
|
|
|
protected:
|
|
QUuid uuid;
|
|
HxVideoDeviceContext context;
|
|
};
|
|
|
|
#endif // HXVIDEOPIPELINE_H
|