View Javadoc
1   package com.github.celldynamics.quimp.plugin;
2   
3   import com.github.celldynamics.quimp.SnakePluginList;
4   import com.github.celldynamics.quimp.ViewUpdater;
5   
6   /**
7    * The interface that add synchronisation between plugin and QuimP.
8    * 
9    * <p>Plugin can refresh main QuimP screen and redraw its content. Every outline is processed by all
10   * active plugins and then redrawn on QuimP main screen. Additionally current plugin configuration
11   * is transferred and stored in QuimP.
12   * 
13   * @author p.baniukiewicz
14   * @see SnakePluginList
15   */
16  public interface IQuimpPluginSynchro {
17  
18    /**
19     * Pass to plugin ViewUpdater object which is accessor to selected methods from QuimP interface.
20     * 
21     * <p>The main role of ViewUpdater is to limit methods that plugin can call to avoid accidental
22     * data destruction.
23     * 
24     * @param b Reference to ViewUpdater that holds selected methods from main QuimP object
25     * @see ViewUpdater to check what methods are exposed to plugin.
26     */
27    void attachContext(final ViewUpdater b);
28  
29  }