extend API
[jalview.git] / src / jalview / api / AlignViewportI.java
1 /**
2  * 
3  */
4 package jalview.api;
5
6 import java.util.Hashtable;
7
8 import jalview.datamodel.AlignmentAnnotation;
9 import jalview.datamodel.AlignmentI;
10 import jalview.datamodel.ColumnSelection;
11 import jalview.schemes.ColourSchemeI;
12 import jalview.schemes.RNAHelicesColour;
13
14 /**
15  * @author jimp
16  *
17  */
18 public interface AlignViewportI
19 {
20
21   int getCharWidth();
22
23   int getEndRes();
24
25   int getCharHeight();
26
27   boolean hasHiddenColumns();
28
29   boolean isValidCharWidth();
30
31   boolean isShowConsensusHistogram();
32
33   boolean isShowSequenceLogo();
34
35   boolean isNormaliseSequenceLogo();
36
37   ColourSchemeI getGlobalColourScheme();
38
39   AlignmentI getAlignment();
40
41   ColumnSelection getColumnSelection();
42
43   Hashtable[] getSequenceConsensusHash();
44
45   Hashtable[] getRnaStructureConsensusHash();
46
47   boolean getIgnoreGapsConsensus();
48
49   boolean getCentreColumnLabels();
50
51   boolean isCalculationInProgress(AlignmentAnnotation alignmentAnnotation);
52
53   AlignmentAnnotation getAlignmentQualityAnnot();
54
55   AlignmentAnnotation getAlignmentConservationAnnotation();
56   /**
57    * get the container for alignment consensus annotation
58    * @return
59    */
60   AlignmentAnnotation getAlignmentConsensusAnnotation();
61
62   /**
63    * Test to see if viewport is still open and active
64    * @return true indicates that all references to viewport should be dropped 
65    */
66   boolean isClosed();
67   /**
68    * get the associated calculation thread manager for the view
69    * @return
70    */
71   AlignCalcManagerI getCalcManager();
72   
73   /**
74    * get the percentage gaps allowed in a conservation calculation
75    * 
76    */
77   public int getConsPercGaps();
78
79   /**
80    * set the consensus result object for the viewport
81    * @param hconsensus
82    */
83   void setSequenceConsensusHash(Hashtable[] hconsensus);
84
85   /**
86    * 
87    * @return the alignment annotatino row for the structure consensus calculation
88    */
89   AlignmentAnnotation getAlignmentStrucConsensusAnnotation();
90
91   /**
92    * set the Rna structure consensus result object for the viewport
93    * @param hStrucConsensus 
94    */
95   void setRnaStructureConsensusHash(Hashtable[] hStrucConsensus);
96
97   /**
98    * set global colourscheme
99    * @param rhc
100    */
101   void setGlobalColourScheme(ColourSchemeI rhc);
102
103 }