Skip to content

Internal tips for core developers of RobotEvo

qPCR4vir edited this page Jun 21, 2019 · 2 revisions

Add a new protocol

To create a new protocol class, it may help to first understand the intended flow of the program

Program flow

Run time of Protocol from creation to finish.

  • Select the text (str) name of the protocol class (Protocol.name or Executable.name): manually or by using RobotEvo\EvoScriPy\GUI.App

  • Use protocols.available or App.GUI_protocol (which will be called for you by GUI.App.protocol_selected() which also creates a new universal frame GUI_protocol) to select the corresponding protocol class

  • Change the default values as need or present it for review to the user by creating and launching a corresponding GUI_init_parameters (selected from dictionary GUI4parameters) created inside the passed GUI_protocol. NOTE: GUI4Protocols.new_parameters(prot_name, GUI) will do all this for you.

  • Finally create an object of the selected protocol class passing to it the obtained Protocol.Parameter. Done also by: GUI_protocol.run_selected()

  • Now protocol.Run(). This will beging the protocol, usually creating the Robot and Worktable, adding Labwares and initial Reagents. Then it can be stopped to run a CheckList() which can show many reagent parameters to be reviewed by the user. After that it continues to run until finishes.

  • Depending of the EvoModes added by the protocol, files with the EvoScripts and comments will be created normally in the "current" directory.

  • Browsing of the resulting labware's and reagent' states will be added.

Run time of Pipeline from creation to finish.

  • Simmilar to Protocol the parameters to be initialized are the ordered protocols to be run with a run name. A GUI could add and Add button to select from available Executable.names

  • Runing a pipeline will mean to initialize and then run in order each protocol. In a GUI an initialize/run button could be added next to each protocol's name.