JAL - 3690 AlignCalc rebuilt - FutureTask-based manager
[jalview.git] / src / jalview / api / AlignCalcManagerI2.java
1 package jalview.api;
2
3 import java.util.List;
4
5 import jalview.datamodel.AlignmentAnnotation;
6
7 public interface AlignCalcManagerI2
8 {
9   void registerWorker(AlignCalcWorkerI worker);
10   List<AlignCalcWorkerI> getWorkers();
11   List<AlignCalcWorkerI> getWorkersOfClass(Class<? extends AlignCalcWorkerI> cls);
12   void removeWorker(AlignCalcWorkerI worker);
13   void removeWorkerForAnnotation(AlignmentAnnotation annot);
14   void removeWorkersOfClass(Class<? extends AlignCalcWorkerI> cls);
15   void disableWorker(AlignCalcWorkerI worker);
16   void enableWorker(AlignCalcWorkerI worker);
17   boolean isDisabled(AlignCalcWorkerI worker);
18   boolean isWorking(AlignCalcWorkerI worker);
19   boolean isWorkingWithAnnotation(AlignmentAnnotation annot);
20   boolean isWorking();
21   void startWorker(AlignCalcWorkerI worker);
22   void restartWorkers();
23   void cancelWorker(AlignCalcWorkerI worker);
24   void addAlignCalcListener(AlignCalcListener listener);
25   void removeAlignCalcListener(AlignCalcListener listener);
26 }