Music Hub  ..
A session-wide music playback service
audio::PulseAudioOutputObserver::Private Struct Reference
+ Collaboration diagram for audio::PulseAudioOutputObserver::Private:

Public Member Functions

 Private (const audio::PulseAudioOutputObserver::Configuration &config)
 
void on_context_ready ()
 
void on_context_failed ()
 
void on_sink_event_with_index (std::int32_t index)
 
void on_query_for_active_sink_finished (const pa_sink_info *info)
 
void on_query_for_primary_sink_finished (const pa_sink_info *info)
 
void on_query_for_server_info_finished (const pa_server_info *info)
 

Static Public Member Functions

static void context_notification_cb (pa_context *ctxt, void *cookie)
 
static void context_subscription_cb (pa_context *ctxt, pa_subscription_event_type_t ev, uint32_t idx, void *cookie)
 
static void query_for_active_sink_finished (pa_context *ctxt, const pa_sink_info *si, int eol, void *cookie)
 
static void query_for_primary_sink_finished (pa_context *ctxt, const pa_sink_info *si, int eol, void *cookie)
 
static void query_for_server_info_finished (pa_context *ctxt, const pa_server_info *si, void *cookie)
 

Public Attributes

PulseAudioOutputObserver::Configuration config
 
pa::ThreadedMainLoopPtr main_loop
 
pa::ContextPtr context
 
std::int32_t primary_sink_index
 
std::tuple< uint32_t, std::string > active_sink
 
std::vector< std::tuple< std::regex, core::Property< media::audio::OutputState > > > outputs
 
struct {
   core::Property< std::string >   sink
 
   core::Property< std::set< audio::PulseAudioOutputObserver::Reporter::Port > >   known_ports
 
   core::Property< audio::OutputState >   external_output_state {audio::OutputState::Speaker}
 
properties
 

Detailed Description

Definition at line 148 of file pulse_audio_output_observer.cpp.

Constructor & Destructor Documentation

◆ Private()

audio::PulseAudioOutputObserver::Private::Private ( const audio::PulseAudioOutputObserver::Configuration &  config)
inline

Definition at line 237 of file pulse_audio_output_observer.cpp.

References MH_DEBUG.

Member Function Documentation

◆ context_notification_cb()

static void audio::PulseAudioOutputObserver::Private::context_notification_cb ( pa_context *  ctxt,
void *  cookie 
)
inlinestatic

Definition at line 150 of file pulse_audio_output_observer.cpp.

◆ context_subscription_cb()

static void audio::PulseAudioOutputObserver::Private::context_subscription_cb ( pa_context *  ctxt,
pa_subscription_event_type_t  ev,
uint32_t  idx,
void *  cookie 
)
inlinestatic

Definition at line 173 of file pulse_audio_output_observer.cpp.

◆ on_context_failed()

void audio::PulseAudioOutputObserver::Private::on_context_failed ( )
inline

Definition at line 285 of file pulse_audio_output_observer.cpp.

◆ on_context_ready()

void audio::PulseAudioOutputObserver::Private::on_context_ready ( )
inline

Definition at line 263 of file pulse_audio_output_observer.cpp.

◆ on_query_for_active_sink_finished()

void audio::PulseAudioOutputObserver::Private::on_query_for_active_sink_finished ( const pa_sink_info *  info)
inline

Definition at line 300 of file pulse_audio_output_observer.cpp.

◆ on_query_for_primary_sink_finished()

void audio::PulseAudioOutputObserver::Private::on_query_for_primary_sink_finished ( const pa_sink_info *  info)
inline

Definition at line 314 of file pulse_audio_output_observer.cpp.

References MH_INFO.

◆ on_query_for_server_info_finished()

void audio::PulseAudioOutputObserver::Private::on_query_for_server_info_finished ( const pa_server_info *  info)
inline

Definition at line 366 of file pulse_audio_output_observer.cpp.

◆ on_sink_event_with_index()

void audio::PulseAudioOutputObserver::Private::on_sink_event_with_index ( std::int32_t  index)
inline

Definition at line 291 of file pulse_audio_output_observer.cpp.

◆ query_for_active_sink_finished()

static void audio::PulseAudioOutputObserver::Private::query_for_active_sink_finished ( pa_context *  ctxt,
const pa_sink_info *  si,
int  eol,
void *  cookie 
)
inlinestatic

Definition at line 189 of file pulse_audio_output_observer.cpp.

◆ query_for_primary_sink_finished()

static void audio::PulseAudioOutputObserver::Private::query_for_primary_sink_finished ( pa_context *  ctxt,
const pa_sink_info *  si,
int  eol,
void *  cookie 
)
inlinestatic

Definition at line 205 of file pulse_audio_output_observer.cpp.

◆ query_for_server_info_finished()

static void audio::PulseAudioOutputObserver::Private::query_for_server_info_finished ( pa_context *  ctxt,
const pa_server_info *  si,
void *  cookie 
)
inlinestatic

Definition at line 221 of file pulse_audio_output_observer.cpp.

Member Data Documentation

◆ active_sink

std::tuple<uint32_t, std::string> audio::PulseAudioOutputObserver::Private::active_sink

Definition at line 395 of file pulse_audio_output_observer.cpp.

◆ config

PulseAudioOutputObserver::Configuration audio::PulseAudioOutputObserver::Private::config

Definition at line 391 of file pulse_audio_output_observer.cpp.

◆ context

pa::ContextPtr audio::PulseAudioOutputObserver::Private::context

Definition at line 393 of file pulse_audio_output_observer.cpp.

◆ external_output_state

core::Property<audio::OutputState> audio::PulseAudioOutputObserver::Private::external_output_state {audio::OutputState::Speaker}

Definition at line 402 of file pulse_audio_output_observer.cpp.

◆ known_ports

core::Property<std::set<audio::PulseAudioOutputObserver::Reporter::Port> > audio::PulseAudioOutputObserver::Private::known_ports

Definition at line 401 of file pulse_audio_output_observer.cpp.

◆ main_loop

pa::ThreadedMainLoopPtr audio::PulseAudioOutputObserver::Private::main_loop

Definition at line 392 of file pulse_audio_output_observer.cpp.

◆ outputs

std::vector<std::tuple<std::regex, core::Property<media::audio::OutputState> > > audio::PulseAudioOutputObserver::Private::outputs

Definition at line 396 of file pulse_audio_output_observer.cpp.

◆ primary_sink_index

std::int32_t audio::PulseAudioOutputObserver::Private::primary_sink_index

Definition at line 394 of file pulse_audio_output_observer.cpp.

◆ properties

struct { ... } audio::PulseAudioOutputObserver::Private::properties

◆ sink

core::Property<std::string> audio::PulseAudioOutputObserver::Private::sink

Definition at line 400 of file pulse_audio_output_observer.cpp.


The documentation for this struct was generated from the following file: