def decompose_analog_waveform(analog_waveform) -> tuple:
    """ Decomposes an NI AnalogWaveform into a tuple of t0, dt, and y values. """
    t0 = analog_waveform.PrecisionTiming.TimeOffset.TotalSeconds
    dt = analog_waveform.PrecisionTiming.SampleInterval.TotalSeconds
    y = list(analog_waveform.GetRawData())
    return t0, dt, y