7e729f966a96c41d2ce88fe3364a76be1973b404
[jalview.git] / src / jalview / json / binding / biojson / v1 / AlignmentAnnotationPojo.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3  * Copyright (C) $$Year-Rel$$ The Jalview Authors
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3
10  * of the License, or (at your option) any later version.
11  *  
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
19  * The Jalview Authors are detailed in the 'AUTHORS' file.
20  */
21 package jalview.json.binding.biojson.v1;
22
23 import java.util.ArrayList;
24 import java.util.List;
25
26 import com.github.reinert.jjschema.Attributes;
27
28 public class AlignmentAnnotationPojo
29 {
30
31   @Attributes(
32     required = false,
33     description = "Label for the Alignment Annotation")
34   private String label;
35
36   @Attributes(
37     required = false,
38     description = "Description for the Alignment Annotation")
39   private String description;
40
41   @Attributes(required = false)
42   private List<AnnotationPojo> annotations = new ArrayList<AnnotationPojo>();
43
44   @Attributes(
45     required = false,
46     enums = { "0", "1", "2" },
47     description = "Determines the rendered for the annotation<br><ul><li>0 - No graph</li><li>1 - Bar Graph</li><li>2 - Line graph</li></ul>")
48   private int graphType;
49
50   @Attributes(
51     required = false,
52     description = "Reference to the sequence in the alignment<br> if per-sequence annotation")
53   private String sequenceRef;
54
55   @Attributes(
56     required = false,
57     description = "Stores display settings for an annotation")
58   private AnnotationDisplaySettingPojo annotationSettings;
59
60   @Attributes(required = false, description = "Score of the annotation")
61   private double score;
62
63   @Attributes(required = false, description = "Annotation generation source")
64   private String calcId;
65
66   public String getLabel()
67   {
68     return label;
69   }
70
71   public void setLabel(String label)
72   {
73     this.label = label;
74   }
75
76   public String getDescription()
77   {
78     return description;
79   }
80
81   public void setDescription(String annotationId)
82   {
83     this.description = annotationId;
84   }
85
86   public List<AnnotationPojo> getAnnotations()
87   {
88     return annotations;
89   }
90
91   public void setAnnotations(List<AnnotationPojo> annotations)
92   {
93     this.annotations = annotations;
94   }
95
96   public String getSequenceRef()
97   {
98     return sequenceRef;
99   }
100
101   public void setSequenceRef(String sequenceRef)
102   {
103     this.sequenceRef = sequenceRef;
104   }
105
106   public int getGraphType()
107   {
108     return graphType;
109   }
110
111   public void setGraphType(int graphType)
112   {
113     this.graphType = graphType;
114   }
115
116   public AnnotationDisplaySettingPojo getAnnotationSettings()
117   {
118     return annotationSettings;
119   }
120
121   public void setAnnotationSettings(
122           AnnotationDisplaySettingPojo annotationSettings)
123   {
124     this.annotationSettings = annotationSettings;
125   }
126
127   public double getScore()
128   {
129     return score;
130   }
131
132   public void setScore(double score)
133   {
134     this.score = score;
135   }
136
137   public String getCalcId()
138   {
139     return calcId;
140   }
141
142   public void setCalcId(String calcId)
143   {
144     this.calcId = calcId;
145   }
146
147 }