+/**\r
+ * Calculates conservation values for a given set of sequences\r
+ *\r
+ * @author $author$\r
+ * @version $Revision$\r
+ */\r
+public class Conservation\r
+{\r
+ Vector sequences;\r
+ int start;\r
+ int end;\r
+ Vector seqNums; // vector of int vectors where first is sequence checksum\r
+ int maxLength = 0; // used by quality calcs\r
+ boolean seqNumsChanged = false; // updated after any change via calcSeqNum;\r
+ Vector total = new Vector();\r
+\r
+ /** Stores calculated quality values */\r
+ public Vector quality;\r
+\r
+ /** Stores maximum and minimum values of quality values */\r
+ public Double[] qualityRange = new Double[2];\r
+ String consString = "";\r
+ Sequence consSequence;\r
+ Hashtable propHash;\r
+ int threshold;\r
+ String name = "";\r
+ int[][] cons2;\r
+\r
+ /**\r
+ * Creates a new Conservation object.\r
+ *\r
+ * @param name Name of conservation\r
+ * @param propHash DOCUMENT ME!\r
+ * @param threshold to count the residues in residueHash(). commonly used value is 3\r
+ * @param sequences sequences to be used in calculation\r
+ * @param start start residue position\r
+ * @param end end residue position\r
+ */\r
+ public Conservation(String name, Hashtable propHash, int threshold,\r
+ Vector sequences, int start, int end)\r
+ {\r
+ this.name = name;\r
+ this.propHash = propHash;\r
+ this.threshold = threshold;\r
+ this.sequences = sequences;\r
+ this.start = start;\r
+ this.end = end;\r
+ seqNums = new Vector(sequences.size());\r
+ calcSeqNums();\r
+ }\r