ca8496ed6e04d625b09f16c80af98ac803f6e5d5
[jabaws.git] / datamodel / compbio / data / sequence / SMERFSConstraints.java
1 package compbio.data.sequence;\r
2 \r
3 /**\r
4  * Enumeration defining two constraints for SMERFS columns score calculation.\r
5  * MAX_SCORE gives the highest core of all the windows the column belongs to.\r
6  * MID_SCORE gives the window score to the column in the middle.\r
7  * \r
8  * @author Agnieszka Golicz & Peter Troshin\r
9  */\r
10 public enum SMERFSConstraints {\r
11 \r
12         MAX_SCORE, MID_SCORE;\r
13 \r
14         /**\r
15          * Default column scoring schema\r
16          */\r
17         public static final SMERFSConstraints DEFAULT_COLUMN_SCORE = SMERFSConstraints.MID_SCORE;\r
18 \r
19         /**\r
20          * Default window size value for SMERFS algorithm\r
21          */\r
22         public static final int DEFAULT_WINDOW_SIZE = 7;\r
23 \r
24         /**\r
25          * Default gap threshold value for SMERFS algorithm\r
26          */\r
27         public static final double DEFAULT_GAP_THRESHOLD = 0.1;\r
28 \r
29         public static SMERFSConstraints getSMERFSColumnScore(String score) {\r
30 \r
31                 score = score.trim().toLowerCase();\r
32                 if (score.equalsIgnoreCase(SMERFSConstraints.MAX_SCORE.toString())) {\r
33                         return SMERFSConstraints.MAX_SCORE;\r
34                 }\r
35                 if (score.equalsIgnoreCase(SMERFSConstraints.MID_SCORE.toString())) {\r
36                         return SMERFSConstraints.MID_SCORE;\r
37                 }\r
38                 return null;\r
39         }\r
40 }\r