Renishaw WDF¶
Status: Supported (scoped) · Vendor: Renishaw · Extensions:
.wdf
WDF is the native chunked container written by Renishaw’s WiRE software for inVia confocal Raman spectrometers. It stores single spectra, maps, line scans, depth profiles, time series and StreamLine acquisitions in one file. nirs4all-formats reads the spectral payload subset and emits one record per stored spectrum. The format is Raman, adjacent to the core NIRS point-spectrum scope; it is included for spectroscopy interchange and disambiguation.
Instruments & software¶
Produced by Renishaw WiRE on inVia (including Qontor and Apollo) Raman microscopes. Spatial maps, line scans, depth/Z scans, time series and StreamLine fast-mapping acquisitions all share the WDF container.
File structure¶
A WDF file is a sequence of named blocks. Every block starts with a 16-byte
header (name[4], block_uid: u32le, block_size: u64le), and the leading
WDF1 block is a fixed 512-byte file header. The reader sniffs the WDF1 magic
(never the extension) and reads:
WDF1fixed header — point count, capacity, stored spectrum count, accumulation count, scan and measurement type, spectral unit, laser wavenumber, application name/version, user and title;DATA— float32 ordinate payload (one spectrum after another);XLST— float32 spectral axis with leading data-type and unit codes;YLST— ordinate unit metadata when present;ORGN— navigation axes (spatial X/Y/Z, FocusTrack Z, acquisition time, exposure time, multiwell coordinates);WMAP— 48-byte map descriptor (map type, XYZ offsets/scales/sizes, linefocus size);WHTL— white-light image container metadata (not the pixel payload);MAP— derived analysis-block inventory with boundeddataRangeextraction.
What nirs4all-formats extracts¶
Signals — one
SpectralRecordper stored spectrum, each with a singleraw_countssignal typedRawCounts(counts unit when declared byYLST).Axis — values and unit from
XLST; unit code1maps to wavenumber (cm-1), codes2/3to wavelength (nm), others to anIndexaxis.Metadata — container fields plus per-record navigation copied from
ORGN:spatial_x/y/z,focus_track_z,time_filetime_100ns,elapsed_time_secondsand exposure/multiwell fields.WMAPaddsmap_width,map_height,map_x_index,map_y_indexand, forxylinemaps,spatial_distance.WHTLadds awhite_light_imageobject (JPEG MIME type, byte length, SHA-256, dimensions, JFIF density, EXIF fields).MAPblocks addmap_analysis_blocks, andmap_analysis_valuesper record when a decodeddataRangelength matches the spectrum count.Provenance & warnings — every record carries
renishaw_wdf_reverse_engineered_chunks; interrupted acquisitions and unnormalised map types are flagged as warnings.
Variants & support status¶
Variant |
Status |
Notes |
|---|---|---|
Single spectrum |
Supported |
One record. |
Regular map / line scan ( |
Supported |
WMAP-derived X/Y indices; line scans expose |
Time series |
Supported |
Elapsed time derived from FILETIME origin axis. |
FocusTrack acquisitions |
Supported |
FocusTrack Z copied to metadata. |
StreamLine fast mapping |
Supported |
Column-major map; one record per stored spectrum. |
Interrupted acquisition |
Supported |
Reads the stored count, preserves positions, warns about truncated capacity. |
|
Supported (scoped) |
Observed |
|
Detected / refused |
Refused with an explicit undefined-measurement error. |
Limitations & known gaps¶
The reader covers the spectral payload subset;
WHTLimages are described but pixels are not decoded into records.Derived
MAPanalysis values are surfaced as metadata only, because they are WiRE-computed output rather than primary acquisition data; only the observedf32le-tail PSET layout is decoded.Authoritative units/algorithms for derived blocks, broader
MAPlayouts and per-model inVia Qontor/Apollo fixtures are still wanted.Full-array conformance is pending (see below).
Reference readers¶
Layout and conventions cross-checked against rsciio.renishaw 0.13.0 (broad WDF
coverage, ORGN/WMAP conventions), renishawWiRE 0.1.16 / py-wdf-reader (the
single-spectrum and ORGN path) and SpectroChemPy read_wire (chunk and enum
cross-checking).
Samples & validation¶
Fifteen spectral fixtures under samples/raman_renishaw/ cover single, map,
line, depth/Z, FocusTrack, time-series, StreamLine and interrupted acquisitions;
renishaw_test_map2.wdf (400 records) and wire_depth.wdf (40 records, with two
MAP PSET dataRange analysis maps) are golden-backed. renishaw_test_undefined.wdf
and wire_undefined.wdf are negative fixtures that fail with the undefined
measurement_type=0 message. The probe reports renishaw-wdf at
Confidence::Definite. Full-array external conformance remains future work.