The Connector class is an abstract base class responsible for connecting components with other components and for connecting components with the external world. This class maintains a linked list of components which is representative of the fan-out list of the connector. This class is also used as a basis for signal communication during the simulation process. That is, whenever a component wishes to get or send a signal, it must do so through a connector. This class serves as a foundation upon which two other classes, namely Wire and Port are derived. The Port class, in turn, serves as an abstract base class for the Input and Output classes. These classes are discussed in detail in subsequent sections.