# buffer_convertor

### Funkce

Přístroj umožňuje kopírovat hodnoty z dataelementů buffer do dataelementů array a naopak.

### Syntax

       buffer_convertor buffer_convertor_name;
         rem = string;
         timer = timer_name;
         item
           condition = boolean_expression;
           input_element = data_element;
           input_index_from = real;
           input_index_to = real;
           output_element = data_element;
            output_index_from = real;
           output_index_to = real;
        end_item
       end_buffer_convertor;

### Specifické parametry přístroje

- item a end_item
  Mezi těmito klíčovými slovy je definován jeden vstupní buffer nebo pole; jeden výstupní buffer nebo pole a podmínka, za které se má konverze provádět.
- condition
  Obsahuje podmínku, při jejímž splnění budou převedena data ze vstupního do výstupního datového elementu.
- input_element
  Jméno vstupního bufferu nebo pole.
- input_index_from, input_index_to a
- output_index_from, output_index_to
  Dvojice obsahující výrazy, jejichž výsledky jsou první a poslední vzorek vstupního datového elementu, které se mají číst; a první a poslední vzorek výstupního datového elementu, kam se mají data ukládat. Vzorky jsou počítány od 1.
- output
  Jméno výstupního kanálu typu buffer

### Příklad

Příklad nastavení parametrů přístroje:

      buffer_convertor Convertor;
        item
          condition = true;
          input_element = Buffer1;
          input_index_from = 600;
          input_index_to = 1000;
          output_element = Array1;
          output_index_from = 600;
          output_index_to = 1000;
        end_item;
      end_buffer_convertor;

### Nativní procedury přístroje

    Convert( ItemIndex : real )

Metoda převede u zvolené položky vstupní dataelement do výstupního dataelementu bez ohledu na stav podmínky položky definované parametrem condition. Parametr index určuje pořadí převáděné položky. Pořadí je definováno posloupností jednotlivých sekcí item v definici přístroje. Je-li hodnota parametru index = 0, jsou převedeny všechny položky v závislosti na jednotlivých podmínkách.

### 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.