]> git.alsa-project.org Git - alsa-gobject.git/commitdiff
seq: queue_info: add object to represent information of queue
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Wed, 20 Nov 2019 08:03:37 +0000 (17:03 +0900)
committer坂本 貴史 <o-takashi@sakamocchi.jp>
Tue, 7 Apr 2020 08:08:24 +0000 (17:08 +0900)
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
src/seq/alsaseq.map
src/seq/meson.build
src/seq/privates.h
src/seq/queue-info.c [new file with mode: 0644]
src/seq/queue-info.h [new file with mode: 0644]
tests/alsaseq-queue-info [new file with mode: 0644]
tests/meson.build

index f4ee99d9c7153a78397ef102f6c621694af7cc29..105a1febd936756b6b56477deba905387b6cb6e7 100644 (file)
@@ -130,6 +130,8 @@ ALSA_GOBJECT_0_0_0 {
 
     "alsaseq_subscribe_data_get_type";
     "alsaseq_subscribe_data_new";
+
+    "alsaseq_queue_info_get_type";
   local:
     *;
 };
index ea37cf584aaa18f14aefaa0419a162faee223bf1..c3a27ac33484138b9b2607aa3dd53d76321710f0 100644 (file)
@@ -26,6 +26,7 @@ sources = files(
   'event-data-queue.c',
   'event-data-connect.c',
   'subscribe-data.c',
+  'queue-info.c',
 )
 
 headers = files(
@@ -46,6 +47,7 @@ headers = files(
   'event-data-queue.h',
   'event-data-connect.h',
   'subscribe-data.h',
+  'queue-info.h',
 )
 
 privates = files(
index 78e957cb89ff6645e87b86b622a85de929a6f4b7..1b5c37030aa93d7d672a03fb63ebfbeda768b8b5 100644 (file)
@@ -13,6 +13,7 @@
 #include "client-pool.h"
 #include "event.h"
 #include "subscribe-data.h"
+#include "queue-info.h"
 
 #include <sound/asequencer.h>
 
diff --git a/src/seq/queue-info.c b/src/seq/queue-info.c
new file mode 100644 (file)
index 0000000..2ba1377
--- /dev/null
@@ -0,0 +1,14 @@
+// SPDX-License-Identifier: LGPL-3.0-or-later
+#include "queue-info.h"
+
+G_DEFINE_TYPE(ALSASeqQueueInfo, alsaseq_queue_info, G_TYPE_OBJECT)
+
+static void alsaseq_queue_info_class_init(ALSASeqQueueInfoClass *klass)
+{
+    return;
+}
+
+static void alsaseq_queue_info_init(ALSASeqQueueInfo *self)
+{
+    return;
+}
diff --git a/src/seq/queue-info.h b/src/seq/queue-info.h
new file mode 100644 (file)
index 0000000..aa2bcad
--- /dev/null
@@ -0,0 +1,47 @@
+// SPDX-License-Identifier: LGPL-3.0-or-later
+#ifndef __ALSA_GOBJECT_ALSASEQ_QUEUE_INFO__H__
+#define __ALSA_GOBJECT_ALSASEQ_QUEUE_INFO__H__
+
+#include <glib.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define ALSASEQ_TYPE_QUEUE_INFO     (alsaseq_queue_info_get_type())
+
+#define ALSASEQ_QUEUE_INFO(obj)                             \
+    (G_TYPE_CHECK_INSTANCE_CAST((obj),                      \
+                                ALSASEQ_TYPE_QUEUE_INFO,    \
+                                ALSASeqQueueInfo))
+#define ALSASEQ_IS_QUEUE_INFO(obj)                          \
+    (G_TYPE_CHECK_INSTANCE_TYPE((obj),                      \
+                                ALSASEQ_TYPE_QUEUE_INFO))
+
+#define ALSASEQ_QUEUE_INFO_CLASS(klass)                     \
+    (G_TYPE_CHECK_CLASS_CAST((klass),                       \
+                             ALSASEQ_TYPE_QUEUE_INFO,       \
+                             ALSASeqQueueInfoClass))
+#define ALSASEQ_IS_QUEUE_INFO_CLASS(klass)                  \
+    (G_TYPE_CHECK_CLASS_TYPE((klass),                       \
+                             ALSASEQ_TYPE_QUEUE_INFO))
+#define ALSASEQ_QUEUE_INFO_GET_CLASS(obj)                   \
+    (G_TYPE_INSTANCE_GET_CLASS((obj),                       \
+                               ALSASEQ_TYPE_QUEUE_INFO,     \
+                               ALSASeqQueueInfoClass))
+
+typedef struct _ALSASeqQueueInfo            ALSASeqQueueInfo;
+typedef struct _ALSASeqQueueInfoClass       ALSASeqQueueInfoClass;
+
+struct _ALSASeqQueueInfo {
+    GObject parent_instance;
+};
+
+struct _ALSASeqQueueInfoClass {
+    GObjectClass parent_class;
+};
+
+GType alsaseq_queue_info_get_type() G_GNUC_CONST;
+
+G_END_DECLS
+
+#endif
diff --git a/tests/alsaseq-queue-info b/tests/alsaseq-queue-info
new file mode 100644 (file)
index 0000000..ec38757
--- /dev/null
@@ -0,0 +1,18 @@
+#!/usr/bin/env python3
+
+from sys import exit
+from errno import ENXIO
+
+from helper import test
+
+import gi
+gi.require_version('ALSASeq', '0.0')
+from gi.repository import ALSASeq
+
+target = ALSASeq.QueueInfo()
+props = ()
+methods = ()
+signals = ()
+
+if not test(target, props, methods, signals):
+    exit(ENXIO)
index 0524e43fb6576cfe4d429047d2f21507fc97c60f..274da5827feef23ae30683cc2dd6ee7b2913a668 100644 (file)
@@ -39,6 +39,7 @@ tests = {
     'alsaseq-event-fixed',
     'alsaseq-event-variable',
     'alsaseq-subscribe-data',
+    'alsaseq-queue-info',
   ],
 }