]> git.alsa-project.org Git - alsa-gobject.git/commitdiff
timer: event_data: add abstract object to represent data of event
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Sun, 9 Feb 2020 03:20:53 +0000 (12:20 +0900)
committer坂本 貴史 <o-takashi@sakamocchi.jp>
Tue, 11 Feb 2020 04:28:18 +0000 (13:28 +0900)
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
src/timer/alsatimer.map
src/timer/event-data.c [new file with mode: 0644]
src/timer/event-data.h [new file with mode: 0644]
src/timer/meson.build
tests/alsatimer-event-data [new file with mode: 0644]
tests/meson.build

index 4f71b1917842ad70874ae0f3beae83c91c30f250..3300586407dd884a7012afaefb9d73748c102707 100644 (file)
@@ -47,6 +47,8 @@ ALSA_GOBJECT_0_0_0 {
 
     "alsatimer_instance_status_get_type";
     "alsatimer_instance_status_get_timestamp";
+
+    "alsatimer_event_data_get_type";
   local:
     *;
 };
diff --git a/src/timer/event-data.c b/src/timer/event-data.c
new file mode 100644 (file)
index 0000000..4c2f61c
--- /dev/null
@@ -0,0 +1,14 @@
+// SPDX-License-Identifier: LGPL-3.0-or-later
+#include "event-data.h"
+
+G_DEFINE_ABSTRACT_TYPE(ALSATimerEventData, alsatimer_event_data, G_TYPE_OBJECT)
+
+static void alsatimer_event_data_class_init(ALSATimerEventDataClass *klass)
+{
+    return;
+}
+
+static void alsatimer_event_data_init(ALSATimerEventData *self)
+{
+    return;
+}
diff --git a/src/timer/event-data.h b/src/timer/event-data.h
new file mode 100644 (file)
index 0000000..9e550fb
--- /dev/null
@@ -0,0 +1,47 @@
+// SPDX-License-Identifier: LGPL-3.0-or-later
+#ifndef __ALSA_GOBJECT_ALSATIMER_EVENT_DATA__H__
+#define __ALSA_GOBJECT_ALSATIMER_EVENT_DATA__H__
+
+#include <glib.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define ALSATIMER_TYPE_EVENT_DATA   (alsatimer_event_data_get_type())
+
+#define ALSATIMER_EVENT_DATA(obj)                               \
+    (G_TYPE_CHECK_INSTANCE_CAST((obj),                          \
+                                ALSATIMER_TYPE_EVENT_DATA,      \
+                                ALSATimerEventData))
+#define ALSATIMER_IS_EVENT_DATA(obj)                            \
+    (G_TYPE_CHECK_INSTANCE_TYPE((obj),                          \
+                                ALSATIMER_TYPE_EVENT_DATA))
+
+#define ALSATIMER_EVENT_DATA_CLASS(klass)                       \
+    (G_TYPE_CHECK_CLASS_CAST((klass),                           \
+                             ALSATIMER_TYPE_EVENT_DATA,         \
+                             ALSATimerEventDataClass))
+#define ALSATIMER_IS_EVENT_DATA_CLASS(klass)                    \
+    (G_TYPE_CHECK_CLASS_TYPE((klass),                           \
+                             ALSATIMER_TYPE_EVENT_DATA))
+#define ALSATIMER_EVENT_DATA_GET_CLASS(obj)                     \
+    (G_TYPE_INSTANCE_GET_CLASS((obj),                           \
+                               ALSATIMER_TYPE_EVENT_DATA,       \
+                               ALSATimerEventDataClass))
+
+typedef struct _ALSATimerEventData          ALSATimerEventData;
+typedef struct _ALSATimerEventDataClass     ALSATimerEventDataClass;
+
+struct _ALSATimerEventData {
+    GObject parent_instance;
+};
+
+struct _ALSATimerEventDataClass {
+    GObjectClass parent_class;
+};
+
+GType alsatimer_event_data_get_type() G_GNUC_CONST;
+
+G_END_DECLS
+
+#endif
index fa13ae48e72742d2c8d468363edf6b61569ec6ba..9497ef18168dd4b181b235fbd7582daffa5596d6 100644 (file)
@@ -18,6 +18,7 @@ sources = files(
   'instance-info.c',
   'instance-params.c',
   'instance-status.c',
+  'event-data.c',
 )
 
 headers = files(
@@ -30,6 +31,7 @@ headers = files(
   'instance-info.h',
   'instance-params.h',
   'instance-status.h',
+  'event-data.h',
 )
 
 privates = files(
diff --git a/tests/alsatimer-event-data b/tests/alsatimer-event-data
new file mode 100644 (file)
index 0000000..26faf49
--- /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('ALSATimer', '0.0')
+from gi.repository import ALSATimer
+
+target = ALSATimer.EventData
+props = ()
+methods = ()
+signals = ()
+
+if not test(target, props, methods, signals):
+    exit(ENXIO)
index 4b64ec86187085a75be7a16747add65a9a168404..cffcc38f7314afa47efefa9d912610e522e0e423 100644 (file)
@@ -24,6 +24,7 @@ tests = {
     'alsatimer-instance-info',
     'alsatimer-instance-params',
     'alsatimer-instance-status',
+    'alsatimer-event-data',
   ],
 }