From 063446b1676b25c3905d444d0e2161ff3de8e0b6 Mon Sep 17 00:00:00 2001 From: Takashi Sakamoto Date: Wed, 1 Apr 2020 18:13:28 +0900 Subject: [PATCH] seq: addr: add object to represent address in ALSA Sequencer Signed-off-by: Takashi Sakamoto --- src/seq/addr.c | 9 +++++++++ src/seq/addr.h | 20 ++++++++++++++++++++ src/seq/alsaseq.map | 3 +++ src/seq/meson.build | 2 ++ 4 files changed, 34 insertions(+) create mode 100644 src/seq/addr.c create mode 100644 src/seq/addr.h diff --git a/src/seq/addr.c b/src/seq/addr.c new file mode 100644 index 0000000..242826a --- /dev/null +++ b/src/seq/addr.c @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: LGPL-3.0-or-later +#include "addr.h" + +ALSASeqAddr *seq_addr_copy(const ALSASeqAddr *self) +{ + return g_memdup(self, sizeof(*self)); +} + +G_DEFINE_BOXED_TYPE(ALSASeqAddr, alsaseq_addr, seq_addr_copy, g_free) diff --git a/src/seq/addr.h b/src/seq/addr.h new file mode 100644 index 0000000..6844697 --- /dev/null +++ b/src/seq/addr.h @@ -0,0 +1,20 @@ +// SPDX-License-Identifier: LGPL-3.0-or-later +#ifndef __ALSA_GOBJECT_ALSASEQ_ADDR__H__ +#define __ALSA_GOBJECT_ALSASEQ_ADDR__H__ + +#include +#include + +#include + +G_BEGIN_DECLS + +#define ALSASEQ_TYPE_ADDR (alsaseq_addr_get_type()) + +typedef struct snd_seq_addr ALSASeqAddr; + +GType alsaseq_addr_get_type() G_GNUC_CONST; + +G_END_DECLS + +#endif diff --git a/src/seq/alsaseq.map b/src/seq/alsaseq.map index bbd7bdc..a39fa39 100644 --- a/src/seq/alsaseq.map +++ b/src/seq/alsaseq.map @@ -35,6 +35,9 @@ ALSA_GOBJECT_0_0_0 { "alsaseq_user_client_open"; "alsaseq_user_client_set_info"; "alsaseq_user_client_get_info"; + + "alsaseq_addr_get_type"; + "alsaseq_addr_new"; local: *; }; diff --git a/src/seq/meson.build b/src/seq/meson.build index 3e8d511..d5fc3b6 100644 --- a/src/seq/meson.build +++ b/src/seq/meson.build @@ -13,6 +13,7 @@ sources = files( 'system-info.c', 'client-info.c', 'user-client.c', + 'addr.c', ) headers = files( @@ -20,6 +21,7 @@ headers = files( 'system-info.h', 'client-info.h', 'user-client.h', + 'addr.h', ) privates = files( -- 2.47.3