[pulseaudio-discuss] [PATCH 1/2] core: Add functions that return the logical name of the state of sinks and sink inputs.
Jarkko Suontausta
jarkko.suontausta at digia.com
Thu May 24 03:43:25 PDT 2012
---
src/pulsecore/sink-input.h | 12 ++++++++++++
src/pulsecore/sink.h | 13 +++++++++++++
2 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/src/pulsecore/sink-input.h b/src/pulsecore/sink-input.h
index af2177a..e46c77c 100644
--- a/src/pulsecore/sink-input.h
+++ b/src/pulsecore/sink-input.h
@@ -42,9 +42,21 @@ typedef enum pa_sink_input_state {
PA_SINK_INPUT_RUNNING, /*< The stream is alive and kicking */
PA_SINK_INPUT_CORKED, /*< The stream was corked on user request */
PA_SINK_INPUT_UNLINKED /*< The stream is dead */
+ /* NOTE: if new states are added, remember to update pa_sink_input_state_to_string function as well */
/* FIXME: we need a state for MOVING here */
} pa_sink_input_state_t;
+static inline const char* pa_sink_input_state_to_string(pa_sink_input_state_t x) {
+ switch(x) {
+ case PA_SINK_INPUT_INIT: return "INIT";
+ case PA_SINK_INPUT_DRAINED: return "DRAINED";
+ case PA_SINK_INPUT_RUNNING: return "RUNNING";
+ case PA_SINK_INPUT_CORKED: return "CORKED";
+ case PA_SINK_INPUT_UNLINKED: return "UNLINKED";
+ default: pa_assert_not_reached();
+ }
+}
+
static inline pa_bool_t PA_SINK_INPUT_IS_LINKED(pa_sink_input_state_t x) {
return x == PA_SINK_INPUT_DRAINED || x == PA_SINK_INPUT_RUNNING || x == PA_SINK_INPUT_CORKED;
}
diff --git a/src/pulsecore/sink.h b/src/pulsecore/sink.h
index 0b5048a..466e84e 100644
--- a/src/pulsecore/sink.h
+++ b/src/pulsecore/sink.h
@@ -55,6 +55,19 @@ static inline pa_bool_t PA_SINK_IS_LINKED(pa_sink_state_t x) {
return x == PA_SINK_RUNNING || x == PA_SINK_IDLE || x == PA_SINK_SUSPENDED;
}
+/* Returns the logical name of pa_sink_state_t */
+static inline const char* pa_sink_state_to_string(pa_sink_state_t x) {
+ switch(x) {
+ case PA_SINK_INVALID_STATE: return "INVALID";
+ case PA_SINK_RUNNING: return "RUNNING";
+ case PA_SINK_IDLE: return "IDLE";
+ case PA_SINK_SUSPENDED: return "SUSPENDED";
+ case PA_SINK_INIT: return "INIT";
+ case PA_SINK_UNLINKED: return "UNLINKED";
+ default: pa_assert_not_reached();
+ }
+}
+
/* A generic definition for void callback functions */
typedef void(*pa_sink_cb_t)(pa_sink *s);
--
1.7.0.4
More information about the pulseaudio-discuss
mailing list