Skip to main content

Regeln für Generatoren

. Regeln zur Gerätegenerierung
  • In Toplevel-Modulen angegebene Geräte werden unter dem Elterngerät, das die generierte Applikation enthält, eingehängt. Es werden keine Toplevel-Geräte erzeugt.

  • Wenn keine Eltern-Device-ID angegeben ist, wird das jüngste, passende Elterngerät als neues Eltern-Objekt verwendet. Wenn ein Kind-Modul ein Gerät erzeugt, wird dieses, wenn möglich, im Gerät des Eltern-Moduls erzeugt. Falls das direkte Eltern-Modul gar kein Gerät hat oder kein Gerät erzeugt, das unter das Kindgerät passt, werden die Geräte des Eltern-Eltern-Moduls herangezogen, usw.. Wenn keine erzeugten Elterngeräte mehr vorhanden sind, wird versucht, in das Toplevel-Gerät des jeweiligen Toplevel-Moduls zu generieren. Wenn mehrere Geräte von einem Eltern-Modul-Objekt angeboten werden, wird das erste Gerät verwendet, unter den das zu erzeugende Gerät passt.

    Sehen Sie dazu auch Untersektion: Device

  • Als Namen für die erzeugten Geräte wird „Device-Id + Modul-Name + Device“ verwendet. Wenn dieser Name bereits von einem Gerät benutzt wird, wird eine aufsteigende Nummer angefügt.

  • Bereits erzeugte Geräte werden bei der erneuten Generierung nicht gelöscht, sondern beibehalten, so dass Einstellungen, die an den Geräten vorgenommen werden, möglichst erhalten bleiben.

  • Zusätzlich, mit Hilfe der Moduldeklaration hinzugefügte oder geänderte Parameter werden bei der Generierung den entsprechenden Geräten bei jedem Generierungslauf zugewiesen.

  • Erzeugte Geräte werden zusätzlich, wie alle vom Composer erzeugten Objekte, im Gerätebaum gekennzeichnet. Wenn versucht wird, solch ein Gerät zu ändern oder zu löschen wird eine Warnung angezeigt. Diese Warnung macht darauf aufmerksam, dass etwaige Änderungen an den Geräteeinstellungen verloren gehen können, wenn beispielsweise nach einer Änderung der Modulstruktur neu generiert wird.

. Zusätzliche Regeln zur Gerätegenerierung
  • Geräte, die automatisch beim Einfügen eines Gerätes zusätzlich mit als Kindgerät angelegt werden, werden unter der Modul-Instanz des eigentlich eingefügten Gerätes eingeordnet. Sie werden so behandelt, als würden sie in der Modul-Deklaration mit auftauchen und sich dort als Kind des eingefügten Gerätes anmelden. Die Kindgeräte werden weder nacherzeugt noch gelöscht, sondern nur im Zusammenhang mit ihren Elterngeräten betrachtet.

    WEnn ein Gerät einen expliziten Connector mitbringt, wird dieser beim Kompatibilitätscheck zu einem anderen Gerät behandelt, als wäre er ein impliziter Connector. Das bedeutet, dass zunächst alle Connectoren (explizit und implizit) zur Verbindung zu Geräten in Betracht gezogen werden und dann bei der Verbindung derjenige Connector verwendet wird, der passt. Ob implizit, unter dem Geräteobjekt, oder explizit, als eigenes Vaterobjekt.