04.11.2014 Views

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

84 Štúdie vybraných tém programových a informaných systémov<br />

niami (architektonický vzor Volanie a návrat) alebo ako nezávislé procesy spojené dátovodmi<br />

na úrovni operaného systému.<br />

3.3.3 Tok riadenia<br />

Z hadiska toku riadenia rozlišujeme dva druhy filtrov: aktívne a pasívne filtre (Buschmann,<br />

1996). Aktívne filtre implementujú vlastný tok riadenia: preberajú údaje zo vstupu,<br />

spracúvajú ich a posielajú na výstup. Naproti tomu pasívne filtre nemajú vlastný tok<br />

riadenia, t.j. akajú, kým od nich nebude žiada údaje výstupný dátovod resp. dátový<br />

spotrebi alebo naopak, kým im údaje na spracovanie nepošle vstupný dátovod resp. zdroj<br />

údajov. V prvom prípade hovoríme o pasívnom filtri typu „ahaj“ (angl. pull), v druhom<br />

o pasívnom filtri typu „tla“ (angl. push). Analogicky môžeme uvažova o aktívnom<br />

a pasívnom zdroji údajov a dátovom spotrebii.<br />

Dátovod spájajúci dva aktívne prvky musí realizova synchronizáciu medzi nimi, teda<br />

musí rieši napr. prípady, kedy prvý prvok pošle údaje, ale druhý si ich ešte nemá záujem<br />

prevzia. Dátovod spájajúci aktívny prvok s pasívnym, prípadne dva kompatibilné<br />

pasívne prvky môže by realizovaný jednoduchým volaním procedúry alebo metódy,<br />

typicky s názvom read, write, resp. analogickým.<br />

Nasleduje niekoko sekvenných diagramov znázorujúcich jednotlivé situácie, prevzatých<br />

z (Buschmann, 1996). V prvom diagrame (obrázok 3-5) sú zobrazené dva pasívne<br />

filtre a pasívny dátový spotrebi, všetky sú typu „tla“. Aktívny je zdroj údajov, ktorý<br />

posiela údaje prvému z filtrov volaním procedúry write. Prvý filter údaje spracuje (naznaené<br />

volaním procedúry f1) a pošle druhému filtru volaním jeho procedúry write.<br />

Analogicky i tento filter údaje spracuje (procedúra f2) a pošle dátovému spotrebiu (procedúra<br />

write). Toto všetko prebieha v rámci vlákna riadenia umiestneného primárne<br />

v zdroji údajov.<br />

zdroj údajov<br />

(aktívny)<br />

filter 1<br />

(pas., „tla“)<br />

filter 2<br />

(pas., „tla“)<br />

dátový spotrebi<br />

(pas., „tla“)<br />

write(data)<br />

f1(data)<br />

write(data’)<br />

f2(data’)<br />

write(data’’)<br />

Obrázok 3-5. Aktívny zdroj údajov, pasívne filtre a dátový spotrebi, prevzaté z (Buschmann, 1996).<br />

V nasledujúcom diagrame (obrázok 3-6) je aktívny filter 2, priom zdroj údajov a filter 1 sú<br />

pasívne, typu „ahaj“ a dátový spotrebi je pasívny, typu „tla“.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!