quantify_scheduler.backends.qblox.operation_handling.virtual

Classes for handling operations that are neither pulses nor acquisitions.

Module Contents

Classes

IdleStrategy

Defines the behavior for an operation that does not produce any output.

NcoPhaseShiftStrategy

Strategy for operation that does not produce any output, but rather applies a

class IdleStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]

Bases: quantify_scheduler.backends.qblox.operation_handling.base.IOperationStrategy

Defines the behavior for an operation that does not produce any output.

property operation_info quantify_scheduler.backends.types.qblox.OpInfo[source]

Property for retrieving the operation info.

generate_data(wf_dict: Dict[str, Any])[source]

Returns None as no waveforms are generated in this strategy.

insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]

Add the assembly instructions for the Q1 sequence processor that corresponds to this operation.

Not an abstractmethod, since it is allowed to use the IdleStrategy directly (e.g. for IdlePulses), but can be overridden in subclass to add some assembly instructions despite not outputting any data.

Parameters

qasm_program – The QASMProgram to add the assembly instructions to.

class NcoPhaseShiftStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]

Bases: IdleStrategy

Strategy for operation that does not produce any output, but rather applies a phase shift to the NCO.

insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]

Inserts the instructions needed to shift the nco phase by a specific amount.

Parameters

qasm_program – The QASMProgram to add the assembly instructions to.