From: Takashi Sakamoto Date: Wed, 1 Apr 2020 09:13:28 +0000 (+0900) Subject: seq: event_fixed: add GObject object for event with fixed length data X-Git-Tag: v0.1.0~281 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=a8ce34a83502fa0893d5dee2c799a741835b78ff;p=alsa-gobject.git seq: event_fixed: add GObject object for event with fixed length data Signed-off-by: Takashi Sakamoto --- diff --git a/src/seq/alsaseq.map b/src/seq/alsaseq.map index 69e8599..2ca157f 100644 --- a/src/seq/alsaseq.map +++ b/src/seq/alsaseq.map @@ -60,6 +60,8 @@ ALSA_GOBJECT_0_0_0 { "alsaseq_tstamp_set_real_time"; "alsaseq_event_get_type"; + + "alsaseq_event_fixed_get_type"; local: *; }; diff --git a/src/seq/event-fixed.c b/src/seq/event-fixed.c new file mode 100644 index 0000000..105c361 --- /dev/null +++ b/src/seq/event-fixed.c @@ -0,0 +1,14 @@ +// SPDX-License-Identifier: LGPL-3.0-or-later +#include "event-fixed.h" + +G_DEFINE_TYPE(ALSASeqEventFixed, alsaseq_event_fixed, ALSASEQ_TYPE_EVENT) + +static void alsaseq_event_fixed_class_init(ALSASeqEventFixedClass *klass) +{ + return; +} + +static void alsaseq_event_fixed_init(ALSASeqEventFixed *self) +{ + return; +} diff --git a/src/seq/event-fixed.h b/src/seq/event-fixed.h new file mode 100644 index 0000000..aabc7e6 --- /dev/null +++ b/src/seq/event-fixed.h @@ -0,0 +1,49 @@ +// SPDX-License-Identifier: LGPL-3.0-or-later +#ifndef __ALSA_GOBJECT_ALSASEQ_EVENT_FIXED_H__ +#define __ALSA_GOBJECT_ALSASEQ_EVENT_FIXED_H__ + +#include +#include + +#include + +G_BEGIN_DECLS + +#define ALSASEQ_TYPE_EVENT_FIXED (alsaseq_event_fixed_get_type()) + +#define ALSASEQ_EVENT_FIXED(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST((obj), \ + ALSASEQ_TYPE_EVENT_FIXED, \ + ALSASeqEventFixed)) +#define ALSASEQ_IS_EVENT_FIXED(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ + ALSASEQ_TYPE_EVENT_FIXED)) + +#define ALSASEQ_EVENT_FIXED_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_CAST((klass), \ + ALSASEQ_TYPE_EVENT_FIXED, \ + ALSASeqEventFixedClass)) +#define ALSASEQ_IS_EVENT_FIXED_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_TYPE((klass), \ + ALSASEQ_TYPE_EVENT_FIXED)) +#define ALSASEQ_EVENT_FIXED_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS((obj), \ + ALSASEQ_TYPE_EVENT_FIXED, \ + ALSASeqEventFixedClass)) + +typedef struct _ALSASeqEventFixed ALSASeqEventFixed; +typedef struct _ALSASeqEventFixedClass ALSASeqEventFixedClass; + +struct _ALSASeqEventFixed { + ALSASeqEvent parent_instance; +}; + +struct _ALSASeqEventFixedClass { + ALSASeqEventClass parent_class; +}; + +GType alsaseq_event_fixed_get_type() G_GNUC_CONST; + +G_END_DECLS + +#endif diff --git a/src/seq/meson.build b/src/seq/meson.build index 97ba119..c249c75 100644 --- a/src/seq/meson.build +++ b/src/seq/meson.build @@ -18,6 +18,7 @@ sources = files( 'client-pool.c', 'tstamp.c', 'event.c', + 'event-fixed.c', ) headers = files( @@ -30,6 +31,7 @@ headers = files( 'client-pool.h', 'tstamp.h', 'event.h', + 'event-fixed.h', ) privates = files( diff --git a/tests/alsaseq-event-fixed b/tests/alsaseq-event-fixed new file mode 100644 index 0000000..e1aa9d0 --- /dev/null +++ b/tests/alsaseq-event-fixed @@ -0,0 +1,19 @@ +#!/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.EventFixed() +props = () +methods = () +signals = () + +if not test(target, props, methods, signals): + exit(ENXIO) + diff --git a/tests/meson.build b/tests/meson.build index 1aabba5..fe1335b 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -36,6 +36,7 @@ tests = { 'alsaseq-port-info', 'alsaseq-client-pool', 'alsaseq-event', + 'alsaseq-event-fixed', ], }