LightController¶
While the BeamPath
object provides basic control functionality, the
LightController
is what does the organization of all of LCLS’s
devices. After parsing through all of the given devices, each beamline is
contsructed as a BeamPath
object. This includes not only devices on
the upstream beamline but all of the beamlines before it. For example, the MEC
beampath will include devices in both the FEE and the XRT. The
LightController
handles this logic as well as a basic overview of
where the beam is and what the state of the MPS system is currently.
-
class
lightpath.
LightController
(client, endstations=None)[source]¶ Controller for the LCLS Lightpath
Handles grouping devices into beamlines and joining paths together. Also provides an overview of the state of the entire beamline
-
containers
¶ list – List of happi Device objects that were unable to be instantiated
Parameters: - client (happi.Client) – Happi Client
- endstations (list, optional) – List of experimental endstations to load BeamPath objects for. If left as None, all endstations will be loaded
-
destinations
¶ Current device destinations for the LCLS photon beam
-
devices
¶ All of the devices loaded into beampaths
-
incident_devices
¶ List of all devices in contact with photons along the beamline
-