summaryrefslogtreecommitdiff
path: root/src/pulsecore/core.h
diff options
context:
space:
mode:
authorArun Raghavan <arun@arunraghavan.net>2016-07-04 13:57:16 +0530
committerArun Raghavan <arun@arunraghavan.net>2016-07-04 13:58:20 +0530
commit17e158dc99ea96a088cbaf3ac01a7ff5e3743759 (patch)
treea0ea3644a98345d933192077b8b9872f3b75cd3a /src/pulsecore/core.h
parenta222a07920731f3c4967faccab7469af50b428a4 (diff)
pulsecore: Move pa_core structure into its own header
The idea is to allow some parts of the code to use pa_core as an opaque structure and access required members via API, over which we can then perform some form of access control Signed-off-by: Arun Raghavan <arun@arunraghavan.net>
Diffstat (limited to 'src/pulsecore/core.h')
-rw-r--r--src/pulsecore/core.h74
1 files changed, 0 insertions, 74 deletions
diff --git a/src/pulsecore/core.h b/src/pulsecore/core.h
index 802111ba1..c7486f9ad 100644
--- a/src/pulsecore/core.h
+++ b/src/pulsecore/core.h
@@ -139,80 +139,6 @@ typedef enum pa_core_hook {
PA_CORE_HOOK_MAX
} pa_core_hook_t;
-/* The core structure of PulseAudio. Every PulseAudio daemon contains
- * exactly one of these. It is used for storing kind of global
- * variables for the daemon. */
-
-struct pa_core {
- pa_msgobject parent;
-
- pa_core_state_t state;
-
- /* A random value which may be used to identify this instance of
- * PulseAudio. Not cryptographically secure in any way. */
- uint32_t cookie;
-
- pa_mainloop_api *mainloop;
-
- /* idxset of all kinds of entities */
- pa_idxset *clients, *cards, *sinks, *sources, *sink_inputs, *source_outputs, *modules, *scache;
-
- /* Some hashmaps for all sorts of entities */
- pa_hashmap *namereg, *shared;
-
- /* The default sink/source */
- pa_source *default_source;
- pa_sink *default_sink;
-
- pa_channel_map default_channel_map;
- pa_sample_spec default_sample_spec;
- uint32_t alternate_sample_rate;
- unsigned default_n_fragments, default_fragment_size_msec;
- unsigned deferred_volume_safety_margin_usec;
- int deferred_volume_extra_delay_usec;
- unsigned lfe_crossover_freq;
-
- pa_defer_event *module_defer_unload_event;
- pa_hashmap *modules_pending_unload; /* pa_module -> pa_module (hashmap-as-a-set) */
-
- pa_defer_event *subscription_defer_event;
- PA_LLIST_HEAD(pa_subscription, subscriptions);
- PA_LLIST_HEAD(pa_subscription_event, subscription_event_queue);
- pa_subscription_event *subscription_event_last;
-
- /* The mempool is used for data we write to, it's readonly for the client. */
- pa_mempool *mempool;
-
- /* Shared memory size, as specified either by daemon configuration
- * or PA daemon defaults (~ 64 MiB). */
- size_t shm_size;
-
- pa_silence_cache silence_cache;
-
- pa_time_event *exit_event;
- pa_time_event *scache_auto_unload_event;
-
- int exit_idle_time, scache_idle_time;
-
- bool flat_volumes:1;
- bool disallow_module_loading:1;
- bool disallow_exit:1;
- bool running_as_daemon:1;
- bool realtime_scheduling:1;
- bool disable_remixing:1;
- bool disable_lfe_remixing:1;
- bool deferred_volume:1;
-
- pa_resample_method_t resample_method;
- int realtime_priority;
-
- pa_server_type_t server_type;
- pa_cpu_info cpu_info;
-
- /* hooks */
- pa_hook hooks[PA_CORE_HOOK_MAX];
-};
-
PA_DECLARE_PUBLIC_CLASS(pa_core);
#define PA_CORE(o) pa_core_cast(o)