rename register_all_codecs to register_all_decoders
[nihav.git] / nihav-game / src / codecs / midivid.rs
index 1234426e4921312b38f57bcfdd992ef9351d6234..ac91fde5dacfa7e9177f53e101716fa9a7059ef5 100644 (file)
@@ -5,7 +5,7 @@ use nihav_codec_support::codecs::HAMShuffler;
 #[derive(Default)]
 struct MidividDecoder {
     info:       NACodecInfoRef,
-    hams:       HAMShuffler,
+    hams:       HAMShuffler<u8>,
     lzbuf:      Vec<u8>,
     width:      usize,
     height:     usize,
@@ -22,10 +22,10 @@ fn lz_decompress(src: &[u8], dst: &mut [u8]) -> DecoderResult<()> {
     let mut dpos = 0;
     let end = src.len();
     while spos < end {
-        let oplo = src[spos] as u16;
+        let oplo = u16::from(src[spos]);
         spos += 1;
         if spos >= end { return Err(DecoderError::ShortData); }
-        let ophi = src[spos] as u16;
+        let ophi = u16::from(src[spos]);
         spos += 1;
         let mut op = (ophi << 8) | oplo;
         for _ in 0..16 {
@@ -58,6 +58,7 @@ fn lz_decompress(src: &[u8], dst: &mut [u8]) -> DecoderResult<()> {
     Ok(())
 }
 
+#[allow(clippy::identity_op)]
 fn decode_frame(frm: &mut NASimpleVideoFrame<u8>, src: &[u8], width: usize, height: usize) -> DecoderResult<bool> {
     validate!(src.len() > 8);
     let num_vec     = read_u16le(&src[0..])? as usize;
@@ -175,6 +176,12 @@ impl NADecoder for MidividDecoder {
     }
 }
 
+impl NAOptionHandler for MidividDecoder {
+    fn get_supported_options(&self) -> &[NAOptionDefinition] { &[] }
+    fn set_options(&mut self, _options: &[NAOption]) { }
+    fn query_option_value(&self, _name: &str) -> Option<NAValue> { None }
+}
+
 
 pub fn get_decoder_video() -> Box<dyn NADecoder + Send> {
     Box::new(MidividDecoder::new())
@@ -185,14 +192,14 @@ mod test {
     use nihav_core::codecs::RegisteredDecoders;
     use nihav_core::demuxers::RegisteredDemuxers;
     use nihav_codec_support::test::dec_video::*;
-    use crate::game_register_all_codecs;
+    use crate::game_register_all_decoders;
     use nihav_commonfmt::generic_register_all_demuxers;
     #[test]
     fn test_midivid_video() {
         let mut dmx_reg = RegisteredDemuxers::new();
         generic_register_all_demuxers(&mut dmx_reg);
         let mut dec_reg = RegisteredDecoders::new();
-        game_register_all_codecs(&mut dec_reg);
+        game_register_all_decoders(&mut dec_reg);
 
         test_decoding("avi", "midivid", "assets/Game/MVDV.avi", Some(16), &dmx_reg, &dec_reg,
                       ExpectedTestResult::MD5Frames(vec![