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.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
  • Software API
  • navigate.model
  • navigate.model.features
  • navigate.model.features.feature_container
  • navigate.model.features.feature_container.DataContainer
  • View page source

navigate.model.features.feature_container.DataContainer

class navigate.model.features.feature_container.DataContainer(root=None, cleanup_list=[])

Bases: Container

DataContainer class for managing data-based control sequences.

This class is a specialized container for managing control sequences that involve data-based nodes. It extends the functionality of the base Container class and provides methods for running data-based control sequences.

Notes:

  • The DataContainer class is designed for managing control sequences that are data-based, typically used in applications involving data processing and analysis.

  • It extends the functionality of the base Container class and provides methods for running data-based control sequences.

  • The run method is responsible for executing the data-based control sequence nodes in the order defined by the control sequence tree. It handles transitions between nodes and manages node cleanup when necessary.

__init__(root=None, cleanup_list=[])

Initialize the DataContainer object.

Parameters:

rootTreeNode or None, optional

The root node of the control sequence tree. Default is None.

cleanup_listlist of TreeNode, optional

A list of nodes containing ‘cleanup’ functions to be executed when the container is closed. Default is an empty list.

Methods

__init__([root, cleanup_list])

Initialize the DataContainer object.

cleanup()

Execute 'cleanup' functions for specified nodes in the tree.

reset()

Reset the container's state, including the current node and end flag.

run(*args)

Run the data-based control sequence.

Attributes

cleanup()

Execute ‘cleanup’ functions for specified nodes in the tree.

This method executes the ‘cleanup’ functions associated with nodes in the cleanup_list. These functions are typically used to perform resource cleanup or finalization when the container is closed. The ‘cleanup_list’ specifies which nodes should have their ‘cleanup’ functions executed.

reset()

Reset the container’s state, including the current node and end flag.

This method resets the state of the container, including setting the current node to None and clearing the end flag. It prepares the container for running the control sequence from the beginning.

run(*args)

Run the data-based control sequence.

This method runs the data-based control sequence by iterating through its nodes and executing them in order. It manages the execution of nodes, handles transitions between nodes, and performs node cleanup when necessary.

Parameters:

*argsarguments

Optional arguments to pass to the control sequence nodes.

Notes:

  • The run method is responsible for executing the data-based control sequence nodes in the order defined by the control sequence tree.

  • It handles transitions between nodes, waits for responses if necessary, and performs cleanup for nodes marked as not needing a response and having a ‘one-step’ node type.

curr_node

The currently running node in the control sequence.

Type:

TreeNode or None

end_flag

A flag indicating whether the control sequence execution should stop.

Type:

bool

is_closed

A boolean indicating whether the container is closed.

Type:

bool

root

The root node of the control sequence tree.

Type:

TreeNode or None

Previous Next

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