Přeskočit na hlavní obsah

Buffer

Buffer uchovává veškerá data a odkazy na externí funkce. Všechny protokoly a funkce tuto paměť používají a odkazují se na její data. Je nutnou součástí konfigurace.

Vzor

...
<Ez_buffer>
<extcode>
<dll name="libtest_ezlib.so">
<!-- udalostni uzivatelske funkce -->
<event>
<fce id="1" name="SampleRealAdd" ft="0"/>
</event>
<!-- periodicke uzivatelske funkce -->
<periodic>
<fce name="periodicFce1" period="500"/>
<fce name="periodicFce2" period="1000"/>
</periodic>
</dll>
</extcode>
<locale>
<!-- interni promenne - uzivatelske udalostni funkce -->
<sys en="1" fce="1">
<run id="8"/>
<sig id="9"/>
</sys>
<sys fce="-1">
<sig id="5"/>
<sig id="6"/>
</sys>
</locale>
<data>
<rec id="1" t="1" fce="3" note="SB conv 9"/>
<rec id="2" t="1" fce="2" note="SB prepocet"/>
<rec en="0" id="3" t="1" group="0x01" note="RVS_QS3_2: Mistne QS3_2"/>
<rec id="4" t="1" note="Porucha komunikace klient"/>
<rec id="5" t="1" note="Sumarni porucha - status"/>
<rec id="6" t="4" ext="10" note="Sumarni porucha - trip"/>
</data>
<groups>
<group id="1" statid="5" trigid="6"/> <!-- sumarni porucha -->
</groups>
</Ez_buffer>
</pg>

<extcode>

Definuje strukturu volání a práci s externími soubory obsahujcí funkce.

<dll>

Je prostor kde se definují funkce.

  • name = název externího souboru s funkcemi.

<event>

Jsou uživatelsky definované událostní funkce.

<fce>

Jsou definice funkcí

  • id = Je číslo kterým se identifikuje daná funkce a musí být unikátní
  • name = Název dané funkce
  • ft = /// dovyplnit ///

<periodic>

Jsou uživatelsky definované periodické funkce.

<fce>

Jsou definice funkcí a jejich vlastností

  • name = Název dané funkce
  • periodic = Je cyklus opakování funkce v ms

<locale>

Je prostor kde se definují interní proměnné s odkazem na externí funkci

<sys>

Definuje interní proměnné funkcí a jejich vlastností

[!NOTE] V XML konfiguraci už jsou před definované některé funkce jako je duplikace hodnot s id 0 které duplikuje hodnotu.

<sys fce="0" runid="2">
<sig id="3"/>
<sig id="4" conv="1"/>
</sys>

<sig>

Tvoří výstup z funkce.

  • id = Jednotné označení položek v celém konfiguračním souboru
  • conv = konverze datového typu objektu. Vyjmenování typů viz. Konverze

<run>

Tvoří vstup do funkce volání parametru z funkce.

  • id = Jednotné označení položek v celém konfiguračním souboru
  • conv = konverze datového typu objektu. Vyjmenování typů viz. Konverze

<data>

Pod elementem data se nacházejí jednotlivé položky v bufferu. Neobsahuje žádný atribut.

<rec>

V elemntu rec se nachází celková definice dat a jejich vlastnosti

  • en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
  • id = Jednotné označení položek v celém konfiguračním souboru. Musí být unikátní.
  • t = Určuje, jak se buffer bude k této položce chovat. Tyto datové typy jsou pevně definované viz. Datové typy INK
  • fce = Odkaz na funkci podle indexu.
  • ext = opoždění v milisekundách zapsáno v celých číslech bez znamínka, defaultně 0
  • group = Parametr odkazující na sumarizační skupinu dle jejího id, odkazující na určitý bit.
  • na = necitlivost plus
  • nb = necitlivost minus
  • d = delta

<groups>

Element groups obsahuje jednotlivé elementy group.

<group>

Určuje sumarizaci určitých položek v data. Obsahuje následující atributy:

  • id = Určuje ID skupiny. Zapisuje se jako unsigned integer.
  • statid = ID skupiny, které odkazuje na položku v bufferu, která určuje vlastnosti skupiny. Zapisuje se jako unsigned integer.
  • trigid = ID pro spuštění houkačky. Zapisuje se jako unsigned integer.
  • counterid = Čítač působících poruch. zapisuje se jako unsigned integer.
  • en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1

Tabulky

Datové typy dat v bufferu:

hodnotazkratkavysvětlivka
1SB1 bitová informace poslaná hned
2TONZpožděné zapnutí
3TOFZpožděné vypnutí
4IMP1 impulz
5IMP+ORImpulz s případným protažením impulzu
6DB2 bitová informace (4 stavy)
7RLFloat 4 byte
8DW4 bytové celé číslo bez znaménka
9SN2 bytové celé číslo se znaménkem

Pro povely platí:

hodnotazkratkavysvětlivka
21SB1 bitový povel
26DB2 bitový povel
27RL4 bitový float
28DW4 bytové celé číslo bez znaménka
29SN2 bytové celé číslo se znaménkem