diff options
author | Takashi Sakamoto <o-takashi@sakamocchi.jp> | 2023-07-17 18:27:14 +0900 |
---|---|---|
committer | 坂本 貴史 <o-takashi@sakamocchi.jp> | 2023-07-17 22:49:46 +0900 |
commit | 42b29538e8ddb205534ab1211423a96781d6f466 (patch) | |
tree | facfc179b79994fc7f48154f5760dc68bb0341a4 | |
parent | 1ed134672e167fb7e8d3538c4fec1a2cb73033ea (diff) | |
download | libhinoko-42b29538e8ddb205534ab1211423a96781d6f466.tar.gz |
fw_iso_rx_multiple: implement Hinoko.FwIsoCtx.read_cycle_time() method
This commit implements the new abstract method.
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
-rw-r--r-- | src/fw_iso_ir_multiple.c | 15 | ||||
-rwxr-xr-x | tests/fw-iso-ir-multiple | 2 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/fw_iso_ir_multiple.c b/src/fw_iso_ir_multiple.c index aff37ad..e9d0805 100644 --- a/src/fw_iso_ir_multiple.c +++ b/src/fw_iso_ir_multiple.c @@ -172,6 +172,20 @@ static void fw_iso_ir_multiple_release(HinokoFwIsoCtx *inst) priv->channels = NULL; } +static gboolean fw_iso_ir_multiple_read_cycle_time(HinokoFwIsoCtx *inst, gint clock_id, + HinawaCycleTime *const *cycle_time, + GError **error) +{ + HinokoFwIsoIrMultiple *self; + HinokoFwIsoIrMultiplePrivate *priv; + + g_return_val_if_fail(HINOKO_IS_FW_ISO_IR_MULTIPLE(inst), FALSE); + self = HINOKO_FW_ISO_IR_MULTIPLE(inst); + priv = hinoko_fw_iso_ir_multiple_get_instance_private(self); + + return fw_iso_ctx_state_read_cycle_time(&priv->state, clock_id, cycle_time, error); +} + static gboolean fw_iso_ir_multiple_get_cycle_timer(HinokoFwIsoCtx *inst, gint clock_id, HinokoCycleTimer *const *cycle_timer, GError **error) @@ -323,6 +337,7 @@ static void fw_iso_ctx_iface_init(HinokoFwIsoCtxInterface *iface) iface->stop = fw_iso_ir_multiple_stop; iface->unmap_buffer = fw_iso_ir_multiple_unmap_buffer; iface->release = fw_iso_ir_multiple_release; + iface->read_cycle_time = fw_iso_ir_multiple_read_cycle_time; iface->get_cycle_timer = fw_iso_ir_multiple_get_cycle_timer; iface->flush_completions = fw_iso_ir_multiple_flush_completions; iface->create_source = fw_iso_ir_multiple_create_source; diff --git a/tests/fw-iso-ir-multiple b/tests/fw-iso-ir-multiple index 2cd187a..0357638 100755 --- a/tests/fw-iso-ir-multiple +++ b/tests/fw-iso-ir-multiple @@ -26,6 +26,7 @@ methods = ( 'stop', 'unmap_buffer', 'release', + 'read_cycle_time', 'get_cycle_timer', 'create_source', 'flush_completions', @@ -36,6 +37,7 @@ vmethods = ( 'do_stop', 'do_unmap_buffer', 'do_release', + 'do_read_cycle_time', 'do_get_cycle_timer', 'do_flush_completions', 'do_create_source', |