qat.experimental.dialect.pulse.ir.interfaces module

class IsAnalyticalWaveformInterface(*, operands=(), result_types=(), properties={}, attributes={}, location=None, successors=(), regions=())

Bases: Operation, ABC

Marks operations that produce waveforms as an analytical definition.

Operations with this interface need to implement a method that returns the waveform type that can be used to evaluate the shape of the waveform.

abstract property amplitude: SSAValue

The amplitude of the waveform produced by this operation.

abstract property waveform_type: type[Waveform]

The type of the waveform shape that this operation produces.

This is used to determine how to evaluate the shape of the waveform.

abstract property width: SSAValue

The width of the waveform produced by this operation.