Header menu logo issie

GatherData Type

Scaffolding for building a FastSimulation, and alive only while one is built: the flattened design indexed the several ways createInitFastCompPhase and linkFastComponents need it. It is deliberately not kept afterwards - AllComps holds a SimulationComponent per component INSTANCE, so on a large design it is one of the biggest things the simulator ever allocates, and a FastSimulation left holding one made every later edit slower by giving each major GC all of it to trace. What the built simulation still needs is copied out: FCustomOutputCompLookup.

Record fields

Record Field Description

AllComps

Full Usage: AllComps

Field type: Map<(ComponentId * ComponentId list), (SimulationComponent * ComponentId list)>

This indexes the SimulationGraph components from Id and access path. Note that the same simulation component Id can appear with different access paths if a sheet is instantiated more than once. Each entry corresponds to a single FastComponent. Note that Custom components are not included in this list.

Field type: Map<(ComponentId * ComponentId list), (SimulationComponent * ComponentId list)>

CustomInputCompLinks

Full Usage: CustomInputCompLinks

Field type: Map<(FComponentId * InputPortNumber), FComponentId>

Maps Custom Component Id and input port number to corresponding Input Component Id (of an Input component which is not top-level)

Field type: Map<(FComponentId * InputPortNumber), FComponentId>

CustomOutputCompLinks

Full Usage: CustomOutputCompLinks

Field type: Map<FComponentId, (FComponentId * OutputPortNumber)>

Maps (non-top-level) Output component Id to corresponding Custom Component Id & output port number

Field type: Map<FComponentId, (FComponentId * OutputPortNumber)>

Labels

Full Usage: Labels

Field type: Map<ComponentId, string>

Shortcut to find the label of a component; notice that the access path is not needed here because Labels of the graph inside a custom component are identical for different instances of the component

Field type: Map<ComponentId, string>

Instance members

Instance member Description

this.getFullSimName arg1

Full Usage: this.getFullSimName arg1

Parameters:
Returns: string

human readable dot-separated name of component in simulation. This uses the component labels to the root of the simulation and therefore is unique.

arg0 : FComponentId
Returns: string

this.getFullSimPath arg1

Full Usage: this.getFullSimPath arg1

Parameters:
Returns: string list

The same path as getFullSimName, upper-cased and as a list rather than dot-separated. These are component labels, not sheet names: it becomes FastComponent.SheetName, whose name is misleading.

arg0 : FComponentId
Returns: string list

Type something to start searching.