use core::convert::TryInto;
use crate::{rfft::*, Complex32};
#[inline]
#[must_use]
pub fn rfft_2(input: &mut [f32; 2]) -> &mut [Complex32; 1] {
RFftN2::transform(input).try_into().unwrap()
}
#[inline]
#[must_use]
pub fn rfft_4(input: &mut [f32; 4]) -> &mut [Complex32; 2] {
RFftN4::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-4")]
#[inline]
#[must_use]
pub fn rfft_8(input: &mut [f32; 8]) -> &mut [Complex32; 4] {
RFftN8::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-8")]
#[inline]
#[must_use]
pub fn rfft_16(input: &mut [f32; 16]) -> &mut [Complex32; 8] {
RFftN16::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-16")]
#[inline]
#[must_use]
pub fn rfft_32(input: &mut [f32; 32]) -> &mut [Complex32; 16] {
RFftN32::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-32")]
#[inline]
#[must_use]
pub fn rfft_64(input: &mut [f32; 64]) -> &mut [Complex32; 32] {
RFftN64::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-64")]
#[inline]
#[must_use]
pub fn rfft_128(input: &mut [f32; 128]) -> &mut [Complex32; 64] {
RFftN128::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-128")]
#[inline]
#[must_use]
pub fn rfft_256(input: &mut [f32; 256]) -> &mut [Complex32; 128] {
RFftN256::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-256")]
#[inline]
#[must_use]
pub fn rfft_512(input: &mut [f32; 512]) -> &mut [Complex32; 256] {
RFftN512::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-512")]
#[inline]
#[must_use]
pub fn rfft_1024(input: &mut [f32; 1024]) -> &mut [Complex32; 512] {
RFftN1024::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-1024")]
#[inline]
#[must_use]
pub fn rfft_2048(input: &mut [f32; 2048]) -> &mut [Complex32; 1024] {
RFftN2048::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-2048")]
#[inline]
#[must_use]
pub fn rfft_4096(input: &mut [f32; 4096]) -> &mut [Complex32; 2048] {
RFftN4096::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-4096")]
#[inline]
#[must_use]
pub fn rfft_8192(input: &mut [f32; 8192]) -> &mut [Complex32; 4096] {
RFftN8192::transform(input).try_into().unwrap()
}
#[cfg(feature = "size-8192")]
#[inline]
#[must_use]
pub fn rfft_16384(input: &mut [f32; 16384]) -> &mut [Complex32; 8192] {
RFftN16384::transform(input).try_into().unwrap()
}