fix some warnings (unneeded parentheses, missing dyn keyword)
[nihav.git] / nihav-game / src / demuxers / mod.rs
index f2aeb3b8e2a2a6cdb4d216103651fa17b1013956..efc83ac3b3a62028bac0ae1912f22b128abd4c7d 100644 (file)
@@ -1,19 +1,35 @@
 use nihav_core::demuxers::*;
 
+#[allow(unused_macros)]
 macro_rules! validate {
     ($a:expr) => { if !$a { println!("check failed at {}:{}", file!(), line!()); return Err(DemuxerError::InvalidData); } };
 }
 
+#[cfg(any(feature="demuxer_bmv",feature="demuxer_bmv3"))]
+mod bmv;
 #[cfg(feature="demuxer_gdv")]
 mod gdv;
+#[cfg(feature="demuxer_vmd")]
+mod vmd;
+#[cfg(feature="demuxer_vx")]
+mod vx;
 
-const GAME_DEMUXERS: &[&'static DemuxerCreator] = &[
+const GAME_DEMUXERS: &[&dyn DemuxerCreator] = &[
+#[cfg(feature="demuxer_bmv")]
+    &bmv::BMVDemuxerCreator {},
+#[cfg(feature="demuxer_bmv3")]
+    &bmv::BMV3DemuxerCreator {},
 #[cfg(feature="demuxer_gdv")]
     &gdv::GDVDemuxerCreator {},
+#[cfg(feature="demuxer_vmd")]
+    &vmd::VMDDemuxerCreator {},
+#[cfg(feature="demuxer_vx")]
+    &vx::VXDemuxerCreator {},
 ];
 
+/// Registers all available demuxers provided by this crate.
 pub fn game_register_all_demuxers(rd: &mut RegisteredDemuxers) {
-    for demuxer in GAME_DEMUXERS.into_iter() {
+    for demuxer in GAME_DEMUXERS.iter() {
         rd.add_demuxer(*demuxer);
     }
 }