Skip to main content

burn_synth/
lib.rs

1#![recursion_limit = "256"]
2
3pub mod io;
4pub mod mesh;
5pub mod model_loader;
6#[cfg(all(feature = "runtime", not(target_arch = "wasm32")))]
7mod native_model_bootstrap;
8pub mod pipeline;
9#[cfg(feature = "runtime")]
10pub mod progress;
11#[cfg(feature = "runtime")]
12pub mod runtime;
13pub mod wasm;
14#[cfg(all(target_arch = "wasm32", feature = "wasm-api"))]
15pub mod wasm_api;
16#[cfg(target_arch = "wasm32")]
17pub mod wasm_loader;
18
19#[cfg(any(feature = "runtime", feature = "wasm-api"))]
20pub use io::mesh_to_glb_bytes;
21#[cfg(feature = "runtime")]
22pub use io::write_glb_mesh;
23pub use io::{ImageSource, TextPrompt};
24pub use mesh::{
25    Mesh, MeshLike, MeshMaterial, MeshPbrTextures, MeshStats, MeshTexture, mesh_bounds, mesh_stats,
26};
27#[cfg(all(feature = "runtime", not(target_arch = "wasm32")))]
28pub use native_model_bootstrap::set_bootstrap_status_callback;
29pub use pipeline::{
30    ForegroundModel, MeshOutput, ModelSelection, PipelineInput, PipelineOutput, SynthesisModel,
31    sanitize_synthesis_models,
32};
33#[cfg(feature = "runtime")]
34pub use progress::{
35    ProgressCallback, ProgressVerbosity, RuntimeProgressEvent, RuntimeProgressObserver,
36    default_log_progress_callback, log_progress_event,
37};
38#[cfg(feature = "runtime")]
39pub use runtime::{
40    DinoBackend, ForegroundOutput, ForegroundRequest, InferenceBackend,
41    MeshOutput as RuntimeMeshOutput, MeshRequest, RuntimeConfig, RuntimeError, SynthRuntime,
42    TrellisQuality,
43};
44
45#[cfg(feature = "triposg")]
46pub use burn_tripo as triposg;
47
48#[cfg(feature = "trellis")]
49pub use burn_trellis as trellis;
50
51#[cfg(feature = "bg-removal")]
52pub use burn_foreground as bg_removal;