From: Takashi Sakamoto Date: Sun, 9 Feb 2020 03:20:53 +0000 (+0900) Subject: timer: event_data: add abstract object to represent data of event X-Git-Tag: v0.1.0~335 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=698d6ff169179866634454863359d61dea988d84;p=alsa-gobject.git timer: event_data: add abstract object to represent data of event Signed-off-by: Takashi Sakamoto --- diff --git a/src/timer/alsatimer.map b/src/timer/alsatimer.map index 4f71b19..3300586 100644 --- a/src/timer/alsatimer.map +++ b/src/timer/alsatimer.map @@ -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 index 0000000..4c2f61c --- /dev/null +++ b/src/timer/event-data.c @@ -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 index 0000000..9e550fb --- /dev/null +++ b/src/timer/event-data.h @@ -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 +#include + +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 diff --git a/src/timer/meson.build b/src/timer/meson.build index fa13ae4..9497ef1 100644 --- a/src/timer/meson.build +++ b/src/timer/meson.build @@ -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 index 0000000..26faf49 --- /dev/null +++ b/tests/alsatimer-event-data @@ -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) diff --git a/tests/meson.build b/tests/meson.build index 4b64ec8..cffcc38 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -24,6 +24,7 @@ tests = { 'alsatimer-instance-info', 'alsatimer-instance-params', 'alsatimer-instance-status', + 'alsatimer-event-data', ], }