pcdsdevices.areadetector.plugins.StatsPlugin

class pcdsdevices.areadetector.plugins.StatsPlugin(*args, **kwargs)
Ophyd Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

configuration_names

ArrayAttributeSignal

config

Inherited from StatsPlugin

array_counter (ADComponent)

EpicsSignalWithRBV

ArrayCounter

[ArrayCounter r/w longout] Counter that increments by 1 each time an NDArray callback is processed

normal

Inherited from StatsPlugin

array_rate (ADComponent)

EpicsSignalRO

ArrayRate_RBV

[ArrayRate_RBV r/o calc] Rate (Hz) at which ArrayCounter is incrementing. Computed in database.

normal

Inherited from StatsPlugin

asyn_io (ADComponent)

EpicsSignal

AsynIO

[AsynIO N/A asyn] asyn record to control debugging (asynTrace)

normal

Inherited from StatsPlugin

nd_attributes_file (ADComponent)

EpicsSignal

NDAttributesFile

[NDAttributesFile r/w waveform]

The name of an XML file defining the PVAttributes and paramAttributes to be added to each NDArray by this plugin. The format of the XML file is described in the documentation for asynNDArrayDriver::readNDAttributesFile().

normal

Inherited from StatsPlugin

pool_alloc_buffers (ADComponent)

EpicsSignalRO

PoolAllocBuffers

[PoolAllocBuffers r/o longin] The number of NDArrays this plugin has currently allocated.

normal

Inherited from StatsPlugin

pool_free_buffers (ADComponent)

EpicsSignalRO

PoolFreeBuffers

[PoolFreeBuffers r/o longin] The number of free NDArrays this plugin has in its NDArrayPool.

normal

Inherited from StatsPlugin

pool_max_buffers (ADComponent)

EpicsSignalRO

PoolMaxBuffers

[PoolMaxBuffers r/o longin] The maximum number of NDArrays this plugin is allowed to allocate.

normal

Inherited from StatsPlugin

pool_max_mem (ADComponent)

EpicsSignalRO

PoolMaxMem

[PoolMaxMem r/o ai] The maximum amount of NDArrayPool memory this plugin is allowed to allocate.

normal

Inherited from StatsPlugin

pool_used_buffers (ADComponent)

EpicsSignalRO

PoolUsedBuffers

[PoolUsedBuffers N/A calc]

The number of used NDArrays this plugin has in its NDArrayPool. Calculated from PoolAllocBuffers and PoolFreeBuffers.

normal

Inherited from StatsPlugin

pool_used_mem (ADComponent)

EpicsSignalRO

PoolUsedMem

[PoolUsedMem r/o ai] The actual amount of NDArrayPool memory this plugin is currently using.

normal

Inherited from StatsPlugin

port_name (ADComponent)

EpicsSignalRO

PortName_RBV

[PortName_RBV r/o stringin] asyn port name

config

Inherited from StatsPlugin

asyn_pipeline_config

ArrayAttributeSignal

config

Inherited from StatsPlugin

width (ADComponent)

EpicsSignalRO

ArraySize0_RBV

[ArraySize0_RBV r/o longin] First dimension of NDArray callback data

normal

Inherited from StatsPlugin

height (ADComponent)

EpicsSignalRO

ArraySize1_RBV

[ArraySize1_RBV r/o longin] Second dimension of NDArray callback data

normal

Inherited from StatsPlugin

depth (ADComponent)

EpicsSignalRO

ArraySize2_RBV

[ArraySize2_RBV r/o longin] Third dimension of NDArray callback data

normal

Inherited from StatsPlugin

array_size (DDC)

ArraySize

(See below)

normal

Inherited from StatsPlugin

bayer_pattern (ADComponent)

EpicsSignalRO

BayerPattern_RBV

[BayerPattern_RBV r/o mbbi] BayerPattern of last NDArray callback data (NDBayerPattern_t).

normal

Inherited from StatsPlugin

blocking_callbacks (ADComponent)

EpicsSignalWithRBV

BlockingCallbacks

[BlockingCallbacks r/w bo]

0 = callbacks from the driver do not block; the NDArray data is put on a queue and the callback processes in its own thread.

1 = callbacks from the driver block; the callback processes in the driver callback thread.

config

Inherited from StatsPlugin

color_mode (ADComponent)

EpicsSignalRO

ColorMode_RBV

[ColorMode_RBV r/o mbbi] Color mode of last NDArray callback data (NDColorMode_t).

normal

Inherited from StatsPlugin

data_type (ADComponent)

EpicsSignalRO

DataType_RBV

[DataType_RBV r/o mbbi] Data type of last NDArray callback data (NDDataType_t).

normal

Inherited from StatsPlugin

dim0_sa (ADComponent)

EpicsSignal

Dim0SA

normal

Inherited from StatsPlugin

dim1_sa (ADComponent)

EpicsSignal

Dim1SA

normal

Inherited from StatsPlugin

dim2_sa (ADComponent)

EpicsSignal

Dim2SA

normal

Inherited from StatsPlugin

dim_sa (DDC)

DimSa

(See below)

normal

Inherited from StatsPlugin

dimensions (ADComponent)

EpicsSignalRO

Dimensions_RBV

[Dimensions_RBV r/o waveform] Dimensions in last NDArray callback data

normal

Inherited from StatsPlugin

dropped_arrays (ADComponent)

EpicsSignalWithRBV

DroppedArrays

[DroppedArrays r/w longout]

Counter that increments by 1 each time an NDArray callback occurs when NDPluginDriverBlockingCallbacks=0 and the plugin driver queue is full, so the callback cannot be processed.

normal

Inherited from StatsPlugin

enable (ADComponent)

EpicsSignalWithRBV

EnableCallbacks

[EnableCallbacks r/w bo]

Enable (1) or disable (0) callbacks from the driver to this plugin. If callbacks are disabled then the plugin will normally be idle and consume no CPU resources.

config

Inherited from StatsPlugin

min_callback_time (ADComponent)

EpicsSignalWithRBV

MinCallbackTime

[MinCallbackTime r/w ao]

The minimum time in seconds between calls to processCallbacks. Any callbacks occuring before this minimum time has elapsed will be ignored. 0 means no minimum time, i.e. process all callbacks.

normal

Inherited from StatsPlugin

nd_array_address (ADComponent)

EpicsSignalWithRBV

NDArrayAddress

[NDArrayAddress r/w longout]

asyn port address for NDArray driver that will make callbacks to this plugin. This address can be changed at run time, connecting the plugin to a different address in the NDArray driver.

normal

Inherited from StatsPlugin

nd_array_port (ADComponent)

EpicsSignalWithRBV

NDArrayPort

[NDArrayPort r/w stringout]

asyn port name for NDArray driver that will make callbacks to this plugin. This port can be changed at run time, connecting the plugin to a different NDArray driver.

config

Inherited from StatsPlugin

ndimensions (ADComponent)

EpicsSignalRO

NDimensions_RBV

[NDimensions_RBV r/o longin] Number of dimensions in last NDArray callback data

normal

Inherited from StatsPlugin

plugin_type (ADComponent)

EpicsSignalRO

PluginType_RBV

[PluginType_RBV r/o stringin] A string describing the plugin type.

config

Inherited from StatsPlugin

queue_free (ADComponent)

EpicsSignal

QueueFree

[QueueFree r/o longin] The number of free queue elements.

normal

Inherited from StatsPlugin

queue_free_low (ADComponent)

EpicsSignal

QueueFreeLow

normal

Inherited from StatsPlugin

queue_size (ADComponent)

EpicsSignal

QueueSize

[QueueSize r/o longin] The total queue size for callbacks when BlockingCallbacks=0.

normal

Inherited from StatsPlugin

queue_use (ADComponent)

EpicsSignal

QueueUse

[QueueUse r/o calc] The number of used queue elements.

normal

Inherited from StatsPlugin

queue_use_high (ADComponent)

EpicsSignal

QueueUseHIGH

normal

Inherited from StatsPlugin

queue_use_hihi (ADComponent)

EpicsSignal

QueueUseHIHI

normal

Inherited from StatsPlugin

time_stamp (ADComponent)

EpicsSignalRO

TimeStamp_RBV

[TimeStamp_RBV r/o ai] Time stamp number of last NDArray callback data

normal

Inherited from StatsPlugin

unique_id (ADComponent)

EpicsSignalRO

UniqueId_RBV

[UniqueId_RBV r/o longin] Unique ID number of last NDArray callback data

normal

Inherited from StatsPlugin

bgd_width (ADComponent)

EpicsSignalWithRBV

BgdWidth

[BgdWidth r/w longout]

Width of the background in pixels to use when computing net counts. 0=no background subtraction, so the net counts is the same as the total counts.

config

Inherited from StatsPlugin

centroid_threshold (ADComponent)

EpicsSignalWithRBV

CentroidThreshold

[CentroidThreshold r/w ao]

Threshold used when computing the centroid statistics. All array elements less than this value are set to 0 for computing the centroid statistics. It is important to set this value to ignore the “background” when computing the position and size of a “beam” image, for example.

config

Inherited from StatsPlugin

centroid (DDC)

Centroid

(See below)

normal

Inherited from StatsPlugin

compute_centroid (ADComponent)

EpicsSignalWithRBV

ComputeCentroid

[ComputeCentroid r/w bo]

Flag to control whether to compute the centroid statistics (0=No, 1=Yes). The centroids are computed from the average row and column profiles above the centroid threshold. These calculations are also quite fast, since they just involve addition operations for each array element.

config

Inherited from StatsPlugin

compute_histogram (ADComponent)

EpicsSignalWithRBV

ComputeHistogram

[ComputeHistogram r/w bo]

Flag to control whether to compute the histogram for this array (0=No, 1=Yes). Not computing the histogram reduces CPU load.

config

Inherited from StatsPlugin

compute_profiles (ADComponent)

EpicsSignalWithRBV

ComputeProfiles

[ComputeProfiles r/w bo] Flag to control whether to compute the profiles for this array (0=No, 1=Yes).

config

Inherited from StatsPlugin

compute_statistics (ADComponent)

EpicsSignalWithRBV

ComputeStatistics

[ComputeStatistics r/w bo]

Flag to control whether to compute statistics for this array (0=No, 1=Yes). Not computing statistics reduces CPU load. Basic statistics computations are quite fast, since they involve mostly double precision addition, with 1 multiply to compute sigma, per array element.

config

Inherited from StatsPlugin

cursor (DDC)

Cursor

(See below)

normal

Inherited from StatsPlugin

hist_entropy (ADComponent)

EpicsSignalRO

HistEntropy_RBV

[HistEntropy_RBV r/o ai]

Entropy of the image. This is a measure of the sharpness of the histogram, and is often a useful figure of merit for determining sharpness of focus, etc. It is defined as -SUM(BIN[i]*log(BIN[i]), where the sum is over the number of bins in the histogram and BIN[i] is the number of elements in bin i.

config

Inherited from StatsPlugin

hist_max (ADComponent)

EpicsSignalWithRBV

HistMax

[HistMax r/w ao]

Maximum value for the histogram. All values greater than or equal to this will be in the last bin of the histogram.

config

Inherited from StatsPlugin

hist_min (ADComponent)

EpicsSignalWithRBV

HistMin

[HistMin r/w ao]

Minimum value for the histogram. All values less than or equal to this will be in the first bin of the histogram.

config

Inherited from StatsPlugin

hist_size (ADComponent)

EpicsSignalWithRBV

HistSize

[HistSize r/w longout] Number of elements (bins) in the histogram

normal

Inherited from StatsPlugin

histogram (ADComponent)

EpicsSignalRO

Histogram_RBV

[Histogram_RBV r/o waveform] Histogram array, i.e. counts in each histogram bin.

normal

Inherited from StatsPlugin

max_size (DDC)

MaxSize

(See below)

normal

Inherited from StatsPlugin

max_value (ADComponent)

EpicsSignalRO

MaxValue_RBV

[MaxValue_RBV r/o ai] Maximum value in any element in the array

normal

Inherited from StatsPlugin

max_xy (DDC)

MaxXy

(See below)

normal

Inherited from StatsPlugin

mean_value (ADComponent)

EpicsSignalRO

MeanValue_RBV

[MeanValue_RBV r/o ai] Mean value in the array

normal

Inherited from StatsPlugin

min_value (ADComponent)

EpicsSignalRO

MinValue_RBV

[MinValue_RBV r/o ai] Minimum value in any element in the array

normal

Inherited from StatsPlugin

min_xy (DDC)

MinXy

(See below)

normal

Inherited from StatsPlugin

net (ADComponent)

EpicsSignalRO

Net_RBV

[Net_RBV r/o ai]

Net (background subtracted) total of all elements in the array. The background is calculated by determining the average counts per array element in a border around the array of width NDPluginStatsBgdWidth. This average background counts per element is then subtracted from all elements inside the array. If NDPluginStatsBgdWidth is ≤ 0 then no background is computed. The net counts is available as an ai record. The net counts is also available as epicsInt32 values in an mca record via callbacks to the drvFastSweep driver. The mca record is very useful for on-the-fly data acquisition of the net counts in the detector or in an ROI.

normal

Inherited from StatsPlugin

profile_average (DDC)

ProfileAverage

(See below)

normal

Inherited from StatsPlugin

profile_centroid (DDC)

ProfileCentroid

(See below)

normal

Inherited from StatsPlugin

profile_cursor (DDC)

ProfileCursor

(See below)

normal

Inherited from StatsPlugin

profile_size (DDC)

ProfileSize

(See below)

normal

Inherited from StatsPlugin

profile_threshold (DDC)

ProfileThreshold

(See below)

normal

Inherited from StatsPlugin

set_xhopr (ADComponent)

EpicsSignal

SetXHOPR

normal

Inherited from StatsPlugin

set_yhopr (ADComponent)

EpicsSignal

SetYHOPR

normal

Inherited from StatsPlugin

sigma_xy (ADComponent)

EpicsSignalRO

SigmaXY_RBV

[SigmaXY_RBV r/o ai]

This is the normalized value of sigmaXY, i.e. sigmaXY/(sigmaX * sigmaY). This is often called the correlation coefficient, r. It is zero if the X and Y profiles are not correlated, meaning that the distribution is not tilted with respect to the X and Y axes.

normal

Inherited from StatsPlugin

sigma_x (ADComponent)

EpicsSignalRO

SigmaX_RBV

[SigmaX_RBV r/o ai] Sigma X (width) of the distribution above the centroid threshold.

normal

Inherited from StatsPlugin

sigma_y (ADComponent)

EpicsSignalRO

SigmaY_RBV

[SigmaY_RBV r/o ai] Sigma Y (height) of the distribution above the centroid threshold.

normal

Inherited from StatsPlugin

sigma (ADComponent)

EpicsSignalRO

Sigma_RBV

[Sigma_RBV r/o ai] Sigma (standard deviation) of all elements in the array

normal

Inherited from StatsPlugin

ts_acquiring (ADComponent)

EpicsSignal

TSAcquiring

[TSAcquiring r/o bi] Indicates status of time-series data acquisition. Values are 0=Done and 1=Acquiring.

normal

Inherited from StatsPlugin

ts_centroid (DDC)

TsCentroid

(See below)

normal

Inherited from StatsPlugin

ts_control (ADComponent)

EpicsSignal

TSControl

[TSControl r/w mbbo]

Controls time-series data collection. The enum choices are:

Erase/Start: Clears all time-series arrays, sets TS_CURRENT_POINT=0, and starts

time-series data collection.

Start: Starts time-series data collection without clearing arrays or modifying

TS_CURRENT_POINT. Used to restart collection after a Stop operation.

Stop: Stops times-series data collection. Performs callbacks on all time-series

waveform records.

Read: Performs callbacks on all time-series waveform records, updating the values.

config

Inherited from StatsPlugin

ts_current_point (ADComponent)

EpicsSignal

TSCurrentPoint

[TSCurrentPoint r/o longin]

The current time-series point. If TSCurrentPoint reaches TSNumPoints then time-series acquisition is automatically stopped, and callbacks are done on all time-series waveform records, updating the values. This means that even if TSRead has SCAN=Passive that the waveform records will update when time-series acquisition is complete.

normal

Inherited from StatsPlugin

ts_max_value (ADComponent)

EpicsSignal

TSMaxValue

normal

Inherited from StatsPlugin

ts_max (DDC)

TsMax

(See below)

normal

Inherited from StatsPlugin

ts_mean_value (ADComponent)

EpicsSignal

TSMeanValue

normal

Inherited from StatsPlugin

ts_min_value (ADComponent)

EpicsSignal

TSMinValue

normal

Inherited from StatsPlugin

ts_min (DDC)

TsMin

(See below)

normal

Inherited from StatsPlugin

ts_net (ADComponent)

EpicsSignal

TSNet

normal

Inherited from StatsPlugin

ts_num_points (ADComponent)

EpicsSignal

TSNumPoints

[TSNumPoints r/w longout]

Controls the number of time-series points to collect. There is no maximum value, the time-series arrays in the plugin are freed and reallocated each time this value is changed. However, the size of the waveform records is fixed when the IOC is started, so NELM in those records must be large enough for the largest time-series needed.

config

Inherited from StatsPlugin

ts_read (ADComponent)

EpicsSignal

TSRead

[TSRead r/w longout]

Sends the “Read” command to the TSControl record above. This record can be periodically processed to update the time-series waveform records. It is scan disabled if TSAcquiring=Done, so that updates are only performed when time-series acquisition is in progress.

normal

Inherited from StatsPlugin

ts_sigma (ADComponent)

EpicsSignal

TSSigma

normal

Inherited from StatsPlugin

ts_sigma_x (ADComponent)

EpicsSignal

TSSigmaX

normal

Inherited from StatsPlugin

ts_sigma_xy (ADComponent)

EpicsSignal

TSSigmaXY

normal

Inherited from StatsPlugin

ts_sigma_y (ADComponent)

EpicsSignal

TSSigmaY

normal

Inherited from StatsPlugin

ts_total (ADComponent)

EpicsSignal

TSTotal

normal

Inherited from StatsPlugin

total (ADComponent)

EpicsSignalRO

Total_RBV

[Total_RBV r/o ai]

Sum (total) of all elements in the array. This is available as an ai record. The total counts are also available as epicsInt32 values in an mca record via callbacks to the drvFastSweep driver. The mca record is very useful for on-the-fly data acquisition of the total counts in the detector or in an ROI.

normal

Inherited from StatsPlugin

StatsPlugin.array_size (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

depth

EpicsSignalRO

ArraySize2_RBV

config

Inherited from StatsPlugin

height

EpicsSignalRO

ArraySize1_RBV

config

Inherited from StatsPlugin

width

EpicsSignalRO

ArraySize0_RBV

config

Inherited from StatsPlugin

StatsPlugin.dim_sa (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

dim0

EpicsSignal

Dim0SA

config

dim1

EpicsSignal

Dim1SA

config

dim2

EpicsSignal

Dim2SA

config

StatsPlugin.centroid (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

CentroidX_RBV

config

y

EpicsSignalRO

CentroidY_RBV

config

StatsPlugin.cursor (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalWithRBV

CursorX

config

y

EpicsSignalWithRBV

CursorY

config

StatsPlugin.max_size (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignal

MaxSizeX

config

y

EpicsSignal

MaxSizeY

config

StatsPlugin.max_xy (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

MaxX_RBV

config

y

EpicsSignalRO

MaxY_RBV

config

StatsPlugin.min_xy (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

MinX_RBV

config

y

EpicsSignalRO

MinY_RBV

config

StatsPlugin.profile_average (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

ProfileAverageX_RBV

config

y

EpicsSignalRO

ProfileAverageY_RBV

config

StatsPlugin.profile_centroid (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

ProfileCentroidX_RBV

config

y

EpicsSignalRO

ProfileCentroidY_RBV

config

StatsPlugin.profile_cursor (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

ProfileCursorX_RBV

config

y

EpicsSignalRO

ProfileCursorY_RBV

config

StatsPlugin.profile_size (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

ProfileSizeX_RBV

config

y

EpicsSignalRO

ProfileSizeY_RBV

config

StatsPlugin.profile_threshold (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignalRO

ProfileThresholdX_RBV

config

y

EpicsSignalRO

ProfileThresholdY_RBV

config

StatsPlugin.ts_centroid (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignal

TSCentroidX

config

y

EpicsSignal

TSCentroidY

config

StatsPlugin.ts_max (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignal

TSMaxX

config

y

EpicsSignal

TSMaxY

config

StatsPlugin.ts_min (DDC) Dynamic Device Components

Attribute

Class

Suffix

Docs

Kind

Notes

x

EpicsSignal

TSMinX

config

y

EpicsSignal

TSMinY

config

Methods

configure(d: Dict[str, Any]) Tuple[Dict[str, Any], Dict[str, Any]]

Configure the device for something during a run

This default implementation allows the user to change any of the configuration_attrs. Subclasses might override this to perform additional input validation, cleanup, etc.

Parameters:

d (dict) – The configuration dictionary. To specify the order that the changes should be made, use an OrderedDict.

Returns:

  • (old, new) tuple of dictionaries

  • Where old and new are pre- and post-configure configuration states.

describe() OrderedDictType[str, Dict[str, Any]]

Provide schema and meta-data for read().

This keys in the OrderedDict this method returns must match the keys in the OrderedDict return by read().

This provides schema related information, (ex shape, dtype), the source (ex PV name), and if available, units, limits, precision etc.

Returns:

data_keys (OrderedDict) – The keys must be strings and the values must be dict-like with the event_model.event_descriptor.data_key schema.

disable_on_stage()

when the plugin is staged, ensure that it is disabled.

a convenience method for adding `('enable', 0) to stage_sigs

enable_on_stage()

when the plugin is staged, ensure that it is enabled.

a convenience method for adding (‘enable’, 1) to stage_sigs

ensure_blocking()

Ensure that if plugin is enabled after staging, callbacks block.

a convenience method for adding `('blocking_callbacks', 1) to stage_sigs

ensure_nonblocking()

Ensure that if plugin is enabled after staging, callbacks don’t block.

a convenience method for adding `('blocking_callbacks', 0) to stage_sigs

find_signal(text, use_re=False, case_sensitive=False, match_fcn=None, f=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>)

Search through the signal docs on this detector for the string text

Parameters:
  • text (str) – Text to find

  • use_re (bool, optional) – Use regular expressions

  • case_sensitive (bool, optional) – Case sensitive search

  • match_fcn (callable, optional) – Function to call when matches are found Defaults to a function that prints matches to f

  • f (file-like, optional) – File-like object that the default match function prints to (Defaults to sys.stdout)

get(**kwargs)

Get the value of all components in the device

Keyword arguments are passed onto each signal.get(). Components beginning with an underscore will not be included.

get_asyn_digraph()

Get the directed graph of the ASYN ports

Returns:

  • G (networkx.DiGraph) – Directed graph of pipelines

  • port_map (dict) – Mapping between port_name and ADBase objects

get_asyn_port_dictionary()

Return port name : component map

Returns:

port_map (dict) – Mapping between port_name and ADBase objects

get_plugin_by_asyn_port(port_name)

Get the plugin which has the given asyn port name

Parameters:

port_name (str) – The port name to search for

Returns:

ret (ADBase or None) – Either the requested plugin or None if not found

missing_plugins()

Find missing ports

read() OrderedDictType[str, Dict[str, Any]]

Read data from the device.

This method is expected to be as instantaneous as possible, with any substantial acquisition time taken care of in trigger().

The OrderedDict returned by this method must have identical keys (in the same order) as the OrderedDict returned by describe().

By convention, the first key in the return is the ‘primary’ key and maybe used by heuristics in bluesky.

The values in the ordered dictionary must be dict (-likes) with the keys {'value', 'timestamp'}. The 'value' may have any type, the timestamp must be a float UNIX epoch timestamp in UTC.

Returns:

data (OrderedDict) – The keys must be strings and the values must be dict-like with the keys {'value', 'timestamp'}

read_configuration()

Dictionary mapping names to value dicts with keys: value, timestamp

To control which fields are included, change the Component kinds on the device, or modify the configuration_attrs list.

stop(*, success=False)

Stop the Device and all (instantiated) subdevices

summary()
trigger() StatusBase

Trigger the device and return status object.

This method is responsible for implementing ‘trigger’ or ‘acquire’ functionality of this device.

If there is an appreciable time between triggering the device and it being able to be read (via the read() method) then this method is also responsible for arranging that the StatusBase object returned by this method is notified when the device is ready to be read.

If there is no delay between triggering and being readable, then this method must return a StatusBase object which is already completed.

Returns:

status (StatusBase) – StatusBase object which will be marked as complete when the device is ready to be read.

validate_asyn_ports()

Validate that all components of pipeline are known

Raises:

RuntimeError – If there any input ports to known plugins where the source is not known to ophyd

visualize_asyn_digraph(ax=None, *args, **kwargs)

This generates a figure showing the current asyn port layout.

This method generates a plot showing all of the currently enabled Areadetector plugin asyn ports and their relationships. The current ports and relationships are found using self.get_asyn_digraph.

Parameters:
  • ax (matplotlib axes) – if None (default) then a new figure is created otherwise it is plotted on the specified axes.

  • *args (networkx.draw_networkx args and kwargs.) – For the allowed args and kwargs see the networkx.draw_networkx documentation

  • **kwargs (networkx.draw_networkx args and kwargs.) –

    For the allowed args and kwargs see the networkx.draw_networkx documentation

Attributes

ad_root
array_pixels

The total number of pixels, calculated from array_size.

configuration_attrs
connected
hints
kind
source_plugin
subscriptions: ClassVar[FrozenSet[str]] = frozenset({'acq_done'})