"alsatimer_user_instance_attach";
"alsatimer_user_instance_attach_as_slave";
"alsatimer_user_instance_get_info";
+ "alsatimer_user_instance_set_params";
"alsatimer_instance_info_get_type";
*entries = list;
*entry_count = count;
}
+
+void timer_instance_params_refer_private(ALSATimerInstanceParams *self,
+ struct snd_timer_params **params)
+{
+ ALSATimerInstanceParamsPrivate *priv =
+ alsatimer_instance_params_get_instance_private(self);
+
+ *params = &priv->params;
+}
#include "device-status.h"
#include "device-params.h"
#include "instance-info.h"
+#include "instance-params.h"
#include <sound/asound.h>
void timer_instance_info_refer_private(ALSATimerInstanceInfo *self,
struct snd_timer_info **info);
+void timer_instance_params_refer_private(ALSATimerInstanceParams *self,
+ struct snd_timer_params **params);
+
G_END_DECLS
#endif
g_object_unref(*instance_info);
}
}
+
+/**
+ * alsatimer_user_instance_set_params:
+ * @self: A #ALSATimerUserInstance.
+ * @instance_params: (inout): A #ALSATimerInstanceParams.
+ * @error: A #GError.
+ *
+ * Configure the instance with the parameters and return the latest parameters.
+ */
+void alsatimer_user_instance_set_params(ALSATimerUserInstance *self,
+ ALSATimerInstanceParams *const *instance_params,
+ GError **error)
+{
+ ALSATimerUserInstancePrivate *priv;
+ struct snd_timer_params *params;
+
+ g_return_if_fail(ALSATIMER_IS_USER_INSTANCE(self));
+ priv = alsatimer_user_instance_get_instance_private(self);
+
+ timer_instance_params_refer_private(*instance_params, ¶ms);
+
+ if (ioctl(priv->fd, SNDRV_TIMER_IOCTL_PARAMS, params) < 0)
+ generate_error(error, errno);
+}
#include <timer/device-id.h>
#include <timer/instance-info.h>
+#include <timer/instance-params.h>
G_BEGIN_DECLS
ALSATimerInstanceInfo **instance_info,
GError **error);
+void alsatimer_user_instance_set_params(ALSATimerUserInstance *self,
+ ALSATimerInstanceParams *const *instance_params,
+ GError **error);
+
G_END_DECLS
#endif
'attach',
'attach_as_slave',
'get_info',
+ 'set_params',
)
signals = ()