use crate::base_types::TgqeSourceCache;
#[cfg(feature = "renderer")]
use crate::channel::bus::TgqeBus;
#[cfg(feature = "renderer")]
use std::sync::atomic::AtomicU64;
use std::sync::{LazyLock, Mutex};
#[allow(non_upper_case_globals)]
pub static SourceManager: LazyLock<
Mutex<TgqeSourceCache>,
> = LazyLock::new(|| {
Mutex::from(TgqeSourceCache::new())
});
#[cfg(feature = "renderer")]
#[allow(non_upper_case_globals)]
pub static ICC: LazyLock<Mutex<TgqeBus>> =
LazyLock::new(|| {
Mutex::new(TgqeBus::new())
});
#[cfg(feature = "renderer")]
pub static ERROR_COUNTER: AtomicU64 =
AtomicU64::new(0);
#[cfg(any(
feature = "renderer",
feature = "store-to-db"
))]
#[allow(non_upper_case_globals)]
pub(crate) static Configure: LazyLock<
crate::modules::channel::configure::TgqeConfig,
> = LazyLock::new(crate::modules::channel::configure::TgqeConfig::load);
#[cfg(feature = "store-to-db")]
#[allow(non_upper_case_globals)]
pub static DBManager: LazyLock<
Mutex<crate::channel::sqlite::SQLite>,
> = LazyLock::new(|| {
Mutex::new(
crate::channel::sqlite::SQLite::new(
),
)
});