X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-rad%2Fsrc%2Fdemuxers%2Fmod.rs;fp=nihav-rad%2Fsrc%2Fdemuxers%2Fmod.rs;h=a1234bd7c6ee78c6d8d2195bd0cf05156d58efeb;hb=606c448ef167017c3171b49f9eb2af82c15079ce;hp=0000000000000000000000000000000000000000;hpb=9067c1f81447fe27bfa7e292e2dd21b29f5959cd;p=nihav.git diff --git a/nihav-rad/src/demuxers/mod.rs b/nihav-rad/src/demuxers/mod.rs new file mode 100644 index 0000000..a1234bd --- /dev/null +++ b/nihav-rad/src/demuxers/mod.rs @@ -0,0 +1,24 @@ +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(feature="demuxer_smk")] +mod smacker; +#[cfg(feature="demuxer_bink")] +mod bink; + +const RAD_DEMUXERS: &[&'static DemuxerCreator] = &[ +#[cfg(feature="demuxer_smk")] + &smacker::SMKDemuxerCreator {}, +#[cfg(feature="demuxer_bink")] + &bink::BinkDemuxerCreator {}, +]; + +pub fn rad_register_all_demuxers(rd: &mut RegisteredDemuxers) { + for demuxer in RAD_DEMUXERS.into_iter() { + rd.add_demuxer(*demuxer); + } +}