[PATCH 00/13] ctl: add interfaces for element information
GitHub pull_request - opened
github at alsa-project.org
Wed Jun 1 05:04:17 CEST 2022
alsa-project/alsa-gobject pull request #71 was opened from takaswie:
Current implementation uses function of ElemInfo to express variants of element
information, however it's not enough convenient in the case of language bindings.
The usage of GObject.Value in object property is expected to be supported widely
instead.
This patchset uses object classes derived from GObject to express the variants.
The common properties are expressed by two interfaces; ElemInfoCommon and
ElemInfoSingleArray. All of classes implement the former, and the latter is
implemented except for IEC60958 element information.
```
Takashi Sakamoto (13):
ctl: card: fix indentation
fix missing usage of declaration macro
ctl: card: add error path when generating name list at element addition
ctl: elem-info-common: add common interface for element information
ctl: elem-info-iec60958: add class for element information of IEC60958 type
ctl: elem-info-single-array: add interface for single array element information
ctl: elem-info-boolean: add class for element information of boolean type
ctl: elem-info-bytes: add class for element information of bytes type
ctl: elem-info-integer: add class for element information of integer type
ctl: elem-info-integer64: add class for element information of integer64 type
ctl: elem-info-enumerated: add class for element information of enumerated type
ctl: card: use ALSACtl.ElemInfoCommon instead of ElemInfo
ctl: elem-info: remove unused classes
samples/ctl | 56 +--
src/ctl/alsactl-enum-types.h | 4 +
src/ctl/alsactl.h | 10 +-
src/ctl/alsactl.map | 30 +-
src/ctl/card.c | 156 ++++---
src/ctl/card.h | 6 +-
src/ctl/elem-info-boolean.c | 90 +++++
src/ctl/elem-info-boolean.h | 22 +
src/ctl/elem-info-bytes.c | 89 ++++
src/ctl/elem-info-bytes.h | 21 +
src/ctl/elem-info-common.c | 135 +++++++
src/ctl/elem-info-common.h | 20 +
src/ctl/elem-info-enumerated.c | 137 +++++++
src/ctl/elem-info-enumerated.h | 22 +
src/ctl/elem-info-iec60958.c | 80 ++++
src/ctl/elem-info-iec60958.h | 22 +
src/ctl/elem-info-integer.c | 162 ++++++++
src/ctl/elem-info-integer.h | 22 +
src/ctl/elem-info-integer64.c | 162 ++++++++
src/ctl/elem-info-integer64.h | 22 +
src/ctl/elem-info-single-array.c | 68 ++++
src/ctl/elem-info-single-array.h | 20 +
src/ctl/elem-info.c | 379 ------------------
src/ctl/elem-info.h | 30 --
src/ctl/meson.build | 18 +-
src/ctl/privates.h | 54 ++-
src/hwdep/alsahwdep-enum-types.h | 4 +
src/rawmidi/alsarawmidi-enum-types.h | 4 +
src/seq/alsaseq-enum-types.h | 4 +
src/timer/alsatimer-enum-types.h | 4 +
...tl-elem-info => alsactl-elem-info-boolean} | 10 +-
tests/alsactl-elem-info-bytes | 26 ++
tests/alsactl-elem-info-enumerated | 27 ++
tests/alsactl-elem-info-iec60958 | 25 ++
tests/alsactl-elem-info-integer | 29 ++
tests/alsactl-elem-info-integer64 | 29 ++
tests/meson.build | 7 +-
37 files changed, 1492 insertions(+), 514 deletions(-)
create mode 100644 src/ctl/elem-info-boolean.c
create mode 100644 src/ctl/elem-info-boolean.h
create mode 100644 src/ctl/elem-info-bytes.c
create mode 100644 src/ctl/elem-info-bytes.h
create mode 100644 src/ctl/elem-info-common.c
create mode 100644 src/ctl/elem-info-common.h
create mode 100644 src/ctl/elem-info-enumerated.c
create mode 100644 src/ctl/elem-info-enumerated.h
create mode 100644 src/ctl/elem-info-iec60958.c
create mode 100644 src/ctl/elem-info-iec60958.h
create mode 100644 src/ctl/elem-info-integer.c
create mode 100644 src/ctl/elem-info-integer.h
create mode 100644 src/ctl/elem-info-integer64.c
create mode 100644 src/ctl/elem-info-integer64.h
create mode 100644 src/ctl/elem-info-single-array.c
create mode 100644 src/ctl/elem-info-single-array.h
delete mode 100644 src/ctl/elem-info.c
delete mode 100644 src/ctl/elem-info.h
rename tests/{alsactl-elem-info => alsactl-elem-info-boolean} (68%)
create mode 100644 tests/alsactl-elem-info-bytes
create mode 100644 tests/alsactl-elem-info-enumerated
create mode 100644 tests/alsactl-elem-info-iec60958
create mode 100644 tests/alsactl-elem-info-integer
create mode 100644 tests/alsactl-elem-info-integer64
```
Request URL : https://github.com/alsa-project/alsa-gobject/pull/71
Patch URL : https://github.com/alsa-project/alsa-gobject/pull/71.patch
Repository URL: https://github.com/alsa-project/alsa-gobject
More information about the Alsa-devel
mailing list