/** * */ 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; } }