玉兔远程控制
0.1.0-bate11
Toggle main menu visibility
载入中...
搜索中...
未找到
Plugins
Player
OperatePlayer.h
1
// Author: Kang Lin <kl222@126.com>
2
3
#ifndef CONNETERPLAYER_H
4
#define CONNETERPLAYER_H
5
6
#pragma once
7
8
#include <QMenu>
9
#include <QMediaPlayer>
10
#include <QMediaRecorder>
11
#if HAVE_QVideoWidget
12
#include "FrmPlayer.h"
13
#endif
14
15
#include "OperateDesktop.h"
16
#include "ParameterPlayer.h"
17
23
class
COperatePlayer :
public
COperateDesktop
24
{
25
Q_OBJECT
26
27
public
:
28
explicit
COperatePlayer(
CPlugin
*plugin);
29
virtual
~COperatePlayer();
30
31
// CConnecter interface
32
public
:
33
[[nodiscard]]
virtual
const
qint16
Version
()
const override
;
34
35
protected
:
36
// CConnecterConnect interface
37
[[nodiscard]]
virtual
CBackend
*
InstanceBackend
()
override
;
38
virtual
int
Initial
()
override
;
39
virtual
int
Clean
()
override
;
40
virtual
int
InitialMenu()
override
;
41
42
Q_SIGNALS:
43
void
sigStart(
bool
bStart);
44
void
sigPause(
bool
bPause);
45
void
sigChangePosition(qint64 pos);
46
47
Q_SIGNALS:
48
void
sigScreenShot();
49
public
Q_SLOTS:
50
virtual
void
slotScreenShot()
override
;
51
52
private
:
53
virtual
QDialog *
OnOpenDialogSettings
(QWidget *parent)
override
;
54
55
private
:
56
CParameterPlayer
m_Parameters;
57
58
#if HAVE_QVideoWidget
59
CFrmPlayer
m_Player;
60
public
:
61
virtual
QWidget *
GetViewer
()
override
;
62
QVideoSink *GetVideoSink();
63
virtual
const
QString
Description
()
override
;
64
public
Q_SLOTS:
65
void
slotPositionChanged(qint64 pos, qint64 duration);
66
void
slotPlaybackStateChanged(QMediaPlayer::PlaybackState state);
67
void
slotPlaybackError(QMediaPlayer::Error error,
const
QString &errorString);
68
#if HAVE_QT6_RECORD
69
void
slotRecordStateChanged(QMediaRecorder::RecorderState state);
70
#endif
71
#else
// #if HAVE_QVideoWidget
72
QAction* m_pPause;
73
#endif
// #if HAVE_QVideoWidget
74
};
75
76
#endif
// CONNETERPLAYER_H
CBackend
后端接口。它由协议插件实现。 它默认启动一个定时器来开启一个非 Qt 事件循环(就是普通的循环处理)。 详见: Start()、 slotTimeOut()、 OnProcess() 。 当然,它仍然支...
定义
Backend.h:52
CFrmPlayer
定义
FrmPlayer.h:14
COperateDesktop::COperateDesktop
COperateDesktop(CPlugin *plugin)
COperateDesktop::GetViewer
virtual QWidget * GetViewer() override
得到显示视图
定义
OperateDesktop.cpp:379
COperateDesktop::Description
virtual const QString Description() override
[The name of the desktop operate]
定义
OperateDesktop.cpp:120
COperatePlayer::Clean
virtual int Clean() override
Clean parameters and resource
定义
OperatePlayer.cpp:176
COperatePlayer::InstanceBackend
virtual CBackend * InstanceBackend() override
新建后端实例。它的所有者是调用者, 如果调用者不再使用它,调用者必须负责释放它。
定义
OperatePlayer.cpp:190
COperatePlayer::Initial
virtual int Initial() override
Initial parameters and resource
定义
OperatePlayer.cpp:27
COperatePlayer::Version
virtual const qint16 Version() const override
[The description of the desktop operate]
定义
OperatePlayer.cpp:22
COperatePlayer::OnOpenDialogSettings
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
得到设置对话框
定义
OperatePlayer.cpp:184
CParameterPlayer
定义
ParameterPlayer.h:9
CPlugin
插件接口
定义
Plugin.h:15
作者:康林 (kl222@126.com)
版权所有(c) 康林工作室 保留所有权力