API

pcdsdevices.analog_signals

pcdsdevices.analog_signals.Acromag(*args, ...)

Class for Acromag analog input/ouput signals.

pcdsdevices.analog_signals.FDQ(*args, **kwargs)

A collection of PVs to inteface python with a Keyence FDQ Flow Meter.

pcdsdevices.analog_signals.Mesh(prefix, ...)

Class for Mesh HV Supply that is connected to Acromag inputs and outputs.

pcdsdevices.analog_signals.acromag_ch_factory_func(...)

This is a factory function for creating an Acromag output or input signal.

pcdsdevices.areadetector.cam

pcdsdevices.areadetector.cam.FeeOpalCam([...])

Opal camera used in the FEE for the PIMs.

pcdsdevices.areadetector.detectors

pcdsdevices.areadetector.detectors.Basler([...])

Class for Basler cameras. .. seealso::.

pcdsdevices.areadetector.detectors.BaslerBase([...])

Base class with Basler specific PVs.

pcdsdevices.areadetector.detectors.LasBasler([...])

Class for the Basler cameras used in the laser control system.

pcdsdevices.areadetector.detectors.LasBaslerFF([...])

Class for the far-field Basler cameras used in the laser control system.

pcdsdevices.areadetector.detectors.LasBaslerNF([...])

Class for the near-field Basler cameras used in the laser control system.

pcdsdevices.areadetector.detectors.PCDSAreaDetector([...])

Standard area detector including all (*) standard PCDS plugins.

pcdsdevices.areadetector.detectors.PCDSAreaDetectorBase([...])

Standard area detector with no plugins.

pcdsdevices.areadetector.detectors.PCDSAreaDetectorEmbedded([...])

Minimal area detector including only the most-used PCDS plugins.

pcdsdevices.areadetector.detectors.PCDSAreaDetectorTyphos([...])

A 'bare' PCDS areadetector class specifically for Typhos screens.

pcdsdevices.areadetector.detectors.PCDSAreaDetectorTyphosBeamStats([...])

Adds in some PVs related to beam statistics, as well as a cross hair.

pcdsdevices.areadetector.detectors.PCDSAreaDetectorTyphosTrigger([...])

Expanded typhos-optimized areadetector class for cameras with triggers.

pcdsdevices.areadetector.detectors.PCDSHDF5BlueskyTriggerable(...)

Saves an HDF5 file in a bluesky plan.

pcdsdevices.areadetector.plugins

pcdsdevices.areadetector.plugins.ColorConvPlugin(...)

pcdsdevices.areadetector.plugins.FilePlugin(...)

pcdsdevices.areadetector.plugins.HDF5FileStore(...)

HDF5 Plugin to use for interactive/in-scan saving at LCLS.

pcdsdevices.areadetector.plugins.HDF5Plugin(...)

pcdsdevices.areadetector.plugins.ImagePlugin(...)

pcdsdevices.areadetector.plugins.JPEGPlugin(...)

pcdsdevices.areadetector.plugins.MagickPlugin(...)

pcdsdevices.areadetector.plugins.NetCDFPlugin(...)

pcdsdevices.areadetector.plugins.NexusPlugin(...)

pcdsdevices.areadetector.plugins.Overlay([...])

pcdsdevices.areadetector.plugins.OverlayPlugin(...)

pcdsdevices.areadetector.plugins.PluginBase(...)

Overridden PluginBase to make it work when the root device is not a CamBase class.

pcdsdevices.areadetector.plugins.ProcessPlugin(...)

pcdsdevices.areadetector.plugins.ROIPlugin(...)

pcdsdevices.areadetector.plugins.StatsPlugin(...)

pcdsdevices.areadetector.plugins.TIFFPlugin(...)

pcdsdevices.areadetector.plugins.TransformPlugin(...)

pcdsdevices.atm

pcdsdevices.atm.ATMTarget(prefix, *, name, ...)

Controls the ATM (ArrivalTimeMonitor)'s states.

pcdsdevices.atm.ArrivalTimeMonitor(*args, ...)

Determines the arrival time of the x-ray relative to the optical laser.

pcdsdevices.atm.TM1K4(*args, **kwargs)

An ATM in TMO that has two extra target states.

pcdsdevices.atm.TM1K4Target(prefix, *, name, ...)

Controls TM1K4's states, and ATM in TMO.

pcdsdevices.atm.TM2K2(*args, **kwargs)

An ATM in RIX that has one extra target state.

pcdsdevices.atm.TM2K2Target(prefix, *, name, ...)

Controls TM2K2's states, an ATM in RIX.

pcdsdevices.atm.TM2K4(*args, **kwargs)

An ATM in TMO that has one fewer target state.

pcdsdevices.atm.TM2K4Target(prefix, *, name, ...)

Controls TM2K4's states, an ATM in TMO.

pcdsdevices.attenuator

pcdsdevices.attenuator.AT1K2(*args[, limits])

AT1K2 solid attenuator variant from the LCLS-II L2SI project.

pcdsdevices.attenuator.AT1K4(*args[, limits])

AT1K4 solid attenuator variant from the LCLS-II L2SI project.

pcdsdevices.attenuator.AT2K2(*args[, limits])

AT2K2 solid attenuator variant from the LCLS-II L2SI project.

pcdsdevices.attenuator.AT2L0(*args[, ...])

AT2L0 solid attenuator variant from the LCLS-II XTES project.

pcdsdevices.attenuator.AttBase(prefix, *, ...)

Base class for attenuators with fundamental frequency.

pcdsdevices.attenuator.AttBaseWith3rdHarmonic(...)

Base class for attenuators with 3rd harmonic frequency.

pcdsdevices.attenuator.AttBaseWith3rdHarmonicLP(...)

Base class for Lightpath-compatible attenuators with 3rd harmonic frequency.

pcdsdevices.attenuator.Attenuator(prefix, ...)

A series of filters that attenuates the beam.

pcdsdevices.attenuator.AttenuatorCalculatorBase(...)

Base class for new-style caproto IOC attenuator calculator devices.

pcdsdevices.attenuator.AttenuatorCalculatorFilter(...)

pcdsdevices.attenuator.AttenuatorCalculatorSXR_Blade(...)

A single blade, holding up to 8 filters.

pcdsdevices.attenuator.AttenuatorCalculatorSXR_FourBlade(...)

4 blade x 8 filter solid attenuator variant from the L2SI project.

pcdsdevices.attenuator.AttenuatorCalculatorSXR_TwoBlade(...)

2 blade x 8 filter solid attenuator variant from the L2SI project.

pcdsdevices.attenuator.AttenuatorCalculator_AT2L0(...)

Solid attenuator variant from the LCLS-II XTES project.

pcdsdevices.attenuator.AttenuatorSXR_Ladder(*args)

Ladder-style solid attenuator variant from the LCLS-II L2SI project.

pcdsdevices.attenuator.AttenuatorSXR_LadderTwoBladeLBD(*args)

Ladder-style solid attenuator variant from the LCLS-II L2SI project.

pcdsdevices.attenuator.FEESolidAttenuatorBlade(...)

Represents one basic solid attenuator blade.

pcdsdevices.attenuator.FEESolidAttenuatorStates(...)

The states class for a standard in/out attenuator blade.

pcdsdevices.attenuator.FeeAtt([prefix, name])

Old attenuator IOC in the FEE.

pcdsdevices.attenuator.FeeFilter(prefix, *, ...)

A single attenuation blade, as implemented in the FEE.

pcdsdevices.attenuator.Filter(prefix, *, ...)

A single attenuation blade.

pcdsdevices.attenuator.GasAttenuator(*args, ...)

AT*:GAS, Base class for an LCLS-II XTES gas attenuator.

pcdsdevices.attenuator.GattApertureX(prefix, ...)

AT1K0 is a gas attenuator containing 4 discrete aperture arrays, each with 4 discrete aperture sizes to attenuate the intensity of the beam.

pcdsdevices.attenuator.GattApertureY(prefix, ...)

AT1K0 is a gas attenuator containing 4 discrete aperture arrays, each with 4 discrete aperture sizes to attenuate the intensity of the beam.

pcdsdevices.attenuator.SXRLadderAttenuatorBlade(...)

Represents one ladder solid attenuator blade.

pcdsdevices.attenuator.SXRLadderAttenuatorStates(...)

The states class for the SXR Ladder-style attenuators.

pcdsdevices.attenuator.get_blade_enum(value)

pcdsdevices.attenuator.render_ascii_att(...)

Creates the attenuator ascii art.

pcdsdevices.beam_stats

pcdsdevices.beam_stats.BeamEnergyRequest(*args)

Positioner to request beam color changes from ACR in eV.

pcdsdevices.beam_stats.BeamEnergyRequestACRWait(*args)

BeamEnergyRequest variant that does wait on a PV.

pcdsdevices.beam_stats.BeamEnergyRequestNoWait(*args)

BeamEnergyRequest variant that does not wait on a PV.

pcdsdevices.beam_stats.BeamStats([prefix, name])

pcdsdevices.beam_stats.FakeBeamEnergyRequest(*args)

Required setup for fake classes to work properly with __new__ splitting

pcdsdevices.beam_stats.FakeBeamEnergyRequestACRWait(*args)

pcdsdevices.beam_stats.FakeBeamEnergyRequestNoWait(*args)

pcdsdevices.beam_stats.LCLS([prefix, name])

Object to query machine Lcls Linac status.

pcdsdevices.ccm

pcdsdevices.ccm.CCM(*[, prefix])

The full CCM assembly.

pcdsdevices.ccm.CCMAlio(prefix, *, name[, ...])

Controls specifically the Alio motor.

pcdsdevices.ccm.CCMConstantsMixin(prefix, ...)

Mixin class that includes PVs that hold CCM constants.

pcdsdevices.ccm.CCMEnergy(*args, **kwargs)

CCM energy motor.

pcdsdevices.ccm.CCMEnergyWithVernier(prefix)

CCM energy motor and the vernier.

pcdsdevices.ccm.CCMMotor(prefix, *, name[, ...])

Goofy records used in the CCM.

pcdsdevices.ccm.CCMPico(*args, **kwargs)

The Pico motors used here seem non-standard, as they are missing spg.

pcdsdevices.ccm.CCMX([prefix])

Combined motion of the CCM X motors.

pcdsdevices.ccm.CCMY([prefix])

Combined motion of the CCM Y motors.

pcdsdevices.ccm.alio_to_theta(alio, theta0, ...)

Converts alio position (mm) to theta angle (rad).

pcdsdevices.ccm.energy_to_wavelength(energy)

Converts photon energy (keV) to wavelength (A).

pcdsdevices.ccm.theta_to_alio(theta, theta0, ...)

Converts theta angle (rad) to alio position (mm).

pcdsdevices.ccm.theta_to_wavelength(theta, ...)

Converts theta angle (rad) to wavelength (A).

pcdsdevices.ccm.wavelength_to_energy(wavelength)

Converts wavelength (A) to photon energy (keV).

pcdsdevices.ccm.wavelength_to_theta(...)

Converts wavelength (A) to theta angle (rad).

pcdsdevices.crix_motion

pcdsdevices.crix_motion.QuadraticBeckhoffMotor(...)

Pseudomotor of the form calc = ax^2 + bx + c.

pcdsdevices.crix_motion.QuadraticSimMotor(...)

Simulated version of the QuadraticBeckhoffMotor for offline testing.

pcdsdevices.crix_motion.VLSOptics(*args, ...)

Device that collects the VLS mirror and grating together.

pcdsdevices.crix_motion.VLSOpticsSim(*args, ...)

Simulated version of VLSOptics for offline testing.

pcdsdevices.cvmi_motion

pcdsdevices.cvmi_motion.CVMI(*args, **kwargs)

CVMI Motion Class

pcdsdevices.cvmi_motion.KTOF(*args, **kwargs)

KTOF Motion Class

pcdsdevices.dc_devices

pcdsdevices.dc_devices.ICT(prefix[, name])

Complete ICT device with access to all buses and channels.

pcdsdevices.dc_devices.ICTBus(prefix, bus[, ...])

Class to define a current bus of the ICT.

pcdsdevices.dc_devices.ICTChannel(prefix, ...)

Class to define a particular channel of the ICT.

pcdsdevices.delay_generator

pcdsdevices.delay_generator.DelayGenerator(...)

pcdsdevices.delay_generator.DelayGeneratorBase(...)

Delay generator class.

pcdsdevices.delay_generator.DgChannel(*args, ...)

Delay generator single channel class

pcdsdevices.device

pcdsdevices.device.GroupDevice(*args, **kwargs)

A device that is a group of components that will act independently.

pcdsdevices.device.InterfaceDevice(*args, ...)

A device that can include pre-instantiated objects on init.

pcdsdevices.device.to_interface(device_class)

Convert an arbitrary Device into an InterfaceDevice.

pcdsdevices.digitizers

pcdsdevices.digitizers.Qadc(*args, **kwargs)

Class for older qadc, based on Abaco FMC126.

pcdsdevices.digitizers.Qadc134(*args, **kwargs)

Class for the Abaco FMC134 digitizer card.

pcdsdevices.digitizers.Qadc134Sparsification(...)

Class for Abaco FMC134, which supports sparsification.

pcdsdevices.digitizers.QadcBase(*args, **kwargs)

Base class common to all qadc digitizers.

pcdsdevices.digitizers.Wave8V2(*args, **kwargs)

Complete top-level class for the LCLS-II Wave8.

pcdsdevices.digitizers.Wave8V2ADCDelayLanes(...)

Class for the LCLS-II Wave8 ADC delay lanes.

pcdsdevices.digitizers.Wave8V2ADCRegs(*args, ...)

Class for accessing LCLS-II Wave8 ADC registers.

pcdsdevices.digitizers.Wave8V2ADCSampleReadout(...)

Class for the LCLS-II Wave8 ADC sample readout registers.

pcdsdevices.digitizers.Wave8V2ADCSamples(...)

Class for the LCLS-II Wave8 ADC sample readout registers.

pcdsdevices.digitizers.Wave8V2AxiVersion(...)

Class for LCLS-II Wave8 AxiVersion registers.

pcdsdevices.digitizers.Wave8V2EventBuilder(...)

Class for controlling the LCLS-II Wave8 event builder registers.

pcdsdevices.digitizers.Wave8V2EvrV2(*args, ...)

Class for LCLS-II Wave8 EVR V2 (TPR) registers.

pcdsdevices.digitizers.Wave8V2Integrators(...)

Class for controlling the LCLS-II Wave8 integrators.

pcdsdevices.digitizers.Wave8V2PgpMon(*args, ...)

Class for monitoring the PGP status of the LCLS-II Wave8.

pcdsdevices.digitizers.Wave8V2RawBuffers(...)

Class for LCLS-II Wave8 raw buffer registers.

pcdsdevices.digitizers.Wave8V2Sfp(*args, ...)

Class for LCLS-II Wave8 SFP connection (PGP, EVR).

pcdsdevices.digitizers.Wave8V2Simple(*args, ...)

Simple class for viewing Wave8 waveforms, and stopping/starting acquisition.

pcdsdevices.digitizers.Wave8V2SystemRegs(...)

Class for Wave8 system registers.

pcdsdevices.digitizers.Wave8V2Timing(*args, ...)

Class for controlling the LCLS-II Wave8 timing registers.

pcdsdevices.digitizers.Wave8V2TriggerEventManager(...)

Class for controlling the LCLS-II Wave8 trigger event manager.

pcdsdevices.digitizers.Wave8V2XpmMini(*args, ...)

Class for controlling the LCLS-II Wave8 XPM Mini.

pcdsdevices.digitizers.Wave8V2XpmMsg(*args, ...)

Class for the LCLS-II Wave8 XPM message related PVs.

pcdsdevices.energy_monitor

pcdsdevices.energy_monitor.GEM(*args, **kwargs)

Gas Energy Monitor from the LUSI project.

pcdsdevices.energy_monitor.GMD(*args, **kwargs)

Gas Monitor Detector, installed in the LCLS-II XTES project.

pcdsdevices.energy_monitor.XGMD(*args, **kwargs)

X Gas Monitor Detector (2nd generation GMD).

pcdsdevices.epics_motor

pcdsdevices.epics_motor.BeckhoffAxis(*args, ...)

Beckhoff Axis motor record as implemented by ESS and extended by us.

pcdsdevices.epics_motor.BeckhoffAxisEPS(...)

A beckhoff axis where the EPS indicators are relevant.

pcdsdevices.epics_motor.BeckhoffAxisNoOffset(...)

A BeckhoffAxis with various fields read-only.

pcdsdevices.epics_motor.BeckhoffAxisPLC([...])

Error handling, debug, and aux functions for the Beckhoff Axis PLC code.

pcdsdevices.epics_motor.BeckhoffAxisPLCEPS([...])

Extended BeckhoffAxisPLC with relevant EPS fields.

pcdsdevices.epics_motor.BeckhoffAxisPLC_Pre140([...])

Disable some newly introduced signals.

pcdsdevices.epics_motor.BeckhoffAxis_Pre140(...)

Beckhoff Axis compatible with PLCs running older software.

pcdsdevices.epics_motor.EpicsMotorInterface(...)

The standard EpicsMotor class, but with our interface attached.

pcdsdevices.epics_motor.IMS(*args, **kwargs)

PCDS implementation of the Motor Record for IMS motors.

pcdsdevices.epics_motor.MMC100(*args, **kwargs)

PCDS implementation of the Motor Record for MMC100 controlled motors.

pcdsdevices.epics_motor.Motor(prefix, **kwargs)

Load a PCDSMotor with the correct class based on prefix.

pcdsdevices.epics_motor.Newport(*args, **kwargs)

PCDS implementation of the Motor Record for Newport motors.

pcdsdevices.epics_motor.OffsetIMSWithPreset(...)

Offset IMS with an additiona Offset _SET PV.

pcdsdevices.epics_motor.OffsetMotor(prefix, ...)

pcdsdevices.epics_motor.PCDSMotorBase(*args, ...)

EpicsMotor for PCDS.

pcdsdevices.epics_motor.PMC100(*args, **kwargs)

PCDS implementation of the Motor Record PMC100 motors.

pcdsdevices.epics_motor.SmarAct(*args, **kwargs)

Class for encoded SmarAct motors controlled via the MCS2 controller.

pcdsdevices.epics_motor.SmarActOpenLoop([...])

Class containing the open loop PVs used to control an un-encoded SmarAct stage.

pcdsdevices.epics_motor.SmarActOpenLoopPositioner(...)

Positioner class for SmarAct open loop stages.

pcdsdevices.epics_motor.SmarActTipTilt([prefix])

Class for bundling two SmarActOpenLoop axes arranged in a tip-tilt mirro positioning configuration into a single device.

pcdsdevices.eps

pcdsdevices.eps.EPS(*args, **kwargs)

Corresponds to DUT_EPS from lcls-twincat-general.

pcdsdevices.evr

pcdsdevices.evr.EvrMotor(prefix, *, name[, ...])

PV Positioner for adjusting an EVR channel.

pcdsdevices.evr.Trigger(*args, **kwargs)

Class for an individual Trigger.

pcdsdevices.example

pcdsdevices.example.Example3D(*args, **kwargs)

Full device for the 3D motion sim

pcdsdevices.example.Example3DStates(prefix, ...)

3D States with PMPS, simluated XYZ with OUT/T1/T2

pcdsdevices.example.ExampleL2L(*args, **kwargs)

Full device for the limit to limit sim

pcdsdevices.example.ExampleL2LStates(prefix, ...)

1D States, no PMPS, limit to limit in/out instead of state position based

pcdsdevices.example.PLCExampleMotion([...])

This matches the IOC for lcls-plc-example-motion

pcdsdevices.example.PLCOnlyXPIM(*args, **kwargs)

The PLC sim code doesn't include an area detector IOC, so remove it here.

pcdsdevices.fms

pcdsdevices.fms.LCP1([prefix, kind, ...])

For LCPs with CMC-III PU, with Door Module off

pcdsdevices.fms.LCP2([prefix, kind, ...])

For LCPs with CMC-III PU, with Door Module working

pcdsdevices.fms.PDU_Humidity2(*args[, ...])

Will be for portable racks or Racks that have a single PDU, with a total of 2 sensors for monitoring

pcdsdevices.fms.PDU_Humidity4(*args[, ...])

For racks with 2 PDUs, with total of 4 sensors for monitoring purposes

pcdsdevices.fms.PDU_Humidity6(*args[, ...])

Will be for PDUs that are linked, 1=Master, 2=Child (4 sensors) plus a single PDU (2 sensors), 6 total sensors

pcdsdevices.fms.PDU_Humidity8(*args[, ...])

Will be for PDUs that are linked, 1=Master, 2=Child (4 Sensors) plus 2 single PDUs (4 Sensors), 8 sensors total

pcdsdevices.fms.PDU_Load1(*args[, elevations])

For racks with 1 PDU

pcdsdevices.fms.PDU_Load2(*args[, elevations])

For racks with 2 PDUs

pcdsdevices.fms.PDU_Load3(*args[, elevations])

For racks with 3 PDUs

pcdsdevices.fms.PDU_Load4(*args[, elevations])

For racks with 4 PDUs

pcdsdevices.fms.PDU_Temp2(*args[, elevations])

Will be for portable racks or Racks that have a single PDU, with a total of 2 sensors for monitoring

pcdsdevices.fms.PDU_Temp4(*args[, elevations])

For racks with 2 PDUs, with total of 4 sensors for monitoring purposes

pcdsdevices.fms.PDU_Temp6(*args[, elevations])

Will be for PDUs that are linked, 1=Master, 2=Child (4 sensors) plus a single PDU (2 sensors), 6 total sensors

pcdsdevices.fms.PDU_Temp8(*args[, elevations])

Will be for PDUs that are linked, 1=Master, 2=Child (4 Sensors) plus 2 single PDUs (4 Sensors), 8 sensors total

pcdsdevices.fms.Setra5000([prefix, kind, ...])

pcdsdevices.gauge

pcdsdevices.gauge.BaseGauge(*args, **kwargs)

Base class for vacuum gauges.

pcdsdevices.gauge.GCC500PLC([prefix, kind, ...])

Class for a GCC500 controlled by PLC.

pcdsdevices.gauge.GCCPLC([prefix, kind, ...])

Class for a Cold Cathode Gauge controlled by PLC.

pcdsdevices.gauge.GCT([prefix, kind, ...])

Base class for Gauge Controllers accessed via serial.

pcdsdevices.gauge.GFSPLC([prefix, kind, ...])

Class for a fast shutter sensor gauge controlled by PLC.

pcdsdevices.gauge.GHCPLC([prefix, kind, ...])

Class for a Hot Cathode Gauge controlled by PLC.

pcdsdevices.gauge.GaugeColdCathode(*args, ...)

Class for Cold Cathode Gauges.

pcdsdevices.gauge.GaugePLC([prefix, kind, ...])

Base class for gauges controlled by PLC.

pcdsdevices.gauge.GaugePirani(*args, **kwargs)

Class for Pirani gauges.

pcdsdevices.gauge.GaugeSerial([prefix, ...])

Base class for Vacuum Gauges controlled via serial.

pcdsdevices.gauge.GaugeSerialGCC([prefix, ...])

Class for Cold Cathode Gauges controlled via serial.

pcdsdevices.gauge.GaugeSerialGPI([prefix, ...])

Class for Pirani Vacuum Gauges controlled via serial.

pcdsdevices.gauge.GaugeSet(prefix, *, name, ...)

Factory function for Gauge Set.

pcdsdevices.gauge.GaugeSetBase(prefix, *, ...)

Class for a Gauge Set.

pcdsdevices.gauge.GaugeSetMks(prefix, *, ...)

Class for a Gauge Set w/o Pirani, but with controller.

pcdsdevices.gauge.GaugeSetPirani(prefix, *, ...)

Class for a Gauge Set.

pcdsdevices.gauge.GaugeSetPiraniMks(prefix, ...)

Class for a Gauge Set including the controller.

pcdsdevices.gauge.MKS937AController([...])

Class for MKS937A gauge controllers accessed via serial.

pcdsdevices.gauge.MKS937BController([...])

Class for MKS937B gauge controllers accessed via serial.

pcdsdevices.gauge.MKS937a(*args, **kwargs)

A base class for an MKS637a vacuum gauge controller.

pcdsdevices.gon

pcdsdevices.gon.BaseGon(*, name, prefix_hor, ...)

Basic goniometer, as present in XPP.

pcdsdevices.gon.GonWithDetArm(*, name, ...)

Goniometer with a detector arm, as present in XCS.

pcdsdevices.gon.Goniometer(**kwargs)

Factory function for Goniometers.

pcdsdevices.gon.Kappa(*, name, prefix_x, ...)

Kappa stage, control the Kappa diffractometer in spherical coordinates.

pcdsdevices.gon.KappaXYZStage(*args, parent, ...)

Helper initializing function for XYZStage object.

pcdsdevices.gon.SamPhi(*, name, prefix_samz, ...)

Sample Phi stage.

pcdsdevices.gon.SimKappa()

Test version of the Kappa object.

pcdsdevices.gon.SimSampleStage(*args, ...)

pcdsdevices.gon.XYZStage(*, name, prefix_x, ...)

Sample XYZ stage.

pcdsdevices.inout

pcdsdevices.inout.CombinedInOutRecordPositioner(...)

InOutPositioner for a standard combined states record.

pcdsdevices.inout.InOutPVStatePositioner(...)

InOutPositioner on top of a PVStatePositioner.

pcdsdevices.inout.InOutPositioner(prefix, *, ...)

Base class for a device that can be inserted and removed from the beam.

pcdsdevices.inout.InOutRecordPositioner(...)

InOutPositioner for a standard states record.

pcdsdevices.inout.LightpathInOutRecordPositioner(...)

Lightpath-compatible InOutRecordPositioner

pcdsdevices.inout.Reflaser(prefix, *, name, ...)

Simple ReferenceLaser with In/Out States.

pcdsdevices.inout.TTReflaser(prefix, *, ...)

Motor stack that includes both a timetool and a reflaser.

pcdsdevices.inout.TwinCATInOutPositioner(...)

InOutPositioner on top of a TwinCATStatePositioner.

pcdsdevices.interface

pcdsdevices.interface.BaseInterface(*args, ...)

Interface layer to attach to any Device for SLAC features.

pcdsdevices.interface.FltMvInterface(*args, ...)

Extension of MvInterface for when the position is a float.

pcdsdevices.interface.LegacyLightpathMixin(...)

Mix-in class that makes it easier to establish a lightpath interface.

pcdsdevices.interface.LightpathInOutCptMixin(*args)

LightpathMixin for parent device with InOut components.

pcdsdevices.interface.LightpathInOutMixin(*args)

LightpathMixin for devices that themselves implement InOut interface

pcdsdevices.interface.LightpathMixin(*args)

Mix-in class that makes it easier to establish a lightpath interface.

pcdsdevices.interface.MvInterface(*args, ...)

Interface layer to attach to a positioner for motion shortcuts.

pcdsdevices.interface.TabCompletionHelperClass(cls)

Tab completion helper for the class itself.

pcdsdevices.interface.TabCompletionHelperInstance(...)

Tab completion helper for one instance of a class.

pcdsdevices.interface._TabCompletionHelper()

Base class for TabCompletionHelperClass, TabCompletionHelperInstance.

pcdsdevices.interface.device_info(device[, ...])

pcdsdevices.interface.get_engineering_mode()

Get the last value set by set_engineering_mode().

pcdsdevices.interface.get_kind(obj)

pcdsdevices.interface.get_name(obj, default)

pcdsdevices.interface.get_units(signal)

pcdsdevices.interface.get_value(signal)

pcdsdevices.interface.ophydobj_info(obj[, ...])

pcdsdevices.interface.positionerbase_info(...)

pcdsdevices.interface.set_engineering_mode(expert)

Switches between expert and user modes for BaseInterface features.

pcdsdevices.interface.setup_preset_paths(**paths)

Prepare the Presets class.

pcdsdevices.interface.signal_info(signal)

pcdsdevices.interface.tweak_base(*args[, scale])

Base function to control motors with the arrow keys.

pcdsdevices.ipm

pcdsdevices.ipm.IPIMB(prefix, *, name[, ...])

Class for an IPIMB box.

pcdsdevices.ipm.IPIMBChannel(prefix, *, ...)

Class for a single channel read out by an IPIMB box.

pcdsdevices.ipm.IPM(prefix, *, name, **kwargs)

Factory function for an IPM.

pcdsdevices.ipm.IPMDiode(prefix, *, name, ...)

Diode of a standard intensity position monitor.

pcdsdevices.ipm.IPMMotion(*args, **kwargs)

Standard intensity position monitor.

pcdsdevices.ipm.IPMTarget(prefix, *, name, ...)

Target of a standard intensity position monitor.

pcdsdevices.ipm.IPM_Det(prefix, *, name, ...)

Base class for IPM_IPIMB and IPM_Wave8.

pcdsdevices.ipm.IPM_IPIMB(prefix, *, name, ...)

Standard intensity position monitor.

pcdsdevices.ipm.IPM_Wave8(prefix, *, name, ...)

Standard intensity position monitor.

pcdsdevices.ipm.Wave8(prefix, *, name[, ...])

Class for a wave8.

pcdsdevices.ipm.Wave8Channel(prefix, *, ...)

Class for a single channel read out by a wave8.

pcdsdevices.jet

pcdsdevices.jet.BeckhoffJet(*args, **kwargs)

Full liquid jet setup controlled by a Beckhoff PLC.

pcdsdevices.jet.BeckhoffJetManipulator(...)

Jet Manipulator controlled by Beckhoff PLC.

pcdsdevices.jet.BeckhoffJetSlits(*args, **kwargs)

Pair of Beckhoff-controlled slits where each blade has X & Y motors.

pcdsdevices.jet.Injector(*, name, **kwargs)

Positioner for liquid jet Injector.

pcdsdevices.jet.InjectorWithFine(*, name, ...)

Positioner for liquid jet Injector, with fine control.

pcdsdevices.lamp_motion

pcdsdevices.lamp_motion.LAMP(*args, **kwargs)

LAMP Motion Class

pcdsdevices.lamp_motion.LAMPFlowCell(*args, ...)

LAMP Motion Class

pcdsdevices.lamp_motion.LAMPMagneticBottle(...)

LAMPMagneticBottle Motion Class

pcdsdevices.lamp_motion.LAMP_LV_17(*args, ...)

LAMP Motion Class

pcdsdevices.lasers.btps

pcdsdevices.lasers.btps.BtpsSourceStatus(...)

BTPS per-source shutter safety status.

pcdsdevices.lasers.btps.BtpsState(*args, ...)

Beam Transport Protection System (BTPS) State.

pcdsdevices.lasers.btps.BtpsVGC(*args[, ...])

VGC subclass with 'valve_position' component added.

pcdsdevices.lasers.btps.CentroidConfig(...)

BTPS camera centroid range comparison.

pcdsdevices.lasers.btps.DestinationConfig(...)

BTPS per-destination configuration settings and state.

pcdsdevices.lasers.btps.GlobalConfig(*args, ...)

BTPS global configuration settings.

pcdsdevices.lasers.btps.LssShutterStatus(...)

BTPS per-source shutter status per the laser safety system.

pcdsdevices.lasers.btps.RangeComparison(...)

BTPS single value range comparison check.

pcdsdevices.lasers.btps.SourceToDestinationConfig(...)

BTPS per-(source, destination) configuration settings and state.

pcdsdevices.lasers.counters

pcdsdevices.lasers.counters.Agilent53210A(...)

Agililent 53210A frequency counter class.

pcdsdevices.lasers.dicon

pcdsdevices.lasers.dicon.DiconSwitch(*args, ...)

Class for controlling the DiCon fiber matrix switch.

pcdsdevices.lasers.ek9000

pcdsdevices.lasers.ek9000.El3174AiCh([...])

EL3174 analog input card channel.

pcdsdevices.lasers.ek9000.EnvironmentalMonitor([...])

Class for the MODS environmental monitoring system, which typically consists of three measurements: P, T, and %RH.

pcdsdevices.lasers.elliptec

pcdsdevices.lasers.elliptec.Ell6(prefix[, ...])

Class for Thorlabs ELL6 2 position filter slider.

pcdsdevices.lasers.elliptec.Ell9(prefix[, ...])

Class for Thorlabs ELL9 4 position filter slider.

pcdsdevices.lasers.elliptec.EllBase(prefix)

Base class for Elliptec stages.

pcdsdevices.lasers.elliptec.EllLinear(prefix)

Class for Thorlabs ELL17/20 (28/60mm) linear stage.

pcdsdevices.lasers.elliptec.EllRotation(prefix)

Class for Thorlabs ELL14/18 (rotation) stages.

pcdsdevices.lasers.qmini

pcdsdevices.lasers.qmini.QminiSpectrometer([...])

Qmini Spectrometer

pcdsdevices.lasers.qmini.QminiWithEvr(...[, ...])

A class for Qmini spectrometers that use an EVR for hardware triggering.

pcdsdevices.lasers.rfof

pcdsdevices.lasers.rfof.CycleRfofRx(*args, ...)

Class for reading back the Cycle RFoF receiver PVs.

pcdsdevices.lasers.rfof.CycleRfofTx(*args, ...)

Class for reading back the Cycle RFoF transmitter PVs.

pcdsdevices.lasers.rfof.ItechRfofAll(*args, ...)

Class for including all subclasses For example, for receiver PVs, use object would use object.receiver.<pv>

pcdsdevices.lasers.rfof.ItechRfofErrors(...)

Itech RFOF Error PVs

pcdsdevices.lasers.rfof.ItechRfofRx(*args, ...)

Itech RFoF receiver PVs.

pcdsdevices.lasers.rfof.ItechRfofStatus(...)

Itech RFOF Status PVs

pcdsdevices.lasers.rfof.ItechRfofTx(*args, ...)

Itech RFoF transmitter PVs.

pcdsdevices.lasers.thorlabsWFS

pcdsdevices.lasers.thorlabsWFS.ThorlabsWfs40([...])

Class to implement a Thorlabs WFS40 Wavefront sensor.

pcdsdevices.lasers.tuttifrutti

pcdsdevices.lasers.tuttifrutti.TuttiFrutti(...)

Factory function for Tuttifrutti diagnostic stack device.

pcdsdevices.lasers.tuttifrutti.TuttiFruttiCls(...)

Generate a TuttiFrutti class.

pcdsdevices.lasers.zoomtelescope

pcdsdevices.lasers.zoomtelescope.ZoomTelescope([...])

Zoom telescope

pcdsdevices.lens

pcdsdevices.lens.LensStack(x_prefix, ...[, ...])

Class for Be lens.

pcdsdevices.lens.LensStackBase(x_prefix, ...)

Class for Be lens macros and safe operations.

pcdsdevices.lens.Prefocus(prefix, *, name, ...)

PreFocussing Lens Stack (PFLS).

pcdsdevices.lens.SimLensStack(x_prefix, ...)

pcdsdevices.lens.SimLensStackBase(x_prefix, ...)

Test version of the lens stack for testing the Be lens class.

pcdsdevices.lens.XFLS(prefix, *, name, **kwargs)

X-ray Focusing (Be) Lens Stack.

pcdsdevices.lic

pcdsdevices.lic.LICMirror(prefix, *, name, ...)

Standard TwinCATStatePMPS motion.

pcdsdevices.lic.LaserInCoupling(*args, **kwargs)

Device to bring the optical laser to the sample via mirrors.

pcdsdevices.light_control

pcdsdevices.light_control.LightControl([...])

Basic control and readback PVs for LEDs/Fiber-Lites.

pcdsdevices.lodcm

pcdsdevices.lodcm.CHI1(prefix, *, name, **kwargs)

Rotation axis, it does not have an OUT state.

pcdsdevices.lodcm.CHI2(prefix, *, name, **kwargs)

Rotation axis, it does not have an OUT state.

pcdsdevices.lodcm.CrystalTower1(prefix, ...)

LODCM Crystal Tower 1.

pcdsdevices.lodcm.CrystalTower2(prefix, ...)

LODCM Crystal Tower 2.

pcdsdevices.lodcm.Dectris(prefix, *, name, ...)

pcdsdevices.lodcm.DiagnosticsTower(prefix, ...)

LODCM Diagnostic Tower.

pcdsdevices.lodcm.Diode(prefix, *, name, ...)

pcdsdevices.lodcm.Foil(prefix, *args, **kwargs)

pcdsdevices.lodcm.H1N(prefix, *, name, **kwargs)

pcdsdevices.lodcm.H2N(prefix, *, name, **kwargs)

pcdsdevices.lodcm.LODCM(prefix, *, name[, ...])

Large Offset Dual Crystal Monochromator.

pcdsdevices.lodcm.LODCMEnergyC(prefix, ...)

Energy calculations for the C material.

pcdsdevices.lodcm.LODCMEnergyC1(prefix, ...)

Energy calculations for the C material.

pcdsdevices.lodcm.LODCMEnergySi(prefix, ...)

Energy calculations for the Si material.

pcdsdevices.lodcm.SimDiagnosticsTower(...)

Diagnostics Tower Simulator for Testing.

pcdsdevices.lodcm.SimEnergyC(prefix, *args, ...)

Energy C Simulator for Testing

pcdsdevices.lodcm.SimEnergySi(prefix, *args, ...)

Energy Si Simulator for Testing

pcdsdevices.lodcm.SimFirstTower(prefix, ...)

Crystal Tower 1 Simulator for Testing.

pcdsdevices.lodcm.SimLODCM(prefix, *args, ...)

LODCM Simulator for Testing

pcdsdevices.lodcm.SimSecondTower(prefix, ...)

Crystal Tower 2 Simulator for Testing.

pcdsdevices.lodcm.XCSLODCM(prefix, *, name)

The XCS implementation of a LODCM.

pcdsdevices.lodcm.XPPLODCM(prefix, *, name)

The XPP implementation of a LODCM.

pcdsdevices.lodcm.Y1(prefix, *, name, **kwargs)

Vertical y motion.

pcdsdevices.lodcm.Y2(prefix, *, name, **kwargs)

pcdsdevices.lodcm.YagLom(prefix, *, name, ...)

pcdsdevices.lxe

pcdsdevices.lxe.FakeLxtTtc()

pcdsdevices.lxe.LaserEnergyPositioner(*args, ...)

Uses the lookup-table positioner to convert energy <-> motor positions.

pcdsdevices.lxe.LaserTiming([prefix, egu])

"lxt" motor, which may also have been referred to as Vitara.

pcdsdevices.lxe.LaserTimingCompensation(...)

LaserTimingCompensation (lxt_ttc) synchronously moves LaserTiming (lxt) with TimeToolDelay (txt) to compensate so that the true laser x-ray delay by using the lxt-value and the result of time tool data analysis, avoiding double-counting.

pcdsdevices.lxe.LxtTtcExample(*args, **kwargs)

Example of one way to set up the lxt_ttc construct using SyncAxis

pcdsdevices.lxe.TimeToolDelay(*args[, egu, ...])

Laser delay stage to rescale the physical time tool delay stage to units of time.

pcdsdevices.lxe._ReversedTimeToolDelay(*args)

An inverted version of TimeToolDelay.

pcdsdevices.lxe._ScaledUnitConversionDerivedSignal(...)

pcdsdevices.lxe.load_calibration_file(filename)

Load a calibration file.

pcdsdevices.make_ophyd_device

pcdsdevices.make_ophyd_device.flatten_list(lofl)

Flatten a list of lists.

pcdsdevices.make_ophyd_device.get_components(pv_list)

Separate PVs in a given list of PVs based on whether a corresponding '_RBV' PV exists for the PV in the list.

pcdsdevices.make_ophyd_device.make_class(name, d)

Generate the requisite code for a simple python class for interacting with a device.

pcdsdevices.make_ophyd_device.make_class_line(...)

Make the first line of a class definition, based on a given PV or name.

pcdsdevices.make_ophyd_device.make_class_name(pv)

Make a class name based on a given PV.

pcdsdevices.make_ophyd_device.make_cpt(name, ...)

Make a component line for a sub-class, based on the supplied name.

pcdsdevices.make_ophyd_device.make_signal(...)

Create a Cpt line with specified suffix.

pcdsdevices.make_ophyd_device.make_signal_wrbv(...)

Create a Cpt line with RBV pv and separate write_PV.

pcdsdevices.make_ophyd_device.print_class(...)

pcdsdevices.make_ophyd_device.recurse_record(d, ...)

Recurse through a given record, supplied as a list of strings, and create nested dictionaries.

pcdsdevices.make_ophyd_device.write_file(...)

pcdsdevices.mirror

pcdsdevices.mirror.FFMirror(*args, **kwargs)

Fixed Focus Kirkpatrick-Baez Mirror.

pcdsdevices.mirror.FFMirrorZ(*args, **kwargs)

Fixed Focus Kirkpatrick-Baez Mirror with Z axis.

pcdsdevices.mirror.Gantry(prefix, *[, ...])

Gantry Axis.

pcdsdevices.mirror.KBOMirror(*args, **kwargs)

Kirkpatrick-Baez Mirror with Bender Axes.

pcdsdevices.mirror.KBOMirrorChin(*args, **kwargs)

Kirkpatrick-Baez Mirror with Bender Axes.

pcdsdevices.mirror.KBOMirrorHE(*args, **kwargs)

Kirkpatrick-Baez Mirror with Bender Axes and Cooling.

pcdsdevices.mirror.KBOMirrorHEStates(*args, ...)

Kirkpatrick-Baez Mirror with Bender Axes and Cooling and Coating States.

pcdsdevices.mirror.KBOMirrorStates(*args, ...)

Kirkpatrick-Baez Mirror with Bender Axes and Coating States.

pcdsdevices.mirror.MirrorInsertState(prefix, ...)

A state positioner with two states (3 including Unknown) representing insertion state of mirror

pcdsdevices.mirror.OMMotor(*args, **kwargs)

Base class for each motor in the LCLS offset mirror system.

pcdsdevices.mirror.OffsetMirror(prefix, *[, ...])

X-ray Offset Mirror class.

pcdsdevices.mirror.OpticsPitchNotepad(*args, ...)

class for storing pitch positions based on state

pcdsdevices.mirror.Pitch(prefix, **kwargs)

HOMS Pitch Mechanism.

pcdsdevices.mirror.PointingMirror(prefix, *)

Retractable OffsetMirror.

pcdsdevices.mirror.TwinCATMirrorStripe(...)

Subclass of TwinCATStatePMPS for the mirror coatings.

pcdsdevices.mirror.XOffsetMirror(*args[, ...])

X-ray Offset Mirror.

pcdsdevices.mirror.XOffsetMirrorBend(*args)

X-ray Offset Mirror with 2 bender acutators.

pcdsdevices.mirror.XOffsetMirrorRTDs(*args)

X-ray Offset Mirror.

pcdsdevices.mirror.XOffsetMirrorState(*args)

X-ray Offset Mirror with Yleft/Yright

pcdsdevices.mirror.XOffsetMirrorStateCool(*args)

X-ray Offset Mirror with Yleft/Yright

pcdsdevices.mirror.XOffsetMirrorSwitch(*args)

X-ray Offset Mirror with Yleft/Yright

pcdsdevices.mirror.XOffsetMirrorXYState(*args)

X-ray Offset Mirror with state positioners for both coating (y) and insertion (x).

pcdsdevices.movablestand

pcdsdevices.movablestand.MovableStand(...)

Stand that can be moved.

pcdsdevices.mpod

pcdsdevices.mpod.MPOD(channel_prefix[, ...])

Determine the appropriate MPOD Channel class based on the max voltage.

pcdsdevices.mpod.MPODChannel(channel_prefix)

MPOD Channel Object.

pcdsdevices.mpod.MPODChannelHV(...[, name])

MPOD High Voltage Channel Object.

pcdsdevices.mpod.MPODChannelLV(channel_prefix)

MPOD Low Voltage Channel Object.

pcdsdevices.mpod.get_card_number(channel)

Helper function for creating the card prefix for HV channels.

pcdsdevices.mpod_apalis

pcdsdevices.mpod_apalis.MPODApalisChannel(...)

MPODApalis Channel Object.

pcdsdevices.mpod_apalis.MPODApalisCrate(...)

MPODApalis Crate Object.

pcdsdevices.mpod_apalis.MPODApalisModule(...)

MPODApalis Module Object.

pcdsdevices.mpod_apalis.MPODApalisModule16Channel(...)

MPODApalis 16 channel Module Object.

pcdsdevices.mpod_apalis.MPODApalisModule24Channel(...)

MPODApalis 24 channel Module Object.

pcdsdevices.mpod_apalis.MPODApalisModule4Channel(...)

MPODApalis 4 channel Module Object.

pcdsdevices.mpod_apalis.MPODApalisModule8Channel(...)

MPODApalis 8 channel Module Object.

pcdsdevices.mps

pcdsdevices.mps.MPS(*args[, veto])

Class to interpret a single bit of MPS information.

pcdsdevices.mps.MPSBase(*args[, veto])

Base MPS class.

pcdsdevices.mps.MPSLimits(prefix, logic, ...)

Logical combination of two MPS bits.

pcdsdevices.mps.mps_factory(clsname, cls, ...)

Create a new object of arbitrary class capable of storing MPS information.

pcdsdevices.mps.must_be_known(in_limit, ...)

Logical combination of limits enforcing a known state.

pcdsdevices.mps.must_be_out(in_limit, out_limit)

Logical combination of limits enforcing an out state.

pcdsdevices.mrco_motion

pcdsdevices.mrco_motion.MRCO(*args, **kwargs)

MRCO Motion Class

pcdsdevices.piezo

pcdsdevices.piezo.SliceDhv(*args, **kwargs)

Class for a complete two channel Vescent Photonics Slice-DHV piezo driver.

pcdsdevices.piezo.SliceDhvChannel(*args, ...)

Class for controlling a single channel from a Vescent Photonics Slice-DHV piezo driver channel PVs.

pcdsdevices.piezo.SliceDhvController(*args, ...)

Class for the Vescent Photonics Slice-DHV piezo driver controller PVs.

pcdsdevices.pim

pcdsdevices.pim.IM2K0(*args, **kwargs)

One-off combination of an XPIM and a PPM for scientific merit.

pcdsdevices.pim.IM3L0(*args, **kwargs)

One-off subclass of PPM to add Keithley readout to this device's detailed screen.

pcdsdevices.pim.LCLS2ImagerBase(*args, **kwargs)

Shared PVs and components from the LCLS2 imagers.

pcdsdevices.pim.LCLS2Target(prefix, *, name, ...)

Controls the PPM and XTES Imager states.

pcdsdevices.pim.PIM(prefix, *, name[, ...])

Profile Intensity Monitor.

pcdsdevices.pim.PIMWithBoth(prefix, *, name)

Profile Intensity Monitor with LED and Focus control.

pcdsdevices.pim.PIMWithFocus(prefix, *, name)

Profile Intensity Monitor with Focus control.

pcdsdevices.pim.PIMWithLED(prefix, *, name)

Profile Intensity Monitor with LED.

pcdsdevices.pim.PIMY(prefix, *, name, **kwargs)

Standard Y-motor for a Profile Intensity Monitor.

pcdsdevices.pim.PPM(*args, **kwargs)

L2SI's Power and Profile Monitor design.

pcdsdevices.pim.PPMCOOL(*args, **kwargs)

L2SI's Power and Profile Monitor design with cooling.

pcdsdevices.pim.PPMPowerMeter(*args, **kwargs)

Analog measurement tool for beam energy as part of the PPM assembly.

pcdsdevices.pim.XPIM(*args, **kwargs)

XTES's Imager design.

pcdsdevices.pim.XPIMFilterWheel(prefix, *, ...)

Controllable optical filters to prevent camera saturation.

pcdsdevices.pim.XPIMLED(*args, **kwargs)

Controllable illumination with auto-on, auto-off, and shutdown timer.

pcdsdevices.pmps

pcdsdevices.pmps.TwinCATStatePMPS(prefix, *, ...)

TwinCAT In/Out State Positioner with PMPS Protections

pcdsdevices.pneumatic

pcdsdevices.pneumatic.BeckhoffPneumatic(...)

Class containing basic Beckhoff Pneumatic support

pcdsdevices.positioner

pcdsdevices.positioner.FuncPositioner(*, ...)

Class for hacking together a positioner-like object.

pcdsdevices.pseudopos

pcdsdevices.pseudopos.DelayBase(*args[, ...])

Laser delay stage to rescale a physical axis to a time axis.

pcdsdevices.pseudopos.DelayMotor(motor[, ...])

Generic time delay-stage with variable units and number of bounces.

pcdsdevices.pseudopos.LookupTablePositioner(...)

A pseudo positioner which uses a look-up table to compute positions.

pcdsdevices.pseudopos.OffsetMotorBase(...)

Motor with an offset.

pcdsdevices.pseudopos.PseudoPositioner(...)

pcdsdevices.pseudopos.PseudoSingleInterface([...])

PseudoSingle with FltMvInterface mixed in.

pcdsdevices.pseudopos.SimDelayStage(*args[, ...])

pcdsdevices.pseudopos.SyncAxesBase(*args, ...)

Synchronized Axes.

pcdsdevices.pseudopos.SyncAxis(*args, **kwargs)

Pseudomotor class for moving motors with linear relationships.

pcdsdevices.pseudopos.delay_class_factory(...)

Create a subclass of DelayBase that controls a motor of class motor_class.

pcdsdevices.pseudopos.delay_instance_factory(...)

Laser delay stage to rescale a physical axis to a time axis.

pcdsdevices.pulsepicker

pcdsdevices.pulsepicker.PulsePicker(*args, ...)

Device that picks which pulses to let through.

pcdsdevices.pulsepicker.PulsePickerInOut(...)

PulsePicker paired with a states record to control the Y position.

pcdsdevices.pump

pcdsdevices.pump.AgilentSerial([prefix, ...])

Class for Agilent Turbo Pump controlled via serial.

pcdsdevices.pump.EbaraPump(*args, **kwargs)

Ebara Turbo Pump.

pcdsdevices.pump.Ebara_EV_A03_1([prefix, ...])

Class for the Ebara EV-A03-1 model of roughing pump.

pcdsdevices.pump.GammaController(*args, **kwargs)

Ion Pump Gamma controller.

pcdsdevices.pump.GammaPCT([prefix, kind, ...])

Class for Gamma Pump Controller accessed via serial.

pcdsdevices.pump.IonPump(prefix, *, name, ...)

Ion Pump

pcdsdevices.pump.IonPumpBase(*args, **kwargs)

Ion Pump Base Class.

pcdsdevices.pump.IonPumpWithController(...)

Ion Pump w/ controller.

pcdsdevices.pump.Navigator([prefix, kind, ...])

Class for Navigator Pump controlled via serial.

pcdsdevices.pump.PIPPLC([prefix, kind, ...])

Class for PLC-controlled Ion Pumps.

pcdsdevices.pump.PIPSerial([prefix, kind, ...])

Class for Positive Ion Pump controlled via serial.

pcdsdevices.pump.PROPLC([prefix, kind, ...])

Class for PLC-controlled Roughing Pump.

pcdsdevices.pump.PTMPLC([prefix, kind, ...])

Class for PLC-controlled Turbo Pump.

pcdsdevices.pump.QPCPCT([prefix, kind, ...])

Class for Quad Pump Controller accessed via ethernet.

pcdsdevices.pump.TurboPump(*args, **kwargs)

Turbo Vacuum Pump.

pcdsdevices.pv_positioner

pcdsdevices.pv_positioner.PVPositionerComparator(...)

PV Positioner with a software done signal.

pcdsdevices.pv_positioner.PVPositionerDone(...)

PV Positioner with no readback that reports done immediately.

pcdsdevices.pv_positioner.PVPositionerIsClose(...)

PV Positioner that updates done state based on np.isclose.

pcdsdevices.radiation

pcdsdevices.radiation.HPI6030([prefix, ...])

The Human Physics Instrument 6030 radiation sensor is controlled by the HPI 6012 which sends readout data over RS232.

pcdsdevices.ref

pcdsdevices.ref.ReflaserL2SI(*args, **kwargs)

The L2SI design for the reference laser.

pcdsdevices.ref.ReflaserL2SIMirror(prefix, ...)

Controls the reference laser's states.

pcdsdevices.rs_powersupply

pcdsdevices.rs_powersupply.RSChannel([...])

Class to define PVs for a single channel of the RSPowerSupply NGP800.

pcdsdevices.rs_powersupply.RohdeSchwarzPowerSupply([...])

Class to define PVs of all channels of the RSPowerSupply NGP800.

pcdsdevices.rtds_ebd

pcdsdevices.rtds_ebd.PneumaticActuator(...)

pcdsdevices.rtds_ebd.RTDSBase(*args, **kwargs)

Rapid Turnaround Diagnostic Station.

pcdsdevices.rtds_ebd.RTDSK0(*args, **kwargs)

RTDS Configuration on the SXR Line.

pcdsdevices.rtds_ebd.RTDSL0(*args, **kwargs)

RTDS Configuration on the HXR Line.

pcdsdevices.rtds_ebd.RTDSX0ThreeStage(*args, ...)

Three stages X,Y,Z, for solid drilling experiments

pcdsdevices.sample_delivery

pcdsdevices.sample_delivery.Bronkhorst(...)

A Bronkhorst mass flow meter/controller for sample delivery systems.

pcdsdevices.sample_delivery.CoolerShaker(...)

A Cooler/Shaker for the sample delivery system.

pcdsdevices.sample_delivery.FlowIntegrator(*, ...)

A Flow Integrator for the sample delivery system.

pcdsdevices.sample_delivery.GasManifold(...)

A Gas Manifold as used in the sample delivery system.

pcdsdevices.sample_delivery.HPLC(prefix, *, ...)

An HPLC for the sample delivery system.

pcdsdevices.sample_delivery.IntegratedFlow(...)

A single flow for the FlowIntegrator.

pcdsdevices.sample_delivery.M3BasePLCDevice(...)

Base device for M3 SDS PLC devices.

pcdsdevices.sample_delivery.ManifoldValve(...)

A single valve as present in the SDS Gas Manifold.

pcdsdevices.sample_delivery.PCM(*args, **kwargs)

A Pressure Control Module for the sample delivery system.

pcdsdevices.sample_delivery.PropAir(*args, ...)

A Proportionair pressure regulator used by the Pressure Control Module.

pcdsdevices.sample_delivery.Selector(*args, ...)

A Selector for the sample delivery system.

pcdsdevices.sample_delivery.Sensirion(*args, ...)

A Sensirion liquid flow meter for sample delivery systems.

pcdsdevices.sample_delivery.ViciValve(*args, ...)

A Vici Valve as used in the SDS Selector.

pcdsdevices.sensors

pcdsdevices.sensors.RTD(*args, **kwargs)

Resistive Temperature Device.

pcdsdevices.sensors.TwinCATTempSensor(*args, ...)

Basic twincat temperature sensor class.

pcdsdevices.sensors.TwinCATThermocouple(...)

Basic twincat temperature sensor class.

pcdsdevices.sequencer

pcdsdevices.sequencer.EventSequence(*args, ...)

Class for the event sequence of the event sequencer.

pcdsdevices.sequencer.EventSequencer(prefix, *)

Event Sequencer.

pcdsdevices.signal

pcdsdevices.signal.AggregateSignal(*, name)

Signal that is composed of a number of other signals.

pcdsdevices.signal.AvgSignal(signal, ...[, ...])

Signal that acts as a rolling average of another signal.

pcdsdevices.signal.EpicsSignalBaseEditMD(*args)

EpicsSignal variant which allows for user correction of various metadata.

pcdsdevices.signal.EpicsSignalEditMD(read_pv)

EpicsSignal variant which allows for user correction of various metadata.

pcdsdevices.signal.EpicsSignalROEditMD(...)

EpicsSignal variant which allows for user correction of various metadata.

pcdsdevices.signal.FakeEpicsSignalEditMD(*args)

API stand-in for EpicsSignalEditMD Add to this if you need it to actually work for your test.

pcdsdevices.signal.FakeEpicsSignalROEditMD(*args)

API stand-in for EpicsSignalROEditMD

pcdsdevices.signal.FakeNotepadLinkedSignal(read_pv)

A suitable fake class for NotepadLinkedSignal.

pcdsdevices.signal.FakePytmcSignal(prefix[, io])

A suitable fake class for PytmcSignal.

pcdsdevices.signal.FakePytmcSignalRO(prefix)

pcdsdevices.signal.FakePytmcSignalRW(prefix)

pcdsdevices.signal.InternalSignal(*args, ...)

Class Signal that stores info but should only be updated by the class.

pcdsdevices.signal.MultiDerivedSignal(*args, ...)

Signal derived from multiple signals in the device hierarchy.

pcdsdevices.signal.MultiDerivedSignalRO(...)

Read-only variant of a MultiDerivedSignal.

pcdsdevices.signal.NotImplementedSignal(...)

Dummy signal for a not implemented feature.

pcdsdevices.signal.NotepadLinkedSignal(read_pv)

Create the notepad metadata dict for usage by pcdsdevices-notepad.

pcdsdevices.signal.PVStateSignal(*, name, ...)

Signal that implements the PVStatePositioner state logic.

pcdsdevices.signal.PytmcSignal(prefix[, io])

Class for a connection to a pytmc-generated EPICS record.

pcdsdevices.signal.PytmcSignalRO(prefix[, io])

Read-only connection to a pytmc-generated EPICS record.

pcdsdevices.signal.PytmcSignalRW(prefix[, io])

Read-write connection to a pytmc-generated EPICS record.

pcdsdevices.signal.SignalEditMD(*, name[, ...])

Subclass for allowing an external override of signal metadata.

pcdsdevices.signal.SummarySignal(*, name[, ...])

Signal that holds a hash of the values of the constituent signals.

pcdsdevices.signal.UnitConversionDerivedSignal(...)

A DerivedSignal which performs unit conversion.

pcdsdevices.signal._OptionalEpicsSignal(read_pv)

An EPICS Signal which may or may not exist.

pcdsdevices.signal.pytmc_writable(io)

Returns True if the pytmc io arg represents a writable PV.

pcdsdevices.signal.select_pytmc_class([io])

Return the class to use for PytmcSignal's constructor.

pcdsdevices.sim

pcdsdevices.sim.FastMotor(*args[, init_pos, ...])

Instant motor with FltMvInterface.

pcdsdevices.sim.SimTwoAxis([prefix, kind, ...])

Test assembly with two slow motors.

pcdsdevices.sim.SlowMotor(*args[, init_pos, ...])

Simulated slow-moving motor.

pcdsdevices.sim.SynMotor(*args, **kwargs)

SynAxis with the FltMvInterface additions.

pcdsdevices.slits

pcdsdevices.slits.BadSlitPositionerBase(...)

Base class for slit positioner with awful PV names.

pcdsdevices.slits.BeckhoffSlitPositioner(...)

Abstraction of a Slit axis from LCLS-II.

pcdsdevices.slits.BeckhoffSlits(prefix, *, ...)

pcdsdevices.slits.ExitSlitTarget(prefix, *, ...)

Controls the exit slits target state.

pcdsdevices.slits.ExitSlits(*args, **kwargs)

pcdsdevices.slits.JJSlits(*args[, ...])

Beckhoff Controlled AT-C8-HV JJ X-Ray Slits.

pcdsdevices.slits.LusiSlitPositioner(prefix, *)

Abstraction of a Slit axis from LCLS-I

pcdsdevices.slits.LusiSlits(*args[, ...])

Beam slits with combined motion for center and width.

pcdsdevices.slits.PowerSlits(prefix, *, ...)

'SL*:POWER'.

pcdsdevices.slits.SimLusiSlits(*args[, ...])

pcdsdevices.slits.SlitPositioner(prefix, *)

pcdsdevices.slits.Slits(*args[, ...])

pcdsdevices.slits.SlitsBase(*args[, ...])

Base class for slit motion interfacing.

pcdsdevices.spectrometer

pcdsdevices.spectrometer.FZPStates(prefix, ...)

Fresnel Zone Plate (FZP) 3D States Setup

pcdsdevices.spectrometer.Gen1VonHamos4Crystal(...)

Four crystal Von Hamos setup controlled with a Beckhoff PLC.

pcdsdevices.spectrometer.Gen1VonHamosCrystal(...)

Pitch, yaw, and translation motors for control of a single crystal.

pcdsdevices.spectrometer.HXRSpectrometer(...)

HXR Single Shot Spectrometer motion components class.

pcdsdevices.spectrometer.Kmono(*args, **kwargs)

K-edge Monochromator: Used for Undulator tuning and other experiments.

pcdsdevices.spectrometer.Mono(*args, **kwargs)

L2S-I NEH 2.X Monochromator

pcdsdevices.spectrometer.TMOSpectrometer(...)

TMO Fresnel Photon Spectrometer Motion components class.

pcdsdevices.spectrometer.TMOSpectrometerSOLIDATTStates(...)

Spectrometer Solid Attenuator(FOIL X and Y) 2D States Setup

pcdsdevices.spectrometer.VonHamos4Crystal(...)

von Hamos spectrometer with four crystals and focus and energy motors.

pcdsdevices.spectrometer.VonHamosCrystal(...)

Pitch, yaw, and translation motors for control of a single crystal.

pcdsdevices.spectrometer.VonHamosFE(*args, ...)

von Hamos spectrometer with Focus and Energy motors.

pcdsdevices.spectrometer.VonHamosFER(*args, ...)

von Hamos spectrometer with Focus, Energy, and Rotation motors.

pcdsdevices.sqr1

pcdsdevices.sqr1.SQR1([prefix, kind, ...])

Ophyd device represents the entire square-one tri-sphere motion system.

pcdsdevices.sqr1.SQR1Axis(prefix, axis[, ...])

Single axis of the square-one tri-sphere motion system.

pcdsdevices.state

pcdsdevices.state.CombinedStateRecordPositioner(...)

A StatePositioner for an X/Y combined state positioner EPICS record.

pcdsdevices.state.FakeTwinCATStateConfigDynamic(...)

Proper fake device class for TwinCATStateConfigDynamic.

pcdsdevices.state.PVStatePositioner(prefix, ...)

A StatePositioner that combines a set of PVs into a single state.

pcdsdevices.state.StatePositioner(prefix, *, ...)

Base class for state-based positioners.

pcdsdevices.state.StateRecordPositioner(...)

A StatePositioner for an EPICS states record.

pcdsdevices.state.StateRecordPositionerBase(...)

A StatePositioner for an EPICS states record.

pcdsdevices.state.TwinCATStateConfigDynamic(...)

Configuration of a variable number of TwinCAT states.

pcdsdevices.state.TwinCATStateConfigOne([...])

Configuration of a single state position in TwinCAT.

pcdsdevices.state.TwinCATStatePositioner(...)

A StatePositioner from Beckhoff land.

pcdsdevices.state.get_dynamic_state_attr(...)

Get the attr string associated with a single state index.

pcdsdevices.state.state_config_dotted_attribute(...)

Returns the full dotted name of all associated state config components.

pcdsdevices.state.state_config_dotted_names(...)

Returns the full dotted names of the state config state_name components.

pcdsdevices.state.state_config_dotted_velos(...)

Returns the full dotted names of the state config velo components.

pcdsdevices.stopper

pcdsdevices.stopper.PPSStopper(prefix, *[, ...])

PPS Stopper.

pcdsdevices.stopper.PPSStopper2PV(prefix, *)

PPS Stopper with two PVs defining the state together.

pcdsdevices.stopper.Stopper(prefix, *, name, ...)

Controls Stopper.

pcdsdevices.sxr_test_absorber

pcdsdevices.sxr_test_absorber.SxrTestAbsorber(...)

SXR Test Absorber: Used for testing the sxr beamline at high pulse rates.

pcdsdevices.sxr_test_absorber.SxrTestAbsorberStates(...)

SXR Test absorber states

pcdsdevices.tags

pcdsdevices.tags.explain_tag(tag_name)

Return a user-friendly explanation of a tag's meaning.

pcdsdevices.tags.get_valid_tags()

Return a set of all valid variety tags.

pcdsdevices.targets

pcdsdevices.targets.StageStack(mdict, name)

Conveniencefunction for generating a stage stack device.

pcdsdevices.targets.convert_to_physical(...)

Convert to physical coordinates from logical coordinates.

pcdsdevices.targets.get_unit_meshgrid(...)

Based on the 4 coordinates and m and n points, find the meshgrid.

pcdsdevices.targets.mesh_interpolation(...)

Mapping functions for an arbitrary quadrilateral.

pcdsdevices.targets.snake_grid_list(points)

Flatten them into lists with snake_like pattern coordinate points.

pcdsdevices.timetool

pcdsdevices.timetool.Timetool(prefix, *, ...)

Timetool motion with x- and y-motion motors.

pcdsdevices.timetool.TimetoolWithNav(prefix, ...)

Timetool motion with zoom, focus, and x- & y-motion motors.

pcdsdevices.usb_encoder

pcdsdevices.usb_encoder.UsDigitalUsbEncoder(...)

Class for the USB encoder by US Digital.

pcdsdevices.utils

pcdsdevices.utils.check_kind_flag(kind, flag)

Return True if kind contains flag.

pcdsdevices.utils.combine_status_info(obj, ...)

Combine status information from the given attributes.

pcdsdevices.utils.convert_unit(value, unit, ...)

One-line unit conversion.

pcdsdevices.utils.doc_format_decorator(...)

Decorator for substituting values into a docstring.

pcdsdevices.utils.format_ophyds_to_html(obj)

Recursively construct html that contains the output from .status() for each object provided.

pcdsdevices.utils.format_status_table(...[, ...])

Create a PrettyTable based on status information.

pcdsdevices.utils.get_component(obj)

Get the component that made the given object.

pcdsdevices.utils.get_input()

Waits for a single character input and returns it.

pcdsdevices.utils.get_status_float(...[, ...])

Get the value of a dictionary key.

pcdsdevices.utils.get_status_value(...[, ...])

Get the value of a dictionary key.

pcdsdevices.utils.ipm_screen(dettype, ...)

Function to call the (pyQT) screen for an IPM box.

pcdsdevices.utils.is_input()

Utility to check if there is input available.

pcdsdevices.utils.maybe_make_method(func, owner)

Bind func as a method of owner if self is the first parameter.

pcdsdevices.utils.move_subdevices_to_start([...])

Arrange the component order of a device class to put subdevices first.

pcdsdevices.utils.post_ophyds_to_elog(objs)

Take a list of ophyd objects and post their status representations to the elog.

pcdsdevices.utils.reorder_components([cls, ...])

Rearrange the components in cls for typhos displays.

pcdsdevices.utils.schedule_task(func[, ...])

Use ophyd's dispatcher to schedule a task for later.

pcdsdevices.utils.set_many(to_set, *[, ...])

Call set on all given signal-to-value pairs with a single Status return value.

pcdsdevices.utils.set_standard_ordering(cls)

Set a sensible "standard" ordering for use in typhos.

pcdsdevices.utils.sort_components_by_kind(cls)

Arrange the component order of a device class in kind order.

pcdsdevices.utils.sort_components_by_name([...])

Arrange the component order of a device class in alphabetical order.

pcdsdevices.valve

pcdsdevices.valve.GateValve(prefix, *, name, ...)

Basic Vacuum Valve.

pcdsdevices.valve.VCN([prefix, kind, ...])

VCN = Variable Controlled Needle valve

pcdsdevices.valve.VCN_VAT590(*args, **kwargs)

VCN_VAT590 = Variable Controlled Needle Valve using the VAT590

pcdsdevices.valve.VCN_VAT590_Status([...])

See VCN_VAT590

pcdsdevices.valve.VFS(*args[, ...])

VFS = Fast Shutter Valve

pcdsdevices.valve.VGC(*args[, ...])

VGC = Vacuum Gate valve, Controlled

pcdsdevices.valve.VGCLegacy([prefix, kind, ...])

Class for Basic Vacuum Valve.

pcdsdevices.valve.VGC_2S(*args[, ...])

VGC_2S = Vacuum Gate valve, Controlled, with 2 Setpoints.

pcdsdevices.valve.VRC(*args[, ...])

VRC = Valve with Readback and Control

pcdsdevices.valve.VRCClsLS([prefix, kind, ...])

Valve with Readback and Control and only a Closed Limit Switch.

pcdsdevices.valve.VRCDA(*args[, ...])

VRCDA = Valve with Readback and Control, Dual Acting

pcdsdevices.valve.VRCNO(*args[, ...])

VRCNO = Valve with Readback and Control, Normally Open

pcdsdevices.valve.VVC([prefix, kind, ...])

VVC = Vent Valve, Controlled.

pcdsdevices.valve.VVCNO([prefix, kind, ...])

VVCNO = Vent Valve, Controlled, Normally Open.

pcdsdevices.valve.ValveBase([prefix, kind, ...])

Base class for valves.

pcdsdevices.variety

pcdsdevices.variety.expand_dotted_dict(root)

Expand dotted dictionary keys.

pcdsdevices.variety.get_metadata(cpt)

Get "variety" metadata from a component or signal.

pcdsdevices.variety.set_metadata(cpt, metadata)

Set "variety" metadata on a given component.

pcdsdevices.variety.validate_metadata(md)

Validate a given metadata dictionary.

pcdsdevices.wfs

pcdsdevices.wfs.WaveFrontSensorStates(...)

Controls the WFS (Wavefront Sensor)'s target states.

pcdsdevices.wfs.WaveFrontSensorTarget(*args, ...)

An array of targets used to determine the beam's wavefront.