]> git.alsa-project.org Git - alsa-gobject.git/commitdiff
ctl: elem_info_bytes: add object to represent information for element of bytes type
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Mon, 18 Nov 2019 04:22:44 +0000 (13:22 +0900)
committerTakashi Sakamoto <o-takashi@sakamocchi.jp>
Thu, 12 Dec 2019 05:29:12 +0000 (14:29 +0900)
src/ctl/alsactl.map
src/ctl/elem-info-bytes.c [new file with mode: 0644]
src/ctl/elem-info-bytes.h [new file with mode: 0644]
src/ctl/meson.build
tests/alsactl-elem-info-bytes [new file with mode: 0644]
tests/meson.build

index 8cbfa4fa1a3456fd208fab8c0d83576f12480228..b7465970a1887e8f4c956e0893b12656fc35d29e 100644 (file)
@@ -40,6 +40,8 @@ ALSA_GOBJECT_0_0_0 {
 
     "alsactl_elem_info_enum_get_type";
     "alsactl_elem_info_enum_new";
+
+    "alsactl_elem_info_bytes_get_type";
   local:
     *;
 };
diff --git a/src/ctl/elem-info-bytes.c b/src/ctl/elem-info-bytes.c
new file mode 100644 (file)
index 0000000..9991cea
--- /dev/null
@@ -0,0 +1,14 @@
+// SPDX-License-Identifier: LGPL-3.0-or-later
+#include "elem-info-bytes.h"
+
+G_DEFINE_TYPE(ALSACtlElemInfoBytes, alsactl_elem_info_bytes, ALSACTL_TYPE_ELEM_INFO)
+
+static void alsactl_elem_info_bytes_class_init(ALSACtlElemInfoBytesClass *klass)
+{
+    return;
+}
+
+static void alsactl_elem_info_bytes_init(ALSACtlElemInfoBytes *self)
+{
+    return;
+}
diff --git a/src/ctl/elem-info-bytes.h b/src/ctl/elem-info-bytes.h
new file mode 100644 (file)
index 0000000..e8daf0f
--- /dev/null
@@ -0,0 +1,49 @@
+// SPDX-License-Identifier: LGPL-3.0-or-later
+#ifndef __ALSA_GOBJECT_ALSACTL_ELEM_INFO_BYTES__H__
+#define __ALSA_GOBJECT_ALSACTL_ELEM_INFO_BYTES__H__
+
+#include <glib.h>
+#include <glib-object.h>
+
+#include <ctl/elem-info.h>
+
+G_BEGIN_DECLS
+
+#define ALSACTL_TYPE_ELEM_INFO_BYTES     (alsactl_elem_info_bytes_get_type())
+
+#define ALSACTL_ELEM_INFO_BYTES(obj)                            \
+    (G_TYPE_CHECK_INSTANCE_CAST((obj),                          \
+                                ALSACTL_TYPE_ELEM_INFO_BYTES,   \
+                                ALSACtlElemInfoBytes))
+#define ALSACTL_IS_ELEM_INFO_BYTES(obj)                         \
+    (G_TYPE_CHECK_INSTANCE_TYPE((obj),                          \
+                                ALSACTL_TYPE_ELEM_INFO_BYTES))
+
+#define ALSACTL_ELEM_INFO_BYTES_CLASS(klass)                    \
+    (G_TYPE_CHECK_CLASS_CAST((klass),                           \
+                             ALSACTL_TYPE_ELEM_INFO_BYTES,      \
+                             ALSACtlElemInfoBytesClass))
+#define ALSACTL_IS_ELEM_INFO_BYTES_CLASS(klass)                 \
+    (G_TYPE_CHECK_CLASS_TYPE((klass),                           \
+                             ALSACTL_TYPE_ELEM_INFO_BYTES))
+#define ALSACTL_ELEM_INFO_BYTES_GET_CLASS(obj)                  \
+    (G_TYPE_INSTANCE_GET_CLASS((obj),                           \
+                               ALSACTL_TYPE_ELEM_INFO_BYTES,    \
+                               ALSACtlElemInfoBytesClass))
+
+typedef struct _ALSACtlElemInfoBytes         ALSACtlElemInfoBytes;
+typedef struct _ALSACtlElemInfoBytesClass    ALSACtlElemInfoBytesClass;
+
+struct _ALSACtlElemInfoBytes {
+    ALSACtlElemInfo parent_instance;
+};
+
+struct _ALSACtlElemInfoBytesClass {
+    ALSACtlElemInfoClass parent_class;
+};
+
+GType alsactl_elem_info_bytes_get_type(void) G_GNUC_CONST;
+
+G_END_DECLS
+
+#endif
index bc33afd1f046c3f0040e25ed138af9012daae997..b22384d2fda994480f089cb50740c49f3ac083ac 100644 (file)
@@ -17,6 +17,7 @@ sources = files(
   'elem-info-bool.c',
   'elem-info-int.c',
   'elem-info-enum.c',
+  'elem-info-bytes.c',
 )
 
 headers = files(
@@ -28,6 +29,7 @@ headers = files(
   'elem-info-bool.h',
   'elem-info-int.h',
   'elem-info-enum.h',
+  'elem-info-bytes.h',
 )
 
 privates = files(
diff --git a/tests/alsactl-elem-info-bytes b/tests/alsactl-elem-info-bytes
new file mode 100644 (file)
index 0000000..c228678
--- /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('ALSACtl', '0.0')
+from gi.repository import ALSACtl
+
+target = ALSACtl.ElemInfoBytes()
+props = ()
+methods = ()
+signals = ()
+
+if not test(target, props, methods, signals):
+    exit(ENXIO)
index 5e0a0318b7bce943444c9a21cb88f5eed11ca1cc..b0c2df42eebe4214b414a4b13dc0f5f80509f84d 100644 (file)
@@ -10,6 +10,7 @@ tests = {
     'alsactl-elem-info-bool',
     'alsactl-elem-info-int',
     'alsactl-elem-info-enum',
+    'alsactl-elem-info-bytes',
   ],
 }