Files
alvra/adhoc.py

89 lines
2.0 KiB
Python

class LXT:
pass
lxt = LXT()
from slic.devices.xoptics.dcm import AlvraDCM_FEL
monoFEL = AlvraDCM_FEL("SAROP11-ODCM105")
from slic.devices.general.smaract import SmarActAxis
laser_pitch = SmarActAxis("SARES11-XICM125:ROX1")
laser_trans = SmarActAxis("SARES11-XICM125:TRX1")
laser_yaw = SmarActAxis("SARES11-XICM125:ROY1")
microscope_pitch = SmarActAxis("SARES11-XMI125:ROY1")
microscope_yaw = SmarActAxis("SARES11-XMI125:ROZ1")
#TODO: just some generic examples:
from slic.devices.devicez import DeviceZ
shut_und = DeviceZ(
"SARFE10-OPSH044",
description="Photon shutter after Undulator"
)
pbps_und = DeviceZ(
"SARFE10-PBPS053",
z_undulator=44,
description="Intensity position monitor after Undulator (PBPS)"
)
#print(shut_und)
#print(pbps_und)
from types import SimpleNamespace
from slic.devices.basedevice import BaseDevice
from slic.devices.general.motor import Motor
from slic.devices.general.smaract import SmarActAxis
from slic.utils.printing import printable_dict
class TXS(BaseDevice):
def __init__(self):
self.Id = Id = "SAROP11-PTXS128"
self.x = Motor(Id + ":TRX1")
self.y = Motor(Id + ":TRY1")
self.z = Motor(Id + ":TRZ1")
self.bonus = SimpleNamespace(
tr_x11 = SmarActAxis(Id + ":TRX11"),
rot_y11 = SmarActAxis(Id + ":ROTY11"),
rot_x11 = SmarActAxis(Id + ":ROTX11"),
rot_x12 = SmarActAxis(Id + ":ROTX12"),
rot_x13 = SmarActAxis(Id + ":ROTX13"),
tr_x21 = SmarActAxis(Id + ":TRX21"),
rot_y21 = SmarActAxis(Id + ":ROTY21"),
rot_x21 = SmarActAxis(Id + ":ROTX21"),
rot_x22 = SmarActAxis(Id + ":ROTX22"),
rot_x23 = SmarActAxis(Id + ":ROTX23")
)
def __repr__(self):
to_print = {}
for key, item in self.__dict__.items():
if not isinstance(item, Motor):
continue
to_print[key] = str(item)
head = "TXS"
return printable_dict(to_print, head)
txs = TXS()