move zigzag scan to common place
[nihav.git] / nihav-core / src / codecs / h263 / data.rs
index 029c5bbecf8160b6946d0bae8a4b12ec2419d93a..de827d461e1ceb86a0b24b722cc4d8f4d9455583 100644 (file)
@@ -8,17 +8,6 @@ pub const H263_SCALES: &[u8] = &[
 pub const H263_DC_SCALES: &[u8] = &[
     0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62 ];
 
-pub const H263_ZIGZAG: &[usize] = &[
-    0,   1,  8, 16,  9,  2,  3, 10,
-    17, 24, 32, 25, 18, 11,  4,  5,
-    12, 19, 26, 33, 40, 48, 41, 34,
-    27, 20, 13,  6,  7, 14, 21, 28,
-    35, 42, 49, 56, 57, 50, 43, 36,
-    29, 22, 15, 23, 30, 37, 44, 51,
-    58, 59, 52, 45, 38, 31, 39, 46,
-    53, 60, 61, 54, 47, 55, 62, 63
-];
-
 pub const H263_SCAN_H: &[usize] = &[
     0,   1,  2,  3,  8,  9, 16, 17,
     10, 11,  4,  5,  6,  7, 15, 14,
@@ -114,7 +103,7 @@ pub const H263_CHROMA_QUANT: [u8; 32] = [
 pub struct H263ShortCodeReader { tab: &'static [(u8, u8)] }
 
 impl H263ShortCodeReader {
-    pub fn new(tab: &'static [(u8, u8)]) -> Self { H263ShortCodeReader { tab: tab } }
+    pub fn new(tab: &'static [(u8, u8)]) -> Self { H263ShortCodeReader { tab } }
 }
 
 impl CodebookDescReader<u8> for H263ShortCodeReader {
@@ -127,10 +116,10 @@ impl CodebookDescReader<u8> for H263ShortCodeReader {
 #[derive(Clone,Copy)]
 pub struct H263RLSym { run: u8, level: i8 }
 impl H263RLSym {
-    pub fn get_run(&self)   -> u8 { self.run }
-    pub fn is_last(&self)   -> bool { self.level < 0 }
-    pub fn is_escape(&self) -> bool { (self.run == 0) && (self.level == 0) }
-    pub fn get_level(&self) -> i16 { if self.level < 0 { -self.level as i16 } else { self.level as i16 } }
+    pub fn get_run(self)   -> u8 { self.run }
+    pub fn is_last(self)   -> bool { self.level < 0 }
+    pub fn is_escape(self) -> bool { (self.run == 0) && (self.level == 0) }
+    pub fn get_level(self) -> i16 { if self.level < 0 { -self.level as i16 } else { self.level as i16 } }
 }
 
 pub struct H263RLCodeDesc { code: u8, bits: u8, sym: H263RLSym }
@@ -202,7 +191,7 @@ pub const H263_RL_CODES_AIC: &[H263RLCodeDesc] = rlcodes!(
 pub struct H263RLCodeReader { tab: &'static [H263RLCodeDesc] }
 
 impl H263RLCodeReader {
-    pub fn new(tab: &'static [H263RLCodeDesc]) -> Self { H263RLCodeReader { tab: tab } }
+    pub fn new(tab: &'static [H263RLCodeDesc]) -> Self { H263RLCodeReader { tab } }
 }
 
 impl CodebookDescReader<H263RLSym> for H263RLCodeReader {