make validate!() print message only in debug builds
[nihav.git] / nihav-rad / src / demuxers / mod.rs
CommitLineData
606c448e
KS
1use nihav_core::demuxers::*;
2
3#[allow(unused_macros)]
71d7f397 4#[cfg(debug_assertions)]
606c448e
KS
5macro_rules! validate {
6 ($a:expr) => { if !$a { println!("check failed at {}:{}", file!(), line!()); return Err(DemuxerError::InvalidData); } };
7}
71d7f397
KS
8#[cfg(not(debug_assertions))]
9macro_rules! validate {
10 ($a:expr) => { if !$a { return Err(DemuxerError::InvalidData); } };
11}
606c448e
KS
12
13#[cfg(feature="demuxer_smk")]
14mod smacker;
15#[cfg(feature="demuxer_bink")]
16mod bink;
17
ac818eac 18const RAD_DEMUXERS: &[&dyn DemuxerCreator] = &[
606c448e
KS
19#[cfg(feature="demuxer_smk")]
20 &smacker::SMKDemuxerCreator {},
21#[cfg(feature="demuxer_bink")]
22 &bink::BinkDemuxerCreator {},
23];
24
e64739f8 25/// Registers all available demuxers provided by this crate.
606c448e 26pub fn rad_register_all_demuxers(rd: &mut RegisteredDemuxers) {
7e6086e5 27 for demuxer in RAD_DEMUXERS.iter() {
606c448e
KS
28 rd.add_demuxer(*demuxer);
29 }
30}