Commit graph

833 commits

Author SHA1 Message Date
Julian Stirling
8f78369aaf fixup! Add ANN20X rules to ruff 2025-08-27 18:56:19 +01:00
Julian Stirling
2ce49088e7 Add return typehints to magic methods 2025-08-27 18:56:09 +01:00
Julian Stirling
4c46330959 Add ANN20X rules to ruff 2025-08-27 18:56:08 +01:00
Julian Stirling
d673196671 Add ANN002, and ANN003 rules 2025-08-27 18:54:16 +01:00
Julian Stirling
24233412af Start adding ANN ruff rules 2025-08-27 18:54:15 +01:00
Julian Stirling
b46f429c1f Apply suggestions from code review of branch unify-jpeg-capture
Co-authored-by: Richard Bowman <richard.bowman@cantab.net>
2025-08-27 17:30:51 +01:00
Julian Stirling
5bb742881f Fix typehints and docs for opencv camera 2025-08-27 17:30:51 +01:00
Julian Stirling
b124355fed Fix capture array for raw stream 2025-08-27 17:14:49 +01:00
Julian Stirling
7cd6b11411 Further unification of camera array functionality 2025-08-27 17:14:49 +01:00
Julian Stirling
5484b51a1e Unify JPEG capture, metadata, and saving; reducing duplication 2025-08-27 17:14:49 +01:00
Julian Stirling
4450fda945 Merge branch 'simulation_wrap' into 'v3'
Make simulation image wrap to prevent errors when moving out of range.

Closes #513

See merge request openflexure/openflexure-microscope-server!380
2025-08-27 16:13:24 +00:00
Julian Stirling
5515d55e6d Merge branch 'error-types' into 'v3'
Tweak a few error types.

Closes #320

See merge request openflexure/openflexure-microscope-server!376
2025-08-27 13:47:26 +00:00
Julian Stirling
c31fffad5b Make simulation image wrap to prevent errors when moving out of range. 2025-08-26 16:03:56 +01:00
Julian Stirling
9257c4489e Apply suggestions from code review of branch prevent-broken-frames-ending-scans
Co-authored-by: Beth Probert <beth_probert@outlook.com>
2025-08-21 18:05:46 +01:00
Julian Stirling
dade26cde1 Tweak a few error types. 2025-08-21 16:11:30 +01:00
Julian Stirling
6fa4e4dc64 Add a grab_as_array camera method that grabs from the stream but catches broken jpegs and retries 2025-08-21 13:35:21 +01:00
Julian Stirling
0a9b6be9bd Raise error if tuning algorithm cannot be returned, unless explicityly asked not to 2025-08-21 12:44:57 +01:00
Julian Stirling
fdae0b9226 Add get_tuning_algo method to StreamingPiCamera2 2025-08-20 14:53:53 +01:00
Julian Stirling
ab0bece70b Deepcopy default tuning file so it isn't affected by calibration. 2025-08-20 14:51:19 +01:00
Joe Knapper
c2980dc988 Merge branch 'typehint-autofocus' into 'v3'
Typehints and better variable names for autofocus

Closes #271

See merge request openflexure/openflexure-microscope-server!367
2025-08-15 10:30:36 +00:00
Joe Knapper
f383365cf7 Apply suggestions from code review of branch typehint-autofocus
Co-authored-by: Julian Stirling <julian@julianstirling.co.uk>
2025-08-15 10:30:29 +00:00
Joe Knapper
bd115e0023 Change all CameraDeps to CameraClients 2025-08-15 10:16:36 +00:00
Joe Knapper
504b81fef6 Typehints and better variable names for autofocus 2025-08-14 14:51:03 +01:00
Julian Stirling
af93db7de8 Merge branch 'let-preview-stitch-cancel' into 'v3'
Allow preview to cancel!

See merge request openflexure/openflexure-microscope-server!359
2025-08-13 15:18:13 +00:00
Julian Stirling
05644456e0 Allow preview to cancel! 2025-08-12 16:41:55 +01:00
Julian Stirling
6142a267db Add flake8 bugbear checks 2025-08-12 13:09:43 +01:00
Julian Stirling
cd311f08bf Update stiching to differentiate bwtween stitchers that use a thread and those that block 2025-08-06 17:47:33 +01:00
Julian Stirling
5f092835ac Apply suggestions from code review of branch yet-another-smart-scan-refactor 2025-08-06 17:27:26 +01:00
Julian Stirling
2e6ba73345 Apply suggestions from code review of branch yet-another-smart-scan-refactor
Co-authored-by: Joe Knapper <joe.knapper@glasgow.ac.uk>
2025-08-06 17:27:26 +01:00
Julian Stirling
f9fcdf628b Squash final todos for SmartScan refactor 2025-08-06 17:27:26 +01:00
Julian Stirling
7d83aadf8d Squash some TODOs 2025-08-06 17:27:26 +01:00
Julian Stirling
4e9b07c78f Consolidate information into ScanData, remove ad-hoc differences for specific error in _run_scan 2025-08-06 17:27:26 +01:00
Julian Stirling
82691a6b78 Tweak error reporting in _run_scan and add a lot more testing for _run_scan 2025-08-06 17:27:26 +01:00
Julian Stirling
d7a7ac4c7d More complete testing of code that runs stitching subprocess. 2025-08-06 17:27:26 +01:00
Julian Stirling
573fc20dec Add new tests new scan directory function and for scan data serialisation 2025-08-06 17:27:26 +01:00
Julian Stirling
6ceb1a9845 Pull stitching out of SmartScanThing 2025-08-06 17:27:26 +01:00
Julian Stirling
f449bcdd78 Turn scan_data into a BaseModel with validation for custom formatting 2025-08-06 17:27:26 +01:00
Julian Stirling
73beb2b09d Merge branch 'fix-movements' into 'v3'
Fix movements axes

Closes #498

See merge request openflexure/openflexure-microscope-server!338
2025-08-06 15:50:08 +00:00
Julian Stirling
0921a73a81 Merge branch 'simulation-scanning' into 'v3'
Scanning in simulation

Closes #395

See merge request openflexure/openflexure-microscope-server!344
2025-08-06 13:11:14 +00:00
Julian Stirling
b672c3c2a7 Clarify docstring for Simulation start_streaming 2025-08-06 13:24:25 +01:00
Julian Stirling
9be9097246 Make scan directory manager thread safe 2025-08-05 23:13:11 +01:00
Joe Knapper
c7dd269c01 Apply suggestions from code review of branch fix-movements
Co-authored-by: Julian Stirling <julian@julianstirling.co.uk>
2025-08-05 13:09:59 +00:00
Julian Stirling
f3c8add398 Make axis inversion robust agains UI sending positions as strings 2025-08-05 08:30:54 +01:00
Julian Stirling
4eca6c3f54 Fix docstring formatting 2025-08-05 08:30:54 +01:00
Julian Stirling
dacf219ea1 Change from axis direction set by ints to set by bools. Add a lot more tests. 2025-08-05 08:30:54 +01:00
Julian Stirling
58e3b5dcbd Start adding stage test and apply fixes to base class 2025-08-05 08:30:54 +01:00
Julian Stirling
7e5a455b75 Complete refactor so that child stages only work in hardware reference frame and BaseStage handles conversion 2025-08-05 08:30:54 +01:00
Julian Stirling
b373931c1a Start to refactor into having an internal and external coordinates for stages to handle inversion 2025-08-05 08:30:54 +01:00
jaknapper
ee9362ce48 Invert x by default 2025-08-05 08:30:54 +01:00
jaknapper
35fbef67e4 axis direction server setting and action to invert each axis 2025-08-05 08:30:54 +01:00