2. 1. 15   Methode

SYNTAX

Der Tcl-Befehl methodCmd erlaubt Operationen mit einem Methoden-Objekt. Er hat die allgemeine Form:

    methodCmd option ?arg arg ...?

option und  args bestimmen das exakte Verhalten des Befehls. Über die allgemeinen Objektbefehle hinaus sind folgende Befehle für Methoden-Objekte definiert:

OBJEKTPARAMETER

 
methodCmd type ?value?
Abfrage oder Modifikation des Ereignistyps der Methode. Das Bedingungs-Skript der Methode wird nur beim angegebenen Ereignistyp getestet:
  • {} -
  • Alle Ereignisse
  • start -
  • Simulationsstart
  • stop -
  • Simulationsende
  • transf -
  • Jobtransfer
  • ready -
  • Station beendet Bearbeitung eines Jobs
  • forward -
  • Ein Job in einer Station wird weitergabebereit
  • turnon -
  • Station wird eingeschaltet
  • turnoff -
  • Station wird ausgeschaltet
  • block -
  • Station wird blockiert
  • unblock -
  • Blockierung der Station wird aufgehoben
  • create -
  • In einer Station wird ein Job wird erzeugt (Quelle)
  • kill -
  • In einer Station wird ein Job vernichtet (Senke)
  • supply -
  • In einer Station ein Job wird bereitgestellt
  • clock -
  • Taktereignis

    Voreinstellung ist {}.
     
    methodCmd condition ?script?

    Abfrage oder Modifikation des Bedingungs-Skriptes der Methode. Script setzt das Bedingungsskript der Methode und muss ein vollständiges Tcl-Skript sein. Ohne den Parameter script gibt der Befehl das Bedingungs-Skript der Methode zurück. Voreinstellung ist {}.
     
    Das Skript condition wird im Namensraum ::methodCmd ausgeführt. Das Objektkommando methodCmd kann dabei durch this, der String methodCmd durch die Variable this referenziert werden.
    Variablen sind Namensraum-Variable, keine globalen Variablen. Auf globale Variablen oder Variablen anderer Methoden kann durch explizite Angabe des Namensraums vor dem Variablennamen zugegriffen werden (Bsp.: globale Variable simcron, in der Methode method1 als ::simcron referenziert; Variable simcron aus method2 wird in method1 als ::method2::simcron referenziert).

    Beispiel für condition:

    method1 condition {
       job1 enable 0
    }