pcdsdevices.areadetector.cam.FeeOpalCam
- class pcdsdevices.areadetector.cam.FeeOpalCam(prefix='', *, name, kind=None, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
Opal camera used in the FEE for the PIMs.
Attribute
Class
Suffix
Docs
Kind
Notes
configuration_names
ArrayAttributeSignal
config
Inherited from
CamBase
array_counter
SynSignal
normal
Inherited from
CamBase
array_rate
EpicsSignalRO
FrameRate
normal
Inherited from
CamBase
asyn_io (ADComponent)
EpicsSignal
AsynIO
[AsynIO N/A asyn] asyn record to control debugging (asynTrace)
normal
Inherited from
CamBase
nd_attributes_file
SynSignal
normal
Inherited from
CamBase
pool_alloc_buffers
SynSignal
normal
Inherited from
CamBase
pool_free_buffers
SynSignal
normal
Inherited from
CamBase
pool_max_buffers
SynSignal
normal
Inherited from
CamBase
pool_max_mem
SynSignal
normal
Inherited from
CamBase
pool_used_buffers
SynSignal
normal
Inherited from
CamBase
pool_used_mem
SynSignal
normal
Inherited from
CamBase
port_name
SynSignal
normal
Inherited from
CamBase
acquire
EpicsSignal
Acquire
normal
Inherited from
CamBase
acquire_period (ADComponent)
AcquirePeriod
[AcquirePeriod r/w ao] Acquisition period between images
normal
Inherited from
CamBase
acquire_time (ADComponent)
AcquireTime
[AcquireTime r/w ao] Acquisition time per image
normal
Inherited from
CamBase
array_callbacks
SynSignal
normal
Inherited from
CamBase
array_size
SynSignal
normal
Inherited from
CamBase
array_size_bytes
SynSignal
normal
Inherited from
CamBase
bin_x (ADComponent)
BinX
[BinX r/w longout] Binning in the X direction
normal
Inherited from
CamBase
bin_y (ADComponent)
BinY
[BinY r/w longout] Binning in the Y direction
normal
Inherited from
CamBase
color_mode
SynSignal
normal
Inherited from
CamBase
data_type
SynSignal
normal
Inherited from
CamBase
detector_state (ADComponent)
EpicsSignalRO
DetectorState_RBV
[DetectorState_RBV r/o mbbi] Acquisition status (ADStatus_t)
normal
Inherited from
CamBase
frame_type (ADComponent)
FrameType
[FrameType r/w mbbo] Frame type (ADFrameType_t).
normal
Inherited from
CamBase
gain (ADComponent)
Gain
[Gain r/w ao] Detector gain
normal
Inherited from
CamBase
image_mode (ADComponent)
ImageMode
[ImageMode r/w mbbo] Image mode (ADImageMode_t).
normal
Inherited from
CamBase
manufacturer (ADComponent)
EpicsSignalRO
Manufacturer_RBV
[Manufacturer_RBV r/o stringin] Detector manufacturer name
normal
Inherited from
CamBase
max_size (DDC)
MaxSize
(See below)
normal
Inherited from
CamBase
min_x (ADComponent)
MinX
- [MinX r/w longout]
First pixel to read in the X direction.
0 is the first pixel on the detector.
normal
Inherited from
CamBase
min_y (ADComponent)
MinY
- [MinY r/w longout]
First pixel to read in the Y direction. 0 is the first pixel on the detector.
normal
Inherited from
CamBase
model (ADComponent)
EpicsSignalRO
Model_RBV
[Model_RBV r/o stringin] Detector model name
normal
Inherited from
CamBase
num_exposures (ADComponent)
NumExposures
[NumExposures r/w longout] Number of exposures per image to acquire
normal
Inherited from
CamBase
num_exposures_counter (ADComponent)
EpicsSignalRO
NumExposuresCounter_RBV
- [NumExposuresCounter_RBV r/o longin]
Counter that increments by 1 each time an exposure is acquired for the current image. Driver resets to 0 when acquisition is started.
normal
Inherited from
CamBase
num_images (ADComponent)
NumImages
[NumImages r/w longout] Number of images to acquire in one acquisition sequence
normal
Inherited from
CamBase
num_images_counter (ADComponent)
EpicsSignalRO
NumImagesCounter_RBV
- [NumImagesCounter_RBV r/o longin]
Counter that increments by 1 each time an image is acquired in the current acquisition sequence. Driver resets to 0 when acquisition is started. Drivers can use this as the loop counter when ADImageMode=ADImageMultiple.
normal
Inherited from
CamBase
read_status (ADComponent)
EpicsSignal
ReadStatus
- [ReadStatus r/w bo]
Write a 1 to this parameter to force a read of the detector status. Detector drivers normally read the status as required, so this is usually not necessary, but there may be some circumstances under which forcing a status read may be needed.
normal
Inherited from
CamBase
reverse (DDC)
Reverse
(See below)
normal
Inherited from
CamBase
shutter_close_delay (ADComponent)
ShutterCloseDelay
[ShutterCloseDelay r/w ao] Time required for the shutter to actually close (ADShutterStatus_t)
normal
Inherited from
CamBase
shutter_close_epics (ADComponent)
EpicsSignal
ShutterCloseEPICS
- [ShutterCloseEPICS r/w calcout]
This record writes its OVAL field to its OUT field when the EPICS shutter is told to close. The OCAL (and hence OVAL) and OUT fields are user-configurable, so any EPICS-controllable shutter can be used.
normal
Inherited from
CamBase
shutter_control (ADComponent)
ShutterControl
[ShutterControl r/w bo] Shutter control for the selected (detector or EPICS) shutter (ADShutterStatus_t)
normal
Inherited from
CamBase
shutter_control_epics (ADComponent)
EpicsSignal
ShutterControlEPICS
- [ShutterControlEPICS r/w bi]
This record processes when it receives a callback from the driver to open or close the EPICS shutter. It triggers the records below to actually open or close the EPICS shutter.
normal
Inherited from
CamBase
shutter_fanout (ADComponent)
EpicsSignal
ShutterFanout
normal
Inherited from
CamBase
shutter_mode (ADComponent)
ShutterMode
[ShutterMode r/w mbbo] Shutter mode (None, detector-controlled or EPICS-controlled) (ADShutterMode_t)
normal
Inherited from
CamBase
shutter_open_delay (ADComponent)
ShutterOpenDelay
[ShutterOpenDelay r/w ao] Time required for the shutter to actually open (ADShutterStatus_t)
normal
Inherited from
CamBase
shutter_open_epics (ADComponent)
EpicsSignal
ShutterOpenEPICS
- [ShutterOpenEPICS r/w calcout]
This record writes its OVAL field to its OUT field when the EPICS shutter is told to open. The OCAL (and hence OVAL) and OUT fields are user-configurable, so any EPICS-controllable shutter can be used.
normal
Inherited from
CamBase
shutter_status_epics (ADComponent)
EpicsSignalRO
ShutterStatusEPICS_RBV
- [ShutterStatusEPICS_RBV r/o mbbi]
Status of the EPICS-controlled shutter. This record should have its input link (INP) set to a record that contains the open/close status information for the shutter. The link should have the “CP” attribute, so this record processes when the input changes. The ZRVL field should be set to the value of the input link when the shutter is closed, and the ONVL field should be set to the value of the input link when the shutter is open.
normal
Inherited from
CamBase
shutter_status (ADComponent)
EpicsSignalRO
ShutterStatus_RBV
[ShutterStatus_RBV r/o bi] Status of the detector-controlled shutter (ADShutterStatus_t)
normal
Inherited from
CamBase
size (DDC)
Size
(See below)
normal
Inherited from
CamBase
status_message (ADComponent)
EpicsSignalRO
StatusMessage_RBV
[StatusMessage_RBV r/o waveform] Status message string
normal
Inherited from
CamBase
string_from_server (ADComponent)
EpicsSignalRO
StringFromServer_RBV
[StringFromServer_RBV r/o waveform] String from string-based vendor server to driver
normal
Inherited from
CamBase
string_to_server (ADComponent)
EpicsSignalRO
StringToServer_RBV
[StringToServer_RBV r/o waveform] String from driver to string-based vendor server
normal
Inherited from
CamBase
temperature (ADComponent)
Temperature
[Temperature r/w ao] Detector temperature
normal
Inherited from
CamBase
temperature_actual (ADComponent)
EpicsSignal
TemperatureActual
normal
Inherited from
CamBase
time_remaining (ADComponent)
EpicsSignalRO
TimeRemaining_RBV
- [TimeRemaining_RBV r/o ai]
Time remaining for current image. Drivers should update this value if they are doing the exposure timing internally, rather than in the detector hardware.
normal
Inherited from
CamBase
trigger_mode (ADComponent)
TriggerMode
[TriggerMode r/w mbbo] Trigger mode (ADTriggerMode_t).
normal
Inherited from
CamBase
min_callback_time (ADComponent)
MinCallbackTime
normal
blocking_callbacks (ADComponent)
BlockingCallbacks
normal
enable_callbacks (ADComponent)
EnableCallbacks
normal
dropped_arrays (ADComponent)
DroppedArrays
normal
nd_array_address (ADComponent)
NDArrayAddress
normal
queue_size (ADComponent)
QueueSize
normal
nd_array_port (ADComponent)
NDArrayPort
normal
pixel_size (ADComponent)
EpicsSignal
PixelSize
normal
exposure_mode (ADComponent)
EpicsSignal
ExposureMode
normal
test_pattern (ADComponent)
EpicsSignal
TestPattern
normal
trg_polarity (ADComponent)
EpicsSignal
TrgPolarity
normal
queue_use (ADComponent)
EpicsSignal
QueueUse
normal
queue_free_low (ADComponent)
EpicsSignal
QueueFreeLow
normal
queue_use_high (ADComponent)
EpicsSignal
QueueUseHIGH
normal
queue_use_hihi (ADComponent)
EpicsSignal
QueueUseHIHI
normal
num_col (ADComponent)
EpicsSignal
NumCol
normal
num_cycles (ADComponent)
EpicsSignal
NumCycles
normal
num_row (ADComponent)
EpicsSignal
NumRow
normal
num_trains (ADComponent)
EpicsSignal
NumTrains
normal
queue_free (ADComponent)
EpicsSignal
QueueFree
normal
status_word (ADComponent)
EpicsSignal
StatusWord
normal
trg2_frame (ADComponent)
EpicsSignal
Trg2Frame
normal
bl_set (ADComponent)
EpicsSignal
BL_SET
normal
fp_set (ADComponent)
EpicsSignal
FP_SET
normal
full_col (ADComponent)
EpicsSignal
FullCol
normal
full_row (ADComponent)
EpicsSignal
FullRow
normal
ga_set (ADComponent)
EpicsSignal
GA_SET
normal
it_set (ADComponent)
EpicsSignal
IT_SET
normal
ssus (ADComponent)
EpicsSignal
SSUS
normal
skip_col (ADComponent)
EpicsSignal
SkipCol
normal
skip_row (ADComponent)
EpicsSignal
SkipRow
normal
trg_code (ADComponent)
EpicsSignal
TrgCode
normal
trg_delay (ADComponent)
EpicsSignal
TrgDelay
normal
trg_width (ADComponent)
EpicsSignal
TrgWidth
normal
baud (ADComponent)
EpicsSignal
Baud
normal
evr_prescale (ADComponent)
EpicsSignal
EvrPrescale
normal
v_out (ADComponent)
EpicsSignal
VOut
normal
resp (ADComponent)
EpicsSignal
Resp
normal
cmd (ADComponent)
EpicsSignal
CMD
normal
cmd_evr (ADComponent)
EpicsSignal
CmdEVR
normal
cmd_free (ADComponent)
EpicsSignal
CmdFree
normal
cmd_full (ADComponent)
EpicsSignal
CmdFull
normal
cmd_init (ADComponent)
EpicsSignal
CmdInit
normal
cmd_roi (ADComponent)
EpicsSignal
CmdROI
normal
cmd_t_ptn (ADComponent)
EpicsSignal
CmdTPtn
normal
array_data (ADComponent)
EpicsSignalRO
ArrayData
normal
execution_time (ADComponent)
EpicsSignalRO
ExecutionTime_RBV
normal
temp_f (ADComponent)
EpicsSignalRO
TempF_RBV
normal
bl (ADComponent)
EpicsSignalRO
BL_RBV
normal
bits_per_pixel (ADComponent)
EpicsSignalRO
BitsPerPixel_RBV
normal
fp (ADComponent)
EpicsSignalRO
FP_RBV
normal
ga (ADComponent)
EpicsSignalRO
GA_RBV
normal
err (ADComponent)
EpicsSignalRO
ERR_RBV
normal
mid (ADComponent)
EpicsSignalRO
MID_RBV
normal
plugin_type (ADComponent)
EpicsSignalRO
PluginType_RBV
normal
sdk_version (ADComponent)
EpicsSignalRO
SDKVersion_RBV
normal
ufdt (ADComponent)
EpicsSignalRO
UFDT_RBV
normal
Attribute
Class
Suffix
Docs
Kind
Notes
max_size_x
EpicsSignalRO
MaxSizeX_RBV
normal
max_size_y
EpicsSignalRO
MaxSizeY_RBV
normal
Attribute
Class
Suffix
Docs
Kind
Notes
reverse_x
ReverseX
normal
reverse_y
ReverseY
normal
Attribute
Class
Suffix
Docs
Kind
Notes
size_x
SizeX
normal
size_y
SizeY
normal
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 theOrderedDict
return byread()
.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.
- 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 theOrderedDict
returned bydescribe()
.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() OrderedDictType[str, Dict[str, Any]]
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 theStatusBase
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
- configuration_attrs
- connected
- hints
- kind