Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add STI_Undulator class #996

Merged
merged 1 commit into from
Jul 8, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ describe future plans.
------------

* Add new APS PlanarUndulator device.
* Add new APS Revolver_Undulator device.
* Add new APS STI_Undulator device.

Maintenance
-----------
Expand Down
26 changes: 21 additions & 5 deletions apstools/devices/aps_undulator.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
"""
APS undulators
++++++++++++++
APS undulators (Insertion Devices)
++++++++++++++++++++++++++++++++++

.. autosummary::

~PlanarUndulator
~RevolverInsertionDevice
~Revolver_Undulator
~STI_Undulator
"""

import logging
Expand Down Expand Up @@ -143,7 +144,7 @@ class PlanarUndulator(ID_Spectrum_Mixin, ID_Controls_Mixin, ID_Misc_Mixin, Devic
"""


class RevolverInsertionDevice(ID_Spectrum_Mixin, ID_Controls_Mixin, ID_Misc_Mixin, Device):
class Revolver_Undulator(ID_Spectrum_Mixin, ID_Controls_Mixin, ID_Misc_Mixin, Device):
"""APS Revolver Insertion Device.

.. index:: Ophyd Device; PlanarUndulator
Expand All @@ -152,7 +153,7 @@ class RevolverInsertionDevice(ID_Spectrum_Mixin, ID_Controls_Mixin, ID_Misc_Mixi

EXAMPLE::

undulator = RevolverInsertionDevice("S08ID:USID:", name="undulator")
undulator = Revolver_Undulator("S08ID:USID:", name="undulator")
"""

# Revolver control signals
Expand All @@ -162,6 +163,21 @@ class RevolverInsertionDevice(ID_Spectrum_Mixin, ID_Controls_Mixin, ID_Misc_Mixi
status_safe_gap = Component(EpicsSignalRO, "AtSafeGapM.VAL", kind="config")


class STI_Undulator(PlanarUndulator):
"""APS Planar Undulator built by STI Optronics.

.. index::
Ophyd Device; PlanarUndulator
Ophyd Device; STI_Undulator

APS Use: 13 devices, including 4ID.

EXAMPLE::

undulator = STI_Undulator("S04ID:USID:", name="undulator")
"""


# -----------------------------------------------------------------------------
# :author: Pete R. Jemian
# :email: jemian@anl.gov
Expand Down