pub struct HDF5Group { /* private fields */ }Expand description
An HDF5 group — a container for datasets and other groups.
Groups can be navigated by name (like a filesystem). Internally, HDF5 uses two completely different mechanisms depending on the object header version:
- v1 groups: Symbol table message → B-tree v1 (type 0) + local heap for names
- v2 groups: Inline link messages (small groups) or link info message → fractal heap + B-tree v2 (large groups)
Implementations§
Source§impl HDF5Group
impl HDF5Group
Sourcepub fn new(
name: String,
header: ObjectHeader,
reader: Arc<dyn AsyncFileReader>,
raw_reader: Arc<dyn AsyncFileReader>,
superblock: Arc<Superblock>,
) -> Self
pub fn new( name: String, header: ObjectHeader, reader: Arc<dyn AsyncFileReader>, raw_reader: Arc<dyn AsyncFileReader>, superblock: Arc<Superblock>, ) -> Self
Create a new group from its parsed object header.
Sourcepub fn header(&self) -> &ObjectHeader
pub fn header(&self) -> &ObjectHeader
Access the object header.
Sourcepub async fn dataset(&self, name: &str) -> Result<HDF5Dataset>
pub async fn dataset(&self, name: &str) -> Result<HDF5Dataset>
Get a child dataset by name.
Sourcepub async fn child_header(&self, name: &str) -> Result<(u64, ObjectHeader)>
pub async fn child_header(&self, name: &str) -> Result<(u64, ObjectHeader)>
Get a child’s object header by name (returns the header without assuming whether it’s a group or dataset).
Navigate to a group by slash-separated path (e.g., “science/LSAR/GCOV”).
Sourcepub async fn group_names(&self) -> Result<Vec<String>>
pub async fn group_names(&self) -> Result<Vec<String>>
List all child group names.
Sourcepub async fn dataset_names(&self) -> Result<Vec<String>>
pub async fn dataset_names(&self) -> Result<Vec<String>>
List all child dataset names.
Sourcepub fn reader(&self) -> &Arc<dyn AsyncFileReader>
pub fn reader(&self) -> &Arc<dyn AsyncFileReader>
Access the reader.
Sourcepub fn superblock(&self) -> &Arc<Superblock>
pub fn superblock(&self) -> &Arc<Superblock>
Access the superblock.
Sourcepub async fn attributes(&self) -> Vec<Attribute>
pub async fn attributes(&self) -> Vec<Attribute>
Get all attributes attached to this group, resolving vlen data.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for HDF5Group
impl !RefUnwindSafe for HDF5Group
impl Send for HDF5Group
impl Sync for HDF5Group
impl Unpin for HDF5Group
impl UnsafeUnpin for HDF5Group
impl !UnwindSafe for HDF5Group
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more