qblox_scheduler.backends.qblox.operation_handling.q1asm_injection_strategy#

Classes for handling operations that are neither pulses nor acquisitions.

Attributes#

Classes#

Q1ASMInjectionStrategy

Strategy for compiling an "inline Q1ASM" instruction block.

Module Contents#

_COMPLEX_PATH_REGEX[source]#
class Q1ASMInjectionStrategy(operation_info: qblox_scheduler.operations.hardware_operations.inline_q1asm.Q1ASMOpInfo)[source]#

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

Strategy for compiling an “inline Q1ASM” instruction block.

_op_info[source]#
property generates_path_Q_output: bool[source]#

If True, this strategy compiles to instructions that generate output on Q. If False, the instructions either generate no output, or output only on path I.

property operation_info: qblox_scheduler.backends.types.qblox.OpInfo[source]#

Property for retrieving the operation info.

generate_data(wf_dict: dict[str, Any]) None[source]#

Generates the waveform data and adds them to the wf_dict (if not already present). This is either the awg data, or the acquisition weights.

Parameters:

wf_dict – The dictionary to add the waveform to. N.B. the dictionary is modified in function.

insert_qasm(qasm_program: qblox_scheduler.backends.qblox.qasm_program.QASMProgram) None[source]#

Add the inline Q1ASM program for the Q1 sequence processor.

Parameters:

qasm_program – The QASMProgram to add the assembly instructions to.