updated schema to store and recover belowAlignment and calcId for JAL-1109 and JAL...
[jalview.git] / src / jalview / schemabinding / version2 / Annotation.java
1 /*
2  * This class was automatically generated with 
3  * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
4  * Schema.
5  * $Id$
6  */
7
8 package jalview.schemabinding.version2;
9
10   //---------------------------------/
11  //- Imported classes and packages -/
12 //---------------------------------/
13
14 import org.exolab.castor.xml.Marshaller;
15 import org.exolab.castor.xml.Unmarshaller;
16
17 /**
18  * Class Annotation.
19  * 
20  * @version $Revision$ $Date$
21  */
22 public class Annotation implements java.io.Serializable {
23
24
25       //--------------------------/
26      //- Class/Member Variables -/
27     //--------------------------/
28
29     /**
30      * Field _graph.
31      */
32     private boolean _graph;
33
34     /**
35      * keeps track of state for field: _graph
36      */
37     private boolean _has_graph;
38
39     /**
40      * Field _graphType.
41      */
42     private int _graphType;
43
44     /**
45      * keeps track of state for field: _graphType
46      */
47     private boolean _has_graphType;
48
49     /**
50      * Field _sequenceRef.
51      */
52     private java.lang.String _sequenceRef;
53
54     /**
55      * Field _groupRef.
56      */
57     private java.lang.String _groupRef;
58
59     /**
60      * Field _graphColour.
61      */
62     private int _graphColour;
63
64     /**
65      * keeps track of state for field: _graphColour
66      */
67     private boolean _has_graphColour;
68
69     /**
70      * Field _graphGroup.
71      */
72     private int _graphGroup;
73
74     /**
75      * keeps track of state for field: _graphGroup
76      */
77     private boolean _has_graphGroup;
78
79     /**
80      * height in pixels for the graph if this is a graph-type
81      * annotation.
82      */
83     private int _graphHeight;
84
85     /**
86      * keeps track of state for field: _graphHeight
87      */
88     private boolean _has_graphHeight;
89
90     /**
91      * Field _id.
92      */
93     private java.lang.String _id;
94
95     /**
96      * Field _scoreOnly.
97      */
98     private boolean _scoreOnly = false;
99
100     /**
101      * keeps track of state for field: _scoreOnly
102      */
103     private boolean _has_scoreOnly;
104
105     /**
106      * Field _score.
107      */
108     private double _score;
109
110     /**
111      * keeps track of state for field: _score
112      */
113     private boolean _has_score;
114
115     /**
116      * Field _visible.
117      */
118     private boolean _visible;
119
120     /**
121      * keeps track of state for field: _visible
122      */
123     private boolean _has_visible;
124
125     /**
126      * Field _centreColLabels.
127      */
128     private boolean _centreColLabels;
129
130     /**
131      * keeps track of state for field: _centreColLabels
132      */
133     private boolean _has_centreColLabels;
134
135     /**
136      * Field _scaleColLabels.
137      */
138     private boolean _scaleColLabels;
139
140     /**
141      * keeps track of state for field: _scaleColLabels
142      */
143     private boolean _has_scaleColLabels;
144
145     /**
146      * Field _showAllColLabels.
147      */
148     private boolean _showAllColLabels;
149
150     /**
151      * keeps track of state for field: _showAllColLabels
152      */
153     private boolean _has_showAllColLabels;
154
155     /**
156      * is an autocalculated annotation row
157      */
158     private boolean _autoCalculated = false;
159
160     /**
161      * keeps track of state for field: _autoCalculated
162      */
163     private boolean _has_autoCalculated;
164
165     /**
166      * is to be shown below the alignment - introduced in Jalview
167      * 2.8 for visualizing T-COFFEE alignment scores
168      */
169     private boolean _belowAlignment = true;
170
171     /**
172      * keeps track of state for field: _belowAlignment
173      */
174     private boolean _has_belowAlignment;
175
176     /**
177      * Optional string identifier used to group sets of annotation
178      * produced by a particular calculation. Values are opaque
179      * strings but have semantic meaning to Jalview's renderer,
180      * data importer and calculation system.
181      */
182     private java.lang.String _calcId;
183
184     /**
185      * Field _annotationElementList.
186      */
187     private java.util.Vector _annotationElementList;
188
189     /**
190      * Field _label.
191      */
192     private java.lang.String _label;
193
194     /**
195      * Field _description.
196      */
197     private java.lang.String _description;
198
199     /**
200      * Field _thresholdLine.
201      */
202     private jalview.schemabinding.version2.ThresholdLine _thresholdLine;
203
204
205       //----------------/
206      //- Constructors -/
207     //----------------/
208
209     public Annotation() {
210         super();
211         this._annotationElementList = new java.util.Vector();
212     }
213
214
215       //-----------/
216      //- Methods -/
217     //-----------/
218
219     /**
220      * 
221      * 
222      * @param vAnnotationElement
223      * @throws java.lang.IndexOutOfBoundsException if the index
224      * given is outside the bounds of the collection
225      */
226     public void addAnnotationElement(
227             final jalview.schemabinding.version2.AnnotationElement vAnnotationElement)
228     throws java.lang.IndexOutOfBoundsException {
229         this._annotationElementList.addElement(vAnnotationElement);
230     }
231
232     /**
233      * 
234      * 
235      * @param index
236      * @param vAnnotationElement
237      * @throws java.lang.IndexOutOfBoundsException if the index
238      * given is outside the bounds of the collection
239      */
240     public void addAnnotationElement(
241             final int index,
242             final jalview.schemabinding.version2.AnnotationElement vAnnotationElement)
243     throws java.lang.IndexOutOfBoundsException {
244         this._annotationElementList.add(index, vAnnotationElement);
245     }
246
247     /**
248      */
249     public void deleteAutoCalculated(
250     ) {
251         this._has_autoCalculated= false;
252     }
253
254     /**
255      */
256     public void deleteBelowAlignment(
257     ) {
258         this._has_belowAlignment= false;
259     }
260
261     /**
262      */
263     public void deleteCentreColLabels(
264     ) {
265         this._has_centreColLabels= false;
266     }
267
268     /**
269      */
270     public void deleteGraph(
271     ) {
272         this._has_graph= false;
273     }
274
275     /**
276      */
277     public void deleteGraphColour(
278     ) {
279         this._has_graphColour= false;
280     }
281
282     /**
283      */
284     public void deleteGraphGroup(
285     ) {
286         this._has_graphGroup= false;
287     }
288
289     /**
290      */
291     public void deleteGraphHeight(
292     ) {
293         this._has_graphHeight= false;
294     }
295
296     /**
297      */
298     public void deleteGraphType(
299     ) {
300         this._has_graphType= false;
301     }
302
303     /**
304      */
305     public void deleteScaleColLabels(
306     ) {
307         this._has_scaleColLabels= false;
308     }
309
310     /**
311      */
312     public void deleteScore(
313     ) {
314         this._has_score= false;
315     }
316
317     /**
318      */
319     public void deleteScoreOnly(
320     ) {
321         this._has_scoreOnly= false;
322     }
323
324     /**
325      */
326     public void deleteShowAllColLabels(
327     ) {
328         this._has_showAllColLabels= false;
329     }
330
331     /**
332      */
333     public void deleteVisible(
334     ) {
335         this._has_visible= false;
336     }
337
338     /**
339      * Method enumerateAnnotationElement.
340      * 
341      * @return an Enumeration over all
342      * jalview.schemabinding.version2.AnnotationElement elements
343      */
344     public java.util.Enumeration enumerateAnnotationElement(
345     ) {
346         return this._annotationElementList.elements();
347     }
348
349     /**
350      * Method getAnnotationElement.
351      * 
352      * @param index
353      * @throws java.lang.IndexOutOfBoundsException if the index
354      * given is outside the bounds of the collection
355      * @return the value of the
356      * jalview.schemabinding.version2.AnnotationElement at the
357      * given index
358      */
359     public jalview.schemabinding.version2.AnnotationElement getAnnotationElement(
360             final int index)
361     throws java.lang.IndexOutOfBoundsException {
362         // check bounds for index
363         if (index < 0 || index >= this._annotationElementList.size()) {
364             throw new IndexOutOfBoundsException("getAnnotationElement: Index value '" + index + "' not in range [0.." + (this._annotationElementList.size() - 1) + "]");
365         }
366         
367         return (jalview.schemabinding.version2.AnnotationElement) _annotationElementList.get(index);
368     }
369
370     /**
371      * Method getAnnotationElement.Returns the contents of the
372      * collection in an Array.  <p>Note:  Just in case the
373      * collection contents are changing in another thread, we pass
374      * a 0-length Array of the correct type into the API call. 
375      * This way we <i>know</i> that the Array returned is of
376      * exactly the correct length.
377      * 
378      * @return this collection as an Array
379      */
380     public jalview.schemabinding.version2.AnnotationElement[] getAnnotationElement(
381     ) {
382         jalview.schemabinding.version2.AnnotationElement[] array = new jalview.schemabinding.version2.AnnotationElement[0];
383         return (jalview.schemabinding.version2.AnnotationElement[]) this._annotationElementList.toArray(array);
384     }
385
386     /**
387      * Method getAnnotationElementCount.
388      * 
389      * @return the size of this collection
390      */
391     public int getAnnotationElementCount(
392     ) {
393         return this._annotationElementList.size();
394     }
395
396     /**
397      * Returns the value of field 'autoCalculated'. The field
398      * 'autoCalculated' has the following description: is an
399      * autocalculated annotation row
400      * 
401      * @return the value of field 'AutoCalculated'.
402      */
403     public boolean getAutoCalculated(
404     ) {
405         return this._autoCalculated;
406     }
407
408     /**
409      * Returns the value of field 'belowAlignment'. The field
410      * 'belowAlignment' has the following description: is to be
411      * shown below the alignment - introduced in Jalview 2.8 for
412      * visualizing T-COFFEE alignment scores
413      * 
414      * @return the value of field 'BelowAlignment'.
415      */
416     public boolean getBelowAlignment(
417     ) {
418         return this._belowAlignment;
419     }
420
421     /**
422      * Returns the value of field 'calcId'. The field 'calcId' has
423      * the following description: Optional string identifier used
424      * to group sets of annotation produced by a particular
425      * calculation. Values are opaque strings but have semantic
426      * meaning to Jalview's renderer, data importer and calculation
427      * system.
428      * 
429      * @return the value of field 'CalcId'.
430      */
431     public java.lang.String getCalcId(
432     ) {
433         return this._calcId;
434     }
435
436     /**
437      * Returns the value of field 'centreColLabels'.
438      * 
439      * @return the value of field 'CentreColLabels'.
440      */
441     public boolean getCentreColLabels(
442     ) {
443         return this._centreColLabels;
444     }
445
446     /**
447      * Returns the value of field 'description'.
448      * 
449      * @return the value of field 'Description'.
450      */
451     public java.lang.String getDescription(
452     ) {
453         return this._description;
454     }
455
456     /**
457      * Returns the value of field 'graph'.
458      * 
459      * @return the value of field 'Graph'.
460      */
461     public boolean getGraph(
462     ) {
463         return this._graph;
464     }
465
466     /**
467      * Returns the value of field 'graphColour'.
468      * 
469      * @return the value of field 'GraphColour'.
470      */
471     public int getGraphColour(
472     ) {
473         return this._graphColour;
474     }
475
476     /**
477      * Returns the value of field 'graphGroup'.
478      * 
479      * @return the value of field 'GraphGroup'.
480      */
481     public int getGraphGroup(
482     ) {
483         return this._graphGroup;
484     }
485
486     /**
487      * Returns the value of field 'graphHeight'. The field
488      * 'graphHeight' has the following description: height in
489      * pixels for the graph if this is a graph-type annotation.
490      * 
491      * @return the value of field 'GraphHeight'.
492      */
493     public int getGraphHeight(
494     ) {
495         return this._graphHeight;
496     }
497
498     /**
499      * Returns the value of field 'graphType'.
500      * 
501      * @return the value of field 'GraphType'.
502      */
503     public int getGraphType(
504     ) {
505         return this._graphType;
506     }
507
508     /**
509      * Returns the value of field 'groupRef'.
510      * 
511      * @return the value of field 'GroupRef'.
512      */
513     public java.lang.String getGroupRef(
514     ) {
515         return this._groupRef;
516     }
517
518     /**
519      * Returns the value of field 'id'.
520      * 
521      * @return the value of field 'Id'.
522      */
523     public java.lang.String getId(
524     ) {
525         return this._id;
526     }
527
528     /**
529      * Returns the value of field 'label'.
530      * 
531      * @return the value of field 'Label'.
532      */
533     public java.lang.String getLabel(
534     ) {
535         return this._label;
536     }
537
538     /**
539      * Returns the value of field 'scaleColLabels'.
540      * 
541      * @return the value of field 'ScaleColLabels'.
542      */
543     public boolean getScaleColLabels(
544     ) {
545         return this._scaleColLabels;
546     }
547
548     /**
549      * Returns the value of field 'score'.
550      * 
551      * @return the value of field 'Score'.
552      */
553     public double getScore(
554     ) {
555         return this._score;
556     }
557
558     /**
559      * Returns the value of field 'scoreOnly'.
560      * 
561      * @return the value of field 'ScoreOnly'.
562      */
563     public boolean getScoreOnly(
564     ) {
565         return this._scoreOnly;
566     }
567
568     /**
569      * Returns the value of field 'sequenceRef'.
570      * 
571      * @return the value of field 'SequenceRef'.
572      */
573     public java.lang.String getSequenceRef(
574     ) {
575         return this._sequenceRef;
576     }
577
578     /**
579      * Returns the value of field 'showAllColLabels'.
580      * 
581      * @return the value of field 'ShowAllColLabels'.
582      */
583     public boolean getShowAllColLabels(
584     ) {
585         return this._showAllColLabels;
586     }
587
588     /**
589      * Returns the value of field 'thresholdLine'.
590      * 
591      * @return the value of field 'ThresholdLine'.
592      */
593     public jalview.schemabinding.version2.ThresholdLine getThresholdLine(
594     ) {
595         return this._thresholdLine;
596     }
597
598     /**
599      * Returns the value of field 'visible'.
600      * 
601      * @return the value of field 'Visible'.
602      */
603     public boolean getVisible(
604     ) {
605         return this._visible;
606     }
607
608     /**
609      * Method hasAutoCalculated.
610      * 
611      * @return true if at least one AutoCalculated has been added
612      */
613     public boolean hasAutoCalculated(
614     ) {
615         return this._has_autoCalculated;
616     }
617
618     /**
619      * Method hasBelowAlignment.
620      * 
621      * @return true if at least one BelowAlignment has been added
622      */
623     public boolean hasBelowAlignment(
624     ) {
625         return this._has_belowAlignment;
626     }
627
628     /**
629      * Method hasCentreColLabels.
630      * 
631      * @return true if at least one CentreColLabels has been added
632      */
633     public boolean hasCentreColLabels(
634     ) {
635         return this._has_centreColLabels;
636     }
637
638     /**
639      * Method hasGraph.
640      * 
641      * @return true if at least one Graph has been added
642      */
643     public boolean hasGraph(
644     ) {
645         return this._has_graph;
646     }
647
648     /**
649      * Method hasGraphColour.
650      * 
651      * @return true if at least one GraphColour has been added
652      */
653     public boolean hasGraphColour(
654     ) {
655         return this._has_graphColour;
656     }
657
658     /**
659      * Method hasGraphGroup.
660      * 
661      * @return true if at least one GraphGroup has been added
662      */
663     public boolean hasGraphGroup(
664     ) {
665         return this._has_graphGroup;
666     }
667
668     /**
669      * Method hasGraphHeight.
670      * 
671      * @return true if at least one GraphHeight has been added
672      */
673     public boolean hasGraphHeight(
674     ) {
675         return this._has_graphHeight;
676     }
677
678     /**
679      * Method hasGraphType.
680      * 
681      * @return true if at least one GraphType has been added
682      */
683     public boolean hasGraphType(
684     ) {
685         return this._has_graphType;
686     }
687
688     /**
689      * Method hasScaleColLabels.
690      * 
691      * @return true if at least one ScaleColLabels has been added
692      */
693     public boolean hasScaleColLabels(
694     ) {
695         return this._has_scaleColLabels;
696     }
697
698     /**
699      * Method hasScore.
700      * 
701      * @return true if at least one Score has been added
702      */
703     public boolean hasScore(
704     ) {
705         return this._has_score;
706     }
707
708     /**
709      * Method hasScoreOnly.
710      * 
711      * @return true if at least one ScoreOnly has been added
712      */
713     public boolean hasScoreOnly(
714     ) {
715         return this._has_scoreOnly;
716     }
717
718     /**
719      * Method hasShowAllColLabels.
720      * 
721      * @return true if at least one ShowAllColLabels has been added
722      */
723     public boolean hasShowAllColLabels(
724     ) {
725         return this._has_showAllColLabels;
726     }
727
728     /**
729      * Method hasVisible.
730      * 
731      * @return true if at least one Visible has been added
732      */
733     public boolean hasVisible(
734     ) {
735         return this._has_visible;
736     }
737
738     /**
739      * Returns the value of field 'autoCalculated'. The field
740      * 'autoCalculated' has the following description: is an
741      * autocalculated annotation row
742      * 
743      * @return the value of field 'AutoCalculated'.
744      */
745     public boolean isAutoCalculated(
746     ) {
747         return this._autoCalculated;
748     }
749
750     /**
751      * Returns the value of field 'belowAlignment'. The field
752      * 'belowAlignment' has the following description: is to be
753      * shown below the alignment - introduced in Jalview 2.8 for
754      * visualizing T-COFFEE alignment scores
755      * 
756      * @return the value of field 'BelowAlignment'.
757      */
758     public boolean isBelowAlignment(
759     ) {
760         return this._belowAlignment;
761     }
762
763     /**
764      * Returns the value of field 'centreColLabels'.
765      * 
766      * @return the value of field 'CentreColLabels'.
767      */
768     public boolean isCentreColLabels(
769     ) {
770         return this._centreColLabels;
771     }
772
773     /**
774      * Returns the value of field 'graph'.
775      * 
776      * @return the value of field 'Graph'.
777      */
778     public boolean isGraph(
779     ) {
780         return this._graph;
781     }
782
783     /**
784      * Returns the value of field 'scaleColLabels'.
785      * 
786      * @return the value of field 'ScaleColLabels'.
787      */
788     public boolean isScaleColLabels(
789     ) {
790         return this._scaleColLabels;
791     }
792
793     /**
794      * Returns the value of field 'scoreOnly'.
795      * 
796      * @return the value of field 'ScoreOnly'.
797      */
798     public boolean isScoreOnly(
799     ) {
800         return this._scoreOnly;
801     }
802
803     /**
804      * Returns the value of field 'showAllColLabels'.
805      * 
806      * @return the value of field 'ShowAllColLabels'.
807      */
808     public boolean isShowAllColLabels(
809     ) {
810         return this._showAllColLabels;
811     }
812
813     /**
814      * Method isValid.
815      * 
816      * @return true if this object is valid according to the schema
817      */
818     public boolean isValid(
819     ) {
820         try {
821             validate();
822         } catch (org.exolab.castor.xml.ValidationException vex) {
823             return false;
824         }
825         return true;
826     }
827
828     /**
829      * Returns the value of field 'visible'.
830      * 
831      * @return the value of field 'Visible'.
832      */
833     public boolean isVisible(
834     ) {
835         return this._visible;
836     }
837
838     /**
839      * 
840      * 
841      * @param out
842      * @throws org.exolab.castor.xml.MarshalException if object is
843      * null or if any SAXException is thrown during marshaling
844      * @throws org.exolab.castor.xml.ValidationException if this
845      * object is an invalid instance according to the schema
846      */
847     public void marshal(
848             final java.io.Writer out)
849     throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
850         Marshaller.marshal(this, out);
851     }
852
853     /**
854      * 
855      * 
856      * @param handler
857      * @throws java.io.IOException if an IOException occurs during
858      * marshaling
859      * @throws org.exolab.castor.xml.ValidationException if this
860      * object is an invalid instance according to the schema
861      * @throws org.exolab.castor.xml.MarshalException if object is
862      * null or if any SAXException is thrown during marshaling
863      */
864     public void marshal(
865             final org.xml.sax.ContentHandler handler)
866     throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
867         Marshaller.marshal(this, handler);
868     }
869
870     /**
871      */
872     public void removeAllAnnotationElement(
873     ) {
874         this._annotationElementList.clear();
875     }
876
877     /**
878      * Method removeAnnotationElement.
879      * 
880      * @param vAnnotationElement
881      * @return true if the object was removed from the collection.
882      */
883     public boolean removeAnnotationElement(
884             final jalview.schemabinding.version2.AnnotationElement vAnnotationElement) {
885         boolean removed = _annotationElementList.remove(vAnnotationElement);
886         return removed;
887     }
888
889     /**
890      * Method removeAnnotationElementAt.
891      * 
892      * @param index
893      * @return the element removed from the collection
894      */
895     public jalview.schemabinding.version2.AnnotationElement removeAnnotationElementAt(
896             final int index) {
897         java.lang.Object obj = this._annotationElementList.remove(index);
898         return (jalview.schemabinding.version2.AnnotationElement) obj;
899     }
900
901     /**
902      * 
903      * 
904      * @param index
905      * @param vAnnotationElement
906      * @throws java.lang.IndexOutOfBoundsException if the index
907      * given is outside the bounds of the collection
908      */
909     public void setAnnotationElement(
910             final int index,
911             final jalview.schemabinding.version2.AnnotationElement vAnnotationElement)
912     throws java.lang.IndexOutOfBoundsException {
913         // check bounds for index
914         if (index < 0 || index >= this._annotationElementList.size()) {
915             throw new IndexOutOfBoundsException("setAnnotationElement: Index value '" + index + "' not in range [0.." + (this._annotationElementList.size() - 1) + "]");
916         }
917         
918         this._annotationElementList.set(index, vAnnotationElement);
919     }
920
921     /**
922      * 
923      * 
924      * @param vAnnotationElementArray
925      */
926     public void setAnnotationElement(
927             final jalview.schemabinding.version2.AnnotationElement[] vAnnotationElementArray) {
928         //-- copy array
929         _annotationElementList.clear();
930         
931         for (int i = 0; i < vAnnotationElementArray.length; i++) {
932                 this._annotationElementList.add(vAnnotationElementArray[i]);
933         }
934     }
935
936     /**
937      * Sets the value of field 'autoCalculated'. The field
938      * 'autoCalculated' has the following description: is an
939      * autocalculated annotation row
940      * 
941      * @param autoCalculated the value of field 'autoCalculated'.
942      */
943     public void setAutoCalculated(
944             final boolean autoCalculated) {
945         this._autoCalculated = autoCalculated;
946         this._has_autoCalculated = true;
947     }
948
949     /**
950      * Sets the value of field 'belowAlignment'. The field
951      * 'belowAlignment' has the following description: is to be
952      * shown below the alignment - introduced in Jalview 2.8 for
953      * visualizing T-COFFEE alignment scores
954      * 
955      * @param belowAlignment the value of field 'belowAlignment'.
956      */
957     public void setBelowAlignment(
958             final boolean belowAlignment) {
959         this._belowAlignment = belowAlignment;
960         this._has_belowAlignment = true;
961     }
962
963     /**
964      * Sets the value of field 'calcId'. The field 'calcId' has the
965      * following description: Optional string identifier used to
966      * group sets of annotation produced by a particular
967      * calculation. Values are opaque strings but have semantic
968      * meaning to Jalview's renderer, data importer and calculation
969      * system.
970      * 
971      * @param calcId the value of field 'calcId'.
972      */
973     public void setCalcId(
974             final java.lang.String calcId) {
975         this._calcId = calcId;
976     }
977
978     /**
979      * Sets the value of field 'centreColLabels'.
980      * 
981      * @param centreColLabels the value of field 'centreColLabels'.
982      */
983     public void setCentreColLabels(
984             final boolean centreColLabels) {
985         this._centreColLabels = centreColLabels;
986         this._has_centreColLabels = true;
987     }
988
989     /**
990      * Sets the value of field 'description'.
991      * 
992      * @param description the value of field 'description'.
993      */
994     public void setDescription(
995             final java.lang.String description) {
996         this._description = description;
997     }
998
999     /**
1000      * Sets the value of field 'graph'.
1001      * 
1002      * @param graph the value of field 'graph'.
1003      */
1004     public void setGraph(
1005             final boolean graph) {
1006         this._graph = graph;
1007         this._has_graph = true;
1008     }
1009
1010     /**
1011      * Sets the value of field 'graphColour'.
1012      * 
1013      * @param graphColour the value of field 'graphColour'.
1014      */
1015     public void setGraphColour(
1016             final int graphColour) {
1017         this._graphColour = graphColour;
1018         this._has_graphColour = true;
1019     }
1020
1021     /**
1022      * Sets the value of field 'graphGroup'.
1023      * 
1024      * @param graphGroup the value of field 'graphGroup'.
1025      */
1026     public void setGraphGroup(
1027             final int graphGroup) {
1028         this._graphGroup = graphGroup;
1029         this._has_graphGroup = true;
1030     }
1031
1032     /**
1033      * Sets the value of field 'graphHeight'. The field
1034      * 'graphHeight' has the following description: height in
1035      * pixels for the graph if this is a graph-type annotation.
1036      * 
1037      * @param graphHeight the value of field 'graphHeight'.
1038      */
1039     public void setGraphHeight(
1040             final int graphHeight) {
1041         this._graphHeight = graphHeight;
1042         this._has_graphHeight = true;
1043     }
1044
1045     /**
1046      * Sets the value of field 'graphType'.
1047      * 
1048      * @param graphType the value of field 'graphType'.
1049      */
1050     public void setGraphType(
1051             final int graphType) {
1052         this._graphType = graphType;
1053         this._has_graphType = true;
1054     }
1055
1056     /**
1057      * Sets the value of field 'groupRef'.
1058      * 
1059      * @param groupRef the value of field 'groupRef'.
1060      */
1061     public void setGroupRef(
1062             final java.lang.String groupRef) {
1063         this._groupRef = groupRef;
1064     }
1065
1066     /**
1067      * Sets the value of field 'id'.
1068      * 
1069      * @param id the value of field 'id'.
1070      */
1071     public void setId(
1072             final java.lang.String id) {
1073         this._id = id;
1074     }
1075
1076     /**
1077      * Sets the value of field 'label'.
1078      * 
1079      * @param label the value of field 'label'.
1080      */
1081     public void setLabel(
1082             final java.lang.String label) {
1083         this._label = label;
1084     }
1085
1086     /**
1087      * Sets the value of field 'scaleColLabels'.
1088      * 
1089      * @param scaleColLabels the value of field 'scaleColLabels'.
1090      */
1091     public void setScaleColLabels(
1092             final boolean scaleColLabels) {
1093         this._scaleColLabels = scaleColLabels;
1094         this._has_scaleColLabels = true;
1095     }
1096
1097     /**
1098      * Sets the value of field 'score'.
1099      * 
1100      * @param score the value of field 'score'.
1101      */
1102     public void setScore(
1103             final double score) {
1104         this._score = score;
1105         this._has_score = true;
1106     }
1107
1108     /**
1109      * Sets the value of field 'scoreOnly'.
1110      * 
1111      * @param scoreOnly the value of field 'scoreOnly'.
1112      */
1113     public void setScoreOnly(
1114             final boolean scoreOnly) {
1115         this._scoreOnly = scoreOnly;
1116         this._has_scoreOnly = true;
1117     }
1118
1119     /**
1120      * Sets the value of field 'sequenceRef'.
1121      * 
1122      * @param sequenceRef the value of field 'sequenceRef'.
1123      */
1124     public void setSequenceRef(
1125             final java.lang.String sequenceRef) {
1126         this._sequenceRef = sequenceRef;
1127     }
1128
1129     /**
1130      * Sets the value of field 'showAllColLabels'.
1131      * 
1132      * @param showAllColLabels the value of field 'showAllColLabels'
1133      */
1134     public void setShowAllColLabels(
1135             final boolean showAllColLabels) {
1136         this._showAllColLabels = showAllColLabels;
1137         this._has_showAllColLabels = true;
1138     }
1139
1140     /**
1141      * Sets the value of field 'thresholdLine'.
1142      * 
1143      * @param thresholdLine the value of field 'thresholdLine'.
1144      */
1145     public void setThresholdLine(
1146             final jalview.schemabinding.version2.ThresholdLine thresholdLine) {
1147         this._thresholdLine = thresholdLine;
1148     }
1149
1150     /**
1151      * Sets the value of field 'visible'.
1152      * 
1153      * @param visible the value of field 'visible'.
1154      */
1155     public void setVisible(
1156             final boolean visible) {
1157         this._visible = visible;
1158         this._has_visible = true;
1159     }
1160
1161     /**
1162      * Method unmarshal.
1163      * 
1164      * @param reader
1165      * @throws org.exolab.castor.xml.MarshalException if object is
1166      * null or if any SAXException is thrown during marshaling
1167      * @throws org.exolab.castor.xml.ValidationException if this
1168      * object is an invalid instance according to the schema
1169      * @return the unmarshaled
1170      * jalview.schemabinding.version2.Annotation
1171      */
1172     public static jalview.schemabinding.version2.Annotation unmarshal(
1173             final java.io.Reader reader)
1174     throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
1175         return (jalview.schemabinding.version2.Annotation) Unmarshaller.unmarshal(jalview.schemabinding.version2.Annotation.class, reader);
1176     }
1177
1178     /**
1179      * 
1180      * 
1181      * @throws org.exolab.castor.xml.ValidationException if this
1182      * object is an invalid instance according to the schema
1183      */
1184     public void validate(
1185     )
1186     throws org.exolab.castor.xml.ValidationException {
1187         org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
1188         validator.validate(this);
1189     }
1190
1191 }