From 71cd3129b286338dcb078125249947463baf4512 Mon Sep 17 00:00:00 2001 From: Takashi Sakamoto Date: Mon, 11 Apr 2022 17:42:26 +0900 Subject: [PATCH] ctl: elem_value: use an utility macro to declare GObject-derived object Since gobject v2.44, an utility macro is available to declare GObject-derived objects. This commit replaces existent boireplates with it. Signed-off-by: Takashi Sakamoto --- src/ctl/elem-value.c | 8 ++++---- src/ctl/elem-value.h | 32 +------------------------------- 2 files changed, 5 insertions(+), 35 deletions(-) diff --git a/src/ctl/elem-value.c b/src/ctl/elem-value.c index f09ec9d..2bf6f82 100644 --- a/src/ctl/elem-value.c +++ b/src/ctl/elem-value.c @@ -15,9 +15,9 @@ * * The object wraps 'struct snd_ctl_elem_value' in UAPI of Linux sound subsystem. */ -struct _ALSACtlElemValuePrivate { +typedef struct { struct snd_ctl_elem_value value; -}; +} ALSACtlElemValuePrivate; G_DEFINE_TYPE_WITH_PRIVATE(ALSACtlElemValue, alsactl_elem_value, G_TYPE_OBJECT) enum ctl_elem_value_prop_type { @@ -478,8 +478,8 @@ gboolean alsactl_elem_value_equal(const ALSACtlElemValue *self, const ALSACtlElemValue *target) { const ALSACtlElemValuePrivate *lhs, *rhs; - g_return_val_if_fail(ALSACTL_IS_ELEM_VALUE(self), FALSE); - g_return_val_if_fail(ALSACTL_IS_ELEM_VALUE(target), FALSE); + g_return_val_if_fail(ALSACTL_IS_ELEM_VALUE((ALSACtlElemValue *)self), FALSE); + g_return_val_if_fail(ALSACTL_IS_ELEM_VALUE((ALSACtlElemValue *)target), FALSE); lhs = alsactl_elem_value_get_instance_private((ALSACtlElemValue *)self); rhs = alsactl_elem_value_get_instance_private((ALSACtlElemValue *)target); diff --git a/src/ctl/elem-value.h b/src/ctl/elem-value.h index 31a0666..b87107b 100644 --- a/src/ctl/elem-value.h +++ b/src/ctl/elem-value.h @@ -8,42 +8,12 @@ G_BEGIN_DECLS #define ALSACTL_TYPE_ELEM_VALUE (alsactl_elem_value_get_type()) -#define ALSACTL_ELEM_VALUE(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - ALSACTL_TYPE_ELEM_VALUE, \ - ALSACtlElemValue)) -#define ALSACTL_IS_ELEM_VALUE(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - ALSACTL_TYPE_ELEM_VALUE)) - -#define ALSACTL_ELEM_VALUE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - ALSACTL_TYPE_ELEM_VALUE, \ - ALSACtlElemValueClass)) -#define ALSACTL_IS_ELEM_VALUE_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - ALSACTL_TYPE_ELEM_VALUE)) -#define ALSACTL_ELEM_VALUE_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - ALSACTL_TYPE_ELEM_VALUE, \ - ALSACtlElemValueClass)) - -typedef struct _ALSACtlElemValue ALSACtlElemValue; -typedef struct _ALSACtlElemValueClass ALSACtlElemValueClass; -typedef struct _ALSACtlElemValuePrivate ALSACtlElemValuePrivate; - -struct _ALSACtlElemValue { - GObject parent_instance; - - ALSACtlElemValuePrivate *priv; -}; +G_DECLARE_DERIVABLE_TYPE(ALSACtlElemValue, alsactl_elem_value, ALSACTL, ELEM_VALUE, GObject); struct _ALSACtlElemValueClass { GObjectClass parent_class; }; -GType alsactl_elem_value_get_type() G_GNUC_CONST; - ALSACtlElemValue *alsactl_elem_value_new(); void alsactl_elem_value_set_bool(ALSACtlElemValue *self, -- 2.47.3