• Nebyly nalezeny žádné výsledky

4.13.1 Defaultnı´ slozˇky pro ukla´da´nı´

Pokud uzˇivatel nebude nijak meˇnit nastavenı´ cest pro ukla´da´nı´ souboru˚, budou tyto defaultneˇ ulozˇeny do slozˇek, ktere´ se nacha´zı´ ve slozˇceApplicationData. V nı´ se vyskytujı´

celkem cˇtyrˇi podslozˇky podle typu, ktere´ soubory se zde ukla´dajı´:

Executed– vy´stupnı´ XML soubory.

GeneratedXML– vstupnı´ soubory vytvorˇene´ pomocı´ genera´toru.

PNG– exportovane´ sı´t’ove´ struktury ve forma´tu PNG.

XAML– exportovane´ sı´t’ove´ struktury ve forma´tu XAML.

Da´le se ve slozˇce nacha´zı´ soubor s nastavenı´m config.data take´ soubor slouzˇı´cı´ pro ukla´da´nı´ seznamu jizˇ drˇı´ve pouzˇity´ch u´loh.

4.13.2 Seznam drˇı´ve pouzˇity´ch u´ loh

Soubor ma´ na´zevdefinitions.xmla nacha´zı´ se v neˇm cesty ke vstupnı´m souboru˚m jizˇ drˇı´ve spusˇteˇny´ch experimentu˚. Tento seznam je pouzˇı´va´n aplikacı´ pro zobrazenı´ informacı´ o drˇı´ve prˇidany´ch experimentech a jeho hodnoty jsou zobrazeny prˇi prˇida´va´nı´ dalsˇı´ho experimentu. Dı´ky tomuto je mozˇno jednodusˇe nacˇı´st drˇı´ve pouzˇite´ vstupnı´ soubory.

4.13.3 Prˇijı´ma´nı´ vstupnı´ch zpra´v

V ra´mci pra´ce je neˇkolikra´t zmı´neˇno, zˇe experiment mu˚zˇe prˇijı´mat vstupnı´ zpra´vy. Tato mozˇnost byla jizˇ specifikova´na v pu˚vodnı´ verzi aplikace a podle toho byl upraven doku-mentacˇnı´ soubor obsahujı´cı´ sekci Sockets. Samotna´ implementace ale nebyla provedena.

Nenacha´zı´ se ani v rozsˇı´rˇene´ verzi MRCV Tool. Po konzultaci bylo zjisˇteˇno, zˇe dosud nebyla potrˇeba te´to funkce vyuzˇı´t, a proto nenı´ potrˇeba ji nynı´ implementovat. V prˇı´padeˇ potrˇeby bude implementace provedena v ra´mci dalsˇı´ho rozsˇirˇova´nı´ aplikace. Upraven byl jen genera´tor, ktery´ je jizˇ uzpu˚soben vytvorˇit prˇı´slusˇnou sekci vy´stupnı´ho souboru.

5 Popis dokumentacˇnı´ho XML

Aby mohl uzˇivatel spousˇteˇt sve´ vy´pocˇetnı´ u´lohy pomocı´ aplikace MRCV Tool a mohl tak plneˇ vyuzˇı´t vsˇech mozˇnostı´ tohoto na´stroje, musı´ mı´t k dispozici protokol ke komuni-kaci s aplikacı´. Tento protokol je ve forma´tu XML a musı´ by´t ve spra´vne´m a nemeˇnne´m forma´tu, jinak nebude dosazˇeno korektnı´ch vy´sledku˚ a spra´vne´ funkcˇnosti aplikace. Pro-tokol se skla´da´ z neˇkolika cˇa´stı´ s pevneˇ dany´m porˇadı´m, ktere´ slouzˇı´ k popisu uzˇivatelem definovane´ho experimentu urcˇene´ho pro spusˇteˇnı´ pomocı´ MRCV Tool, a take´ toho, co ma´

by´t generova´no do vy´stupnı´ho souboru.

Tato kapitola obsahuje dveˇ hlavnı´ cˇa´sti:

• definicˇnı´ soubor,

• vy´stupnı´ zpra´va.

5.1 Definicˇnı´ soubor

Jedna´ se o XML dokument popisujı´cı´ samostatnou vy´pocˇetnı´ u´lohu uzˇivatele. Hlavnı´m cı´lem te´to cˇa´sti je popsat vstupnı´ a vy´stupnı´ parametry dane´ u´lohy a take´ konkre´tnı´

cˇinnost. Pokud tento soubor prˇilozˇen nebude, musı´ by´t vy´pocˇetnı´ u´loha sama schopna soubor vygenerovat za pomoci prˇepı´nacˇe- -infona standartnı´ vy´stup.

5.1.1 Za´hlavı´ souboru

Za´hlavı´ definuje vsˇechny obecne´ atributy vy´pocˇetnı´ u´lohy - informace o autorovi u´lohy, popis u´lohy a take´ prˇesny´ prˇı´kaz spousˇteˇjı´cı´ u´lohu.

<?xml version=”1.0” encoding=”UTF−8”?>

5.1.2 Definice vstupnı´ch parametru˚

V dalsˇı´ cˇa´sti se nacha´zı´ definice vstupnı´ch parametru˚ z prˇı´kazove´ rˇa´dkycmdline. Zde jsou vstupnı´ parametry oznacˇeny jakoparama jejich porˇadı´ musı´ by´t identicke´ s porˇadı´m na prˇı´kazove´ rˇa´dce. Parametry mohou by´t cela´ cˇi desetinna´ cˇı´sla, vy´cˇtove´ typy, rˇeteˇzce cˇi sou-bory. Prˇi pouzˇitı´ vy´cˇtove´ho typu je nutno uve´st vsˇechny jeho hodnoty pomocı´ elementu case. Kazˇdy´ parametr musı´ mı´t povinneˇ svu˚j na´zev a konkre´tnı´ datovy´ typ. Existujı´ zde i volitelne´ mozˇnosti nastavenı´, a to mozˇnost pouzˇı´t prˇepı´nacˇeswitch. Pokud je pouzˇit, tak je prˇed hodnotu parametru vlozˇen tento prˇepı´nacˇ ve forma´tu– prepinac. Pokud je definova´n parametr s prˇepı´nacˇem, nenı´ nutne´ uva´deˇt typ tohoto parametru, jelikozˇ je povazˇova´n

za logicky´ datovy´ typ a jeho hodnota je da´na uzˇ tı´m, zˇe se vyskytuje na prˇı´kazove´ rˇa´dce.

Dalsˇı´ volitelnou mozˇnostı´ je vyuzˇitı´ zada´nı´ vy´chozı´ hodnoty parametru pomocı´ atributu default, ktery´ nelze pouzˇı´t prˇi zvolenı´ datove´ho typufile, void a string. V prˇı´padeˇ uzˇitı´

vy´cˇtove´ho typuenumje defaultnı´ hodnota da´na indexem. Poslednı´ volitelnou mozˇnostı´

je vyuzˇitı´ popisu parametru pomocı´ elementudescription. Pokud se ve vy´pocˇetnı´ u´loze nacha´zı´ mozˇnost volby spusˇteˇnı´ urcˇite´ho u´kolu, tak lze vyuzˇı´t typuvoid, ktery´ slouzˇı´ k indikaci toho, ma´-li se dany´ u´kol prˇi spusˇteˇnı´ u´lohy prova´deˇt cˇi nikoliv.

<input>

<param type=”enum”default=”index – zero−based”>

<name>parameter name</name>

Pokud je vy´pocˇetnı´ u´loha uzpu˚sobena pro prˇijı´ma´nı´ zpra´v beˇhem sve´ho vykona´va´nı´, tak se da´le vyskytuje v definicˇnı´m souboru element socketss cˇı´slem sve´ho portu. Tento element da´le musı´ obsahovat minima´lneˇ jeden element s na´zvemmessage, ve ktere´m mu˚zˇe by´t obsazˇeno neˇkolik parametru˚ obdobny´m zpu˚sobem, jako tomu bylo u parametru˚ pro prˇı´kazovou rˇa´dku s teˇmi rozdı´ly, zˇe se zde nevyskytuje typfile, ale typstringa take´ zde nejsou volitelne´ mozˇnostiswitchadefault.

<sockets port=”port number”>

</input>

Vy´pis 10: Sockets

5.1.4 Definice vy´stupnı´ch parametru˚

V poslednı´ cˇa´sti definicˇnı´ho souboru se nacha´zı´ definice vy´stupnı´ch souboru˚. Zpracova´-vana´ vy´pocˇetnı´ u´loha generuje vsˇechny vy´stupnı´ parametry do standardnı´ho vy´stupu.

Kazˇda´ u´loha by meˇla by´t schopna generovat minima´lneˇ obycˇejny´ text. Pokrocˇilejsˇı´ vari-antou vy´stupu je zde XML dokument obsahujı´cı´ vsˇechny informace o stavech spusˇteˇne´

vy´pocˇetnı´ u´lohy. Konkre´tnı´ stavova´ informace je v definicˇnı´m souboru oznacˇena ele-mentem watch, obsahujı´cı´ podobne´ atributy jako jizˇ popsany´ elementparamurcˇeny´ pro vstupnı´ parametry. Noveˇ prˇidanou mozˇnostı´ je zde vyuzˇitı´ datove´ho typunetwork.

<output format=”xml”>

Zpracova´vana´ vy´pocˇetnı´ u´loha by meˇla generovat vy´stupnı´ zpra´vy na standardnı´ vy´stup a to v konkre´tnı´ strukturˇe. Pokud majı´ by´t tyto zpra´vy korektneˇ generova´ny a zpracova´ny aplikacı´, musı´ dodrzˇovat forma´t dany´ aplikacı´. Zpra´va musı´ zacˇı´nat za´hlavı´m, po ktere´m na´sleduje jeden z elementu˚lognebo watch. Elementlogslouzˇı´ k indikaci jednoduche´ho hla´sˇenı´ o pra´veˇ probı´hane´m vy´pocˇtu s urcˇity´m prˇı´znakem a mu˚zˇe se jednat o chybu nebo varova´nı´. Elementwatchje zase k hla´sˇenı´ hodnoty dane´ stavove´ promeˇnne´, ktera´ jizˇ musı´

by´t definova´na v definicˇnı´m souboru v jeho poslednı´ cˇa´stioutput. Pro korektnı´ identifikaci dane´ promeˇnne´ je zde pouzˇit atributname.

<message type=”log/watch”>

<log type=”out/warn/err”>log content</log>

<watch name=”watch name” type=”double/int/string”>watch value</watch>

Vy´pis 12: Vy´stupnı´ zpra´vy

5.2.1 Network

Elementwatchzde poskytuje mozˇnost pouzˇitı´ typunetwork, ktery´ mu˚zˇe by´t pouzˇit v tom prˇı´padeˇ, zˇe nastane potrˇeba sledovat sı´t’ove´ struktury. Pokud je tedy zvolen tento typ,