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.

Files changed (176) hide show
  1. mxcubecore/HardwareObjects/ALBA/ALBAAutoProcessing.py +4 -7
  2. mxcubecore/HardwareObjects/ALBA/ALBABackLight.py +6 -7
  3. mxcubecore/HardwareObjects/ALBA/ALBABeamInfo.py +2 -4
  4. mxcubecore/HardwareObjects/ALBA/ALBACats.py +19 -25
  5. mxcubecore/HardwareObjects/ALBA/ALBAClusterJob.py +10 -11
  6. mxcubecore/HardwareObjects/ALBA/ALBACollect.py +49 -71
  7. mxcubecore/HardwareObjects/ALBA/ALBADataAnalysis.py +26 -31
  8. mxcubecore/HardwareObjects/ALBA/ALBAEnergy.py +1 -5
  9. mxcubecore/HardwareObjects/ALBA/ALBAEpsActuator.py +1 -1
  10. mxcubecore/HardwareObjects/ALBA/ALBAFastShutter.py +1 -1
  11. mxcubecore/HardwareObjects/ALBA/ALBAFlux.py +2 -6
  12. mxcubecore/HardwareObjects/ALBA/ALBAFrontLight.py +5 -9
  13. mxcubecore/HardwareObjects/ALBA/ALBAISPyBClient.py +4 -4
  14. mxcubecore/HardwareObjects/ALBA/ALBAMiniDiff.py +20 -27
  15. mxcubecore/HardwareObjects/ALBA/ALBAPilatus.py +12 -15
  16. mxcubecore/HardwareObjects/ALBA/ALBASession.py +1 -4
  17. mxcubecore/HardwareObjects/ALBA/ALBAZoomMotor.py +10 -14
  18. mxcubecore/HardwareObjects/ALBA/ALBAZoomMotorAutoBrightness.py +7 -11
  19. mxcubecore/HardwareObjects/ALBA/XalocMiniDiff.py +7 -8
  20. mxcubecore/HardwareObjects/BeamInfo.py +4 -6
  21. mxcubecore/HardwareObjects/Beamline.py +6 -7
  22. mxcubecore/HardwareObjects/BeamlineActions.py +3 -7
  23. mxcubecore/HardwareObjects/BlissHutchTrigger.py +2 -4
  24. mxcubecore/HardwareObjects/BlissMotorWPositions.py +4 -7
  25. mxcubecore/HardwareObjects/Cats90.py +33 -43
  26. mxcubecore/HardwareObjects/CatsBessy.py +1 -2
  27. mxcubecore/HardwareObjects/CatsMaint.py +2 -2
  28. mxcubecore/HardwareObjects/CentringMath.py +5 -4
  29. mxcubecore/HardwareObjects/DESY/DigitalZoomMotor.py +3 -5
  30. mxcubecore/HardwareObjects/DESY/MjpgStreamVideo.py +1 -3
  31. mxcubecore/HardwareObjects/DESY/P11Collect.py +6 -8
  32. mxcubecore/HardwareObjects/DESY/P11EDNACharacterisation.py +14 -16
  33. mxcubecore/HardwareObjects/DESY/P11ISPyBClient.py +6 -10
  34. mxcubecore/HardwareObjects/DESY/P11NanoDiff.py +5 -5
  35. mxcubecore/HardwareObjects/DataPublisher.py +2 -3
  36. mxcubecore/HardwareObjects/EDNACharacterisation.py +2 -4
  37. mxcubecore/HardwareObjects/EMBL/EMBLBeam.py +3 -3
  38. mxcubecore/HardwareObjects/EMBL/EMBLBeamCentering.py +2 -4
  39. mxcubecore/HardwareObjects/EMBL/EMBLBeamFocusing.py +3 -3
  40. mxcubecore/HardwareObjects/EMBL/EMBLDoorInterlock.py +1 -1
  41. mxcubecore/HardwareObjects/EMBL/EMBLEnergy.py +10 -18
  42. mxcubecore/HardwareObjects/EMBL/EMBLEnergyScan.py +9 -13
  43. mxcubecore/HardwareObjects/EMBL/EMBLFlux.py +10 -12
  44. mxcubecore/HardwareObjects/EMBL/EMBLMachineInfo.py +2 -2
  45. mxcubecore/HardwareObjects/EMBL/EMBLMiniDiff.py +18 -18
  46. mxcubecore/HardwareObjects/EMBL/EMBLMotorsGroup.py +6 -9
  47. mxcubecore/HardwareObjects/EMBL/EMBLOnlineProcessing.py +6 -6
  48. mxcubecore/HardwareObjects/EMBL/EMBLPPUControl.py +1 -1
  49. mxcubecore/HardwareObjects/EMBL/EMBLSSXChip.py +1 -4
  50. mxcubecore/HardwareObjects/EMBL/EMBLSlitBox.py +1 -3
  51. mxcubecore/HardwareObjects/EMBL/EMBLTableMotor.py +2 -3
  52. mxcubecore/HardwareObjects/EMBL/EMBLXRFSpectrum.py +4 -4
  53. mxcubecore/HardwareObjects/EMBL/EMBLXrayImaging.py +1 -1
  54. mxcubecore/HardwareObjects/EMBL/TINEMotor.py +2 -4
  55. mxcubecore/HardwareObjects/EMBLFlexHCD.py +5 -5
  56. mxcubecore/HardwareObjects/EMBLFlexHarvester.py +2 -2
  57. mxcubecore/HardwareObjects/ESRF/ESRFBeam.py +3 -5
  58. mxcubecore/HardwareObjects/ESRF/ESRFBeamInfo.py +1 -5
  59. mxcubecore/HardwareObjects/ESRF/ESRFBeamlineActions.py +2 -3
  60. mxcubecore/HardwareObjects/ESRF/ESRFEnergyScan.py +3 -3
  61. mxcubecore/HardwareObjects/ESRF/ESRFMultiCollect.py +7 -7
  62. mxcubecore/HardwareObjects/ESRF/ESRFPhotonFlux.py +2 -8
  63. mxcubecore/HardwareObjects/ESRF/ESRFSC3.py +11 -18
  64. mxcubecore/HardwareObjects/ESRF/ID29HutchTrigger.py +2 -4
  65. mxcubecore/HardwareObjects/ESRF/MD2MultiCollect.py +4 -4
  66. mxcubecore/HardwareObjects/ESRF/SSXICATLIMS.py +9 -6
  67. mxcubecore/HardwareObjects/EdnaWorkflow.py +9 -11
  68. mxcubecore/HardwareObjects/Energy.py +11 -15
  69. mxcubecore/HardwareObjects/ExporterMotor.py +1 -2
  70. mxcubecore/HardwareObjects/FlexHCD.py +7 -8
  71. mxcubecore/HardwareObjects/FlexHCDMaintenance.py +1 -2
  72. mxcubecore/HardwareObjects/GenericDiffractometer.py +26 -46
  73. mxcubecore/HardwareObjects/Gphl/CollectEmulator.py +6 -7
  74. mxcubecore/HardwareObjects/Gphl/GphlQueueEntry.py +2 -2
  75. mxcubecore/HardwareObjects/Gphl/GphlWorkflow.py +29 -43
  76. mxcubecore/HardwareObjects/Gphl/GphlWorkflowConnection.py +25 -35
  77. mxcubecore/HardwareObjects/ICATLIMS.py +17 -13
  78. mxcubecore/HardwareObjects/LNLS/EPICSMotor.py +1 -4
  79. mxcubecore/HardwareObjects/LNLS/LNLSAperture.py +2 -5
  80. mxcubecore/HardwareObjects/LNLS/LNLSCamera.py +14 -16
  81. mxcubecore/HardwareObjects/LNLS/LNLSCollect.py +20 -30
  82. mxcubecore/HardwareObjects/LNLS/LNLSDetDistMotor.py +7 -11
  83. mxcubecore/HardwareObjects/LNLS/LNLSEnergy.py +4 -6
  84. mxcubecore/HardwareObjects/LNLS/LNLSPilatusDet.py +49 -57
  85. mxcubecore/HardwareObjects/LNLS/LNLSTransmission.py +4 -7
  86. mxcubecore/HardwareObjects/LdapAuthenticator.py +11 -15
  87. mxcubecore/HardwareObjects/Lima2Detector.py +1 -1
  88. mxcubecore/HardwareObjects/LimaEigerDetector.py +1 -1
  89. mxcubecore/HardwareObjects/LimaPilatusDetector.py +1 -4
  90. mxcubecore/HardwareObjects/MAXIV/MAXIVAutoProcessing.py +3 -5
  91. mxcubecore/HardwareObjects/MD3UP.py +1 -2
  92. mxcubecore/HardwareObjects/MachCurrent.py +5 -5
  93. mxcubecore/HardwareObjects/Marvin.py +23 -35
  94. mxcubecore/HardwareObjects/Microdiff.py +6 -8
  95. mxcubecore/HardwareObjects/MicrodiffActuator.py +1 -1
  96. mxcubecore/HardwareObjects/MicrodiffBeamstop.py +1 -3
  97. mxcubecore/HardwareObjects/MicrodiffInOut.py +1 -1
  98. mxcubecore/HardwareObjects/MicrodiffKappaMotor.py +3 -4
  99. mxcubecore/HardwareObjects/MiniDiff.py +35 -57
  100. mxcubecore/HardwareObjects/MotorWPositions.py +3 -3
  101. mxcubecore/HardwareObjects/PlateManipulator.py +2 -2
  102. mxcubecore/HardwareObjects/ProposalTypeISPyBLims.py +8 -16
  103. mxcubecore/HardwareObjects/PyISPyBClient.py +8 -5
  104. mxcubecore/HardwareObjects/QtGraphicsLib.py +2 -2
  105. mxcubecore/HardwareObjects/QtGraphicsManager.py +13 -19
  106. mxcubecore/HardwareObjects/QtInstanceServer.py +27 -55
  107. mxcubecore/HardwareObjects/QtLimaVideo.py +1 -5
  108. mxcubecore/HardwareObjects/QueueManager.py +7 -9
  109. mxcubecore/HardwareObjects/QueueModel.py +6 -8
  110. mxcubecore/HardwareObjects/RedisClient.py +12 -16
  111. mxcubecore/HardwareObjects/SC3.py +1 -2
  112. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Attenuator.py +1 -3
  113. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1BeamInfo.py +1 -1
  114. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1CatsMaint.py +3 -4
  115. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Collect.py +11 -11
  116. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Cryotong.py +8 -18
  117. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Energy.py +6 -7
  118. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1EnergyScan.py +21 -31
  119. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Environment.py +1 -1
  120. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1MiniDiff.py +11 -21
  121. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Pilatus.py +9 -9
  122. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Pss.py +1 -2
  123. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1Resolution.py +1 -5
  124. mxcubecore/HardwareObjects/SOLEIL/PX1/PX1TangoLight.py +3 -8
  125. mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Attenuator.py +9 -13
  126. mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Collect.py +1 -1
  127. mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Diffractometer.py +22 -22
  128. mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Energy.py +4 -6
  129. mxcubecore/HardwareObjects/SOLEIL/PX2/PX2Guillotine.py +2 -2
  130. mxcubecore/HardwareObjects/SOLEIL/SOLEILCatsMaint.py +6 -8
  131. mxcubecore/HardwareObjects/SOLEIL/SOLEILEnergyScan.py +44 -56
  132. mxcubecore/HardwareObjects/SOLEIL/SOLEILGuillotine.py +2 -2
  133. mxcubecore/HardwareObjects/SOLEIL/SOLEILISPyBClient.py +10 -10
  134. mxcubecore/HardwareObjects/SOLEIL/SOLEILMachineInfo.py +4 -8
  135. mxcubecore/HardwareObjects/SOLEIL/SOLEILPss.py +3 -4
  136. mxcubecore/HardwareObjects/SOLEIL/SOLEILRuche.py +1 -1
  137. mxcubecore/HardwareObjects/SOLEIL/TangoDCMotor.py +10 -16
  138. mxcubecore/HardwareObjects/SardanaMotor.py +4 -5
  139. mxcubecore/HardwareObjects/Session.py +1 -2
  140. mxcubecore/HardwareObjects/SpecMotorWPositions.py +5 -9
  141. mxcubecore/HardwareObjects/SpecMotorWSpecPositions.py +2 -4
  142. mxcubecore/HardwareObjects/SpecShell.py +7 -9
  143. mxcubecore/HardwareObjects/SpecState.py +5 -7
  144. mxcubecore/HardwareObjects/StateMachine.py +9 -10
  145. mxcubecore/HardwareObjects/TangoLimaMpegVideo.py +2 -3
  146. mxcubecore/HardwareObjects/TangoLimaVideo.py +3 -4
  147. mxcubecore/HardwareObjects/TangoMachineInfo.py +1 -3
  148. mxcubecore/HardwareObjects/TangoMotor.py +1 -3
  149. mxcubecore/HardwareObjects/UserTypeISPyBLims.py +7 -9
  150. mxcubecore/HardwareObjects/XMLRPCServer.py +20 -22
  151. mxcubecore/HardwareObjects/abstract/AbstractAperture.py +6 -11
  152. mxcubecore/HardwareObjects/abstract/AbstractCollect.py +6 -16
  153. mxcubecore/HardwareObjects/abstract/AbstractDetector.py +2 -7
  154. mxcubecore/HardwareObjects/abstract/AbstractEnergyScan.py +1 -1
  155. mxcubecore/HardwareObjects/abstract/AbstractLims.py +3 -4
  156. mxcubecore/HardwareObjects/abstract/AbstractNState.py +1 -2
  157. mxcubecore/HardwareObjects/abstract/AbstractProcedure.py +3 -4
  158. mxcubecore/HardwareObjects/abstract/AbstractSampleChanger.py +1 -1
  159. mxcubecore/HardwareObjects/abstract/AbstractVideoDevice.py +4 -4
  160. mxcubecore/HardwareObjects/abstract/AbstractXRFSpectrum.py +1 -1
  161. mxcubecore/HardwareObjects/abstract/ISPyBAbstractLims.py +11 -13
  162. mxcubecore/HardwareObjects/mockup/BeamlineTestMockup.py +11 -14
  163. mxcubecore/HardwareObjects/mockup/EnergyScanMockup.py +10 -11
  164. mxcubecore/HardwareObjects/mockup/ISPyBClientMockup.py +6 -6
  165. mxcubecore/HardwareObjects/mockup/ISPyBRestClientMockup.py +1 -1
  166. mxcubecore/HardwareObjects/mockup/LimaDetectorMockup.py +1 -2
  167. mxcubecore/HardwareObjects/mockup/MDCameraMockup.py +5 -6
  168. mxcubecore/HardwareObjects/mockup/MicrodiffInOutMockup.py +1 -1
  169. mxcubecore/HardwareObjects/mockup/MultiCollectMockup.py +1 -1
  170. mxcubecore/HardwareObjects/mockup/ShapeHistoryMockup.py +1 -2
  171. mxcubecore/HardwareObjects/mockup/XRFMockup.py +3 -6
  172. {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/METADATA +1 -1
  173. {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/RECORD +176 -176
  174. {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/COPYING +0 -0
  175. {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/COPYING.LESSER +0 -0
  176. {mxcubecore-1.393.0.dist-info → mxcubecore-1.395.0.dist-info}/WHEEL +0 -0
@@ -726,8 +726,8 @@ class P11Collect(AbstractCollect):
726
726
  image_filename (str): Filename of the image to be loaded.
727
727
  image_num (int, optional): Image number to load in ADXV. Defaults to 1.
728
728
  """
729
- logging.getLogger("HWR").info(f"ADXV notify {image_filename}")
730
- logging.getLogger("HWR").info(f"ADXV notify {image_num}")
729
+ self.log.info(f"ADXV notify {image_filename}")
730
+ self.log.info(f"ADXV notify {image_num}")
731
731
  adxv_host = "localhost"
732
732
  adxv_port = 8100
733
733
 
@@ -739,7 +739,7 @@ class P11Collect(AbstractCollect):
739
739
  )
740
740
  adxv_socket.close()
741
741
  except RuntimeWarning:
742
- logging.getLogger("HWR").exception("")
742
+ self.log.exception("")
743
743
  else:
744
744
  pass
745
745
 
@@ -1138,7 +1138,7 @@ class P11Collect(AbstractCollect):
1138
1138
  except RuntimeError:
1139
1139
  self.log.debug("mkdir failed:", str(sys.exc_info()))
1140
1140
 
1141
- logging.getLogger("HWR").exception("")
1141
+ self.log.exception("")
1142
1142
  return False
1143
1143
  else:
1144
1144
  self.log.debug("dir not found:", str(sys.exc_info()))
@@ -1220,7 +1220,7 @@ class P11Collect(AbstractCollect):
1220
1220
 
1221
1221
  auto_directory = xds_directory
1222
1222
 
1223
- logging.getLogger("HWR").info(
1223
+ self.log.info(
1224
1224
  "[COLLECT] Processing input file directories: XDS: %s, AUTO: %s"
1225
1225
  % (xds_directory, auto_directory)
1226
1226
  )
@@ -1236,9 +1236,7 @@ class P11Collect(AbstractCollect):
1236
1236
  try:
1237
1237
  self.create_directories(snapshot_directory)
1238
1238
  except Exception:
1239
- logging.getLogger("HWR").exception(
1240
- "Collection: Error creating snapshot directory"
1241
- )
1239
+ self.log.exception("Collection: Error creating snapshot directory")
1242
1240
 
1243
1241
  number_of_snapshots = self.current_dc_parameters["take_snapshots"]
1244
1242
  logging.getLogger("user_level_log").info(
@@ -246,29 +246,27 @@ class P11EDNACharacterisation(EDNACharacterisation):
246
246
  except AttributeError:
247
247
  import traceback
248
248
 
249
- logging.getLogger("HWR").debug(
250
- "EDNACharacterisation. transmission not saved "
251
- )
252
- logging.getLogger("HWR").debug(traceback.format_exc())
249
+ self.log.debug("EDNACharacterisation. transmission not saved ")
250
+ self.log.debug(traceback.format_exc())
253
251
 
254
252
  try:
255
253
  wavelength = HWR.beamline.energy.get_wavelength()
256
254
  beam.setWavelength(XSDataWavelength(wavelength))
257
255
  except AttributeError:
258
- logging.getLogger("HWR").exception("")
256
+ self.log.exception("")
259
257
 
260
258
  try:
261
259
  # Flux get_value() subsequently executing measure_flux() to fill in the dictionary
262
260
 
263
261
  beam.setFlux(XSDataFlux(HWR.beamline.flux.get_value()))
264
262
  except AttributeError:
265
- logging.getLogger("HWR").exception("")
263
+ self.log.exception("")
266
264
 
267
265
  try:
268
266
  min_exp_time = self.collect_obj.detector_hwobj.get_exposure_time_limits()[0]
269
267
  beam.setMinExposureTimePerImage(XSDataTime(min_exp_time))
270
268
  except AttributeError:
271
- logging.getLogger("HWR").exception("")
269
+ self.log.exception("")
272
270
 
273
271
  try:
274
272
  beamsize = self.collect_obj.beam_info_hwobj.get_beam_size()
@@ -281,7 +279,7 @@ class P11EDNACharacterisation(EDNACharacterisation):
281
279
  )
282
280
  )
283
281
  except AttributeError:
284
- logging.getLogger("HWR").exception("")
282
+ self.log.exception("")
285
283
 
286
284
  # Optimization parameters
287
285
  diff_plan = edna_input.getDiffractionPlan()
@@ -476,7 +474,7 @@ class P11EDNACharacterisation(EDNACharacterisation):
476
474
  collection_plan = edna_strategy.getCollectionPlan()[0]
477
475
  wedges = collection_plan.getCollectionStrategy().getSubWedge()
478
476
  except Exception:
479
- logging.getLogger("HWR").exception("")
477
+ self.log.exception("")
480
478
  else:
481
479
  try:
482
480
  resolution = (
@@ -558,7 +556,7 @@ class P11EDNACharacterisation(EDNACharacterisation):
558
556
  goniostat.getRotationAxisStart().getValue()
559
557
  )
560
558
  except AttributeError:
561
- logging.getLogger("HWR").exception("")
559
+ self.log.exception("")
562
560
  """ GB:
563
561
  try:
564
562
  acquisition_parameters.osc_end = (
@@ -574,7 +572,7 @@ class P11EDNACharacterisation(EDNACharacterisation):
574
572
  goniostat.getOscillationWidth().getValue()
575
573
  )
576
574
  except AttributeError:
577
- logging.getLogger("HWR").exception("")
575
+ self.log.exception("")
578
576
 
579
577
  try:
580
578
  num_images = int(
@@ -591,26 +589,26 @@ class P11EDNACharacterisation(EDNACharacterisation):
591
589
  acq.path_template.start_num = 1
592
590
 
593
591
  except AttributeError:
594
- logging.getLogger("HWR").exception("")
592
+ self.log.exception("")
595
593
 
596
594
  try:
597
595
  acquisition_parameters.transmission = (
598
596
  beam.getTransmission().getValue()
599
597
  )
600
598
  except AttributeError:
601
- logging.getLogger("HWR").exception("")
599
+ self.log.exception("")
602
600
 
603
601
  try:
604
602
  acquisition_parameters.energy = round(
605
603
  (123_984.0 / beam.getWavelength().getValue()) / 10000.0, 4
606
604
  )
607
605
  except AttributeError:
608
- logging.getLogger("HWR").exception("")
606
+ self.log.exception("")
609
607
 
610
608
  try:
611
609
  acquisition_parameters.exp_time = beam.getExposureTime().getValue()
612
610
  except AttributeError:
613
- logging.getLogger("HWR").exception("")
611
+ self.log.exception("")
614
612
 
615
613
  dc = qmo.DataCollection([acq], crystal, processing_parameters)
616
614
  data_collections.append(dc)
@@ -652,6 +650,6 @@ class P11EDNACharacterisation(EDNACharacterisation):
652
650
  html_report = html_report.replace("/beamline/p11", "/gpfs")
653
651
 
654
652
  except AttributeError:
655
- logging.getLogger("HWR").exception("")
653
+ self.log.exception("")
656
654
 
657
655
  return html_report
@@ -48,13 +48,9 @@ class P11ISPyBClient(ProposalISPyBClient):
48
48
  else:
49
49
  self.simulated_prop_code = None
50
50
  self.simulated_prop_number = None
51
- logging.getLogger("HWR").debug(
52
- "PROPOSAL SIMULATED is %s" % self.simulated_proposal
53
- )
54
- logging.getLogger("HWR").debug("PROPOSAL CODE is %s" % self.simulated_prop_code)
55
- logging.getLogger("HWR").debug(
56
- "PROPOSAL NUMBER is %s" % self.simulated_prop_number
57
- )
51
+ self.log.debug("PROPOSAL SIMULATED is %s" % self.simulated_proposal)
52
+ self.log.debug("PROPOSAL CODE is %s" % self.simulated_prop_code)
53
+ self.log.debug("PROPOSAL NUMBER is %s" % self.simulated_prop_number)
58
54
 
59
55
  def update_data_collection(self, mx_collection, wait=False):
60
56
  mx_collection["beamline_name"] = "P11"
@@ -106,7 +102,7 @@ class P11ISPyBClient(ProposalISPyBClient):
106
102
  logging.debug("P11 ISPyBClient - %s is %s " % (prop, ispyb_path))
107
103
  mx_collect_dict[prop] = ispyb_path
108
104
  except RuntimeWarning("Can not get ISPyB path for %s" % prop):
109
- logging.getLogger("HWR").exception("")
105
+ self.log.exception("")
110
106
 
111
107
  def prepare_image_for_lims(self, image_dict):
112
108
  for prop in ["jpegThumbnailFileFullPath", "jpegFileFullPath"]:
@@ -115,10 +111,10 @@ class P11ISPyBClient(ProposalISPyBClient):
115
111
  ispyb_path = HWR.beamline.session.path_to_ispyb(path)
116
112
  image_dict[prop] = ispyb_path
117
113
  except RuntimeWarning("Can not prepare image path fir LIMS for %s" % prop):
118
- logging.getLogger("HWR").exception("")
114
+ self.log.exception("")
119
115
 
120
116
  def get_proposal(self, proposal_code, proposal_number):
121
- logging.getLogger("HWR").debug(
117
+ self.log.debug(
122
118
  "ISPyB. Obtaining proposal for code=%s / prop_number=%s"
123
119
  % (proposal_code, proposal_number)
124
120
  )
@@ -327,7 +327,7 @@ class P11NanoDiff(GenericDiffractometer):
327
327
  self.emit_centring_moving()
328
328
 
329
329
  try:
330
- logging.getLogger("HWR").debug(
330
+ self.log.debug(
331
331
  "Centring finished. Moving motors to position %s" % str(motor_pos)
332
332
  )
333
333
  self.move_to_motors_positions(motor_pos, wait=True)
@@ -339,9 +339,9 @@ class P11NanoDiff(GenericDiffractometer):
339
339
  # centred positions include omega to initial position
340
340
  pass
341
341
  # if not self.in_plate_mode():
342
- # logging.getLogger("HWR").debug("Centring finished. Moving omega back to initial position")
342
+ # self.log.debug("Centring finished. Moving omega back to initial position")
343
343
  # self.motor_hwobj_dict['phi'].set_value_relative(-180, timeout=None)
344
- # logging.getLogger("HWR").debug(" Moving omega done")
344
+ # self.log.debug(" Moving omega done")
345
345
 
346
346
  if (
347
347
  self.current_centring_method
@@ -429,7 +429,7 @@ class P11NanoDiff(GenericDiffractometer):
429
429
  vertical_discplacements.append(y)
430
430
  horizontal_displacements.append(x)
431
431
 
432
- logging.getLogger("HWR").info("click %d %f %f %f" % (k + 1, omega, x, y))
432
+ self.log.info("click %d %f %f %f" % (k + 1, omega, x, y))
433
433
 
434
434
  dev_gonio = DeviceProxy("p11/servomotor/eh.1.01")
435
435
  if k <= n_clicks:
@@ -1474,7 +1474,7 @@ class P11NanoDiff(GenericDiffractometer):
1474
1474
  "motor_positions is not a dict and cannot be converted using as_dict()"
1475
1475
  )
1476
1476
 
1477
- logging.getLogger("HWR").exception("")
1477
+ self.log.exception("")
1478
1478
  return
1479
1479
 
1480
1480
  # Move translation motors
@@ -17,7 +17,6 @@
17
17
  # You should have received a copy of the GNU Lesser General Public License
18
18
  # along with MXCuBE. If not, see <http://www.gnu.org/licenses/>.
19
19
  import json
20
- import logging
21
20
  from enum import (
22
21
  Enum,
23
22
  unique,
@@ -164,10 +163,10 @@ class DataPublisher(HardwareObject):
164
163
  )
165
164
  else:
166
165
  msg = "Unknown frame type %s" % message
167
- logging.getLogger("HWR").error(msg)
166
+ self.log.error(msg)
168
167
  except Exception:
169
168
  msg = "Could not parse data in %s" % message
170
- logging.getLogger("HWR").exception(msg)
169
+ self.log.exception(msg)
171
170
 
172
171
  def _remove_available(self, _id):
173
172
  """
@@ -142,10 +142,8 @@ class EDNACharacterisation(AbstractCharacterisation):
142
142
  except AttributeError:
143
143
  import traceback
144
144
 
145
- logging.getLogger("HWR").debug(
146
- "EDNACharacterisation. transmission not saved "
147
- )
148
- logging.getLogger("HWR").debug(traceback.format_exc())
145
+ self.log.debug("EDNACharacterisation. transmission not saved ")
146
+ self.log.debug(traceback.format_exc())
149
147
 
150
148
  try:
151
149
  wavelength = HWR.beamline.energy.get_wavelength()
@@ -65,13 +65,13 @@ class EMBLBeam(AbstractBeam):
65
65
  self.aperture_diameter_changed,
66
66
  )
67
67
  else:
68
- logging.getLogger("HWR").debug("BeamInfo: Aperture hwobj not defined")
68
+ self.log.debug("BeamInfo: Aperture hwobj not defined")
69
69
 
70
70
  self._slits = self.get_object_by_role("slits")
71
71
  if self._slits is not None:
72
72
  self.connect(self._slits, "valueChanged", self.slits_gap_changed)
73
73
  else:
74
- logging.getLogger("HWR").debug("BeamInfo: Slits hwobj not defined")
74
+ self.log.debug("BeamInfo: Slits hwobj not defined")
75
75
 
76
76
  self._definer = self.get_object_by_role("beam_focusing")
77
77
  if self._definer is not None:
@@ -85,7 +85,7 @@ class EMBLBeam(AbstractBeam):
85
85
  self.focusing_mode_changed,
86
86
  )
87
87
  else:
88
- logging.getLogger("HWR").debug("BeamInfo: Beam focusing hwobj not defined")
88
+ self.log.debug("BeamInfo: Beam focusing hwobj not defined")
89
89
 
90
90
  self.chan_beam_position_hor = self.get_channel_object("BeamPositionHorizontal")
91
91
  if self.chan_beam_position_hor:
@@ -101,9 +101,7 @@ class EMBLBeamCentering(HardwareObject):
101
101
  self.focusing_mode_changed,
102
102
  )
103
103
  else:
104
- logging.getLogger("HWR").debug(
105
- "BeamlineTest: Beam focusing hwobj is not defined"
106
- )
104
+ self.log.debug("BeamlineTest: Beam focusing hwobj is not defined")
107
105
 
108
106
  def focusing_mode_changed(self, focusing_mode, beam_size):
109
107
  """Reemits focusing changed signal
@@ -128,7 +126,7 @@ class EMBLBeamCentering(HardwareObject):
128
126
  with gevent.Timeout(20, Exception("Timeout waiting for pitch scan ready")):
129
127
  while self.scan_status != 0: # chan_pitch_scan_status.get_value() != 0:
130
128
  gevent.sleep(0.1)
131
- logging.getLogger("HWR").error("scan status %s" % self.scan_status)
129
+ self.log.error("scan status %s" % self.scan_status)
132
130
  self.cmd_set_vmax_pitch(1)
133
131
  sleep(3)
134
132
 
@@ -88,7 +88,7 @@ class EMBLBeamFocusing(HardwareObject):
88
88
  )
89
89
  motors_group.re_emit_values()
90
90
  else:
91
- logging.getLogger("HWR").debug("BeamFocusing: No motors defined")
91
+ self.log.debug("BeamFocusing: No motors defined")
92
92
  self.active_focus_mode = self.focus_modes[0]["modeName"]
93
93
  self.size = self.focus_modes[0]["size"]
94
94
  self.re_emit_values()
@@ -96,7 +96,7 @@ class EMBLBeamFocusing(HardwareObject):
96
96
  try:
97
97
  self.cmd_set_phase = eval(self.get_property("setPhaseCmd"))
98
98
  except Exception:
99
- logging.getLogger("HWR").exception("")
99
+ self.log.exception("")
100
100
 
101
101
  self.aperture_hwobj = self.get_object_by_role("aperture")
102
102
 
@@ -240,7 +240,7 @@ class EMBLBeamFocusing(HardwareObject):
240
240
  :type focus_mode: str
241
241
  """
242
242
  gevent.spawn(self.focus_mode_task, focus_mode)
243
- logging.getLogger("HWR").info("Focusing: %s mode requested" % focus_mode)
243
+ self.log.info("Focusing: %s mode requested" % focus_mode)
244
244
  self.emit("focusingModeRequested", focus_mode)
245
245
 
246
246
  def focus_mode_task(self, focus_mode):
@@ -188,7 +188,7 @@ class EMBLDoorInterlock(HardwareObject):
188
188
  )
189
189
  logging.getLogger("GUI").error(msg)
190
190
  else:
191
- logging.getLogger("HWR").info("Door is Interlocked")
191
+ self.log.info("Door is Interlocked")
192
192
 
193
193
  def re_emit_values(self):
194
194
  """Updates state"""
@@ -104,7 +104,7 @@ class EMBLEnergy(AbstractEnergy):
104
104
  try:
105
105
  self._default_energy = self.get_property("defaultEnergy")
106
106
  except Exception:
107
- logging.getLogger("HWR").warning("Energy: no default energy defined")
107
+ self.log.warning("Energy: no default energy defined")
108
108
 
109
109
  try:
110
110
  self._energy_limits = eval(self.get_property("staticLimits"))
@@ -135,9 +135,7 @@ class EMBLEnergy(AbstractEnergy):
135
135
  value = self.chan_energy.get_value()
136
136
  return value[0] / 1000
137
137
  except Exception:
138
- logging.getLogger("HWR").exception(
139
- "Energy: could not read current energy"
140
- )
138
+ self.log.exception("Energy: could not read current energy")
141
139
  return None
142
140
  return value
143
141
 
@@ -153,9 +151,7 @@ class EMBLEnergy(AbstractEnergy):
153
151
  self.chan_limit_high.get_value(),
154
152
  )
155
153
  except Exception:
156
- logging.getLogger("HWR").exception(
157
- "Energy: could not read energy limits"
158
- )
154
+ self.log.exception("Energy: could not read energy limits")
159
155
  return self._energy_limits
160
156
 
161
157
  def get_wavelength_limits(self):
@@ -205,11 +201,11 @@ class EMBLEnergy(AbstractEnergy):
205
201
  """
206
202
  Checks given value if it is within limits
207
203
  """
208
- logging.getLogger("HWR").info("Checking the move limits")
204
+ self.log.info("Checking the move limits")
209
205
  result = False
210
206
 
211
207
  if self._energy_limits[0] <= value <= self.en_lims[1]:
212
- logging.getLogger("HWR").info("Limits ok")
208
+ self.log.info("Limits ok")
213
209
  result = True
214
210
  else:
215
211
  logging.getLogger("GUI").info("Energy: Requested value is out of limits")
@@ -223,7 +219,7 @@ class EMBLEnergy(AbstractEnergy):
223
219
  # :param wait: boolean
224
220
  # :return:
225
221
  # """
226
- # logging.getLogger("HWR").info("Moving wavelength to (%s)" % value)
222
+ # self.log.info("Moving wavelength to (%s)" % value)
227
223
  # return self.move_energy(12.3984 / value, wait)
228
224
  # # return self.startMoveEnergy(value, wait)
229
225
 
@@ -313,7 +309,7 @@ class EMBLEnergy(AbstractEnergy):
313
309
  self._moving = False
314
310
  self.set_break_bragg()
315
311
  if self.cmd_reset_perp is not None:
316
- logging.getLogger("HWR").info("Energy: Perp reset sent")
312
+ self.log.info("Energy: Perp reset sent")
317
313
  self.cmd_reset_perp()
318
314
  self.move_energy_finished(0)
319
315
  self.update_state(self.STATES.READY)
@@ -402,22 +398,18 @@ class EMBLEnergy(AbstractEnergy):
402
398
  self.wait_ready()
403
399
  gevent.sleep(1)
404
400
  self.wait_ready()
405
- logging.getLogger("HWR").info("Energy: Set bragg break cmd send")
401
+ self.log.info("Energy: Set bragg break cmd send")
406
402
  self.cmd_set_break_bragg(1)
407
403
  gevent.sleep(2)
408
404
  if self.chan_status_bragg_break is not None:
409
- logging.getLogger("HWR").warning(
410
- "Energy: Waiting for break set (first try) ..."
411
- )
405
+ self.log.warning("Energy: Waiting for break set (first try) ...")
412
406
  with gevent.Timeout(
413
407
  20, Exception("Energy: Timeout waiting for break set")
414
408
  ):
415
409
  while self.chan_status_bragg_break.get_value() != 0:
416
410
  gevent.sleep(0.1)
417
411
  gevent.sleep(3)
418
- logging.getLogger("HWR").warning(
419
- "Waiting for break set (second try) ..."
420
- )
412
+ self.log.warning("Waiting for break set (second try) ...")
421
413
  with gevent.Timeout(20, Exception("Timeout waiting for break set")):
422
414
  while self.chan_status_bragg_break.get_value() != 0:
423
415
  gevent.sleep(0.1)
@@ -181,7 +181,7 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
181
181
  :type exptime: float
182
182
  :return: True if success, otherwise returns False
183
183
  """
184
- log = logging.getLogger("HWR")
184
+ log = self.log
185
185
 
186
186
  self.scan_info = {
187
187
  "sessionId": session_id,
@@ -304,7 +304,7 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
304
304
  def scanCommandFinished(self, *args):
305
305
  with TaskUtils.cleanup(self.ready_event.set):
306
306
  self.scan_info["endTime"] = time.strftime("%Y-%m-%d %H:%M:%S")
307
- logging.getLogger("HWR").debug("Energy scan: finished")
307
+ self.log.debug("Energy scan: finished")
308
308
  self.scanning = False
309
309
  self.scan_info["startEnergy"] = self.scan_data[-1][0]
310
310
  self.scan_info["endEnergy"] = self.scan_data[-1][1]
@@ -330,9 +330,7 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
330
330
  if not os.path.exists(archive_directory):
331
331
  os.makedirs(archive_directory)
332
332
  except Exception:
333
- logging.getLogger("HWR").exception(
334
- "EMBLEnergyScan: could not create results directory."
335
- )
333
+ self.log.exception("EMBLEnergyScan: could not create results directory.")
336
334
  self.store_energy_scan()
337
335
  self.emit("energyScanFailed", ())
338
336
  return
@@ -340,9 +338,7 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
340
338
  try:
341
339
  archive_file_raw = open(archive_file_raw_filename, "w")
342
340
  except Exception:
343
- logging.getLogger("HWR").exception(
344
- "EMBLEnergyScan: could not create results raw file"
345
- )
341
+ self.log.exception("EMBLEnergyScan: could not create results raw file")
346
342
  self.store_energy_scan()
347
343
  self.emit("energyScanFailed", ())
348
344
  return
@@ -378,7 +374,7 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
378
374
 
379
375
  logging.getLogger("GUI").error("Energy scan: Chooch failed")
380
376
 
381
- logging.getLogger("HWR").exception("")
377
+ self.log.exception("")
382
378
  return None, None, None, None, None, None, None, [], [], [], None
383
379
 
384
380
  rm = (pk + 30) / 1000.0
@@ -409,7 +405,7 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
409
405
  for i in range(len(chooch_graph_x)):
410
406
  chooch_graph_x[i] = chooch_graph_x[i] / 1000.0
411
407
 
412
- # logging.getLogger("HWR").info("EMBLEnergyScan: Saving png" )
408
+ # self.log.info("EMBLEnergyScan: Saving png" )
413
409
  # prepare to save png files
414
410
  title = "%s %s %s\n%.4f %.2f %.2f\n%.4f %.2f %.2f" % (
415
411
  "energy",
@@ -459,13 +455,13 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
459
455
 
460
456
  self.scan_info["jpegChoochFileFullPath"] = str(archive_file_png_filename)
461
457
  try:
462
- logging.getLogger("HWR").info(
458
+ self.log.info(
463
459
  "Saving energy scan to archive directory for ISPyB : %s",
464
460
  archive_file_png_filename,
465
461
  )
466
462
  canvas.print_figure(archive_file_png_filename, dpi=80)
467
463
  except Exception:
468
- logging.getLogger("HWR").exception("could not save figure")
464
+ self.log.exception("could not save figure")
469
465
 
470
466
  self.store_energy_scan()
471
467
 
@@ -516,7 +512,7 @@ class EMBLEnergyScan(AbstractEnergyScan, HardwareObject):
516
512
  }
517
513
  )
518
514
  except IndexError:
519
- logging.getLogger("HWR").exception("")
515
+ self.log.exception("")
520
516
  return elements
521
517
 
522
518
  def get_scan_data(self):
@@ -170,7 +170,7 @@ class EMBLFlux(AbstractFlux):
170
170
  self.intensity_ranges, key=lambda item: item["max"]
171
171
  )
172
172
  except Exception:
173
- logging.getLogger("HWR").error("BeamlineTest: No intensity ranges defined")
173
+ self.log.error("BeamlineTest: No intensity ranges defined")
174
174
  """
175
175
 
176
176
  self.chan_intens_mean = self.get_channel_object("intensMean")
@@ -364,23 +364,23 @@ class EMBLFlux(AbstractFlux):
364
364
  # Close the fast shutter
365
365
  # -----------------------------------------------------------------
366
366
  HWR.beamline.fast_shutter.close(wait=True)
367
- logging.getLogger("HWR").debug("Measure flux: Fast shutter closed")
367
+ self.log.debug("Measure flux: Fast shutter closed")
368
368
  gevent.sleep(0.2)
369
369
  HWR.beamline.diffractometer.wait_ready(10)
370
370
 
371
371
  # Move back light in, check beamstop position
372
372
  # -----------------------------------------------------------------
373
- logging.getLogger("HWR").info("Measure flux: Moving backlight out...")
373
+ self.log.info("Measure flux: Moving backlight out...")
374
374
  self.emit("progressStep", 1, "Moving backlight out")
375
375
  HWR.beamline.back_light.move_in()
376
- logging.getLogger("HWR").debug("Measure flux: Backlight moved out")
376
+ self.log.debug("Measure flux: Backlight moved out")
377
377
 
378
378
  beamstop_position = HWR.beamline.beamstop.get_value()
379
379
  if beamstop_position == "BEAM":
380
380
  self.emit("progressStep", 2, "Moving beamstop OFF")
381
381
  HWR.beamline.beamstop.set_position("OFF")
382
382
  HWR.beamline.diffractometer.wait_ready(30)
383
- logging.getLogger("HWR").info("Measure flux: Beamstop moved off")
383
+ self.log.info("Measure flux: Beamstop moved off")
384
384
 
385
385
  # Check scintillator position
386
386
  # -----------------------------------------------------------------
@@ -390,9 +390,7 @@ class EMBLFlux(AbstractFlux):
390
390
  HWR.beamline.diffractometer.set_scintillator_position("PHOTODIODE")
391
391
  gevent.sleep(1)
392
392
  HWR.beamline.diffractometer.wait_ready(30)
393
- logging.getLogger("HWR").debug(
394
- "Measure flux: Scintillator set to photodiode"
395
- )
393
+ self.log.debug("Measure flux: Scintillator set to photodiode")
396
394
 
397
395
  self.measured_flux_list = []
398
396
 
@@ -417,7 +415,7 @@ class EMBLFlux(AbstractFlux):
417
415
 
418
416
  gevent.sleep(1)
419
417
  intens_value = self.chan_intens_mean.get_value(force=True)
420
- logging.getLogger("HWR").info("Measured current: %s" % intens_value)
418
+ self.log.info("Measured current: %s" % intens_value)
421
419
  # HWR.beamline.fast_shutter.closeShutter(wait=True)
422
420
  intensity_value = intens_value[0] + 1.860e-5 # 2.780e-6
423
421
  self.measured_flux_list.append(self.get_flux_result(intensity_value))
@@ -428,21 +426,21 @@ class EMBLFlux(AbstractFlux):
428
426
  self.cmd_flux_record([_x["flux"] for _x in self.measured_flux_list])
429
427
  gevent.sleep(2)
430
428
  except Exception:
431
- logging.getLogger("HWR").exception("")
429
+ self.log.exception("")
432
430
 
433
431
  max_frame_rate = 25
434
432
  else:
435
433
  self.emit("progressStep", 5, "Measuring the intensity")
436
434
  current_aperture_index = 0
437
435
  HWR.beamline.fast_shutter.open(wait=True)
438
- logging.getLogger("HWR").debug("Measure flux: Fast shutter opened")
436
+ self.log.debug("Measure flux: Fast shutter opened")
439
437
 
440
438
  gevent.sleep(0.5)
441
439
  intens_value = self.chan_intens_mean.get_value()
442
440
 
443
441
  intens_range_now = self.chan_intens_range.get_value()
444
442
  HWR.beamline.fast_shutter.close(wait=True)
445
- logging.getLogger("HWR").debug("Measure flux: Fast shutter closed")
443
+ self.log.debug("Measure flux: Fast shutter closed")
446
444
 
447
445
  intensity_value = intens_value[0] + 2.780e-6
448
446
  self.measured_flux_list.append(self.get_flux_result(intensity_value))
@@ -161,7 +161,7 @@ class EMBLMachineInfo(HardwareObject):
161
161
  self.cryojet_in_changed(self.chan_cryojet_in.get_value())
162
162
  self.chan_cryojet_in.connect_signal("update", self.cryojet_in_changed)
163
163
  else:
164
- logging.getLogger("HWR").debug("MachineInfo: Cryojet channel not defined")
164
+ self.log.debug("MachineInfo: Cryojet channel not defined")
165
165
 
166
166
  self.chan_sc_dewar_low_level_alarm = self.get_channel_object(
167
167
  "scLowLevelAlarm", optional=True
@@ -524,7 +524,7 @@ class EMBLMachineInfo(HardwareObject):
524
524
  last_value = line_el[-1]
525
525
  last_value = float(last_value)
526
526
  except Exception:
527
- logging.getLogger("HWR").debug("MachineInfo: Unable to read epics values")
527
+ self.log.debug("MachineInfo: Unable to read epics values")
528
528
  finally:
529
529
  if url_file:
530
530
  url_file.close()