hvl_ccb.dev.cube.advanced

Inheritance diagram of hvl_ccb.dev.cube.advanced

The very special “AdvancedCube” with its two single implementations “SynthCube” and “FPCSCube”.

class ActivationStatus(value=<no_arg>, names=None, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: BoolEnum

Boolean activation status of an advanced cube output bit

ACTIVATED = True
DEACTIVATED = False
class AdvancedCube(com, dev_config=None)[source]

Bases: BaseCube

The AdvancedCube is the template for its two special implementations

property active_modules: Iterator[_Module]

Iterator for all active modules

static config_cls()[source]

Return the default configdataclass class.

Returns:

a reference to the default configdataclass class

property number_of_modules: int

Queries the number of installed modules (active plus inactive)

property operate_discharge_switches: list[SwitchOperation]

Property to query all discharge switches of the installed/active modules

Returns:

list[SwitchOperation] of the individual discharge switches

start() None[source]

Start the connection to the AdvancedCube and set up the modules

class AdvancedCubeConfiguration(namespace_index: int = 3, polling_delay_sec: int | float = 5.0, polling_interval_sec: int | float = 1.0, timeout_status_change: int | float = 20, timeout_interval: int | float = 0.1, noise_level_measurement_channel_1: int | float = 100, noise_level_measurement_channel_2: int | float = 100, noise_level_measurement_channel_3: int | float = 100, noise_level_measurement_channel_4: int | float = 100)[source]

Bases: BaseCubeConfiguration

Adaption of base configuration to accept longer time to wait for a discharge

force_value(fieldname, value)

Forces a value to a dataclass field despite the class being frozen.

NOTE: you can define post_force_value method with same signature as this method to do extra processing after value has been forced on fieldname.

Parameters:
  • fieldname – name of the field

  • value – value to assign

classmethod keys() Sequence[str]

Returns a list of all configdataclass fields key-names.

Returns:

a list of strings containing all keys.

classmethod optional_defaults() dict[str, object]

Returns a list of all configdataclass fields, that have a default value assigned and may be optionally specified on instantiation.

Returns:

a list of strings containing all optional keys.

classmethod required_keys() Sequence[str]

Returns a list of all configdataclass fields, that have no default value assigned and need to be specified on instantiation.

Returns:

a list of strings containing all required keys.

timeout_status_change: int | float = 20
class FPCSCube(com, dev_config=None)[source]

Bases: AdvancedCube

The FPCSCube is the special Cube for the FPCS

door_fpcs_status

Get the status of a safety fence door. See constants.DoorStatus for possible returned door statuses.

start() None[source]

Start the connection to the AdvancedCube and set up the modules

class PressurizationStatus(value=<no_arg>, names=None, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: BoolEnum

Boolean status of an advanced cube pressure sensor

DEPRESSURIZED = False
PRESSURIZED = True
class SynthCube(com, dev_config=None)[source]

Bases: AdvancedCube

The SynthCube is the special Cube for the Synthetic Circuit

property active_hcc_loops: Iterator[_Module]

Iterator for all active high-current modules

start() None[source]

Start the connection to the AdvancedCube and set up the modules