cyfs_lib/stack/
uni_stack.rs1use crate::*;
2
3use std::sync::Arc;
4
5pub trait UniCyfsStack: Send + Sync {
6 fn non_service(&self) -> &NONOutputProcessorRef;
7 fn ndn_service(&self) -> &NDNOutputProcessorRef;
8 fn crypto_service(&self) -> &CryptoOutputProcessorRef;
9 fn util_service(&self) -> &UtilOutputProcessorRef;
10 fn trans_service(&self) -> &TransOutputProcessorRef;
11
12 fn router_handlers(&self) -> &RouterHandlerManagerProcessorRef;
13 fn router_events(&self) -> &RouterEventManagerProcessorRef;
14
15 fn root_state(&self) -> &GlobalStateOutputProcessorRef;
16 fn root_state_accessor(&self) -> &GlobalStateAccessorOutputProcessorRef;
17
18 fn local_cache(&self) -> &GlobalStateOutputProcessorRef;
19 fn local_cache_accessor(&self) -> &GlobalStateAccessorOutputProcessorRef;
20
21 fn root_state_meta(&self) -> &GlobalStateMetaOutputProcessorRef;
22 fn local_cache_meta(&self) -> &GlobalStateMetaOutputProcessorRef;
23}
24
25pub type UniCyfsStackRef = Arc<dyn UniCyfsStack>;