Header menu logo issie

WaveSimModel Type

Contains all information required by waveform simulator. One WaveSimModel per sheet.

Record fields

Record Field Description

AllWaves

Full Usage: AllWaves

Field type: Map<WaveIndexT, Wave>

Map of all simulatable waves

Field type: Map<WaveIndexT, Wave>

ClkCycleBoxIsEmpty

Full Usage: ClkCycleBoxIsEmpty

Field type: bool

True if no number in clcock cycle box (special case).

Field type: bool

ComponentSearchString

Full Usage: ComponentSearchString

Field type: string
Field type: string

CursorDisplayCycle

Full Usage: CursorDisplayCycle

Field type: int

Current highlighted clock cycle displayed in the waveform viewer. This is scaled by CycleMultiplier, and therefore not the real clock cycle for sampling zoom > 1X.

Field type: int

CursorExactClkCycle

Full Usage: CursorExactClkCycle

Field type: int

This is the real clock cycle of the cursor which determined the values column contents. If sampling, a single highlighted waveform cycle may represent multiple real clock cycles.

Field type: int

DefaultCursor

Full Usage: DefaultCursor

Field type: CursorType

default value for cursor in waveform Simulator

Field type: CursorType

DraggedIndex

Full Usage: DraggedIndex

Field type: WaveIndexT option

The index of the wave which the user is dragging.

Field type: WaveIndexT option

HoveredLabel

Full Usage: HoveredLabel

Field type: WaveIndexT option

The label which a user is hovering over.

Field type: WaveIndexT option

PortSearchString

Full Usage: PortSearchString

Field type: string
Field type: string

PortSelectComp

Full Usage: PortSelectComp

Field type: ComponentId option

The component whose port selection modal is visible, if any. Set by the schematic's right-click menu, which names a component on the canvas rather than one in the simulation.

Field type: ComponentId option

PrevSelectedWaves

Full Usage: PrevSelectedWaves

Field type: WaveIndexT list option

The value of SelectedWaves when the user started dragging a label. Used to restore SelectedWaves if the user drops a label in an illegal location.

Field type: WaveIndexT list option

Radix

Full Usage: Radix

Field type: NumberBase

Radix in which values are being displayed in the wave simulator.

Field type: NumberBase

RamComps

Full Usage: RamComps

Field type: FComponentId list

List of RAM components on the sheet.

Field type: FComponentId list

RamModalActive

Full Usage: RamModalActive

Field type: bool

If the ram selection modal is visible.

Field type: bool

RamStartLocation

Full Usage: RamStartLocation

Field type: Map<FComponentId, (string * bigint)>

If it exists this is the start location from which RAM locations are displayed. It is transient. The first component of the tuple is the text used to define the location. The second component is the actual location.

Field type: Map<FComponentId, (string * bigint)>

SamplingZoom

Full Usage: SamplingZoom

Field type: int

Used for extreme zoom out. Sample waveforms every this number of cycles. Display sampled data.

Field type: int

ScrollbarBkgRepCycs

Full Usage: ScrollbarBkgRepCycs

Field type: int

Number of clock cycles scrollbar's background represents.

Field type: int

ScrollbarBkgWidth

Full Usage: ScrollbarBkgWidth

Field type: float

Width of scrollbar's gray background, in pixels.

Field type: float

ScrollbarQueueIsEmpty

Full Usage: ScrollbarQueueIsEmpty

Field type: bool
Counter used to coalesce scrollbar mouse actions together.
 If true, queue is clear and can dispatch scrollbar update.
 Otherwise, an update is in progress and mouse event should not be pushed onto the queue.
Field type: bool

ScrollbarTbOffset

Full Usage: ScrollbarTbOffset

Field type: float option
Offset between scrollbar's thumb's position and cursor's position.
 If is Some float, scrollbar is in drag mode; otherwise scrollbar is NOT in drag.
Field type: float option

ScrollbarTbPos

Full Usage: ScrollbarTbPos

Field type: float

Starting position of scrollbar's thumb, in pixels.

Field type: float

ScrollbarTbWidth

Full Usage: ScrollbarTbWidth

Field type: float

Width of scrollbar's thumb, in pixels.

Field type: float

SelectedRams

Full Usage: SelectedRams

Field type: Map<FComponentId, string>

Map of which RAM components have been selected.

Field type: Map<FComponentId, string>

SelectedSheetInstance

Full Usage: SelectedSheetInstance

Field type: Map<string list, string>

Which instance of each sheet the wave selector is showing, keyed the same way. The value is the instance's SimSheetName, which is what Wave.SheetId holds. An entry that does not name an instance inside the instance chosen at the parent node is ignored and the alphabetically first used - so choosing a different instance high in the hierarchy needs no cascade of updates to the entries below it.

Field type: Map<string list, string>

SelectedWaves

Full Usage: SelectedWaves

Field type: WaveIndexT list

List of which waves are currently visible in the waveform viewer.

Field type: WaveIndexT list

SheetSearchString

Full Usage: SheetSearchString

Field type: string

The three filter boxes above the wave selector, each holding what the user typed in it, upper-cased. A sheet box may end in '*', which means "and everything inside it".

Field type: string

ShowGroupDetail

Full Usage: ShowGroupDetail

Field type: Set<ComponentGroup * string list>

What is shown in wave sim group detail elements

Field type: Set<ComponentGroup * string list>

ShowOnlySelected

Full Usage: ShowOnlySelected

Field type: bool

if true, show only the selected waves in the waveform selector

Field type: bool

ShowSheetDetail

Full Usage: ShowSheetDetail

Field type: Set<string list>

Which nodes of the design hierarchy the wave selector has open, each named by its path of design-time sheet names from the top sheet down. An open node shows its signals, and - for a sheet that more than one route reaches, whose contents are otherwise suppressed - shows the sheets inside it. At most one node per sheet name is ever in here: opening one closes the others, so both panes of the selector agree on which occurrence of a sheet is on show.

Field type: Set<string list>

ShownCycles

Full Usage: ShownCycles

Field type: int

Total number of visible clock cycles. This is scaled by cycleMultiplier, and therefore not the real clock cycle for sampling zoom > 1X.

Field type: int

StartCycle

Full Usage: StartCycle

Field type: int

Left-most visible clock cycle. this is scaled by CycleMultiplier, and therefore not the real clock cycle for sampling zoom > 1X.

Field type: int

State

Full Usage: State

Field type: WaveSimState

Current state of WaveSimModel.

Field type: WaveSimState

WSConfig

Full Usage: WSConfig

Field type: WSConfig

Configuration for the waveform simulator.//

Field type: WSConfig

WSConfigDialog

Full Usage: WSConfigDialog

Field type: WSConfig option

temp copy of configuration used by dialog

Field type: WSConfig option

WaveModalActive

Full Usage: WaveModalActive

Field type: bool

TODO: Should this be refactored into an ActiveModal type option? If the wave selection modal is visible.

Field type: bool

WaveformColumnWidth

Full Usage: WaveformColumnWidth

Field type: float

Width of the waveform column.

Field type: float

Type something to start searching.