summaryrefslogtreecommitdiffstats
path: root/sys/sunaudio/gstsunaudiomixeroptions.h
diff options
context:
space:
mode:
authorJan Schmidt <jan.schmidt@sun.com>2009-06-04 12:27:19 +0100
committerJan Schmidt <jan.schmidt@sun.com>2009-06-05 10:47:53 +0100
commit0fc43060e5e10e5a9fc24487d9fcb3e2865c0895 (patch)
treea3b2d302dcefdd91a26a55609351525a3ad4a6d5 /sys/sunaudio/gstsunaudiomixeroptions.h
parent29111fa1f8208c3ae1896d5934e5a2ff5839aa98 (diff)
sunaudio: Support new flags for options and actions
Use new audio mixer flags added in Base 0.10.23 to expose flags and options on the SunAudio devices. Fixes: #583593 Patch By: Brian Cameron <brian.cameron@sun.com> Patch By: Garrett D'Amore <garrett.damore@sun.com>
Diffstat (limited to 'sys/sunaudio/gstsunaudiomixeroptions.h')
-rw-r--r--sys/sunaudio/gstsunaudiomixeroptions.h65
1 files changed, 65 insertions, 0 deletions
diff --git a/sys/sunaudio/gstsunaudiomixeroptions.h b/sys/sunaudio/gstsunaudiomixeroptions.h
new file mode 100644
index 00000000..fb02b46e
--- /dev/null
+++ b/sys/sunaudio/gstsunaudiomixeroptions.h
@@ -0,0 +1,65 @@
+/*
+ * GStreamer SunAudio mixer track implementation
+ * Copyright (C) 2009 Sun Microsystems, Inc.,
+ * Brian Cameron <brian.cameron@sun.com>
+ * Garrett D'Amore <garrett.damore@sun.com>
+ *
+ * gstsunaudiomixeroptions.h: Sun Audio mixer options object
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ */
+
+#ifndef __GST_SUNAUDIO_MIXER_OPTIONS_H__
+#define __GST_SUNAUDIO_MIXER_OPTIONS_H__
+
+
+#include "gstsunaudiomixer.h"
+#include <gst/interfaces/mixeroptions.h>
+
+
+G_BEGIN_DECLS
+
+
+#define GST_SUNAUDIO_MIXER_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_SUNAUDIO_MIXER_OPTIONS, GstSunAudioMixerOptions))
+#define GST_SUNAUDIO_MIXER_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_SUNAUDIO_MIXER_OPTIONS, GstSunAudioMixerOptionsClass))
+#define GST_IS_SUNAUDIO_MIXER_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_SUNAUDIO_MIXER_OPTIONS))
+#define GST_IS_SUNAUDIO_MIXER_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_SUNAUDIO_MIXER_OPTIONS))
+#define GST_TYPE_SUNAUDIO_MIXER_OPTIONS (gst_sunaudiomixer_options_get_type())
+
+
+typedef struct _GstSunAudioMixerOptions GstSunAudioMixerOptions;
+typedef struct _GstSunAudioMixerOptionsClass GstSunAudioMixerOptionsClass;
+
+
+struct _GstSunAudioMixerOptions {
+ GstMixerOptions parent;
+ gint track_num;
+ GQuark names[8]; /* only 8 possible */
+ gint avail; /* mask of avail */
+};
+
+struct _GstSunAudioMixerOptionsClass {
+ GstMixerOptionsClass parent;
+};
+
+
+GType gst_sunaudiomixer_options_get_type (void);
+GstMixerOptions *gst_sunaudiomixer_options_new (GstSunAudioMixerCtrl *mixer, gint track_num);
+
+
+G_END_DECLS
+
+
+#endif /* __GST_SUNAUDIO_MIXER_OPTIONS_H__ */