# Manager classes

class pymeasure.display.manager.BaseManager(port=5888, log_level=20, parent=None)

  Bases: `QObject`

  Controls the execution of `Experiment` classes by implementing a queue system in which Experiments are added, removed, executed, or aborted.

  abort()

    Aborts the currently running Experiment, but raises an exception if there is no running experiment

  clear()

    Remove all Experiments

  is_running()

    Returns True if a procedure is currently running

  load(experiment)

    Load a previously executed Experiment

  next()

    Initiates the start of the next experiment in the queue as long as no other experiments are currently running and there is a procedure in the queue.

  queue(experiment)

    Adds an experiment to the queue.

  remove(experiment)

    Removes an Experiment

  resume()

    Resume processing of the queue.

class pymeasure.display.manager.Experiment(results, curve_list=None, browser_item=None, parent=None)

  Bases: `QObject`

  The Experiment class helps group the `Procedure`, `Results`, and their display functionality. Its function is only a convenient container.

  Parameters:

    - results – `Results` object

    - curve_list – `ResultsCurve` list. List of curves associated with an experiment. They could represent different views of the same experiment. Not required for .ManagedConsole displayed experiments.

    - browser_item – `BaseBrowserItem` based object

class pymeasure.display.manager.ExperimentQueue

  Bases: `QObject`

  Represents a queue of Experiments and allows queries to be easily preformed.

  has_next()

    Returns True if another item is on the queue

  next()

    Returns the next experiment on the queue

class pymeasure.display.manager.Manager(widget_list, browser, port=5888, log_level=20, parent=None)

  Bases: `BaseManager`

  Controls the execution of `Experiment` classes by implementing a queue system in which Experiments are added, removed, executed, or aborted. When instantiated, the Manager is linked to a `Browser` and a PyQtGraph PlotItem within the user interface, which are updated in accordance with the execution status of the Experiments.

  load(experiment)

    Load a previously executed Experiment

  remove(experiment)

    Removes an Experiment