X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-game%2Fsrc%2Fdemuxers%2Fmod.rs;h=efc83ac3b3a62028bac0ae1912f22b128abd4c7d;hb=ac818eac7671fa8ddfea5aa4fb86fc0b5ab82d2e;hp=8f9b384a03254fff4b2498bb63060e50c498e4b0;hpb=674ebc332a586c1e8ca1050f2c23395d9f970ac0;p=nihav.git diff --git a/nihav-game/src/demuxers/mod.rs b/nihav-game/src/demuxers/mod.rs index 8f9b384..efc83ac 100644 --- a/nihav-game/src/demuxers/mod.rs +++ b/nihav-game/src/demuxers/mod.rs @@ -5,16 +5,31 @@ 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); } }