-
Notifications
You must be signed in to change notification settings - Fork 29
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
scanning probe dataclasses and back scan functionality #97
Conversation
this addresses #90 |
Thank you very much for the detailed feedback @timoML ! I am glad that overall everything works for you. I addressed your feedback in the last four commits. I hope the commit messages speak for themselves. Let me know if you find anything else! |
@timoML i tested the current status on a confocal setup with NI card. Everything is working as expected. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tested it on my setup with a nicard; works fine. Thank you for this big contribution.
@Neverhorst @timoML I merged main again into this branch, resolving the conflicts with the new custom saving nametag. It is ready to merge from my side. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks again, looks good.
Description
Interface
ScanSettings
dataclass to hold all settings of a scanning probe measurement (closes [New Feature] scanning probe toolchain: ScanSettings #90)ScannerChannel
,ScannerAxis
,ScanConstraints
andScanData
withdataclass
, replace type checks by type annotationsScanConstraints
holdsScannerAxis
andScannerChannel
instances,ScanData
holdsScanSettings
instance,ScanData
does not need to hold completeScanConstraints
ScanConstraints
scan_settings
attribute toScanningProbeInterface
BackScanCapability
Logic and GUI
Motivation and Context
This refactoring was initially motivated by an extension of the scanning probe measurement toolchain to scans which are not confocal/spacial. It was decided later that this is not a good design choice. However, introducing a
ScanSettings
dataclass allowed to add backward scanning functionality (see #63) and enabled a major refactoring of the entire toolchain towards improved code readability.How Has This Been Tested?
This was tested with the dummy as well as nidaq hardware. There are unit tests for parts of the dataclasses.
Types of changes
Checklist:
/docs/changelog.md
.(syntax, indentation, mutable default values, etc.).