beamtime/nappFileList.m
- Fix h5 LensMode: translate numeric codes to descriptive text (e.g. 1 ->
T_HiPPHAXPES) to match what .ibw files already store, applied across all
three h5read fallback branches, not just the oldest-format one
beamtime/nappGenerateSpectra.m
- Bug fixes
beamtime/nappPlot.m
- Bug fixes
import/importData.m (new)
- Ground script for one beamtime: import (nappFileList,
nappGenerateSpectra), sample/spot and photon-energy assignment per row
range, campaign metadata (CustomProperties) and column
descriptions/units set inline, tidy-up, and export to .csv/.mat/.h5
(via nappExportH5). Leaves FileList in the workspace for PublishReport.m
and callOpenbisSync.m to run against afterward.
import/nappExportH5.m (new)
- Export FileList + campaign metadata + raw source files to a
self-contained HDF5 archive
- Low-level HDF5 API (H5F/H5G/H5D/H5A/H5T/H5S/H5P) to fix
H5FD_truncate/"too many open files" errors from the top-level
h5create/h5write functions each reopening the file internally
- Explicit rowIndex attribute per row group, since HDF5 group listing
order isn't guaranteed to match table row order
openBIS/ (new)
- nappSyncToOpenbis.py, callOpenbisSync.m, testpybis.m, README.md
- openBIS sync pipeline: create-or-update per row matched by $name,
correct lowercase property codes, timestamp formatting, parent linking,
raw file upload, plot/photo/video thumbnail embedding, config/engine
split for maintainability -- see README.md for full details
input_table so that string variables are changed as cellstr and
multicolumn variables (e.g., scientaEkinRange_eV) are splitted into
independent variables. 2) we now support when there is no dataset columns (arrays) by creating a dummy dataset called DS_EMPTY. This is required to create a new h5 file for the first time using h5create.