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

Units for detector.get_beam_position #687

Closed
rhfogh opened this issue May 25, 2022 · 8 comments
Closed

Units for detector.get_beam_position #687

rhfogh opened this issue May 25, 2022 · 8 comments
Labels

Comments

@rhfogh
Copy link
Collaborator

rhfogh commented May 25, 2022

We need to standardise on units for the detector.get_beam_position function. Without defined units you do not know what the return values mean, and you cannot use the function except by implicitly assuming which beamline it is being run on.

In AbstractDetector the function documentation says
"Beam position x,y coordinates [pixel]."

Yet the ESRF function returns values in mm. It is tricky to see, since the actual values are determined by the configuration values of ax, ay, bx, and by, but it looks like lnls also uses mm, whereas SOLEIL uses pixels.

Whatever it currently says in AbstractDetector, we can agree to use pixels or mm, or to have both get_beam_position_mm and get_beam_position_pixel, or probably other solutions, but could we agree on a single convention?

@rhfogh rhfogh added the bug label May 25, 2022
@marcus-oscarsson
Copy link
Member

marcus-oscarsson commented May 30, 2022

@rhfogh the code you are referring to is beamline specific and still in the process of being adapted to
mxcubecore hence some inconsistencies.

I'm otherwise in favor of using device independent values for instance SI or more domain specific units when appropriate like microns or angstrom so I would suggest millimeters for get_beam_position.

I thought that was already the decision, but maybe I'm mistaken ?

Why not adding the <unit>_ suffix if we deviate from the above (if that's what we decided) and the
documentation should of course be correct regardless of suffix.

I have a vague recollection though of a discussion were we might have thought pixels were a better
return value for get_beam_position. @MartinSavko was maybe involved in that ?

Marcus

@marcus-oscarsson
Copy link
Member

After discussing this with @rhfogh, we agreed that we would stick to the current definition of AbstractDetector
and raise this more as a topic to discuss on our next developers meeting

@rhfogh
Copy link
Collaborator Author

rhfogh commented Jun 6, 2022

Opened temporarily as resource for discussion in MXCuBE developers' meeting

@MartinSavko
Copy link
Member

My memories of the discussion on the topic are probably very much clouded by my slight bias towards wanting .get_beam_position() to return in pixels (and nexus documentation recognizes it as an allowed one). My preference for this is probably just due to the feeling that the pixel is the natural unit of a digital image.

Other than that I would support get_beam_position_mm() and get_beam_position_pixels().

The question of related methods get_radius() and get_outer_radius() is very illuminating. There I have a feeling mm is a more "natural" unit.

To avoid confusion we could append _pixels and _mm to all those methods and add add a 'unit' keyword argument to the default method?

e.g.
def get_beam_position(self, unit='pixels'):
if unit='mm':
return self.get_beam_position_mm()
return self.get_beam_position_pixels()

def get_radius(self, unit='mm'):
if unit='mm':
return self.get_radius_mm()
return self.get_radius_pixels()

@marcus-oscarsson
Copy link
Member

@rhfogh, All

So I looked at this a bit further as we are implementing this at the moment. There might be a conversion missing in get_beam_position() depending on how want wants to configure beam center.

`
try:
distance = distance or self._distance_motor_hwobj.get_value()
wavelength = wavelength or HWR.beamline.energy.get_wavelength()
metadata = self.get_metadata()

        beam_position = (
            float(distance * metadata["ax"] + metadata["bx"]),
            float(distance * metadata["ay"] + metadata["by"]),
        )
    except (AttributeError, KeyError):
        beam_position = (None, None)

    return 

`

As far as I can tell the beam position can't be anything else than millimeters using the calculation
above as long as the pixel to millimeters conversion is not included in ay and ax.

Would it not make more sense to use millimeters for this interpolation and simply convert
the return value to pixels ?

@rhfogh
Copy link
Collaborator Author

rhfogh commented Jun 7, 2022

Well, it all depends on what values you use for ax, ay, bx, and by. As far as I am aware it is not explicit anywhere what the unit of those values should be - they are in pixels at SOLEIL. In fact the lack of specification is arguably a weakness of the current system - the only 'specification' is in the fact that they must match the code that uses them. And that code is different in develop and in the MASSIF1 production code. In the develop branch the relevant code in abstract/AbstractDetector.get_radius is:

    beam_x, beam_y = self.get_beam_position(distance)
    pixel_x, pixel_y = self.get_pixel_size()
    rrx = min(self.get_width() - beam_x, beam_x) * pixel_x
    rry = min(self.get_height() - beam_y, beam_y) * pixel_y
    radius = min(rrx, rry)

which presupposes a position in pixels. It looks to me like the code in get_radius was changed to match an input in mm.

We could consider making get_beam_position an abstract method (in pixels) and removing all references to ax,ay,bx,by from the abstract class. More coding, but less scope for confusion. But failing that we should probably try to enforce the correct nits for ax, ay, bx, by.

@marcus-oscarsson
Copy link
Member

marcus-oscarsson commented Jun 7, 2022

I don't think there is any added value in abstracting away the interpolation for the beam position so that ax, by, bx and by can be on either pixels or mm

Actually I think it would be a good thing if we could agree on the unit for those configuration/calibration parameters. The code as it is today somehow assumes that its in pixels.

I have not really anything against this, I just found it a bit awkward to perform an interpolation with a distance in mm as input and calibration constants defined in pixels.

@marcus-oscarsson
Copy link
Member

marcus-oscarsson commented Jun 8, 2022

So we decided during the meeting yesterday that we would keep the interface as it is in AbstractDetector.

The interface defined in AbstractDetector more or less forces us to use pixels in the detector configuration file. I don't really have anything against this, and it would in the end be a good thing if pixels could be used consistently across all sites.

It more or less only leaves one question left and that is what unit should be used for the beam center value in ISPyB ?

I think it's even more important that we are consistent across sites when it comes to this value. We currently use millimeters here at ESRF.

rhfogh pushed a commit to rhfogh/mxcubecore that referenced this issue Sep 17, 2024
rhfogh pushed a commit to rhfogh/mxcubecore that referenced this issue Oct 1, 2024
marcus-oscarsson added a commit that referenced this issue Oct 25, 2024
rhfogh pushed a commit that referenced this issue Oct 25, 2024
fhernandezvivanco added a commit to AustralianSynchrotron/mxcubecore that referenced this issue Dec 3, 2024
* [skip ci] Bumped minor version

* Bump certifi from 2023.5.7 to 2024.7.4

Bumps [certifi](https://github.com/certifi/python-certifi) from 2023.5.7 to 2024.7.4.
- [Commits](certifi/python-certifi@2023.05.07...2024.07.04)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* [skip ci] Bumped minor version

* Added removed logging module. Sample loading was not possible.

* [skip ci] Bumped minor version

* Improved yaml linting and tightened config. Set YAML 1.2 everywhere

* Cleaned up yaml linting, and added `%YAML 1.2` lines

* Moved %YAML directive back to `%YAML 1.2` without #'

* Fixed yamllint problems

* Removed `%YAML 1.2` from .githib/workflows files

* Put "on:" in quotes in .github/workflows to pass yamllint

* Fixed yamllint complaint about  indented comments

* Reorganised comments for yamllint

* [skip ci] Bumped minor version

* Bump zipp from 3.15.0 to 3.19.1

Bumps [zipp](https://github.com/jaraco/zipp) from 3.15.0 to 3.19.1.
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
- [Commits](jaraco/zipp@v3.15.0...v3.19.1)

---
updated-dependencies:
- dependency-name: zipp
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* [skip ci] Bumped minor version

* Attempt to solve issue 902 (mxcube#940)

* Removed Device and Equipment objects and replaced them with HardwareObject

* Removed Device and Equipment objects and replaced them with HardwareObject for configuration files

* Fixed ISARA test

* Fixed device_uri tags

* [skip ci] Bumped minor version

* Bump setuptools from 67.8.0 to 70.0.0 (mxcube#973)

Bumps [setuptools](https://github.com/pypa/setuptools) from 67.8.0 to 70.0.0.
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](pypa/setuptools@v67.8.0...v70.0.0)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [skip ci] Bumped minor version

* CatsMaintMockup: fix call to super __init__() (mxcube#976)

The CatsMaintMockup does not inherit Equipment class anymore.

* [skip ci] Bumped minor version

* remove import of devtools

Don't import devtools module for the test collection queue entry.
Mxcube-core does not list devtools package as a dependency.

Also remove unused import of HardwareRepository.

* [skip ci] Bumped minor version

* MAXIV: new common HWO for machine information

New MachInfo hardware object, for using at BioMAX and MicroMAX.

Based on older HWO used at BioMAX, but updated to follow the
new AbstractMachineInfo API.

* [skip ci] Bumped minor version

* support python 3.11

 - mark python 3.11.* as supported for this package.
 - require later version of greenlet package, as version 1.1.3
   does not work with python 3.11.
 - require later versions of gevent and gipc packages, to statisfy
   greenlet 3.* requirmets.

* [skip ci] Bumped minor version

* Deprecating Device and Equipment

* Added deprecation warning to __init_subclass__

* [skip ci] Bumped minor version

* CI: run pytests on package version changes

Trigger pytest if project definition or poetry lock is updated.

Make sure that we test the (potentially) new versions of dependency
packages.

* [skip ci] Bumped minor version

* GenericNState to define get_value and _set_value with no action.

* Index in the value_to_enum tuple can be any, not just 0.
default_value should be an Enum, but impossible be set as such in the configuration file

* Bug fix.

* Add possibility to get the checkbeam status from GenericNState HO.
Status can be changed by the beamline actions.

* Change check to monitor to avoid confusion.Remove obsolete check_flux.

* Change the name to NState.

* Default value can be False or 0.

* [skip ci] Bumped minor version

* extra attrs for xrf spectrum dict; file suffix as optional property

* [skip ci] Bumped minor version

* Update limits when wavelength changes.

* [skip ci] Bumped minor version

* Allow `.yaml` extension for YAML config files

The recommended file extension for YAML files is `.yaml`.
Both `.yaml` and `.yml` are valid extensions for YAML files.

* [skip ci] Bumped minor version

* XRF centred position (mxcube#988)

* propagate xrf centred position

retrive xrf cpos from shape

typo

xrf model knows about shape

* propagate energy scan centred position

* [skip ci] Bumped minor version

* Fixed calls to super class for objects that used to use Device or Equipment

* [skip ci] Bumped minor version

* Beam refactoring - definer and size  (former Aperture as NState) (mxcube#919)

* Aperture from AbstractNState implementation.

* Change BeamMockup accordingly.

* Start using HO from beam_definer branch.

* Fix bug.

* Black

* Add _definer_type property.Fix typo for elliptical.Documentation.

* Add beam definer (as started in beam_definer branch).

* Add beam size methods.Minor cleanup

* beam_test change

* black

* black

* Again?

* Size is in mm

* Black again.

---------

Co-authored-by: Antonia Beteva <beteva@debian8-devel.esrf.fr>

* [skip ci] Bumped minor version

* Rename Oxford700 to OxfordCryostream (handles all models).
Add temperature monitoring feature.

* Remove the temperature polling - now handled in the cryostream HO

* [skip ci] Bumped minor version

* ESRF Implementation of new beam size and definer handling

* Remove obsolete code.

* [skip ci] Bumped minor version

* Replaced the use of a few remaining Device with HardwareObject

* [skip ci] Bumped minor version

* Moved set_is_ready method from Device to HardwareObject and added deprecation warning

* [skip ci] Bumped minor version

* Fixed bugs related to recent Beamdefiner changes

* Removed commented-out line

* Updated doc strings to allow for latest change

* Removed commented-out line

* [skip ci] Bumped minor version

* Fix bug in BeamMockup and test_beam (mxcube#1006)

Co-authored-by: Antonia Beteva <beteva@debian8-devel.esrf.fr>

* [skip ci] Bumped minor version

* hwobj-ify abstract energy scan (mxcube#1008)

* [skip ci] Bumped minor version

* extra attrs for xrf spectrum dict revert (mxcube#1005)

* Remove prefix, spectrum_directory and archive_directory from spectrum_info_dict

* Camel to snake case.

---------

Co-authored-by: Antonia Beteva <beteva@debian8-devel.esrf.fr>

* [skip ci] Bumped minor version

* Bump opencv-python from 4.7.0.72 to 4.8.1.78

Bumps [opencv-python](https://github.com/opencv/opencv-python) from 4.7.0.72 to 4.8.1.78.
- [Release notes](https://github.com/opencv/opencv-python/releases)
- [Commits](https://github.com/opencv/opencv-python/commits)

---
updated-dependencies:
- dependency-name: opencv-python
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* [skip ci] Bumped minor version

* fix initialization of EnergyScanMockup

In 1350c66 commit, the
AbstractEnergyScan class has been changed to extend HardwareObject.
It's AbstractEnergyScan.__init__() method now takes a string
parameter. This change breaks current EnergyScanMockup.__init__()
method, as it calls AbstractEnergyScan.__init__() without any
arguments.

Remove the EnergyScanMockup.__init__() method, as it's no longer
needed. This fixes the issue with creating EnergyScanMockup objects.

* [skip ci] Bumped minor version

* fix wording in some doc strings

Fix typos and spelling style in some python doc strings.

* add missing . in the documentation

* remove confusing class doc string

The doc string for DataCollection seems to be talking about
something different then the DataCollection class. Probably some
kind of refactoring accident.

* remove duplicate import

* remove unused imports

* remove commented out code

It's been commented a long time ago. I don't think anyone is
going to miss it now.

* remove incorrect type hint

This method returns 'None'.

* fix typos in comment and doc strings

* trim linters exclude lists

Remove files from autoflake and black exclude list, that does not
need to be there.

* [skip ci] Bumped minor version

* fix when static params are not defined

* remove unneeded argument

* a working escan mockup

* [skip ci] Bumped minor version

* allow update grid result data (mxcube#1004)

* allow update grid result data

* allow update grid result data

* document grid result format

* [skip ci] Bumped minor version

* units: add micrometers (μm) to millimeters conversion function

Adds a function to convert micrometers (μm) to millimeters.

* [skip ci] Bumped minor version

* Added comparability between pydantic 1 and 2

* Updated pydantic

* [skip ci] Bumped minor version

* actions: notify teams upon new discussion in category

* [skip ci] Bumped minor version

* [type hint] fix for Python 3.8 incompatible typehints

* [skip ci] Bumped minor version

* Bumped Pydantic to 2.x

* [skip ci] Bumped minor version

* Added workflow parameter IDs for ESRF workflow automation

* Added workflow parameter IDs for ESRF workflow automation, part 2

* Now correct fix for recentring='none' bug

* [skip ci] Bumped minor version

* Bumped pillow

* [skip ci] Bumped minor version

* P11 char (mxcube#966)

* Set energy within the tolerance

* Added handling of progress bar during data collection

* EDNA startup tests at P11

* Added waiting for resulting ENDA xml output for characterisation.

* Black

* Add more explicit omega_wait_on function in P11NanoDiff

* Patched recursion error in MotorsNPositon used at P11.

* Black

* Refactor move motors in P11NanoDiff. Avoid as_dict none error.

* Refactor move motors in P11NanoDiff. Avoid waiting before move is done.

* Refactoring of characterisation. Move MOSFLM to P11EDNACharacterisation. Simplified edna_maxwell()

* EDNA folders check - separate creation of char and rotational dirs (all based on xds_dir).

* Revisit path conversion for EDNA xml

* Updated latest local changes to the EDNA CHaracterisation

* Put the xdsapp start in the separate function

* Added maschine info class (WIP)

* Added flux estimation using tabulated values (temporary plug for EDNA tests)

* Added transmission to the log

* Data processing is fixed by duplicationg h5 header info from the CC

* Added info.txt prototype from CC

* Added function returning string of beam focus for info.txt

* Added writing info.txt similar to CC

* Fixed failing Diffraction plan execution due to the path mismatch

* Beam current simulation for EDNA

* Added get current from mach_info to info.txt

* Cleanup

* Added the reading of machine parameters

* Code cleanup. Adding the filter thickness into the info.txt in mm

* Code cleanup

* Black

* Fix image_interval in info.txt

* Removed debug print

* Removed unused genxdsinp function. Moved to the start script.

* Added additional check for the waiting untill NanoDiff is ready

* Make sure that debug directory is created

* Increased timeout for EDNA output waiting

* Added additional robot actions

* Debug of data collection

* Added explicit wait for teh arm command

* Added maxwell processing for autoproc

* Test debugs

* Increased a bit delay for a debuggingh data collection

* Black

* Black

* Suppress multy wedge data collection (GB) in characterisation

* Added explicit remeasure of the flux for raddose before starting characterisation

* Add writing the info about autoproc for presenterd in datasets.txt

* Addeed writing path to EDNA for presenterd

* Rewverted back the delay to 0.003

* Added prototype for the angle calibration. To be checked with beam.

* Adapted data collection from CC. Moved goniometer-related code to the P11NanoDiff including xml files changes.

* Added additional status check for the detector distance

* Removed function that is now in P11NanoDiff

* Added the changes to make it work again after Device class deprecation (see PR#940 - attemt to solve issue 902)

* Linting

* Change init (PR966)

* Change init in P11Session (PR966)

* Removed Hardwareobject inheritance in MjpgStreamVideo (PR966)

* Removed unnnessesary self.is_ready() after update (PR966)

* Black

* Update of the P11Beam after rebase and update of the AbstractBeam

* Update

* Changes according to the suggestions in PR966

* Removed typo AbstractCollect

* P11Beam updates (PR#966)

* Removed duplicatons (PR#966)

* Moved energy chack logick to P11Energy (PR#966)

* Removed return (PR#966)

* Explicit int() conversion for the mouse click coordinates in teh centring after python 3.10 upgrade

* Removed commented code

* Removed commented code

* Black

* Adressing the function return issue (PR#966)

* Black

* Revovin evaluate_beam_info after properly writing beam sizes as list and not as tuple (PR#966)

* Fixing NanoDiff centring issues

* Reimplemented Maschine Info using TangoMaschineInfo (PR#966)

* Removed the unused code (PR#966)

* Removed the unnessesary line (PR#966)

* Added update_state call after the state is ready

* Added usage of default_values and docstrings update (PR#966)

* Added properly formatted docstrings

* Fixed display of proposal in case ISPyB is not available

* Updated the file header according to the recent py_file_header without dates

* Black and additional header update

* Changed P11Pinhole to use Nstate

* Add P11 beamstop, collimator and yag using NState. To be tested.

* Update of the P11NanoDiff to use get_value instead of _get_positions (migrate MotorsNPosition to Nstate, PR#966)

* Black

* Refactor collimator to be an instance of AbstractNState class (PR#966)

* Added implementation of P11Beamstop as AbstractNState instead of MotorNState PR#966

* Added Diode-Yag stage implementation as AbstractNState (PR#966)

* Corrected P11NanoDiff initially to test reimplemetation of beamline componeneta as AbstractNState

* Removed setting omega to 0 during the centring phase in P11NanoDiff

* Refactoring to use AbstractNState for Pinholes,Yag and Collimator

* Refactoring and corresponding updates in P11NanoDiff to work with new objects

* Linting

* Typo fix in TangoMotor

* Fixed the waiting phase during components move after refactoring (PR#966)

* Fixes of qt-related parts after refactoring PR#966

* Added initial handling of DoorInterlock

* Moved url to the properties

* fixing the write info for screening. Reverting back the line removed during the work on PR#966

* Quick fix for the manual centring for now (reverted). To be investigated.

* Update the MultiNState for revisiting the recursion problem and value return (PR#966).

* Added the py_header info into the files

* Removed phiz from the centring tower movement in P11NanoDiff

* Code cleanup

* Added info comments for the GUI during phase changes

* Cleanup

* Cleanup

* Added position return function to work with qt multi-state brick

* Removed the moving yag down during initialization

* Black

* Added proper logging

* Preliminary update of the MachineInfo to make it work with qt

* Linting

* Modify so it works with qt mach info brick

* P11MachInfo cleanup

* Change to 3s update

* Changes to fix the detector misfires in P11Collect characterisation

* Fixed the unable to start session if the beamtime file is not created - no beamtime.

* P11Session code cleanup

---------

Co-authored-by: Andrey Gruzinov <andrey.gruzinov@desy.de>

* [skip ci] Bumped minor version

* units: add milliseconds (ms) to seconds conversion function

* [skip ci] Bumped minor version

* Prevent mockup value to be set to exception on abort

* [skip ci] Bumped minor version

* [Harvester] FIx typo

FIx EMBLFlexHCD inheritance Object is a module, not a class

* [skip ci] Bumped minor version

* Fixed collect resolution-setting problem

* Code improvements for previous commit

* Put GPhL files under black formatting

* Improve black formatting

* Removed space for black

* Cleaned up for linting

* [skip ci] Bumped minor version

* First attempt to add space group synonyms

* Cleaned up further for linting

* Added extra Space Group synonyms for P2221 and P21212 non-std settings

* Run black

* Run pre-commit, and removed default_language_version

* Removed commented-out section

* Yet another black change

* [skip ci] Bumped minor version

* Update pre-commit hooks

* [skip ci] Bumped minor version

* remove old unused multicollect files

* [skip ci] Bumped minor version

* Enforce usage of isort

Update the configuration for isort.

Enforce usage of isort via a pre-commit hook.

* [skip ci] Bumped minor version

* New Snapshot routine

Co-authored-by: marcus-oscarsson <oscarsso@esrf.fr>

* Logging

* Taking snapshots depending on whats set on data collection

* cleanup of old snapshot routine

Co-authored-by: marcus-oscarsson <oscarsso@esrf.fr>

* fix isort and docstring style

* [skip ci] Bumped minor version

* [WF] - Fix for issue mxcube#689 : decrease length of autprocessing directory name

* [WF] - Issue mxcube#687:  Fix of typo

* [WF] - Changed hardcoded host

* [WF] - Issue mxcube#697 : Refactoring of paramaters passed by workflows used by ICAT LIMS

* [WF] - Issue mxcube#697: Added some documentation of workflow_params

* [WF] - Changes from tests on MASSIF 1 on 2024/09/27 - tests of GPhL workflows

* [skip ci] Bumped minor version

* Aded final fix for bu gin centring-mode 'none'

* [skip ci] Bumped minor version

* set correct return type

* Use type hints

* [skip ci] Bumped minor version

* [Queue] - Simplified mount_sample and related logic

* [Harvester] Added logic that were removed from mxcubeweb

 queue_harvest_sample , queue_harvest_next_sample ,  start_harvester_centring

* [skip ci] Bumped minor version

* set stream size to tuple of ints

* [skip ci] Bumped minor version

* [BlissNState] - added missing argument to _update_state

* [BLISS] - Removed depricated bliss code

* [skip ci] Bumped minor version

* [XRF] - Path to chooch changed

* [ESRF Cryo] Making sure that cryostat is initialized

* [BEAM] - beam_size handling

* [COLLECT] Open detector cover via diffractometer

* [EnergyScan] - Fix call to super classes

* Remove obsolete file - replaced by OxfordCryostream.py

* [ESRF HO] - Starting run number counting at 1

* [MCA] - MCA API change

* [skip ci] Bumped minor version

* Clarify contribution guidelines for units

* [skip ci] Bumped minor version

* Refactoring ISPyBClientMockup for authnentication tests (mxcube#1066)

Refactor ISPyBClientMockup for authentication tests

* [skip ci] Bumped minor version

* poetry lock

* [CenteredPoint] - Using position name instead of id for index

* [skip ci] Bumped minor version

* [SampleView] - Use complete name with the "A"

* [skip ci] Bumped minor version

* Added configurable log output for external programs from GPhL WF

* [skip ci] Bumped minor version

* queue models: handle omitted 'centred_pos' argument

In the utility function to_collect_dict(), take into the account
that 'centred_pos' argument can be omitted.

Don't call centred_pos.get_index() if 'centred_pos' is omitted
or is None.

* [skip ci] Bumped minor version

* Use types from typing for Type Hints

* [skip ci] Bumped minor version

* MAXIV: remove obsolete hardware objects

Remove MAXIV hardware objects that are no longer in use.

* [skip ci] Bumped minor version

* Now persists hidden state when moving motors

* added way to preserve state when recreating shapes

* [skip ci] Bumped minor version

* Remove obsolete ESRF files

* [skip ci] Bumped minor version

* Fix for the broken data collections when no beamtime ID is open. Fallback to the local dir. No online data processing.
Rebasing

* Fix log debug in P11Collect

* Characterisation sequence fix in P11Collect

* Rebasing
Removed extensive debug delays in characterisation P11Collect

* Linting

* [skip ci] Bumped minor version

* Fix deprecated code for redis client

* [skip ci] Bumped minor version

* [ESRF] EdnaWorkflow: send XML-RPC host and port to BES

* [skip ci] Bumped minor version

* Removed obsolete temporary fix for hdf5 file names

* Bug fix - changed save_scene_snapshot call to save_snapshot

* [skip ci] Bumped minor version

* Remove TangoLimaVideoLoopback

* remove imageType

* Remove VaporyVideo

* fix import in VimbaVideo.py

* Remove Camera.py

* Remove unused allocations

* Prevent using deprecated set_is_ready function

* [skip ci] Bumped minor version

* don't report expected failure as an error

* fix typo

* code used over XML-RPC should not handle that usage, the XML-RPC end-points should

* [skip ci] Bumped minor version

* fix GenericWorkflowQueueEntry execute method

* [skip ci] Bumped minor version

* missing package

* use aperture mockup class

* update server config

* beam class refactor

* [ICAT] - Initial AbstractLims and ICAT integration

* Added missing file lims_session.py

* Moved ISPyBAbstractLims to abstract submodule

* [DOC] - Fixed typos

* Fixed log messages

* Fixed typo

* [skip ci] Bumped minor version

* update BL

* adds sso config

* [LIMS] - Added mockup for create_session, still used by Qt mockup code

* added missing mock function store_robot_action

* Added missing mockup for _store_data_colection_group

* [skip ci] Bumped minor version

* adds get_centred_point_from_coord func

* update schema

* pre-commit

* bump version

* udpate CORS

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Marcus Oskarsson <oscarsso@esrf.fr>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrey Gruzinov <andrey.gruzinov@desy.de>
Co-authored-by: rhfogh <rhfogh@globalphasing.com>
Co-authored-by: Marcus Oscarsson <marcus.oscarsson@esrf.fr>
Co-authored-by: Elmir <elmir.jagudin@maxiv.lu.se>
Co-authored-by: Mikel Eguiraun <mikel.eguiraun@maxiv.lu.se>
Co-authored-by: Antonia Beteva <beteva@debian8-devel.esrf.fr>
Co-authored-by: fabcor <fabien.coronis@maxiv.lu.se>
Co-authored-by: Antonia Beteva <beteva@esrf.fr>
Co-authored-by: walesch-yan <yan.walesch@esrf.fr>
Co-authored-by: FLorial Jean Baptiste <jflorial@embl.fr>
Co-authored-by: agruzinov <78498907+agruzinov@users.noreply.github.com>
Co-authored-by: Olof Svensson <svensson@esrf.fr>
Co-authored-by: dominikatrojanowska <154609837+dominikatrojanowska@users.noreply.github.com>
Co-authored-by: pmockoocy <pawel.mocko@s2innovation.com>
Co-authored-by: woutdenolf <woutdenolf@users.sf.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants