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

Fairmat 2024: specialized base classes on top of NXprocess #1420

Merged
merged 14 commits into from
Jan 8, 2025

Conversation

lukaspie
Copy link
Contributor

@lukaspie lukaspie commented Sep 23, 2024

Adds several new base classes that all extend NXprocess:

  • NXcalibration: for describing calibration of an instrument and/or a data set (e.g., an energy axis) -> moved from contributed to base_classes
  • NXdistortion: post-processing distortion corrections
  • NXregistration: image registration

@lukaspie lukaspie marked this pull request as draft September 23, 2024 16:46
@lukaspie lukaspie marked this pull request as ready for review September 23, 2024 17:28
@sanbrock sanbrock mentioned this pull request Sep 29, 2024
@lukaspie lukaspie linked an issue Sep 29, 2024 that may be closed by this pull request
@phyy-nx
Copy link
Contributor

phyy-nx commented Sep 30, 2024

NXcalibration already reviewed
NXdistortion: make a proper subclass of NXprocess, check for duplicated fields and remove them
NXregistration: make a proper subclass of NXprocess, check for duplicated fields and remove them

Accepted by NIAC vote as part of NIAC2024

@lukaspie
Copy link
Contributor Author

lukaspie commented Oct 1, 2024

Dev notes to keep track:

  • NXdistortion: made a proper subclass of NXprocess, removed duplicated fields
  • NXregistration: made a proper subclass of NXprocess, removed duplicated fields
  • NXprocess: removed REGISTRATION, CALIBRATION, DISTORTION

depends on / blocked by:

ToDo:

@lukaspie lukaspie mentioned this pull request Oct 8, 2024
@lukaspie lukaspie force-pushed the fairmat-2024-nxprocess branch from 9bc0a3a to 2fd6160 Compare December 6, 2024 12:03
@lukaspie lukaspie changed the title Fairmat 2024: add base classes to NXprocess Fairmat 2024: specialized base classes on top of NXprocess Dec 6, 2024
@lukaspie
Copy link
Contributor Author

lukaspie commented Dec 6, 2024

@phyy-nx @sanbrock as NXcalibration is now extending NXprocess, it is not used within NXprocess anymore. Therefore, we could remove it here and bring it in with #1419. In that case, this whole PR comes down to NXdistortion and NXregistration as sub-classes of NXprocess, which has already been voted for by NIAC. So if you agree, I can remove the changes to NXcalibration and then this PR should be ready to be finally reviewed. Note that the failing CI/CD also comes from NXcalibration, so that would be solved.

@phyy-nx
Copy link
Contributor

phyy-nx commented Dec 7, 2024

@phyy-nx @sanbrock as NXcalibration is now extending NXprocess, it is not used within NXprocess anymore. Therefore, we could remove it here and bring it in with #1419. In that case, this whole PR comes down to NXdistortion and NXregistration as sub-classes of NXprocess, which has already been voted for by NIAC. So if you agree, I can remove the changes to NXcalibration and then this PR should be ready to be finally reviewed. Note that the failing CI/CD also comes from NXcalibration, so that would be solved.

Hm, the comment above says

NXcalibration already reviewed

Where was it reviewed? Also, #1419 has not been voted on but this has. Wouldn't keeping NXcalibration in this PR simplify things?

@lukaspie
Copy link
Contributor Author

lukaspie commented Dec 9, 2024

@phyy-nx @sanbrock as NXcalibration is now extending NXprocess, it is not used within NXprocess anymore. Therefore, we could remove it here and bring it in with #1419. In that case, this whole PR comes down to NXdistortion and NXregistration as sub-classes of NXprocess, which has already been voted for by NIAC. So if you agree, I can remove the changes to NXcalibration and then this PR should be ready to be finally reviewed. Note that the failing CI/CD also comes from NXcalibration, so that would be solved.

Hm, the comment above says

NXcalibration already reviewed

Where was it reviewed? Also, #1419 has not been voted on but this has. Wouldn't keeping NXcalibration in this PR simplify things?

I think #1419 was voted on here: #1452 (comment) or am I missing something? For me, it would be okay to bring it in here or in #1419, as you prefer. I just didn't want to have to update it in multiple places.

@lukaspie
Copy link
Contributor Author

lukaspie commented Dec 9, 2024

Update: I fixed the build for NXcalibration. On second though, it might actually make sense to merge NXcalibration with this PR since this is also a subclass for NXprocess. The commits are the same, so it does not really matter. In any case, any merging of NXcalibration is still blocked by #1486.

@phyy-nx
Copy link
Contributor

phyy-nx commented Dec 18, 2024

From Telco: subclass NXregistration from NXprocess, and remove NXcalibration (already part of #1419). Then since this has been voted on, it needs an approval and can be merged.

@lukaspie lukaspie force-pushed the fairmat-2024-nxprocess branch from 98049c3 to 44f2450 Compare December 19, 2024 11:10
@lukaspie
Copy link
Contributor Author

From Telco: subclass NXregistration from NXprocess, and remove NXcalibration (already part of #1419). Then since this has been voted on, it needs an approval and can be merged.

@phyy-nx: NXregistration is now subclassed from NXprocess, and I removed NXcalibration. Should be ready for final review and merge. Thanks!

domna and others added 4 commits January 8, 2025 14:57
# Conflicts:
#	base_classes/NXaperture.nxdl.xml
… version of yaml.

Removing unintensional comments

# Conflicts:
#	base_classes/NXbeam.nxdl.xml
#	base_classes/NXdetector.nxdl.xml
#	base_classes/NXentry.nxdl.xml
#	base_classes/NXinstrument.nxdl.xml
#	base_classes/NXprocess.nxdl.xml
#	base_classes/NXsample.nxdl.xml
#	base_classes/NXsource.nxdl.xml
#	contributed_definitions/NXcollectioncolumn.nxdl.xml
#	contributed_definitions/NXmpes.nxdl.xml
…ersion

# Conflicts:
#	applications/NXarpes.nxdl.xml
#	applications/nyaml/NXarpes.yaml
#	base_classes/NXaperture.nxdl.xml
#	base_classes/NXbeam.nxdl.xml
#	base_classes/NXdata.nxdl.xml
#	base_classes/NXdetector.nxdl.xml
#	base_classes/NXentry.nxdl.xml
#	base_classes/NXenvironment.nxdl.xml
#	base_classes/NXinstrument.nxdl.xml
#	base_classes/NXmonochromator.nxdl.xml
#	base_classes/NXroot.nxdl.xml
#	base_classes/NXsample.nxdl.xml
#	base_classes/NXsample_component.nxdl.xml
#	base_classes/NXsensor.nxdl.xml
#	base_classes/NXsource.nxdl.xml
#	base_classes/NXsubentry.nxdl.xml
#	base_classes/NXtransformations.nxdl.xml
#	base_classes/NXuser.nxdl.xml
#	base_classes/nyaml/NXaperture.yaml
#	base_classes/nyaml/NXbeam.yaml
#	base_classes/nyaml/NXdata.yaml
#	base_classes/nyaml/NXdetector.yaml
#	base_classes/nyaml/NXentry.yaml
#	base_classes/nyaml/NXenvironment.yaml
#	base_classes/nyaml/NXinstrument.yaml
#	base_classes/nyaml/NXmonochromator.yaml
#	base_classes/nyaml/NXprocess.yaml
#	base_classes/nyaml/NXroot.yaml
#	base_classes/nyaml/NXsample.yaml
#	base_classes/nyaml/NXsample_component.yaml
#	base_classes/nyaml/NXsensor.yaml
#	base_classes/nyaml/NXsource.yaml
#	base_classes/nyaml/NXsubentry.yaml
#	base_classes/nyaml/NXtransformations.yaml
#	base_classes/nyaml/NXuser.yaml
@lukaspie lukaspie force-pushed the fairmat-2024-nxprocess branch from 44f2450 to 75fe5bb Compare January 8, 2025 13:59
@phyy-nx
Copy link
Contributor

phyy-nx commented Jan 8, 2025

@lukaspie ok to merge!

@lukaspie lukaspie merged commit 9748a22 into nexusformat:main Jan 8, 2025
2 checks passed
@lukaspie lukaspie deleted the fairmat-2024-nxprocess branch January 8, 2025 23:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

NXprocess
5 participants