1pub mod fs;
2pub mod providers;
3pub mod traits;
4pub(crate) mod utils;
5
6pub use fs::{FileSystem, FileSystemOptions};
7pub use providers::{DummyVpk, P2GameInfo, SimpleGameInfo};
8pub use traits::{GameInfoProvider, PackFile};
9
10
11use std::path::Path;
12
13pub fn create_fs<P: AsRef<Path>>(game_dir: P) -> FileSystem<DummyVpk> {
16 create_fs_custom::<SimpleGameInfo, P>(game_dir)
17}
18
19pub fn create_fs_custom<G: GameInfoProvider, P: AsRef<Path>>(game_dir: P) -> FileSystem<DummyVpk> {
22 let options = FileSystemOptions::default();
23 FileSystem::<DummyVpk>::load_from_path::<G>(game_dir.as_ref(), &options).unwrap()
24}