Configuration module#

RedSun configuration classes and enumerators.

class sunflare.config.AcquisitionEngineTypes(value)#

Bases: str, Enum

Supported acquisition engines.

Acquisition engines are objects created within RedSun and operate as Bluesky plan managers for the acquisition process. They are responsible for the orchestration of the different hardware components currently loaded in RedSun.

It is expected that new acquisition engines implement Bluesky’s RunEngine public API.

BLUESKY#

Python-based data acquisition framework for scientific experiments. For more informations, refer to the Bluesky documentation page.

class sunflare.config.FrontendTypes(value)#

Bases: str, Enum

Supported frontend types.

Frontends are the supported GUI frameworks that are used to interact with the user.

QT#

Qt frontend.

class sunflare.config.ControllerInfo#

Controller information model.

class sunflare.config.ModelInfo(*, model_name, vendor='N/A', serial_number='N/A')#

Base model for device information.

All device information models inherit from this class.

Parameters:
  • model_name (str)

  • vendor (str)

  • serial_number (str)

model_name#

Device model name.

Type:

str

vendor#

Detector vendor.

Type:

str, optional

serial_number#

Detector serial number.

Type:

str, optional

class sunflare.config.RedSunSessionInfo(*, engine, frontend=FrontendTypes.QT, controllers=NOTHING, models=NOTHING)#

RedSun session configuration class.

This class is used to store the configuration of a running RedSun application; it provides information about the hardware layout and the selected acquisition engine.

A minimal configuration must include the selected acquisition engine.

Parameters:
engine#

Acquisition engine selected for the current session. Mandatory.

Type:

AcquisitionEngineTypes

frontend#

Frontend selected for the current session. Defaults to FrontendTypes.QT.

Type:

FrontendTypes

controllers#

Controller informations dictionary. Defaults to an empty dictionary.

Type:

dict[str, ControllerInfo]

models#

Model informations dictionary. Defaults to an empty dictionary.

Type:

dict[str, ModelInfo]