ophyd_async.fastcs.odin#

Package Contents#

Classes#

FrameProcessorIO

Ophyd-async implementation of a FrameProcessor Odin Subdevice.

MetaWriterIO

Ophyd-async implementation of a MetaWriter Odin Subdevice.

OdinIO

Common base class for all Ophyd Async Devices.

OdinDataLogic

Abstract base class for detector data logic and handling.

API#

class ophyd_async.fastcs.odin.FrameProcessorIO(name: str = '', connector: DeviceConnector | None = None)[source]#

Bases: ophyd_async.core.Device

Ophyd-async implementation of a FrameProcessor Odin Subdevice.

start_writing: SignalX#

None

stop_writing: SignalX#

None

writing: SignalR[bool]#

None

frames_written: SignalR[int]#

None

frames: SignalRW[int]#

None

data_dims_0: SignalRW[int]#

None

data_dims_1: SignalRW[int]#

None

data_chunks_0: SignalRW[int]#

None

data_chunks_1: SignalRW[int]#

None

data_chunks_2: SignalRW[int]#

None

file_path: SignalRW[str]#

None

file_prefix: SignalRW[str]#

None

data_datatype: SignalRW[str]#

None

data_compression: SignalRW[str]#

None

process_frames_per_block: SignalRW[int]#

None

class ophyd_async.fastcs.odin.MetaWriterIO(name: str = '', connector: DeviceConnector | None = None)[source]#

Bases: ophyd_async.core.Device

Ophyd-async implementation of a MetaWriter Odin Subdevice.

stop: SignalX#

None

file_prefix: SignalRW[str]#

None

directory: SignalRW[str]#

None

acquisition_id: SignalRW[str]#

None

writing: SignalR[bool]#

None

class ophyd_async.fastcs.odin.OdinIO(name: str = '', connector: DeviceConnector | None = None)[source]#

Bases: ophyd_async.core.Device

Common base class for all Ophyd Async Devices.

Parameters:
  • name – Optional name of the Device

  • connector – Optional DeviceConnector instance to use at connect()

fp: FrameProcessorIO#

None

mw: MetaWriterIO#

None

class ophyd_async.fastcs.odin.OdinDataLogic(path_provider: PathProvider, odin: OdinIO, detector_bit_depth: SignalR[int])[source]#

Bases: ophyd_async.core.DetectorDataLogic

Abstract base class for detector data logic and handling.

Implementations must implement either prepare_unbounded for data sources that work with step scans as well as flyscans, or prepare_single for those that only work with step scans.

async prepare_unbounded(detector_name: str) StreamableDataProvider[source]#

Provider can work for an unbounded number of collections.

async stop() None[source]#

Stop taking data.

get_hinted_fields(detector_name: str) Sequence[str][source]#

Return the hinted streams.