mxcubecore 1.393.0__py3-none-any.whl → 1.395.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mxcubecore might be problematic. Click here for more details.
- mxcubecore/HardwareObjects/ALBA/ALBAAutoProcessing.py +4 -7
- mxcubecore/HardwareObjects/ALBA/ALBABackLight.py +6 -7
- mxcubecore/HardwareObjects/ALBA/ALBABeamInfo.py +2 -4
- mxcubecore/HardwareObjects/ALBA/ALBACats.py +19 -25
- mxcubecore/HardwareObjects/ALBA/ALBAClusterJob.py +10 -11
- mxcubecore/HardwareObjects/ALBA/ALBACollect.py +49 -71
- mxcubecore/HardwareObjects/ALBA/ALBADataAnalysis.py +26 -31
- mxcubecore/HardwareObjects/ALBA/ALBAEnergy.py +1 -5
- mxcubecore/HardwareObjects/ALBA/ALBAEpsActuator.py +1 -1
- mxcubecore/HardwareObjects/ALBA/ALBAFastShutter.py +1 -1
- mxcubecore/HardwareObjects/ALBA/ALBAFlux.py +2 -6
- mxcubecore/HardwareObjects/ALBA/ALBAFrontLight.py +5 -9
- mxcubecore/HardwareObjects/ALBA/ALBAISPyBClient.py +4 -4
- mxcubecore/HardwareObjects/ALBA/ALBAMiniDiff.py +20 -27
- mxcubecore/HardwareObjects/ALBA/ALBAPilatus.py +12 -15
- mxcubecore/HardwareObjects/ALBA/ALBASession.py +1 -4
- mxcubecore/HardwareObjects/ALBA/ALBAZoomMotor.py +10 -14
- mxcubecore/HardwareObjects/ALBA/ALBAZoomMotorAutoBrightness.py +7 -11
- mxcubecore/HardwareObjects/ALBA/XalocMiniDiff.py +7 -8
- mxcubecore/HardwareObjects/BeamInfo.py +4 -6
- mxcubecore/HardwareObjects/Beamline.py +6 -7
- mxcubecore/HardwareObjects/BeamlineActions.py +3 -7
- mxcubecore/HardwareObjects/BlissHutchTrigger.py +2 -4
- mxcubecore/HardwareObjects/BlissMotorWPositions.py +4 -7
- mxcubecore/HardwareObjects/Cats90.py +33 -43
- mxcubecore/HardwareObjects/CatsBessy.py +1 -2
- mxcubecore/HardwareObjects/CatsMaint.py +2 -2
- mxcubecore/HardwareObjects/CentringMath.py +5 -4
- mxcubecore/HardwareObjects/DESY/DigitalZoomMotor.py +3 -5
- mxcubecore/HardwareObjects/DESY/MjpgStreamVideo.py +1 -3
- mxcubecore/HardwareObjects/DESY/P11Collect.py +6 -8
- mxcubecore/HardwareObjects/DESY/P11EDNACharacterisation.py +14 -16
- mxcubecore/HardwareObjects/DESY/P11ISPyBClient.py +6 -10
- mxcubecore/HardwareObjects/DESY/P11NanoDiff.py +5 -5
- mxcubecore/HardwareObjects/DataPublisher.py +2 -3
- mxcubecore/HardwareObjects/EDNACharacterisation.py +2 -4
- mxcubecore/HardwareObjects/EMBL/EMBLBeam.py +3 -3
- mxcubecore/HardwareObjects/EMBL/EMBLBeamCentering.py +2 -4
- mxcubecore/HardwareObjects/EMBL/EMBLBeamFocusing.py +3 -3
- mxcubecore/HardwareObjects/EMBL/EMBLDoorInterlock.py +1 -1
- mxcubecore/HardwareObjects/EMBL/EMBLEnergy.py +10 -18
- mxcubecore/HardwareObjects/EMBL/EMBLEnergyScan.py +9 -13
- mxcubecore/HardwareObjects/EMBL/EMBLFlux.py +10 -12
- mxcubecore/HardwareObjects/EMBL/EMBLMachineInfo.py +2 -2
- mxcubecore/HardwareObjects/EMBL/EMBLMiniDiff.py +18 -18
- mxcubecore/HardwareObjects/EMBL/EMBLMotorsGroup.py +6 -9
- mxcubecore/HardwareObjects/EMBL/EMBLOnlineProcessing.py +6 -6
- mxcubecore/HardwareObjects/EMBL/EMBLPPUControl.py +1 -1
- mxcubecore/HardwareObjects/EMBL/EMBLSSXChip.py +1 -4
- mxcubecore/HardwareObjects/EMBL/EMBLSlitBox.py +1 -3
- mxcubecore/HardwareObjects/EMBL/EMBLTableMotor.py +2 -3
- mxcubecore/HardwareObjects/EMBL/EMBLXRFSpectrum.py +4 -4
- mxcubecore/HardwareObjects/EMBL/EMBLXrayImaging.py +1 -1
- mxcubecore/HardwareObjects/EMBL/TINEMotor.py +2 -4
- mxcubecore/HardwareObjects/EMBLFlexHCD.py +5 -5
- mxcubecore/HardwareObjects/EMBLFlexHarvester.py +2 -2
- mxcubecore/HardwareObjects/ESRF/ESRFBeam.py +3 -5
- mxcubecore/HardwareObjects/ESRF/ESRFBeamInfo.py +1 -5
- mxcubecore/HardwareObjects/ESRF/ESRFBeamlineActions.py +2 -3
- mxcubecore/HardwareObjects/ESRF/ESRFEnergyScan.py +3 -3
- mxcubecore/HardwareObjects/ESRF/ESRFMultiCollect.py +7 -7
- mxcubecore/HardwareObjects/ESRF/ESRFPhotonFlux.py +2 -8
- mxcubecore/HardwareObjects/ESRF/ESRFSC3.py +11 -18
- mxcubecore/HardwareObjects/ESRF/ID29HutchTrigger.py +2 -4
- mxcubecore/HardwareObjects/ESRF/MD2MultiCollect.py +4 -4
- mxcubecore/HardwareObjects/ESRF/SSXICATLIMS.py +9 -6
- mxcubecore/HardwareObjects/EdnaWorkflow.py +9 -11
- mxcubecore/HardwareObjects/Energy.py +11 -15
- mxcubecore/HardwareObjects/ExporterMotor.py +1 -2
- mxcubecore/HardwareObjects/FlexHCD.py +7 -8
- mxcubecore/HardwareObjects/FlexHCDMaintenance.py +1 -2
- mxcubecore/HardwareObjects/GenericDiffractometer.py +26 -46
- mxcubecore/HardwareObjects/Gphl/CollectEmulator.py +6 -7
- mxcubecore/HardwareObjects/Gphl/GphlQueueEntry.py +2 -2
- mxcubecore/HardwareObjects/Gphl/GphlWorkflow.py +29 -43
- mxcubecore/HardwareObjects/Gphl/GphlWorkflowConnection.py +25 -35
- mxcubecore/HardwareObjects/ICATLIMS.py +17 -13
- mxcubecore/HardwareObjects/LNLS/EPICSMotor.py +1 -4
- mxcubecore/HardwareObjects/LNLS/LNLSAperture.py +2 -5
- mxcubecore/HardwareObjects/LNLS/LNLSCamera.py +14 -16
- mxcubecore/HardwareObjects/LNLS/LNLSCollect.py +20 -30
- mxcubecore/HardwareObjects/LNLS/LNLSDetDistMotor.py +7 -11
- mxcubecore/HardwareObjects/LNLS/LNLSEnergy.py +4 -6
- mxcubecore/HardwareObjects/LNLS/LNLSPilatusDet.py +49 -57
- mxcubecore/HardwareObjects/LNLS/LNLSTransmission.py +4 -7
- mxcubecore/HardwareObjects/LdapAuthenticator.py +11 -15
- mxcubecore/HardwareObjects/Lima2Detector.py +1 -1
- mxcubecore/HardwareObjects/LimaEigerDetector.py +1 -1
- mxcubecore/HardwareObjects/LimaPilatusDetector.py +1 -4
- mxcubecore/HardwareObjects/MAXIV/MAXIVAutoProcessing.py +3 -5
- mxcubecore/HardwareObjects/MD3UP.py +1 -2
- mxcubecore/HardwareObjects/MachCurrent.py +5 -5
- mxcubecore/HardwareObjects/Marvin.py +23 -35
- mxcubecore/HardwareObjects/Microdiff.py +6 -8
- mxcubecore/HardwareObjects/MicrodiffActuator.py +1 -1
- mxcubecore/HardwareObjects/MicrodiffBeamstop.py +1 -3
- mxcubecore/HardwareObjects/MicrodiffInOut.py +1 -1
- mxcubecore/HardwareObjects/MicrodiffKappaMotor.py +3 -4
- mxcubecore/HardwareObjects/MiniDiff.py +35 -57
- mxcubecore/HardwareObjects/MotorWPositions.py +3 -3
- mxcubecore/HardwareObjects/PlateManipulator.py +2 -2
- mxcubecore/HardwareObjects/ProposalTypeISPyBLims.py +8 -16
- mxcubecore/HardwareObjects/PyISPyBClient.py +8 -5
- mxcubecore/HardwareObjects/QtGraphicsLib.py +2 -2
- mxcubecore/HardwareObjects/QtGraphicsManager.py +13 -19
- mxcubecore/HardwareObjects/QtInstanceServer.py +27 -55
- mxcubecore/HardwareObjects/QtLimaVideo.py +1 -5
- mxcubecore/HardwareObjects/QueueManager.py +7 -9
- mxcubecore/HardwareObjects/QueueModel.py +6 -8
- mxcubecore/HardwareObjects/RedisClient.py +12 -16
- mxcubecore/HardwareObjects/SC3.py +1 -2
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Attenuator.py +1 -3
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1BeamInfo.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1CatsMaint.py +3 -4
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Collect.py +11 -11
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Cryotong.py +8 -18
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Energy.py +6 -7
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1EnergyScan.py +21 -31
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Environment.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1MiniDiff.py +11 -21
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Pilatus.py +9 -9
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Pss.py +1 -2
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Resolution.py +1 -5
- mxcubecore/HardwareObjects/SOLEIL/PX1/PX1TangoLight.py +3 -8
- mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Attenuator.py +9 -13
- mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Collect.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Diffractometer.py +22 -22
- mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Energy.py +4 -6
- mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Guillotine.py +2 -2
- mxcubecore/HardwareObjects/SOLEIL/SOLEILCatsMaint.py +6 -8
- mxcubecore/HardwareObjects/SOLEIL/SOLEILEnergyScan.py +44 -56
- mxcubecore/HardwareObjects/SOLEIL/SOLEILGuillotine.py +2 -2
- mxcubecore/HardwareObjects/SOLEIL/SOLEILISPyBClient.py +10 -10
- mxcubecore/HardwareObjects/SOLEIL/SOLEILMachineInfo.py +4 -8
- mxcubecore/HardwareObjects/SOLEIL/SOLEILPss.py +3 -4
- mxcubecore/HardwareObjects/SOLEIL/SOLEILRuche.py +1 -1
- mxcubecore/HardwareObjects/SOLEIL/TangoDCMotor.py +10 -16
- mxcubecore/HardwareObjects/SardanaMotor.py +4 -5
- mxcubecore/HardwareObjects/Session.py +1 -2
- mxcubecore/HardwareObjects/SpecMotorWPositions.py +5 -9
- mxcubecore/HardwareObjects/SpecMotorWSpecPositions.py +2 -4
- mxcubecore/HardwareObjects/SpecShell.py +7 -9
- mxcubecore/HardwareObjects/SpecState.py +5 -7
- mxcubecore/HardwareObjects/StateMachine.py +9 -10
- mxcubecore/HardwareObjects/TangoLimaMpegVideo.py +2 -3
- mxcubecore/HardwareObjects/TangoLimaVideo.py +3 -4
- mxcubecore/HardwareObjects/TangoMachineInfo.py +1 -3
- mxcubecore/HardwareObjects/TangoMotor.py +1 -3
- mxcubecore/HardwareObjects/UserTypeISPyBLims.py +7 -9
- mxcubecore/HardwareObjects/XMLRPCServer.py +20 -22
- mxcubecore/HardwareObjects/abstract/AbstractAperture.py +6 -11
- mxcubecore/HardwareObjects/abstract/AbstractCollect.py +6 -16
- mxcubecore/HardwareObjects/abstract/AbstractDetector.py +2 -7
- mxcubecore/HardwareObjects/abstract/AbstractEnergyScan.py +1 -1
- mxcubecore/HardwareObjects/abstract/AbstractLims.py +3 -4
- mxcubecore/HardwareObjects/abstract/AbstractNState.py +1 -2
- mxcubecore/HardwareObjects/abstract/AbstractProcedure.py +3 -4
- mxcubecore/HardwareObjects/abstract/AbstractSampleChanger.py +1 -1
- mxcubecore/HardwareObjects/abstract/AbstractVideoDevice.py +4 -4
- mxcubecore/HardwareObjects/abstract/AbstractXRFSpectrum.py +1 -1
- mxcubecore/HardwareObjects/abstract/ISPyBAbstractLims.py +11 -13
- mxcubecore/HardwareObjects/mockup/BeamlineTestMockup.py +11 -14
- mxcubecore/HardwareObjects/mockup/EnergyScanMockup.py +10 -11
- mxcubecore/HardwareObjects/mockup/ISPyBClientMockup.py +6 -6
- mxcubecore/HardwareObjects/mockup/ISPyBRestClientMockup.py +1 -1
- mxcubecore/HardwareObjects/mockup/LimaDetectorMockup.py +1 -2
- mxcubecore/HardwareObjects/mockup/MDCameraMockup.py +5 -6
- mxcubecore/HardwareObjects/mockup/MicrodiffInOutMockup.py +1 -1
- mxcubecore/HardwareObjects/mockup/MultiCollectMockup.py +1 -1
- mxcubecore/HardwareObjects/mockup/ShapeHistoryMockup.py +1 -2
- mxcubecore/HardwareObjects/mockup/XRFMockup.py +3 -6
- {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/METADATA +1 -1
- {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/RECORD +176 -176
- {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/COPYING +0 -0
- {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/COPYING.LESSER +0 -0
- {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/WHEEL +0 -0
|
@@ -111,7 +111,7 @@ class PX1Pilatus(AbstractDetector, HardwareObject):
|
|
|
111
111
|
beam_x = value[0]
|
|
112
112
|
beam_y = value[1]
|
|
113
113
|
except Exception:
|
|
114
|
-
|
|
114
|
+
self.log.exception("")
|
|
115
115
|
return beam_x, beam_y
|
|
116
116
|
|
|
117
117
|
def get_manufacturer(self):
|
|
@@ -158,15 +158,15 @@ class PX1Pilatus(AbstractDetector, HardwareObject):
|
|
|
158
158
|
# trig_mode = "EXTERNAL_TRIGGER"
|
|
159
159
|
# latency_time = 0.023
|
|
160
160
|
#
|
|
161
|
-
#
|
|
161
|
+
# self.log.debug(" Preparing detector (dev=%s) for data collection" % self.devname)
|
|
162
162
|
#
|
|
163
|
-
#
|
|
164
|
-
#
|
|
165
|
-
#
|
|
166
|
-
#
|
|
167
|
-
#
|
|
168
|
-
#
|
|
169
|
-
#
|
|
163
|
+
# self.log.debug(" /saving directory: %s" % basedir)
|
|
164
|
+
# self.log.debug(" /prefix : %s" % prefix)
|
|
165
|
+
# self.log.debug(" /saving_format : %s" % fileformat)
|
|
166
|
+
# self.log.debug(" /trigger_mode : %s" % trig_mode)
|
|
167
|
+
# self.log.debug(" /acq_nb_frames : %s" % nb_frames)
|
|
168
|
+
# self.log.debug(" /acq_expo_time : %s" % exp_time)
|
|
169
|
+
# self.log.debug(" /latency_time : %s" % latency_time)
|
|
170
170
|
#
|
|
171
171
|
# self.device.write_attribute('saving_mode', 'AUTO_FRAME')
|
|
172
172
|
# self.device.write_attribute('saving_directory', basedir)
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
|
-
import logging
|
|
3
2
|
|
|
4
3
|
from mxcubecore.BaseHardwareObjects import HardwareObject
|
|
5
4
|
|
|
@@ -13,7 +12,7 @@ class PX1Pss(HardwareObject):
|
|
|
13
12
|
|
|
14
13
|
def value_changed(self, value):
|
|
15
14
|
state = self.get_state(value)
|
|
16
|
-
|
|
15
|
+
self.log.debug("state changed. value is %s" % state)
|
|
17
16
|
self.emit("stateChanged", (state,))
|
|
18
17
|
|
|
19
18
|
def get_state(self, value=None):
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import logging
|
|
2
|
-
|
|
3
1
|
from mxcubecore.BaseHardwareObjects import HardwareObject
|
|
4
2
|
|
|
5
3
|
DETECTOR_DIAMETER = 424.0
|
|
@@ -143,9 +141,7 @@ class PX1Resolution(HardwareObject):
|
|
|
143
141
|
try:
|
|
144
142
|
self.stop_command()
|
|
145
143
|
except Exception:
|
|
146
|
-
|
|
147
|
-
"%s: PX1Resolution.stop: error while trying to stop!", self.id
|
|
148
|
-
)
|
|
144
|
+
self.log.err("%s: PX1Resolution.stop: error while trying to stop!", self.id)
|
|
149
145
|
|
|
150
146
|
def re_emit_values(self):
|
|
151
147
|
self.stateChanged()
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import logging
|
|
2
1
|
import time
|
|
3
2
|
|
|
4
3
|
from mxcubecore.BaseHardwareObjects import HardwareObject
|
|
@@ -86,9 +85,7 @@ class PX1TangoLight(HardwareObject):
|
|
|
86
85
|
|
|
87
86
|
def zoom_changed(self, position_name, value):
|
|
88
87
|
if self.currentState == "in":
|
|
89
|
-
|
|
90
|
-
"Zoom changed. and light is in. setting light level"
|
|
91
|
-
)
|
|
88
|
+
self.log.debug("Zoom changed. and light is in. setting light level")
|
|
92
89
|
self.adjustLightLevel()
|
|
93
90
|
|
|
94
91
|
def adjustLightLevel(self):
|
|
@@ -102,9 +99,7 @@ class PX1TangoLight(HardwareObject):
|
|
|
102
99
|
light_level = float(props["lightLevel"])
|
|
103
100
|
light_current = self.light_hwo.get_value()
|
|
104
101
|
if light_current != light_level:
|
|
105
|
-
|
|
106
|
-
"Setting light level to %s" % light_level
|
|
107
|
-
)
|
|
102
|
+
self.log.debug("Setting light level to %s" % light_level)
|
|
108
103
|
self.light_hwo.set_value(light_level)
|
|
109
104
|
except Exception:
|
|
110
|
-
|
|
105
|
+
self.log.debug("Cannot set light level")
|
|
@@ -99,7 +99,7 @@ class PX2Attenuator(HardwareObject):
|
|
|
99
99
|
logging.getLogger().debug("Attenuator state read from the device %s", value)
|
|
100
100
|
|
|
101
101
|
except Exception:
|
|
102
|
-
|
|
102
|
+
self.log.error(
|
|
103
103
|
"%s getAttState : received value on channel is not a integer value",
|
|
104
104
|
str(self.name()),
|
|
105
105
|
)
|
|
@@ -108,9 +108,7 @@ class PX2Attenuator(HardwareObject):
|
|
|
108
108
|
|
|
109
109
|
def attStateChanged(self, channelValue):
|
|
110
110
|
value = self.getAttState()
|
|
111
|
-
|
|
112
|
-
"%s getAttState : new value is %s" % (str(self.name()), value)
|
|
113
|
-
)
|
|
111
|
+
self.log.error("%s getAttState : new value is %s" % (str(self.name()), value))
|
|
114
112
|
self.emit("attStateChanged", (value,))
|
|
115
113
|
|
|
116
114
|
def get_value(self):
|
|
@@ -131,7 +129,7 @@ class PX2Attenuator(HardwareObject):
|
|
|
131
129
|
# Trouver la valeur de transmission par mesure sur QBPM1 doit etre autour
|
|
132
130
|
# de 120%
|
|
133
131
|
except Exception:
|
|
134
|
-
|
|
132
|
+
self.log.error(
|
|
135
133
|
"%s get_value : received value on channel is not a float value",
|
|
136
134
|
str(self.name()),
|
|
137
135
|
)
|
|
@@ -146,18 +144,18 @@ class PX2Attenuator(HardwareObject):
|
|
|
146
144
|
|
|
147
145
|
def attFactorChanged(self, channelValue):
|
|
148
146
|
try:
|
|
149
|
-
|
|
147
|
+
self.log.info(
|
|
150
148
|
"%s attFactorChanged : received value %s"
|
|
151
149
|
% (str(self.name()), channelValue)
|
|
152
150
|
)
|
|
153
151
|
value = self.get_value()
|
|
154
152
|
except Exception:
|
|
155
|
-
|
|
153
|
+
self.log.error(
|
|
156
154
|
"%s attFactorChanged : received value on channel is not a float value",
|
|
157
155
|
str(self.name()),
|
|
158
156
|
)
|
|
159
157
|
else:
|
|
160
|
-
|
|
158
|
+
self.log.info(
|
|
161
159
|
"%s attFactorChanged : calculated value is %s"
|
|
162
160
|
% (str(self.name()), value)
|
|
163
161
|
)
|
|
@@ -167,7 +165,7 @@ class PX2Attenuator(HardwareObject):
|
|
|
167
165
|
try:
|
|
168
166
|
value = int(channelValue)
|
|
169
167
|
except Exception:
|
|
170
|
-
|
|
168
|
+
self.log.error(
|
|
171
169
|
"%s attToggleChanged : received value on channel is not a float value",
|
|
172
170
|
str(self.name()),
|
|
173
171
|
)
|
|
@@ -180,9 +178,7 @@ class PX2Attenuator(HardwareObject):
|
|
|
180
178
|
if (
|
|
181
179
|
self.Constdevice.FP_Area_FWHM <= 0.1
|
|
182
180
|
): # Cas ou il n'y a pas de valeur dans le publisher PASSERELLE/CO/Primary_Slits
|
|
183
|
-
|
|
184
|
-
"Primary slits not correctly aligned", str(self.name())
|
|
185
|
-
)
|
|
181
|
+
self.log.error("Primary slits not correctly aligned", str(self.name()))
|
|
186
182
|
self.Constdevice.FP_Area_FWHM = 0.5
|
|
187
183
|
self.Constdevice.Ratio_FP_Gap = 0.5
|
|
188
184
|
|
|
@@ -200,7 +196,7 @@ class PX2Attenuator(HardwareObject):
|
|
|
200
196
|
self.Ps_vdevice.gap = newGapFP_V
|
|
201
197
|
# self.attFactorChanged(channelValue)
|
|
202
198
|
except Exception:
|
|
203
|
-
|
|
199
|
+
self.log.error(
|
|
204
200
|
"%s set Transmission : received value on channel is not valid",
|
|
205
201
|
str(self.name()),
|
|
206
202
|
)
|
|
@@ -89,7 +89,7 @@ class PX2Collect(AbstractCollect, HardwareObject):
|
|
|
89
89
|
for undulator in self["undulators"]:
|
|
90
90
|
undulators.append(undulator)
|
|
91
91
|
except Exception:
|
|
92
|
-
|
|
92
|
+
self.log.exception("")
|
|
93
93
|
|
|
94
94
|
beam_div_hor, beam_div_ver = HWR.beamline.beam.get_beam_divergence()
|
|
95
95
|
|
|
@@ -136,7 +136,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
136
136
|
[(value, key) for key, value in self.motor_name_mapping]
|
|
137
137
|
)
|
|
138
138
|
|
|
139
|
-
self.log =
|
|
139
|
+
self.log = self.log
|
|
140
140
|
|
|
141
141
|
def init(self):
|
|
142
142
|
"""
|
|
@@ -243,7 +243,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
243
243
|
self.beam_position = value
|
|
244
244
|
|
|
245
245
|
def state_changed(self, state):
|
|
246
|
-
#
|
|
246
|
+
# self.log.debug("State changed: %s" % str(state))
|
|
247
247
|
if self.current_state != state:
|
|
248
248
|
self.current_state = state
|
|
249
249
|
self.emit("minidiffStateChanged", (self.current_state))
|
|
@@ -405,7 +405,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
405
405
|
GenericDiffractometer.PHASE_BEAM,
|
|
406
406
|
):
|
|
407
407
|
detector_distance = HWR.beamline.detector.distance.get_value()
|
|
408
|
-
|
|
408
|
+
self.log.debug(
|
|
409
409
|
"Diffractometer current phase: %s " % self.current_phase
|
|
410
410
|
+ "selected phase: %s " % phase
|
|
411
411
|
+ "detector distance: %d mm" % detector_distance
|
|
@@ -576,7 +576,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
576
576
|
self, x, y, omega=self.goniometer.get_omega_position()
|
|
577
577
|
)
|
|
578
578
|
else:
|
|
579
|
-
|
|
579
|
+
self.log.debug(
|
|
580
580
|
"Diffractometer: Move to screen"
|
|
581
581
|
+ " position disabled in BeamLocation phase."
|
|
582
582
|
)
|
|
@@ -646,7 +646,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
646
646
|
vertical_discplacements.append(y)
|
|
647
647
|
horizontal_displacements.append(x)
|
|
648
648
|
|
|
649
|
-
|
|
649
|
+
self.log.info("click %d %f %f %f" % (k + 1, omega, x, y))
|
|
650
650
|
|
|
651
651
|
if k <= n_clicks:
|
|
652
652
|
self.goniometer.set_position({"Omega": omega + step})
|
|
@@ -995,13 +995,17 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
995
995
|
self.motor_hwobj_dict["sampx"]: centred_position.sampx,
|
|
996
996
|
self.motor_hwobj_dict["sampy"]: centred_position.sampy,
|
|
997
997
|
self.motor_hwobj_dict["phi"]: centred_position.phi,
|
|
998
|
-
self.motor_hwobj_dict["phiy"]:
|
|
999
|
-
|
|
1000
|
-
self.
|
|
998
|
+
self.motor_hwobj_dict["phiy"]: (
|
|
999
|
+
centred_position.phiy
|
|
1000
|
+
+ self.centring_hwobj.camera2alignmentMotor(
|
|
1001
|
+
self.motor_hwobj_dict["phiy"], {"X": dx, "Y": dy}
|
|
1002
|
+
)
|
|
1001
1003
|
),
|
|
1002
|
-
self.motor_hwobj_dict["phiz"]:
|
|
1003
|
-
|
|
1004
|
-
self.
|
|
1004
|
+
self.motor_hwobj_dict["phiz"]: (
|
|
1005
|
+
centred_position.phiz
|
|
1006
|
+
+ self.centring_hwobj.camera2alignmentMotor(
|
|
1007
|
+
self.motor_hwobj_dict["phiz"], {"X": dx, "Y": dy}
|
|
1008
|
+
)
|
|
1005
1009
|
),
|
|
1006
1010
|
self.motor_hwobj_dict["kappa"]: centred_position.kappa,
|
|
1007
1011
|
self.motor_hwobj_dict["kappa_phi"]: centred_position.kappa_phi,
|
|
@@ -1010,9 +1014,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
1010
1014
|
except Exception:
|
|
1011
1015
|
logging.exception("Could not move to centred position")
|
|
1012
1016
|
else:
|
|
1013
|
-
|
|
1014
|
-
"Move to centred position disabled in BeamLocation phase."
|
|
1015
|
-
)
|
|
1017
|
+
self.log.debug("Move to centred position disabled in BeamLocation phase.")
|
|
1016
1018
|
|
|
1017
1019
|
def move_to_motors_positions(self, motors_positions, wait=False):
|
|
1018
1020
|
""" """
|
|
@@ -1070,9 +1072,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
1070
1072
|
Descript. :
|
|
1071
1073
|
"""
|
|
1072
1074
|
if self.in_plate_mode():
|
|
1073
|
-
|
|
1074
|
-
"PX2Diffractometer: Visual align not available in Plate mode"
|
|
1075
|
-
)
|
|
1075
|
+
self.log.info("PX2Diffractometer: Visual align not available in Plate mode")
|
|
1076
1076
|
else:
|
|
1077
1077
|
t1 = [point_1.sampx, point_1.sampy, point_1.phiy]
|
|
1078
1078
|
t2 = [point_2.sampx, point_2.sampy, point_2.phiy]
|
|
@@ -1136,14 +1136,14 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
1136
1136
|
|
|
1137
1137
|
def close_kappa_task(self):
|
|
1138
1138
|
"""Close kappa task"""
|
|
1139
|
-
|
|
1139
|
+
self.log.debug("Started closing Kappa")
|
|
1140
1140
|
self.move_kappa_and_phi_procedure(0, None)
|
|
1141
1141
|
self.wait_device_ready(60)
|
|
1142
1142
|
self.motor_hwobj_dict["kappa"].homeMotor()
|
|
1143
1143
|
self.wait_device_ready(60)
|
|
1144
1144
|
self.move_kappa_and_phi_procedure(0, None)
|
|
1145
1145
|
self.wait_device_ready(60)
|
|
1146
|
-
|
|
1146
|
+
self.log.debug("Done closing Kappa")
|
|
1147
1147
|
# self.kappa_phi_motor_hwobj.homeMotor()
|
|
1148
1148
|
|
|
1149
1149
|
def set_zoom(self, position):
|
|
@@ -1402,14 +1402,14 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
1402
1402
|
try:
|
|
1403
1403
|
self.nclicks = int(nclicks)
|
|
1404
1404
|
except Exception:
|
|
1405
|
-
|
|
1405
|
+
self.log.exception(traceback.format_exc())
|
|
1406
1406
|
|
|
1407
1407
|
def set_step(self, step):
|
|
1408
1408
|
self.log.info("PX2Diffractometer: centring step changed: %s" % step)
|
|
1409
1409
|
try:
|
|
1410
1410
|
self.step = float(step)
|
|
1411
1411
|
except Exception:
|
|
1412
|
-
|
|
1412
|
+
self.log.exception(traceback.format_exc())
|
|
1413
1413
|
|
|
1414
1414
|
def set_centring_method(self, centring_method):
|
|
1415
1415
|
self.log.info(
|
|
@@ -1418,7 +1418,7 @@ class PX2Diffractometer(GenericDiffractometer):
|
|
|
1418
1418
|
try:
|
|
1419
1419
|
self.centring_method = centring_method
|
|
1420
1420
|
except Exception:
|
|
1421
|
-
|
|
1421
|
+
self.log.exception(traceback.format_exc())
|
|
1422
1422
|
|
|
1423
1423
|
def is_ready(self):
|
|
1424
1424
|
"""
|
|
@@ -75,10 +75,10 @@ class PX2Energy(EnergyMockup):
|
|
|
75
75
|
self.set_value(energy)
|
|
76
76
|
|
|
77
77
|
def check_limits(self, value):
|
|
78
|
-
|
|
78
|
+
self.log.debug("Checking the move limits")
|
|
79
79
|
en_lims = self.get_limits()
|
|
80
80
|
if value >= self.en_lims[0] and value <= self.en_lims[1]:
|
|
81
|
-
|
|
81
|
+
self.log.info("Limits ok")
|
|
82
82
|
return True
|
|
83
83
|
logging.getLogger("user_level_log").info("Requested value is out of limits")
|
|
84
84
|
return False
|
|
@@ -97,12 +97,10 @@ class PX2Energy(EnergyMockup):
|
|
|
97
97
|
if self.current_wavelength is not None:
|
|
98
98
|
self.re_emit_values()
|
|
99
99
|
except Exception:
|
|
100
|
-
|
|
101
|
-
"energy_changed: error occured during an energy update"
|
|
102
|
-
)
|
|
100
|
+
self.log.info("energy_changed: error occured during an energy update")
|
|
103
101
|
|
|
104
102
|
def energy_state_changed(self, state):
|
|
105
|
-
|
|
103
|
+
self.log.info("energy_state_changed %s" % str(state))
|
|
106
104
|
# self.energy_server_check_for_errors(state)
|
|
107
105
|
if state == "STANDBY":
|
|
108
106
|
if self.moving:
|
|
@@ -123,7 +123,7 @@ class PX2Guillotine(BaseHardwareObjects.HardwareObject):
|
|
|
123
123
|
try:
|
|
124
124
|
self.pss_door = self.get_property("tangoname_pss")
|
|
125
125
|
except Exception:
|
|
126
|
-
|
|
126
|
+
self.log.error(
|
|
127
127
|
"Guillotine I11-MA-CE/PSS/DB_DATA: tangopssDevice is not defined "
|
|
128
128
|
)
|
|
129
129
|
|
|
@@ -131,7 +131,7 @@ class PX2Guillotine(BaseHardwareObjects.HardwareObject):
|
|
|
131
131
|
self.memIntChan = self.get_channel_object("memInt")
|
|
132
132
|
self.connect(self.memIntChan, "update", self.updateGuillotine)
|
|
133
133
|
else:
|
|
134
|
-
|
|
134
|
+
self.log.error("Guillotine: tangopssDevice is not defined ")
|
|
135
135
|
|
|
136
136
|
def shutterStateChanged(self, value):
|
|
137
137
|
#
|
|
@@ -264,14 +264,14 @@ class SOLEILCatsMaint(HardwareObject):
|
|
|
264
264
|
|
|
265
265
|
self.running_safe = True
|
|
266
266
|
self._update_message("RUNNING Safe process. Phase is: going to Safe")
|
|
267
|
-
|
|
267
|
+
self.log.info("Executing safe")
|
|
268
268
|
self._execute_server_task(self._cmdSafe, argin, waitstart=True)
|
|
269
|
-
|
|
269
|
+
self.log.info("Executing safe done")
|
|
270
270
|
|
|
271
271
|
self._update_message("RUNNING Safe process. Phase is: Drying")
|
|
272
|
-
|
|
272
|
+
self.log.info("Executing dry")
|
|
273
273
|
self._execute_server_task(self._cmdDry, argin, waitstart=True)
|
|
274
|
-
|
|
274
|
+
self.log.info("Executing dry done")
|
|
275
275
|
|
|
276
276
|
self._update_message("RUNNING Safe process. Phase is: SoakToolCal")
|
|
277
277
|
logging.getLogger("Executing SoakToolCal")
|
|
@@ -484,13 +484,11 @@ class SOLEILCatsMaint(HardwareObject):
|
|
|
484
484
|
t0 = time.time()
|
|
485
485
|
while str(self._chnPathRunning.get_value()).lower() != "true":
|
|
486
486
|
if time.time() - t0 > timeout:
|
|
487
|
-
|
|
488
|
-
"Could not detect the start of the task. Continuing"
|
|
489
|
-
)
|
|
487
|
+
self.log.info("Could not detect the start of the task. Continuing")
|
|
490
488
|
break
|
|
491
489
|
gevent.sleep(0.1)
|
|
492
490
|
|
|
493
|
-
|
|
491
|
+
self.log.info(
|
|
494
492
|
"server task started. path running %s" % self._chnPathRunning.get_value()
|
|
495
493
|
)
|
|
496
494
|
while str(self._chnPathRunning.get_value()).lower() == "true":
|