Expose 'ExperimentInfo::populateInstrumentParameters' to the Python api. #38684
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of work
Although
AddSampleLog
has been updated to include anUpdateInstrumentParameters
flag, this usage is somewhat obscure, and leaves much to be desired in its application.Simply exposing
ExperimentInfo::populateInstrumentParameters
will allow the instrument parameters to be updated when required, and will facilitate directly transferring the logs as properties, which promises to be much less error prone.Summary of work
Add a definition for
populateInstrumentParameters
to the export specification inFramework/PythonInterface/mantid/api/src/Exports/ExperimentInfo.cpp
Purpose of work
The SNAP instrument is a parameterized instrument, and the positions of its detector banks are indicated using PV-log values.
In the SNAPRed application, these PV-log values are used to calculate the instrument state-ID SHA. It's important both that these values be transferable in a straightforward manner, but also that when the logs are transferred, the detector-bank positions are correctly updated.
EWM #9157
To test:
A test script "zip" is attached below, and should run properly in the workbench. This script allows the verification both that
ExperimentInfo::populateInstrumentParameters
is exposed to the Python api, and also that it executes as expected.Comments about testing:
populateInstrumentParameters
itself has unit tests elsewhere, there are no new unit tests added for this current PR.fakeSNAP.xml
will be added to "external_data" in another PR, I didn't want to add it for to this one as well -- that's why it occurs in the script as an inline string.Reviewer
Please comment on the points listed below (full description).
Your comments will be used as part of the gatekeeper process, so please comment clearly on what you have checked during your review. If changes are made to the PR during the review process then your final comment will be the most important for gatekeepers. In this comment you should make it clear why any earlier review is still valid, or confirm that all requested changes have been addressed.
Code Review
Functional Tests
Does everything look good? Mark the review as Approve. A member of
@mantidproject/gatekeepers
will take care of it.Gatekeeper
If you need to request changes to a PR then please add a comment and set the review status to "Request changes". This will stop the PR from showing up in the list for other gatekeepers.