ngscopeclient saves a rolling buffer of previous waveforms in memory, allowing you to go back in time and see previous state of the system being debugged. This buffer is included in saved sessions, allowing a full snapshot of system behavior to be loaded for future analysis. History is always captured up to the configured depth, regardless of whether the history view window is displayed or not.
Clicking on a timestamp in the history view (Fig. 10.1) pauses acquisition and loads the historical waveform data for analysis.
Hovering the mouse over a row in the history view (Fig. 10.2) displays a tooltip with the full date and time of the acquisition, as well as some information about which instruments and channels had data in the capture (if some channels were enabled or disabled during the lab session, the set of active channels may have changed throughout history).
The history depth defaults to 10 waveforms, but can be set arbitrarily within the limits of available RAM. All history must fit in system RAM in the current software version; spilling to disk is planned for the future (scopehal-apps:311). Older waveforms beyond the history limit are deleted automatically as new waveforms are acquired. Any single waveform in history may also be deleted by right clicking on the line and selecting “delete" from the menu.
Interesting waveforms may be “pinned" in the history by checking the box in the “pin" column of the history view. Pinned waveforms are retained in the history buffer even when new waveforms arrive; only unpinned waveforms are eligible for automatic deletion to make space for incoming data.
If a waveform contains markers (9.5.2), it is automatically pinned and cannot be unpinned unless the marker (or entire waveform) is manually deleted. This prevents accidental loss of an important waveform: if the event was important enough to mark and name, it is probably worth keeping around.
Arbitrary text names may be assigned to a waveform by clicking the corresponding cell in the “label" column. As with waveforms containing markers, waveforms with a label are automatically pinned since assigning a label implies the waveform is important.