Marklar
Zalozeni Projektu
- Prerequisities
- Prvni kroky
- Experiment
- Grafika
- Logika Experimentu
Struktura
- marklar-core
- marklar-fx-common
- marklar-driver-modbus
- marklar-pardWeight
- plastometer
- dilatometer
- lbm
- dokuwiki
Metoda init()
byla volana pri vstupu ExperimentStatus
do RUNNING
. Jak uz nazev metody terminate()
napovida, je volana pri opousteni ExperimentStatus
ze stavu RUNNING
. To nastava v ExperimentLogic
celkem na 3 mistech:
postAbortedRun()
, postRun()
a prePause()
.
Narozdil od init()
, ktera inicializovala haldu promennych, terminate()
musi pouze spravne zakoncit mereni, tj. napriklad vypnout teplotni rampu a zapsat startovaci teplotu, aby nove mereni mohlo zacit (promenne a servicy jsou jiz inicializovany, nebot logika zarucuje, ze nenastastane situace, ze by se po otevreni markalru nacetlo mereni, ktere by bylo ve stavu RUNNING
. Mame jistotu, ze init()
byla volana).
private ChangingStatusReturnCode terminate() { try { instrument.setSetPoint(0); } catch (IOException e) { LogService.getInstance().error("IOException while writing setPoint"); e.printStackTrace(); return ChangingStatusReturnCode.ERROR; } catch (SetValueException e) { LogService.getInstance().error("SetValueException while writing setPoint"); e.printStackTrace(); return ChangingStatusReturnCode.ERROR; } catch (Exception e) { LogService.getInstance().error("Unkown Exception while writing setPoint"); e.printStackTrace(); return ChangingStatusReturnCode.ERROR; } return ChangingStatusReturnCode.OK; }