From 5c37b7b76602b59c7c5b4891d3689aeb3a952ac7 Mon Sep 17 00:00:00 2001 From: "d.levin256@gmail.com" Date: Tue, 7 May 2024 09:13:28 +0100 Subject: [PATCH] Fix Stateless parameter --- include/kfr/dsp/biquad.hpp | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/include/kfr/dsp/biquad.hpp b/include/kfr/dsp/biquad.hpp index ef26e88..48b1be8 100644 --- a/include/kfr/dsp/biquad.hpp +++ b/include/kfr/dsp/biquad.hpp @@ -292,20 +292,20 @@ KFR_INTRINSIC vec biquad_process(iir_state& state, const vec -KFR_INTRINSIC vec get_elements(const expression_iir_l& self, shape<1> index, +template +KFR_INTRINSIC vec get_elements(const expression_iir_l& self, shape<1> index, axis_params<0, N> t) { const vec in = get_elements(self.first(), index, t); return internal::biquad_process(*self.state, in); } -template -KFR_INTRINSIC void begin_pass(const expression_iir<1, T, E1>&, shape<1>, shape<1>) +template +KFR_INTRINSIC void begin_pass(const expression_iir<1, T, E1, Stateless>&, shape<1>, shape<1>) { } -template -KFR_INTRINSIC void begin_pass(const expression_iir& self, shape<1> start, shape<1> stop) +template +KFR_INTRINSIC void begin_pass(const expression_iir& self, shape<1> start, shape<1> stop) { size_t size = stop.front(); self.state->block_end = size; @@ -317,26 +317,26 @@ KFR_INTRINSIC void begin_pass(const expression_iir& self, shape< internal::biquad_process(*self.state, in); } -template -KFR_INTRINSIC void end_pass(const expression_iir<1, T, E1>&, shape<1>, shape<1>) +template +KFR_INTRINSIC void end_pass(const expression_iir<1, T, E1, Stateless>&, shape<1>, shape<1>) { } -template -KFR_INTRINSIC void end_pass(const expression_iir& self, shape<1> start, shape<1> stop) +template +KFR_INTRINSIC void end_pass(const expression_iir& self, shape<1> start, shape<1> stop) { self.state->state = self.state->saved_state; } -template -KFR_INTRINSIC vec get_elements(const expression_iir<1, T, E1>& self, shape<1> index, +template +KFR_INTRINSIC vec get_elements(const expression_iir<1, T, E1, Stateless>& self, shape<1> index, axis_params<0, N> t) { const vec in = get_elements(self.first(), index, t); return internal::biquad_process(*self.state, in); } -template -KFR_INTRINSIC vec get_elements(const expression_iir& self, shape<1> index, +template +KFR_INTRINSIC vec get_elements(const expression_iir& self, shape<1> index, axis_params<0, N> t) { using internal::biquad_process;