--- /dev/null
+/**
+ *
+ */
+package jalview.workers;
+
+import jalview.api.AlignCalcManagerI;
+import jalview.api.AlignCalcWorkerI;
+import jalview.api.AlignViewportI;
+import jalview.api.AlignmentViewPanel;
+
+/**
+ * Base class for alignment calculation workers
+ * @author jimp
+ *
+ */
+public abstract class AlignCalcWorker implements AlignCalcWorkerI
+{
+ /**
+ * manager and data source for calculations
+ */
+ protected AlignViewportI alignViewport;
+ protected AlignCalcManagerI calcMan;
+ protected AlignmentViewPanel ap;
+
+ public AlignCalcWorker(AlignViewportI alignViewport,
+ AlignmentViewPanel alignPanel)
+ {
+ this.alignViewport = alignViewport;
+ calcMan=alignViewport.getCalcManager();
+ ap = alignPanel;
+ }
+ protected void abortAndDestroy()
+ {
+ if (calcMan!=null) {
+ calcMan.workerComplete(this);
+ }
+ alignViewport=null;
+ calcMan=null;
+ ap=null;
+
+ }
+
+
+}