The key issue of the implementation of labAlive is the direct correspondence between circuit arrangement and software implementation of the wiring. That means, each component of the wiring to be made up by labAlive corresponds with an object within the simulation. According to the connection diagram in figure 1 (upper part), a wiring is programmed by creating instances of the required systems and wires and connecting up. The software wiring components in this example are instances of a sine-wave generator (SineSource), a low-pass filter (FIR), a sink (TerminationSystem) and two wires (AnalogWire).
Figure 1: The horizontal mapping of systems to implementation
classes, and the vertical mapping of the implementation classes
on abstract base classes (inheritance) for the example described
in the text.