aboutsummaryrefslogtreecommitdiff
path: root/dhwt-codec/src/transform.rs
diff options
context:
space:
mode:
Diffstat (limited to 'dhwt-codec/src/transform.rs')
-rw-r--r--dhwt-codec/src/transform.rs42
1 files changed, 0 insertions, 42 deletions
diff --git a/dhwt-codec/src/transform.rs b/dhwt-codec/src/transform.rs
deleted file mode 100644
index 82bccd1..0000000
--- a/dhwt-codec/src/transform.rs
+++ /dev/null
@@ -1,42 +0,0 @@
-use crate::io::{Value, TWO};
-use std::ops::{Index, IndexMut};
-
-pub fn encode<X: Index<usize, Output = Value> + IndexMut<usize, Output = Value>>(
- size: usize,
- a: &mut X,
- b: &mut X,
-) {
- let mut k = size;
- while k != 1 {
- k /= 2;
- for i in 0..k {
- let x = a[i * 2];
- let y = a[i * 2 + 1];
- b[i] = x + y;
- b[k + i] = x - y;
- }
- for i in 0..k {
- a[i] = b[i]
- }
- }
-}
-
-pub fn decode<X: Index<usize, Output = Value> + IndexMut<usize, Output = Value>>(
- size: usize,
- a: &mut X,
- b: &mut X,
-) {
- let mut k = 1;
- while k != size {
- for i in 0..k {
- let avr = a[i] / TWO;
- let spread = a[i + k] / TWO;
- b[i * 2] = avr + spread;
- b[i * 2 + 1] = avr - spread;
- }
- k *= 2;
- for i in 0..k {
- a[i] = b[i]
- }
- }
-}