ePad has an interface to interact with plugins. Plugins can be created by the users using image-container architecture.
User needs to create a docker image and needs to publish the image to dockerhub. User needs to define a default input and output folder (paths) to interact with the data which is already in the ePad server. Additional parameters can be set and can be registered to ePad to define the runtime flow of the container (instance of an image). Container processed data, images, aims can be uploaded back to ePad at the end of the container processing cycle .
Summary of a plugin life cycle
- Register/add a plugin
- Associate the plugin with one or more projects
- Define/add parameters for the plugin to pass the values and the data to the container (image instance) from ePad
- Create an instance of the plugin
- start, stop, delete, check the log file at run time, download the results of the plugin
Detailed explanation of a plugin life cycle
open the plugin window and select plugins
Image - 1.
click on the "+" icon to open "add new plugin" window
Image - 2.
fill each required input field which has * next to it
As shown in the image below. We are registering a new plugin in ePad. Name, Id, Image repo and Image tag fields are mandatory. Id will be unique for the system. Image name is the name given when you push your image to Dockerhub
The selected value of the annotation required dropdown list defines how many instance of your plugin will be created depending on the annotation selection in the later steps.
For example if you select one annotation required during the plugin registration and if you select multiple annotation when you create an instance of this plugin in the later steps, ePad will create one instance per selected annotation. But if you select multiple annotation required (see the "annotation required" dorpdown list in the image below) during the plugin registration and if you select multiple annotation when you create an instance of this plugin, ePad will create one instance of the plugin and will provide all the selected annotations to the plugin.
Image - 3.
submit and return to the plugin list ( "manage" tab )
Image - 4.
associate the plugin with a project
A pluigin has to be associated at least with one project.
Image - 5.
Add parameters, share ePad resources(images,annotations) with the plugin
Image - 6.
first register your plugin. follow the steps in the section 1