JAL-1807
[jalview.git] / site / j2s / jalview / workers / ComplementConsensusThread.js
1 Clazz.declarePackage ("jalview.workers");
2 Clazz.load (["jalview.workers.ConsensusThread"], "jalview.workers.ComplementConsensusThread", ["jalview.analysis.AAFrequency"], function () {
3 c$ = Clazz.declareType (jalview.workers, "ComplementConsensusThread", jalview.workers.ConsensusThread);
4 Clazz.overrideMethod (c$, "getConsensusAnnotation", 
5 function () {
6 return this.alignViewport.getComplementConsensusAnnotation ();
7 });
8 Clazz.overrideMethod (c$, "getViewportConsensus", 
9 function () {
10 return this.alignViewport.getComplementConsensusHash ();
11 });
12 Clazz.overrideMethod (c$, "computeConsensus", 
13 function (alignment) {
14 var hconsensus =  new Array (alignment.getWidth ());
15 var aseqs = this.getSequences ();
16 for (var i = 0; i < 3; i++) {
17 try {
18 jalview.analysis.AAFrequency.calculateCdna (alignment, hconsensus);
19 break;
20 } catch (e) {
21 if (Clazz.exceptionOf (e, java.util.ConcurrentModificationException)) {
22 } else {
23 throw e;
24 }
25 }
26 }
27 this.alignViewport.setComplementConsensusHash (hconsensus);
28 }, "jalview.datamodel.AlignmentI");
29 Clazz.overrideMethod (c$, "deriveConsensus", 
30 function (consensusAnnotation, consensusData) {
31 jalview.analysis.AAFrequency.completeCdnaConsensus (consensusAnnotation, consensusData, this.alignViewport.isShowSequenceLogo (), this.getSequences ().length);
32 }, "jalview.datamodel.AlignmentAnnotation,~A");
33 });