MythTV master
audiopulsehandler.h
Go to the documentation of this file.
1#ifndef AUDIOPULSEHANDLER_H
2#define AUDIOPULSEHANDLER_H
3
4#include <pulse/pulseaudio.h>
5
6class QThread;
7
9{
10 public:
11 enum PulseAction : std::uint8_t
12 {
16 };
17
18 static bool Suspend(enum PulseAction action);
21
22 ~PulseHandler(void);
23 bool Valid(void);
24
25 pa_context_state m_ctxState {PA_CONTEXT_UNCONNECTED};
26 pa_context *m_ctx {nullptr};
28
29 private:
30 PulseHandler(void) = default;
31 bool Init(void);
32 bool SuspendInternal(bool suspend);
33
34 pa_mainloop *m_loop {nullptr};
35 bool m_initialised {false};
36 bool m_valid {false};
37 QThread *m_thread {nullptr};
38};
39
40#endif // AUDIOPULSEHANDLER_H
pa_context_state m_ctxState
static PulseHandler * g_pulseHandler
pa_mainloop * m_loop
static bool g_pulseHandlerActive
pa_context * m_ctx
QThread * m_thread
static bool Suspend(enum PulseAction action)
PulseHandler(void)=default
bool SuspendInternal(bool suspend)