apstools SpecWriterCallback metadata plugin

Looks for #MD control line control lines. These lines contain metadata supplied to the bluesky RunEngine and recorded during the execution of a scan. The data are stored in a dictionary of each scan: scan.MD. If there are no #MD control lines, then scan.MD does not exist.

see https://apstools.readthedocs.io/en/latest/source/_filewriters.html#apstools.filewriters.SpecWriterCallback


#MD : Bluesky metadata from apstools SpecWriterCallback.

EXAMPLE:

#MD APSTOOLS_VERSION = 1.1.0
#MD BLUESKY_VERSION = 1.5.2
#MD EPICS_CA_MAX_ARRAY_BYTES = 1280000
#MD EPICS_HOST_ARCH = linux-x86_64
#MD OPHYD_VERSION = 1.3.2
#MD beamline_id = APS USAXS 9-ID-C
#MD datetime = 2019-04-19 10:04:44.400750
#MD login_id = usaxs@usaxscontrol.xray.aps.anl.gov
#MD pid = 27062
#MD proposal_id = testing Bluesky installation
#MD purpose = tuner
#MD tune_md = {'width': -0.004, 'initial_position': 8.824885, 'time_iso8601': '2019-04-19 10:04:44.402643'}
#MD tune_parameters = {'num': 31, 'width': -0.004, 'initial_position': 8.824885, 'peak_choice': 'com', 'x_axis': 'm_stage_r', 'y_axis': 'I0_USAXS'}
class spec2nexus.plugins.apstools_specwriter.MD_apstools[source]

#MD – Bluesky metadata from apstools SpecWriterCallback

process(text, scan, *args, **kws)[source]

read #MD lines from SPEC data file

writer(h5parent, writer, scan, nxclass=None, *args, **kws)[source]

Describe how to store this data in an HDF5 NeXus file