qblox_scheduler.device_under_test.device_element#

The module contains definitions for device elements.

Classes#

DeviceElement

Create a device element for managing parameters.

Functions#

is_identifier_without_underscore(→ str)

Pydantic validator for names that are valid identifiers but without underscore.

Module Contents#

is_identifier_without_underscore(value: str) str[source]#

Pydantic validator for names that are valid identifiers but without underscore.

class DeviceElement(/, name, **data: Any)[source]#

Bases: abc.ABC, qblox_scheduler.structure.model.SchedulerBaseModel

Create a device element for managing parameters.

The DeviceElement is responsible for compiling operations applied to that specific device element from the quantum-circuit to the quantum-device layer.

element_type: str[source]#
name: Annotated[str, AfterValidator(is_identifier_without_underscore)] = None[source]#
classmethod include_submodule_names(data: Any) Any[source]#

Fill in the name attribute of DeviceElement submodules when missing (used for YAML deserialization, they are omitted at serialization).

classmethod dispatch_concrete_model(data: Any, handler: pydantic.ModelWrapValidatorHandler[typing_extensions.Self]) typing_extensions.Self[source]#

When deserializing a dict representation of a concrete DeviceElement, infer the matching class by looking its element_type into the model registry and return a validated instance of the concrete device element.

abstract generate_device_config() qblox_scheduler.backends.graph_compilation.DeviceCompilationConfig[source]#

Generate the device configuration.