byteor_pipeline_backings_shm/
lib.rs1#![deny(missing_docs)]
2#![deny(unreachable_pub, rust_2018_idioms)]
3mod barriers;
15mod error;
16mod events_chain;
17mod fanout;
18#[cfg(feature = "journal")]
19mod journal;
20mod options;
21mod region;
22mod sequenced_slots;
23mod ss_internal;
24mod stage;
25mod subscriber;
26
27#[cfg(test)]
28mod tests;
29
30pub use barriers::{CursorBarrier, GatingBarrier};
31pub use error::BackingError;
32pub use events_chain::{
33 attach_events_mpsc_rx, attach_events_mpsc_tx, attach_events_rx, attach_events_tx,
34 ShmEventsChainRegion, ShmEventsMpscRx, ShmEventsMpscTx, ShmEventsRx, ShmEventsTx,
35};
36pub use fanout::{
37 attach_fanout_router, attach_fanout_rx, attach_fanout_tx, ShmFanoutRouter, ShmFanoutRx,
38 ShmFanoutTx,
39};
40
41#[cfg(feature = "journal")]
42pub use journal::{
43 attach_journal_publisher, attach_journal_subscriber_from, attach_journal_subscriber_tail,
44 ShmJournalPublisher, ShmJournalSubscriber,
45};
46pub use options::AttachOptions;
47pub use region::attach_sequenced_slots_region;
48pub use sequenced_slots::{
49 SequencedSlotsError, ShmSequencedSlots, ShmSequencedSlotsProducer, SingleRingSnapshot,
50};
51pub use stage::ShmSequencedSlotsStage;
52pub use subscriber::ShmSequencedSlotsSubscriber;
53
54pub fn attach_single_ring(
58 opts: &AttachOptions,
59 lane: &str,
60) -> Result<ShmSequencedSlots, BackingError> {
61 ShmSequencedSlots::attach(opts, lane)
62}