Issie logo Issie

DataViewport Type

Everything that could change what DATA the view needs from the .NET simulation, as ONE value derived by one pure function of the model (WaveSimTop.dataViewportOf). This record's field list IS the enumeration that has to be kept right, in one reviewable place: the fetch decision is an equality - current viewport <> the viewport the last COMPLETED fetch was for => fetch the whole current one - and no cache is ever consulted to decide. See docs/dev/sidecarInvariants.md.

Record fields

Record Field Description

VpEpoch

Full Usage: VpEpoch

Field type: int

the session the values would come from; a rebuild changes this, so nothing fetched from an older session can satisfy the comparison

Field type: int

VpPanelCycle

Full Usage: VpPanelCycle

Field type: int option

the cycle the step panel is showing, when it is on screen. Its signal list is a function of the design, which VpEpoch already names, so it is not repeated here.

Field type: int option

VpProbe

Full Usage: VpProbe

Field type: (WaveIndexT * int) option

the wire the pointer rests on and the cycle its value is wanted at

Field type: (WaveIndexT * int) option

VpRams

Full Usage: VpRams

Field type: (FComponentId * RamKey) list

every selected memory and the key (cycle included) its rows are shown under

Field type: (FComponentId * RamKey) list

VpStimulus

Full Usage: VpStimulus

Field type: int

how many inputs have been poked into the running simulation so far. The stimulus itself is simulator state the model cannot hold, so the model counts the pokes - each poke changes this, changes the viewport, and refetches.

Field type: int

VpWaves

Full Usage: VpWaves

Field type: WaveIndexT list

the RESOLVED waves drawn over it, address waves included, canonically ordered. Resolution state is part of the identity, so slices arriving cause a refetch.

Field type: WaveIndexT list

VpWindow

Full Usage: VpWindow

Field type: Window

the waveform window on screen (a zero SampleCount when no waveform view is up)

Field type: Window

Type something to start searching.