ibl_alignment_gui.loaders.alignment_loader
Classes
Abstract base class for loading xyz picks and previous alignments. |
|
Alignment loader using local file system. |
|
Alignment loader using ONE. |
- class ibl_alignment_gui.loaders.alignment_loader.AlignmentLoader(user=None, xyz_picks=None)[source]
Bases:
ABCAbstract base class for loading xyz picks and previous alignments.
Subclasses must implement the abstract load_alignments and load_xyz_picks methods.
- Parameters:
user (str or None) – Username string used for tagging alignments.
xyz_picks (np.ndarray or None) – Pre-loaded xyz_picks. If None, it will be loaded using load_xyz_picks.
- add_extra_alignments(extra_alignments)[source]
Add additional alignment data.
- Parameters:
extra_alignments (dict) – Dictionary of new alignments to add.
- Returns:
Updated alignment keys.
- Return type:
list of str
- get_previous_alignments()[source]
Return all available alignment keys sorted in reverse order.
- Returns:
self.alignments – Alignment keys including ‘original’.
- Return type:
list of str
- get_starting_alignment(idx)[source]
Set the starting alignment based on the selected index.
- Parameters:
idx (int) – Index in alignment_keys.
- Return type:
None
- abstractmethod load_alignments()[source]
Load previously saved alignments.
- Return type:
dict[str,Any] |None
- class ibl_alignment_gui.loaders.alignment_loader.AlignmentLoaderLocal(data_path, shank_idx, n_shanks, user=None, xyz_picks=None)[source]
Bases:
AlignmentLoaderAlignment loader using local file system.
xyz picks and previous alignments are loaded from files on disk.
- For single-shank data, expected filenames:
*xyz_picks.json
prev_alignments.json
- For multi-shank data, expected filenames:
*xyz_picks_shank<N>.json
prev_alignments_shank<N>.json
- Parameters:
data_path (Path) – The path to the local data folder.
shank_idx (int) – Index of the shank (0-based).
n_shanks (int) – Total number of shanks.
user (str or None) – Username for tagging alignments.
xyz_picks (np.ndarray or None) – Preloaded xyz picks. If not provided, it will attempt to load from file.
- class ibl_alignment_gui.loaders.alignment_loader.AlignmentLoaderOne(insertion, one, user=None)[source]
Bases:
AlignmentLoaderAlignment loader using ONE.
xyz picks and previous alignments are loaded from the Alyx database.
- Parameters:
insertion (dict) – Dictionary representing a probe insertion, must contain a ‘json’ key.
one (ONE) – An ONE instance used to query the Alyx database.
user (str or None) – Username for tagging alignments.
- load_alignments()[source]
Load previous alignments from the Alyx database.
- Returns:
Dictionary of alignments, or None if not found.
- Return type:
dict or None