vdr-plugin-softhddevice-drm-gles 1.6.4-d0291bb
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
16/********************************************************************************
17 * Event Handler
18 *
19 * Controls the state machine.
20 *******************************************************************************/
21
31
42
43struct PlayEvent {};
44struct PauseEvent {};
45struct StopEvent {};
47 double speed;
48 bool active;
49 bool forward;
50};
52 const uchar *data;
53 int size;
54};
55struct DetachEvent {};
56struct AttachEvent {};
61struct PipEvent {
63};
67struct ResyncEvent {};
68
69using Event = std::variant<
82>;
83
92public:
93 virtual void OnEventReceived(const Event&) = 0;
94};
95
96#endif
Event Receiver.
Definition event.h:91
virtual void OnEventReceived(const Event &)=0
PipState
Definition event.h:32
std::variant< PlayEvent, PauseEvent, StopEvent, TrickSpeedEvent, StillPictureEvent, DetachEvent, AttachEvent, BufferUnderrunEvent, BufferingThresholdReachedEvent, PipEvent, ScheduleResyncAtPtsMsEvent, ResyncEvent > Event
Definition event.h:82
BufferUnderrunType
Definition event.h:27
@ PIPSTOP
Definition event.h:34
@ PIPSWAPPOSITION
Definition event.h:40
@ PIPCHANSWAP
Definition event.h:38
@ PIPTOGGLE
Definition event.h:35
@ PIPCHANUP
Definition event.h:36
@ PIPSTART
Definition event.h:33
@ PIPSIZECHANGE
Definition event.h:39
@ PIPCHANDOWN
Definition event.h:37
@ VIDEO
Definition event.h:28
@ AUDIO
Definition event.h:29
BufferUnderrunType type
Definition event.h:58
PipState state
Definition event.h:62
const uchar * data
Definition event.h:52
double speed
Definition event.h:47
bool active
Definition event.h:48
bool forward
Definition event.h:49