From: Takashi Sakamoto Date: Wed, 29 Jun 2022 02:49:00 +0000 (+0900) Subject: ctl: elem-value: retrieve fixed-sized array by getter method for IEC 60958 values X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=e863a475483488e48a619ce6204e80c419a7b641;p=alsa-gobject.git ctl: elem-value: retrieve fixed-sized array by getter method for IEC 60958 values In UAPI of Linux sound subsystem, 'struct snd_ctl_elem_values' has fixed-sized array. It's natural to retrieve the array as is. Signed-off-by: Takashi Sakamoto --- diff --git a/src/ctl/elem-value.c b/src/ctl/elem-value.c index c95f949..a2fa121 100644 --- a/src/ctl/elem-value.c +++ b/src/ctl/elem-value.c @@ -318,14 +318,12 @@ void alsactl_elem_value_set_iec60958_channel_status(ALSACtlElemValue *self, cons /** * alsactl_elem_value_get_iec60958_channel_status: * @self: A [class@ElemValue]. - * @status: (array length=length) (out) (transfer none): The array of byte data for channel status + * @status: (array fixed-size=24) (out) (transfer none): The array of byte data for channel status * bits of IEC 60958. - * @length: The number of bytes in status argument up to 24. * * Refer to the array specific to [enum@ElemType].IEC60958 element in internal storage. */ -void alsactl_elem_value_get_iec60958_channel_status(ALSACtlElemValue *self, const guint8 **status, - gsize *length) +void alsactl_elem_value_get_iec60958_channel_status(ALSACtlElemValue *self, const guint8 **status) { ALSACtlElemValuePrivate *priv; struct snd_ctl_elem_value *value; @@ -334,11 +332,9 @@ void alsactl_elem_value_get_iec60958_channel_status(ALSACtlElemValue *self, cons priv = alsactl_elem_value_get_instance_private(self); g_return_if_fail(status != NULL); - g_return_if_fail(length != NULL); value = &priv->value; *status = value->value.iec958.status; - *length = G_N_ELEMENTS(value->value.iec958.status); } /** @@ -371,14 +367,12 @@ void alsactl_elem_value_set_iec60958_user_data(ALSACtlElemValue *self, const gui /** * alsactl_elem_value_get_iec60958_user_data: * @self: A [class@ElemValue]. - * @data: (array length=length) (out) (transfer none): The array of byte data for user data bits of + * @data: (array fixed-size=147) (out) (transfer none): The array of byte data for user data bits of * IEC 60958. - * @length: The number of bytes in user_data argument up to 147. * * Refer to the array specific to [enum@ElemType].IEC60958 element in internal storage. */ -void alsactl_elem_value_get_iec60958_user_data(ALSACtlElemValue *self, const guint8 **data, - gsize *length) +void alsactl_elem_value_get_iec60958_user_data(ALSACtlElemValue *self, const guint8 **data) { ALSACtlElemValuePrivate *priv; struct snd_ctl_elem_value *value; @@ -387,11 +381,9 @@ void alsactl_elem_value_get_iec60958_user_data(ALSACtlElemValue *self, const gui priv = alsactl_elem_value_get_instance_private(self); g_return_if_fail(data != NULL); - g_return_if_fail(length != NULL); value = &priv->value; *data = value->value.iec958.subcode; - *length = G_N_ELEMENTS(value->value.iec958.subcode); } /** diff --git a/src/ctl/elem-value.h b/src/ctl/elem-value.h index 6085422..cb9f1de 100644 --- a/src/ctl/elem-value.h +++ b/src/ctl/elem-value.h @@ -34,13 +34,11 @@ void alsactl_elem_value_get_bytes(ALSACtlElemValue *self, const guint8 **values) void alsactl_elem_value_set_iec60958_channel_status(ALSACtlElemValue *self, const guint8 *status, gsize length); -void alsactl_elem_value_get_iec60958_channel_status(ALSACtlElemValue *self, - const guint8 **status, gsize *length); +void alsactl_elem_value_get_iec60958_channel_status(ALSACtlElemValue *self, const guint8 **status); void alsactl_elem_value_set_iec60958_user_data(ALSACtlElemValue *self, const guint8 *data, gsize length); -void alsactl_elem_value_get_iec60958_user_data(ALSACtlElemValue *self, - const guint8 **data, gsize *length); +void alsactl_elem_value_get_iec60958_user_data(ALSACtlElemValue *self, const guint8 **data); void alsactl_elem_value_set_int64(ALSACtlElemValue *self, const gint64 *values, gsize value_count);