ReconData

Contents

ReconData#

class pulserver.recon.ReconData[source]#

Bases: object

The readouts of one reconstruction unit, as ReconPlugin.recon() receives them.

A unit is the set of readouts of one branch and encoding space that share every image counter not listed in the plugin’s axes; the plugin documents how a unit is closed. A unit is allocated on its first readout and released once ReconPlugin.recon() has returned.

Attributes:
  • branch (str) – The branch the unit belongs to.

  • data (ReconBuffer or None) – K-space of the imaging readouts, with the unit’s axes along the header’s encoded axes. None when the unit placed none: the plugin is not buffered, the header describes no encoding space, or every readout was calibration only.

  • ref (ReconBuffer or None) – K-space of the parallel-imaging calibration readouts, laid out as data but cropped along the phase-encode and partition axes to the lines the readouts cover, whose position on the grid is its origin; None when the unit has none. A readout flagged as calibration and imaging is in both buffers; one flagged as calibration only is in ref alone; a phase-correction readout is in neither.

  • counters (dict of str to int) – The unit’s image counters not listed in axes, by MRD name.

  • waveforms (tuple) – The waveforms received since the previous close; units that close together share them.

  • acquisitions (list) – Every readout the unit received, as received and in arrival order, whichever buffer it was placed in. All a plugin that is not buffered is given.

Examples

>>> import pulserver.recon as recon
>>> data = recon.ReconData("imaging", counters={"slice": 2})
>>> data.counters["slice"], data.data is None
(2, True)

Attributes