% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/RcppExports.R
\name{bdgetDatasetsList_hdf5}
\alias{bdgetDatasetsList_hdf5}
\title{List Datasets in HDF5 Group}
\usage{
bdgetDatasetsList_hdf5(
  filename,
  group = NULL,
  prefix = NULL,
  recursive = FALSE
)
}
\arguments{
\item{filename}{Character string. Path to the HDF5 file.}

\item{group}{Character string or \code{NULL}. Group path within the
HDF5 file. If \code{NULL} (default), the entire file is traversed
recursively and dataset paths are returned relative to the root
(e.g. \code{"INPUT/A"}, \code{"RESULTS/SVD/d"}).}

\item{prefix}{Optional character string. Only return datasets whose
name starts with this prefix.}

\item{recursive}{Logical. If \code{TRUE}, recurse into subgroups and
return full relative paths. Ignored when \code{group = NULL} (always
recursive). Default \code{FALSE}.}
}
\value{
Character vector containing dataset names.
}
\description{
Retrieves a list of all datasets within a specified HDF5 group, with optional
filtering by prefix or suffix.
}
\details{
This function provides flexible dataset listing capabilities for HDF5 files.
Key features:
\itemize{
\item Listing options:
\itemize{
\item All datasets in a group
\item Datasets matching a prefix
\item Datasets matching a suffix
}
\item Implementation features:
\itemize{
\item Safe HDF5 file operations
\item Memory-efficient implementation
\item Comprehensive error handling
\item Read-only access to files
}
}

The function opens the HDF5 file in read-only mode to ensure data safety.
}
\examples{
\donttest{
fn <- tempfile(fileext = ".h5")
X  <- hdf5_create_matrix(fn, "INPUT/A",  data = matrix(rnorm(100), 10, 10))
Y  <- hdf5_create_matrix(fn, "INPUT/B",  data = matrix(rnorm(100), 10, 10))
Z  <- hdf5_create_matrix(fn, "RESULTS/C",data = matrix(rnorm(100), 10, 10))

# All datasets in the file (recursive from root)
bdgetDatasetsList_hdf5(fn)

# Only datasets in INPUT group
bdgetDatasetsList_hdf5(fn, group = "INPUT")

# INPUT group, recursive (same result here, no subgroups)
bdgetDatasetsList_hdf5(fn, group = "INPUT", recursive = TRUE)

# Filter by prefix
bdgetDatasetsList_hdf5(fn, group = "INPUT", prefix = "A")

hdf5_close_all()
unlink(fn)
}

}
\references{
\itemize{
\item The HDF Group. (2000-2010). HDF5 User's Guide.
}
}
