indexbus_kit/lanes/journal/
shm_journal.rs

1use std::path::Path;
2
3use crate::errors::{Error, Result};
4
5use indexbus_transport_shm::{JournalOpenOptions, JournalRegion4};
6
7/// Open a SHM journal region at `path` using v1 defaults (4 subscribers).
8///
9/// `blocking=true` requires wake sections; `stats=true` enables per-region stats tracking.
10pub fn open_shm_journal_region4(
11    path: &Path,
12    blocking: bool,
13    stats: bool,
14) -> Result<JournalRegion4> {
15    JournalRegion4::open_path_with(
16        path,
17        JournalOpenOptions::new().blocking(blocking).stats(stats),
18    )
19    .map_err(Error::from)
20}