vdr-plugin-softhddevice-drm-gles
1.6.2
event.h
Go to the documentation of this file.
1
// SPDX-License-Identifier: AGPL-3.0-or-later
2
10
#ifndef __EVENT_H
11
#define __EVENT_H
12
13
#include <variant>
14
#include <vdr/tools.h>
15
25
enum
BufferUnderrunType
{
26
VIDEO
,
27
AUDIO
,
28
};
29
30
enum
PipState
{
31
PIPSTART
,
32
PIPSTOP
,
33
PIPTOGGLE
,
34
PIPCHANUP
,
35
PIPCHANDOWN
,
36
PIPCHANSWAP
,
37
PIPSIZECHANGE
,
38
PIPSWAPPOSITION
39
};
40
41
struct
PlayEvent
{};
42
struct
PauseEvent
{};
43
struct
StopEvent
{};
44
struct
TrickSpeedEvent
{
45
double
speed
;
46
bool
active
;
47
bool
forward
;
48
};
49
struct
StillPictureEvent
{
50
const
uchar
*
data
;
51
int
size
;
52
};
53
struct
DetachEvent
{};
54
struct
AttachEvent
{};
55
struct
BufferUnderrunEvent
{
56
BufferUnderrunType
type
;
57
};
58
struct
BufferingThresholdReachedEvent
{};
59
struct
PipEvent
{
60
PipState
state
;
61
};
62
struct
ScheduleResyncAtPtsMsEvent
{
63
int64_t
pts
;
64
};
65
struct
ResyncEvent
{};
66
67
using
Event
= std::variant<
68
PlayEvent
,
69
PauseEvent
,
70
StopEvent
,
71
TrickSpeedEvent
,
72
StillPictureEvent
,
73
DetachEvent
,
74
AttachEvent
,
75
BufferUnderrunEvent
,
76
BufferingThresholdReachedEvent
,
77
PipEvent
,
78
ScheduleResyncAtPtsMsEvent
,
79
ResyncEvent
80
>;
81
85
class
IEventReceiver
{
86
public
:
87
virtual
void
OnEventReceived
(
const
Event
&) = 0;
88
};
89
92
#endif
IEventReceiver
Event Receiver.
Definition
event.h:85
IEventReceiver::OnEventReceived
virtual void OnEventReceived(const Event &)=0
PipState
PipState
Definition
event.h:30
PIPSTOP
@ PIPSTOP
Definition
event.h:32
PIPSWAPPOSITION
@ PIPSWAPPOSITION
Definition
event.h:38
PIPCHANSWAP
@ PIPCHANSWAP
Definition
event.h:36
PIPTOGGLE
@ PIPTOGGLE
Definition
event.h:33
PIPCHANUP
@ PIPCHANUP
Definition
event.h:34
PIPSTART
@ PIPSTART
Definition
event.h:31
PIPSIZECHANGE
@ PIPSIZECHANGE
Definition
event.h:37
PIPCHANDOWN
@ PIPCHANDOWN
Definition
event.h:35
Event
std::variant< PlayEvent, PauseEvent, StopEvent, TrickSpeedEvent, StillPictureEvent, DetachEvent, AttachEvent, BufferUnderrunEvent, BufferingThresholdReachedEvent, PipEvent, ScheduleResyncAtPtsMsEvent, ResyncEvent > Event
Definition
event.h:80
BufferUnderrunType
BufferUnderrunType
Definition
event.h:25
VIDEO
@ VIDEO
Definition
event.h:26
AUDIO
@ AUDIO
Definition
event.h:27
AttachEvent
Definition
event.h:54
BufferUnderrunEvent
Definition
event.h:55
BufferUnderrunEvent::type
BufferUnderrunType type
Definition
event.h:56
BufferingThresholdReachedEvent
Definition
event.h:58
DetachEvent
Definition
event.h:53
PauseEvent
Definition
event.h:42
PipEvent
Definition
event.h:59
PipEvent::state
PipState state
Definition
event.h:60
PlayEvent
Definition
event.h:41
ResyncEvent
Definition
event.h:65
ScheduleResyncAtPtsMsEvent
Definition
event.h:62
ScheduleResyncAtPtsMsEvent::pts
int64_t pts
Definition
event.h:63
StillPictureEvent
Definition
event.h:49
StillPictureEvent::data
const uchar * data
Definition
event.h:50
StillPictureEvent::size
int size
Definition
event.h:51
StopEvent
Definition
event.h:43
TrickSpeedEvent
Definition
event.h:44
TrickSpeedEvent::speed
double speed
Definition
event.h:45
TrickSpeedEvent::active
bool active
Definition
event.h:46
TrickSpeedEvent::forward
bool forward
Definition
event.h:47
vector
Definition
drmhdr.h:33
event.h
Generated by
1.9.8