# iterator

### Funkce:

Jde o časovač, který bude cyklicky obvolávat podřazené přístroje, dokud nebude splněna podmínka definovaná parametrem exit. Celá smyčka bude až do splnění výstupní podmínky prováděna v jediném časovém kroku. Časově náročné smyčky tak mohou výrazně ovlivnit časování celé aplikace.

### Syntax:

      iterator iterator_name;
        rem = string;
        bubble = string;
        timer = timer_name;
        exit = boolean_expression;
      end_iterator;

Spolu s ním se budou periodicky vyvolávat všechny přístroje, které budou mít v parametru timer uvedeno jméno iterátoru:

      timer = iterator_name;

### Poznámka:

  Všechny časovače mohou být ovládány dalšími časovači. Tato vlastnost vzájemného vnořování a závislostí zaručuje nekonečné množství kombinací a variant vytvořených algoritmů, pouze pomocí tří základních logických struktur.

### Příklad:

Příklad deklarace:

      iterator cyklus;
        timer = 5;
        exit =( a > b ) and ( b > c );
      end_iterator;

Příklad použití:

      meter id_2;
        timer = cyklus;
        ...
      end_meter;

### Nativní procedury přístroje

Přístroj nemá žádné nativní procedury.

### Událostní procedury přístroje

Přístroj může volat standardní událostní procedury:

    OnActivate()

Podrobnější informace k těmto procedurám lze nalézt v kapitole Programování a procedury.