phasor-handler 2.2.2.post1__tar.gz → 2.2.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. {phasor_handler-2.2.2.post1/phasor_handler.egg-info → phasor_handler-2.2.3}/PKG-INFO +2 -2
  2. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/README.md +1 -1
  3. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/app.py +4 -0
  4. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/scripts/meta_reader.py +9 -3
  5. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/components/circle_roi.py +494 -72
  6. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/components/image_view.py +13 -13
  7. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/components/roi_list.py +264 -35
  8. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/components/trace_plot.py +127 -47
  9. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/view.py +132 -9
  10. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3/phasor_handler.egg-info}/PKG-INFO +2 -2
  11. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/pyproject.toml +1 -1
  12. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/CONTRIBUTING.md +0 -0
  13. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/LICENSE.md +0 -0
  14. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/MANIFEST.in +0 -0
  15. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/environment.yml +0 -0
  16. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/__init__.py +0 -0
  17. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/img/icons/chevron-down.svg +0 -0
  18. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/img/icons/chevron-up.svg +0 -0
  19. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/img/logo.ico +0 -0
  20. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/models/dir_manager.py +0 -0
  21. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/scripts/contrast.py +0 -0
  22. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/scripts/convert.py +0 -0
  23. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/scripts/plot.py +0 -0
  24. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/scripts/register.py +0 -0
  25. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/themes/__init__.py +0 -0
  26. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/themes/dark_theme.py +0 -0
  27. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/tools/__init__.py +0 -0
  28. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/tools/check_stylesheet.py +0 -0
  29. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/tools/misc.py +0 -0
  30. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/__init__.py +0 -0
  31. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/components/__init__.py +0 -0
  32. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/components/bnc.py +0 -0
  33. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/analysis/components/meta_info.py +0 -0
  34. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/conversion/view.py +0 -0
  35. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/widgets/registration/view.py +0 -0
  36. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/workers/__init__.py +0 -0
  37. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/workers/analysis_worker.py +0 -0
  38. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/workers/conversion_worker.py +0 -0
  39. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/workers/histogram_worker.py +0 -0
  40. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler/workers/registration_worker.py +0 -0
  41. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler.egg-info/SOURCES.txt +0 -0
  42. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler.egg-info/dependency_links.txt +0 -0
  43. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler.egg-info/entry_points.txt +0 -0
  44. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler.egg-info/requires.txt +0 -0
  45. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/phasor_handler.egg-info/top_level.txt +0 -0
  46. {phasor_handler-2.2.2.post1 → phasor_handler-2.2.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: phasor-handler
3
- Version: 2.2.2.post1
3
+ Version: 2.2.3
4
4
  Summary: A PyQt6 GUI toolbox for processing two-photon phasor imaging data
5
5
  Author-email: Josia Shemuel <joshemuel@users.noreply.github.com>
6
6
  License: MIT License
@@ -58,7 +58,7 @@ Requires-Dist: black>=22.0.0; extra == "dev"
58
58
  Requires-Dist: flake8>=4.0.0; extra == "dev"
59
59
  Dynamic: license-file
60
60
 
61
- # Phasor-Handler v2.0 (Windows)
61
+ # Phasor-Handler (Windows)
62
62
 
63
63
  Phasor Handler is a toolbox for processing raw two-photon phasor imaging data: **convert → register → explore → extract calcium traces**.
64
64
  It provides a PyQt6 GUI for viewing registered or raw stacks (Ch1/Ch2), z-projections (std/max/mean), drawing/storing ROIs, overlaying stimulated ROIs from metadata, and exporting ROI traces.
@@ -1,4 +1,4 @@
1
- # Phasor-Handler v2.0 (Windows)
1
+ # Phasor-Handler (Windows)
2
2
 
3
3
  Phasor Handler is a toolbox for processing raw two-photon phasor imaging data: **convert → register → explore → extract calcium traces**.
4
4
  It provides a PyQt6 GUI for viewing registered or raw stacks (Ch1/Ch2), z-projections (std/max/mean), drawing/storing ROIs, overlaying stimulated ROIs from metadata, and exporting ROI traces.
@@ -1,3 +1,7 @@
1
+ # TODO Update ROI boundary for ellipse so that it does not get redefined.
2
+ # TODO include more metadata for mini2p
3
+ # TODO Add fourth tab for trace analysis
4
+
1
5
  import sys
2
6
  import os
3
7
  import subprocess
@@ -1,3 +1,5 @@
1
+ # TODO read from .txt files of CHA and CHB channels if available
2
+
1
3
  #!/usr/bin/env python3
2
4
  """
3
5
  meta_reader.py
@@ -402,12 +404,16 @@ def process_mini2p_folder(folder_path: str):
402
404
  if os.path.isdir(subdir_path):
403
405
  folders[subdir] = subdir_path
404
406
  tdms_files = [os.path.join(subdir_path, f) for f in os.listdir(subdir_path) if f.endswith('.tdms')]
405
- if tdms_files:
406
- path_df[subdir] = tdms_files
407
+ txt_files = [os.path.join(subdir_path, f) for f in os.listdir(subdir_path) if f.endswith('.txt')]
408
+
409
+ if txt_files:
410
+ path_df[subdir] = (tdms_files, txt_files)
411
+ elif tdms_files:
412
+ path_df[subdir] = (tdms_files, None)
407
413
 
408
414
  # Load TDMS data into nested dict structure
409
415
  tdms_data = {}
410
- for folder_name, tdms_files in path_df.items():
416
+ for folder_name, (tdms_files, txt_files) in path_df.items():
411
417
  if folder_name == "SyncInformation":
412
418
  continue
413
419