summaryrefslogtreecommitdiffstats
path: root/src/pulse/sample.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-05-25 23:49:47 +0200
committerLennart Poettering <lennart@poettering.net>2009-05-25 23:49:47 +0200
commit346a708c2c079e646ced407ea15b1475ae9129ad (patch)
tree59165ee8221f69c8d873291ffcf3e889843dfaf8 /src/pulse/sample.h
parent3533599579b64d7124451bd60ea57c6f70dd9f35 (diff)
sample: introduce pa_sample_format_is_{le,be,ne,re}()
Diffstat (limited to 'src/pulse/sample.h')
-rw-r--r--src/pulse/sample.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/pulse/sample.h b/src/pulse/sample.h
index 138f13cf..53d7dea3 100644
--- a/src/pulse/sample.h
+++ b/src/pulse/sample.h
@@ -305,6 +305,26 @@ char* pa_sample_spec_snprint(char *s, size_t l, const pa_sample_spec *spec);
/** Pretty print a byte size value. (i.e. "2.5 MiB") */
char* pa_bytes_snprint(char *s, size_t l, unsigned v);
+/** Return 1 when the specified format is little endian, return -1
+ * when endianess does not apply to this format. \since 0.9.16 */
+int pa_sample_format_is_le(pa_sample_format_t f) PA_GCC_PURE;
+
+/** Return 1 when the specified format is big endian, return -1 when
+ * endianess does not apply to this format. \since 0.9.16 */
+int pa_sample_format_is_be(pa_sample_format_t f) PA_GCC_PURE;
+
+#ifdef WORDS_BIGENDIAN
+#define pa_sample_format_is_ne(f) pa_sample_format_is_be(f)
+#define pa_sample_format_is_re(f) pa_sample_format_is_le(f)
+#else
+/** Return 1 when the specified format is native endian, return -1
+ * when endianess does not apply to this format. \since 0.9.16 */
+#define pa_sample_format_is_ne(f) pa_sample_format_is_le(f)
+/** Return 1 when the specified format is reverse endian, return -1
+ * when endianess does not apply to this format. \since 0.9.16 */
+#define pa_sample_format_is_re(f) pa_sample_format_is_be(f)
+#endif
+
PA_C_DECL_END
#endif