1#[cfg(not(feature = "tracing"))]
5macro_rules! noop_macro {
6 ($($arg:tt)*) => {};
7}
8
9macro_rules! use_tracing_macros {
11 ($($tracing_macro:ident),+) => {
12 $(
13#[cfg(feature = "tracing")]
14pub(crate) use tracing::$tracing_macro;
15
16#[cfg(not(feature = "tracing"))]
17pub(crate) use noop_macro as $tracing_macro;
18 )+
19 };
20}
21use_tracing_macros!(debug, trace);
22
23pub mod settings;
24pub use settings::*;
25pub mod frame;
26pub use frame::*;
27pub mod capture;
28pub use capture::*;
29pub mod error;
30pub use error::*;
31
32mod utils {
33 pub mod picker;
34 pub use picker::*;
35 pub(crate) mod qpc;
36 pub(crate) use qpc::*;
37}
38pub use utils::*;