rustdct/
array_utils.rs

1use rustfft::num_complex::Complex;
2
3#[allow(unused)]
4pub fn into_complex<T>(buffer: &[T]) -> &[Complex<T>] {
5    let complex_len = buffer.len() / 2;
6    let ptr = buffer.as_ptr() as *const Complex<T>;
7    unsafe { std::slice::from_raw_parts(ptr, complex_len) }
8}
9
10pub fn into_complex_mut<T>(buffer: &mut [T]) -> &mut [Complex<T>] {
11    let complex_len = buffer.len() / 2;
12    let ptr = buffer.as_mut_ptr() as *mut Complex<T>;
13    unsafe { std::slice::from_raw_parts_mut(ptr, complex_len) }
14}