LucasArts SMUSH formats support
[nihav.git] / nihav-game / src / demuxers / mod.rs
index 236b3cf8d229f9a16e45d44f4e7757eeed6651a5..fe35075f670ab73712f91e700592fd00d01e14a8 100644 (file)
@@ -7,20 +7,42 @@ macro_rules! validate {
 
 #[cfg(any(feature="demuxer_bmv",feature="demuxer_bmv3"))]
 mod bmv;
+#[cfg(any(feature="demuxer_fst",feature="demuxer_fcmp"))]
+mod fst;
 #[cfg(feature="demuxer_gdv")]
 mod gdv;
+#[cfg(feature="demuxer_imax")]
+mod imax;
+#[cfg(feature="demuxer_q")]
+mod q;
+#[cfg(feature="demuxer_smush")]
+mod smush;
 #[cfg(feature="demuxer_vmd")]
 mod vmd;
+#[cfg(feature="demuxer_vx")]
+mod vx;
 
-const GAME_DEMUXERS: &[&DemuxerCreator] = &[
+const GAME_DEMUXERS: &[&dyn DemuxerCreator] = &[
 #[cfg(feature="demuxer_bmv")]
     &bmv::BMVDemuxerCreator {},
 #[cfg(feature="demuxer_bmv3")]
     &bmv::BMV3DemuxerCreator {},
+#[cfg(feature="demuxer_fcmp")]
+    &fst::FCMPDemuxerCreator {},
+#[cfg(feature="demuxer_fst")]
+    &fst::FSTDemuxerCreator {},
 #[cfg(feature="demuxer_gdv")]
     &gdv::GDVDemuxerCreator {},
+#[cfg(feature="demuxer_imax")]
+    &imax::IMAXDemuxerCreator {},
+#[cfg(feature="demuxer_q")]
+    &q::QDemuxerCreator {},
+#[cfg(feature="demuxer_smush")]
+    &smush::SmushDemuxerCreator {},
 #[cfg(feature="demuxer_vmd")]
     &vmd::VMDDemuxerCreator {},
+#[cfg(feature="demuxer_vx")]
+    &vx::VXDemuxerCreator {},
 ];
 
 /// Registers all available demuxers provided by this crate.