AlarmNotifications
PANDA Slow Control Alarm Daemon
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
beedo.h
Go to the documentation of this file.
1
34
#include "
oldgcccompat.h
"
// Compatibilty macros for GCC < 4.7
35
36
#ifndef BEEDO_H
37
#define BEEDO_H
38
39
#include <phononnamespace.h>
40
#include <Path>
41
// Forward declaration of Phonon classes
42
namespace
Phonon
43
{
44
class
AudioOutput;
45
class
MediaObject;
46
class
VideoWidget;
47
}
48
49
#include <QObject>
50
#include <QWidget>
51
#ifdef BEEDOOLDQTFALLBACK
52
#include <QBuffer>
53
#endif
54
55
namespace
AlarmNotifications
56
{
57
71
class
Beedo
:
public
QObject
72
{
73
Q_OBJECT
74
private
:
80
bool
_go
;
86
QWidget*
_display
;
92
Phonon::AudioOutput*
_audio
;
98
Phonon::MediaObject*
_media
;
104
Phonon::VideoWidget*
_video
;
110
Phonon::Path
_mediaToAudio
;
116
Phonon::Path
_mediaToVideo
;
117
#ifdef BEEDOOLDQTFALLBACK
118
QBuffer _videobuffer;
119
#endif
120
126
Beedo
();
133
void
start_internal
()
noexcept
;
142
void
stop_internal
()
noexcept
;
151
void
createMediaObjects
();
158
void
destroyMediaObjects
();
159
private slots:
166
void
playAlarmVideo
();
173
void
stopAlarmVideo
();
182
void
phononStateChange
( const Phonon::State newState, const Phonon::State oldState );
183
public:
190
static
Beedo
&
instance
();
199
inline static
void
start
() noexcept
200
{
201
Beedo::instance
().
start_internal
();
202
}
211
inline
static
void
stop
()
noexcept
212
{
213
Beedo::instance
().
stop_internal
();
214
}
222
virtual
~Beedo
();
229
Beedo
(
const
Beedo
& other ) =
delete
;
236
Beedo
(
Beedo
&& other ) =
delete
;
244
Beedo
&
operator=
(
const
Beedo
& other ) =
delete
;
252
Beedo
&
operator=
(
Beedo
&& other ) =
delete
;
259
void
destroy
();
260
signals:
267
void
signalPlay
();
274
void
signalStop
();
275
};
276
277
}
278
279
#endif // BEEDO_H
Generated by
1.8.3.1