Auf dieser Seite...
Wie bei Datenaustausch bereits beschrieben wurde, können zwischen Modulen auf zwei Arten Daten ausgetauscht werden: per Transfer oder über Variablen. Diese beiden Varianten wollen wir nun einmal testen. Starten Sie dazu die Main Control und zwei Module (siehe Die Main Control).
Transfers
Die Transfers stellen eine einfache Datenübertragung da. Um von Modul A den String "Testnachricht" an Modul B zu senden, geben Sie im ersten Modul bei "Module-Functions" im ersten Feld den Namen des zweiten Moduls und im zweiten Feld den String "Testnachricht" ein. Beim Klicken auf "TRANSFER|" wird ein Datenpacket an die MC gesendet. Diese leitet dann den String an das Empfängermodul weiter.
Das Datenpacket für einen Transfer lautet: "TRANSFER|-Empfängermodul-|Testnachricht". Beim Empfängermodul kommt nur der String "Testnachricht" an, momentan sieht das Telegramm keine Möglichkeit vor, mit der das Empfängermodul den Sender feststellen kann. Es ist jedoch sehr selten nötig, dies zu erfahren. Sollte dies bei einer Anwendung doch der Fall sein, so muss der Sender seinen Modulnamen mit als Daten senden.
Broadcasts
Broadcasts sind Transfers, die keinen konkreten Empfänger haben sondern an mehrere Module gesendet werden. Deshalb wird kein Modulname sondern ein Modultyp angegeben, der den Kreis der Empfänger einschränkt. Beispielsweise können auf diese Weise alle Module des Typs "HARDWARE" erreicht werden. Soll wirklich an alle Module gesendet werden, muss als Typ "ALL" angegeben werden.
Ein WideBroadcast hat nur eine besondere Bedeutung im MultiMC-Mode (siehe MultiMC-Mode) und wird deshalb dort beschrieben.
Variablen
Die Verwendung von Variablen ist prinzipbedingt etwas komplizierter, jedoch eigentlich nur geringfügig. Bevor eine Variable verwendet werden kann, muss sie angelegt werden. Geben Sie dazu bei "Database-Functions" einen Variablennamen (z.B. "VAR1") an und klicken Sie auf "ADD|-global-". Der Unterschied dieses Befehls zu "ADD|-local-" ist hauptsächlich beim MultiMC-Mode ( MultiMC-Mode ) von Bedeutung. Im "Variablen"-Tab der MC ist nun die neue Variable zu sehen. Um nun den Wert dieser Variablen zu ändern, verwende man den "SET|"-Button, nachdem man in den Feldern darüber den Namen und den Wert eingegeben hat.
Da es für das Abfragen eines Variablenwertes noch keine direkte Funktion in dem Testmodul gibt, müssen wir das "Send Command"-Feld verwenden und dort "GET|VAR1" eingeben. Die MC sendet nun beispielsweise "RESULT|VAR1|test|3|TESTCLIENT" an das Modul zurück. "test" ist in diesem Falle der Variablenwert, die "3" gibt an, dass es sich um eine globale Variable handelt, und zum Schluss wird der Name des Moduls angegeben, das die Variable erstellt hat.
Beim Erstellen, Schreiben und Lesen war nun immer nur von einem Modul die Rede. Alle diese Aktionen können jedoch natürlich von verschiedenen Modulen kommen. Beim Schreiben gibt es jedoch eine Einschränkung, wenn es sich um eine lokale Variable handelt. In diesem Fall kann nur das Erstellermodul schreiben, alle anderen können nur lesen.