use tokio::sync::mpsc;
mod async_to_sync;
mod sync_to_async;
pub(crate) use async_to_sync::*;
pub(crate) use sync_to_async::*;
pub(crate) type AsyncToSyncInlet = mpsc::Sender<AsyncToSyncMessage>;
pub(crate) type AsyncToSyncOutlet = mpsc::Receiver<AsyncToSyncMessage>;
pub(crate) type SyncToAsyncInlet = mpsc::Sender<SyncToAsyncMessage>;
pub(crate) type SyncToAsyncOutlet = mpsc::Receiver<SyncToAsyncMessage>;
#[derive(Debug)]
pub(crate) enum AsyncToSyncMessage {
CreateCache(CreateCache),
AllocateDataset(AllocateDataset),
InitializeDataset(InitializeDataset),
NewCCJob(NewCCJob),
PinThread(PinThread),
Pause,
Stop,
}
#[derive(Debug)]
pub(crate) enum SyncToAsyncMessage {
CacheCreated(CacheCreated),
DatasetAllocated(DatasetAllocated),
DatasetInitialized,
Paused,
}