HWMapper

Diese Klasse dient der Abbildung von Peripherie auf Hardware-Adressen und vice versa. Sie enthält im wesentlichen ein Zeiger-Feld von HWMapDpPa-Objekten, welche die Verbindung von DpIdentifier auf Peripherie-Adressen herstellen (einmal nach DPID und einmal nach Peripherie-Adress-Strings sortiert), sowie ein Zeiger-Feld von HWObjects, die die Verbindung von Hardware-Adresse auf Peripherie-Adress-Strings herstellen (einmal nach Peripherie-Adress-Strings und einmal nach Hardware-Adressen sortiert).

Es wird in der Regel erforderlich sein, folgende Funktionen in einer abgeleiteten Klasse zu implementieren:

  • Die Funktion addDpPa(DpIdentifier& dpId, PeriphAddr* confPtr) wird aufgerufen, wenn eine neue Adresse angelegt wird. In dieser Funktion wird ein passendes Transformationsobjekt im Adressconfig gesetzt und ein HWObject aufgesetzt und in die HWObject Listen mit addHWObject() eingefügt.

  • Die Funktion clrDpPa(DpIdentifier& dpId, PeriphAddr* confPtr) wird aufgerufen, wenn eine Adresse gelöscht wird. In dieser Funktion wird das entsprechende HWObject mit clrHWObject aus den Listen gelöscht.

    • int compare_HWHW(...) - Vergleicht zwei HWObjects miteinander, dient zum Einsortieren neuer HWObjects in die Zeiger-Tabelle.

  • int compare_HWComponent(...) - dient dem Einsortieren in die Tabelle auf Grund der Zugehörigkeit zu einer Hardware-Komponente.