DiamondLightSource / DiamondLightSource/nexgen

Move scan calculations out of nexgen

Open
#99 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2
Forks
9
PR merge metrics
No merged PRs in 30d

Description

As a user of nexgen I would like to provide the scan details myself rather than the current system of the scan being assumed as part of the goniometer structure. I propose that we provide this using `scanspec` as it's an existing library which makes it easy to construct scans.

Nexgen should probably still be responsible for creating the additional omega scan values (when none are provided) as this is a quirk of the nexus structure that omega values are always required so shouldn't be exposed to the user.

## Acceptance Criteria
* `nexgen` can be called with a full scan specification and will write this
* The detail around the scan in the gonio structure (e.g. increment, start and end) becomes optional
* `nexgen` will create the omega scan part if this hasn't already been provided
* There are unit tests covering all the above

## Note
* Currently i24 still relies on nexgen to build the scan, if this is still the case when this ticket is done then create a new one for removing the scan generation code once no longer required by i24

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.