navigate Logo

Getting Started

  • Quick Start Guide
  • Software Installation
  • I Want To…

User Guide

  • Supported Hardware
  • Supported File Formats
  • User Interface Walkthrough
  • Setting Up A Microscope
  • Acquiring Data
  • Case Studies

Development

  • Contributing Guidelines
  • Developer Install
  • Software Architecture
  • Feature Container
  • REST-API
  • Plugin Architecture

Troubleshooting & Known Issues

  • Troubleshooting
  • Known Issues

Plugins

  • navigate Plugin Template
  • navigate Confocal Projection
  • navigate at Scale
  • navigate Constant Velocity Acquisition
  • navigate MMCore
  • navigate ilastik Server
  • navigate Photoactivation

Reference

  • Implemented Microscopes
  • Software API
    • navigate.config
    • navigate.controller
    • navigate.controller.configurator
    • navigate.log_files
    • navigate.model
      • navigate.model.analysis
      • navigate.model.concurrency
      • navigate.model.data_sources
      • navigate.model.device_startup_functions
      • navigate.model.devices
      • navigate.model.features
        • navigate.model.features.adaptive_optics
        • navigate.model.features.auto_tile_scan
        • navigate.model.features.autofocus
        • navigate.model.features.common_features
        • navigate.model.features.feature_container
        • navigate.model.features.feature_related_functions
        • navigate.model.features.image_writer
        • navigate.model.features.remove_empty_tiles
        • navigate.model.features.restful_features
        • navigate.model.features.update_setting
        • navigate.model.features.volume_search
      • navigate.model.metadata_sources
      • navigate.model.microscope
      • navigate.model.model
      • navigate.model.plugins_model
      • navigate.model.waveforms
    • navigate.tools
    • navigate.view
navigate
  • Acquiring Data
  • Currently Implemented Features
  • navigate.model.features.common_features
  • navigate.model.features.common_features.ASIZStackAcquisition
  • View page source

navigate.model.features.common_features.ASIZStackAcquisition

class navigate.model.features.common_features.ASIZStackAcquisition(model, get_origin=False, saving_flag=False, saving_dir='z-stack', force_multiposition=False)

Bases: ZStackAcquisition

ASIZStackAcquisition class for controlling z-stack acquisition with ASI Tiger Controller.

This class extends the ZStackAcquisition class to provide functionality for controlling z-stack acquisition specifically with ASI Tiger Controller, including managing z and focus positions, acquiring image data, and handling multi-channel acquisitions.

__init__(model, get_origin=False, saving_flag=False, saving_dir='z-stack', force_multiposition=False)

Initialize the ASIZStackAcquisition class.

Parameters:
  • model (MicroscopeModel) – The microscope model object used for z-stack acquisition control.

  • get_origin (bool, optional) – Flag to determine whether to get the z and focus origin positions. Default is False.

  • saving_flag (bool, optional) – Flag to enable image saving during z-stack acquisition. Default is False.

  • saving_dir (str, optional) – The subdirectory for saving z-stack images. The default is “z-stack”.

  • force_multiposition (bool, optional) – Flag to force multiposition even if not configured. Default is False.

Methods

__init__(model[, get_origin, saving_flag, ...])

Initialize the ASIZStackAcquisition class.

cleanup_data_func()

Perform cleanup actions after data acquisition if image saving is enabled.

end_data_func()

Check if all expected data frames have been received.

get_f_stack_parameters(microscope_state)

Get focus stack parameters from the configuration.

get_microscope_state(microscope_state)

Get the microscope state from the configuration.

get_z_stack_parameters(microscope_state)

Get z-stack parameters from the configuration.

in_data_func(frame_ids)

Handle incoming data frames during data acquisition.

pre_data_func()

Initialize data-related parameters before data acquisition.

pre_signal_func()

Initialize z-stack acquisition parameters before the signal stage.

signal_end()

Handle the end of the signal stage and position cycling.

signal_func()

Control z-stack acquisition, move positions, and manage data threads.

update_channel()

Update the active channel during multichannel acquisition.

Attributes

cleanup_data_func() → None

Perform cleanup actions after data acquisition if image saving is enabled.

This method performs cleanup actions after data acquisition, such as cleaning up

image writing, if image saving is enabled.

end_data_func() → bool

Check if all expected data frames have been received.

This method checks whether all expected data frames have been received during data acquisition.

Returns:

A boolean value indicating whether all expected data frames have been received.

Return type:

bool

get_f_stack_parameters(microscope_state: dict) → None

Get focus stack parameters from the configuration.

Parameters:

microscope_state (dict) – The microscope state configuration dictionary.

get_microscope_state(microscope_state: dict) → None

Get the microscope state from the configuration.

Parameters:

microscope_state (dict) – The microscope state configuration dictionary.

get_z_stack_parameters(microscope_state: dict) → None

Get z-stack parameters from the configuration.

Parameters:

microscope_state (dict) – The microscope state configuration dictionary.

in_data_func(frame_ids: list) → None

Handle incoming data frames during data acquisition.

This method handles incoming data frames during data acquisition, updating the count of received frames and saving images if enabled.

Parameters:

frame_ids (list) – A list of frame IDs received during data acquisition.

pre_data_func() → None

Initialize data-related parameters before data acquisition.

This method initializes data-related parameters before data acquisition, including the count of received and expected frames.

pre_signal_func() → None

Initialize z-stack acquisition parameters before the signal stage.

This method initializes z-stack acquisition parameters, including position, focus, and data thread management, before the signal stage.

signal_end() → bool

Handle the end of the signal stage and position cycling.

This method handles the end of the signal stage, including position cycling and channel updates for multichannel acquisitions.

Returns:

A boolean value indicating whether to end the current node.

Return type:

bool

signal_func()

Control z-stack acquisition, move positions, and manage data threads.

This method controls the z-stack acquisition process, including moving positions and focus, managing data threads, and handling data acquisition during the signal stage.

Returns:

A boolean value indicating whether to continue the z-stack acquisition process.

Return type:

bool

update_channel() → None

Update the active channel during multichannel acquisition.

This method updates the active channel for multichannel acquisitions, allowing cycling through channels.

axes_index

A list of each header position in the multi-position table.

Type:

list

channels

The number of channels in the z-stack.

Type:

int

config_table

A dictionary defining the configuration for the z-stack acquisition

Type:

dict

current_channel_in_list

The current channel being acquired in the z-stack

Type:

int

current_focus_position

The f position of the channel being acquired in the z-stack

Type:

int

current_position

A dictionary defining the current position in the multi-position table.

Type:

dict

current_position_idx

The current index of the position being acquired in the multi-position

Type:

int

current_z_position

The z position of the channel being acquired in the z-stack

Type:

int

defocus

A dictionary defining the defocus values between channels

Type:

dict

f_stack_distance

The focus stack distance for the z-stack.

Type:

float

focus_step_size

The z stack distance for the z-stack.

Type:

float

force_multiposition

Force multiposition

Type:

bool

get_origin

Flag to determine whether to get the z and focus origin positions.

Type:

bool

image_writer

An image writer object for saving z-stack images.

Type:

ImageWriter

model

The microscope model associated with z-stack acquisition.

Type:

MicroscopeModel

need_to_move_new_position

Flag to determine whether to move to a new position

Type:

bool

need_to_move_z_position

Flag to determine whether to move the z position

Type:

bool

number_z_steps

The number of z steps in the z-stack.

Type:

int

position_headers

The list of stage axes (e.g., X, Y, Z, THETA, F)

Type:

list

positions

A dictionary defining the multi-position table for z-stack acquisition.

Type:

dict

pre_position

A dictionary of the previous position in the multi-position table.

Type:

dict

received_frames

The number of frames received by the data thread.

Type:

int

restore_f

The f position of the channel being acquired in the z-stack

Type:

float

restore_z

The z position of the channel being acquired in the z-stack

Type:

float

should_pause_data_thread

Flag to determine whether to pause the data thread.

Type:

bool

stack_cycling_mode

The stack cycling mode for z-stack acquisition.

Type:

str

stage_distance_threshold

The stage distance threshold for pausing the data thread.

Type:

int

start_focus

The start focus position for the z-stack.

Type:

float

start_z_position

The start z position for the z-stack.

Type:

float

timepoints

The number of timepoints in the z-stack acquisition.

Type:

int

total_frames

The number of frames anticipated by the data thread.

Type:

int

z_position_moved_time

The number of times the z position has been moved

Type:

int

z_stack_distance

The z stack distance for the z-stack.

Type:

float

z_step_size

The z step size for the z-stack.

Type:

float

Previous Next

© Copyright 2026, Dean Lab, UT Southwestern Medical Center.