44e8739e911244a58e46933f4db22dae879b3b2e
[jalview.git] / src / jalview / schemabinding / version2 / JGroup.java
1 /*******************************************************************************
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
3  * Copyright (C) 2014 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 of the License, or (at your option) any later version.
10  *  
11  * Jalview is distributed in the hope that it will be useful, but 
12  * WITHOUT ANY WARRANTY; without even the implied warranty 
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14  * PURPOSE.  See the GNU General Public License for more details.
15  * 
16  * You should have received a copy of the GNU General Public License along with Jalview.  
17  * If not, see <http://www.gnu.org/licenses/>.
18  * The Jalview Authors are detailed in the 'AUTHORS' file.
19  ******************************************************************************/
20 /*
21  * This class was automatically generated with 
22  * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
23  * Schema.
24  * $Id$
25  */
26
27 package jalview.schemabinding.version2;
28
29 //---------------------------------/
30 //- Imported classes and packages -/
31 //---------------------------------/
32
33 import org.exolab.castor.xml.Marshaller;
34 import org.exolab.castor.xml.Unmarshaller;
35
36 /**
37  * Class JGroup.
38  * 
39  * @version $Revision$ $Date$
40  */
41 public class JGroup implements java.io.Serializable
42 {
43
44   // --------------------------/
45   // - Class/Member Variables -/
46   // --------------------------/
47
48   /**
49    * Field _start.
50    */
51   private int _start;
52
53   /**
54    * keeps track of state for field: _start
55    */
56   private boolean _has_start;
57
58   /**
59    * Field _end.
60    */
61   private int _end;
62
63   /**
64    * keeps track of state for field: _end
65    */
66   private boolean _has_end;
67
68   /**
69    * Field _name.
70    */
71   private java.lang.String _name;
72
73   /**
74    * Field _colour.
75    */
76   private java.lang.String _colour;
77
78   /**
79    * Field _consThreshold.
80    */
81   private int _consThreshold;
82
83   /**
84    * keeps track of state for field: _consThreshold
85    */
86   private boolean _has_consThreshold;
87
88   /**
89    * Field _pidThreshold.
90    */
91   private int _pidThreshold;
92
93   /**
94    * keeps track of state for field: _pidThreshold
95    */
96   private boolean _has_pidThreshold;
97
98   /**
99    * Field _outlineColour.
100    */
101   private int _outlineColour;
102
103   /**
104    * keeps track of state for field: _outlineColour
105    */
106   private boolean _has_outlineColour;
107
108   /**
109    * Field _displayBoxes.
110    */
111   private boolean _displayBoxes;
112
113   /**
114    * keeps track of state for field: _displayBoxes
115    */
116   private boolean _has_displayBoxes;
117
118   /**
119    * Field _displayText.
120    */
121   private boolean _displayText;
122
123   /**
124    * keeps track of state for field: _displayText
125    */
126   private boolean _has_displayText;
127
128   /**
129    * Field _colourText.
130    */
131   private boolean _colourText;
132
133   /**
134    * keeps track of state for field: _colourText
135    */
136   private boolean _has_colourText;
137
138   /**
139    * Field _textCol1.
140    */
141   private int _textCol1;
142
143   /**
144    * keeps track of state for field: _textCol1
145    */
146   private boolean _has_textCol1;
147
148   /**
149    * Field _textCol2.
150    */
151   private int _textCol2;
152
153   /**
154    * keeps track of state for field: _textCol2
155    */
156   private boolean _has_textCol2;
157
158   /**
159    * Field _textColThreshold.
160    */
161   private int _textColThreshold;
162
163   /**
164    * keeps track of state for field: _textColThreshold
165    */
166   private boolean _has_textColThreshold;
167
168   /**
169    * Field _showUnconserved.
170    */
171   private boolean _showUnconserved;
172
173   /**
174    * keeps track of state for field: _showUnconserved
175    */
176   private boolean _has_showUnconserved;
177
178   /**
179    * Field _ignoreGapsinConsensus.
180    */
181   private boolean _ignoreGapsinConsensus = true;
182
183   /**
184    * keeps track of state for field: _ignoreGapsinConsensus
185    */
186   private boolean _has_ignoreGapsinConsensus;
187
188   /**
189    * Field _showConsensusHistogram.
190    */
191   private boolean _showConsensusHistogram = true;
192
193   /**
194    * keeps track of state for field: _showConsensusHistogram
195    */
196   private boolean _has_showConsensusHistogram;
197
198   /**
199    * Field _showSequenceLogo.
200    */
201   private boolean _showSequenceLogo = false;
202
203   /**
204    * keeps track of state for field: _showSequenceLogo
205    */
206   private boolean _has_showSequenceLogo;
207
208   /**
209    * Field _normaliseSequenceLogo.
210    */
211   private boolean _normaliseSequenceLogo = false;
212
213   /**
214    * keeps track of state for field: _normaliseSequenceLogo
215    */
216   private boolean _has_normaliseSequenceLogo;
217
218   /**
219    * Optional sequence group ID (only needs to be unique for this alignment)
220    * 
221    */
222   private java.lang.String _id;
223
224   /**
225    * Field _seqList.
226    */
227   private java.util.Vector _seqList;
228
229   /**
230    * Field _annotationColours.
231    */
232   private jalview.schemabinding.version2.AnnotationColours _annotationColours;
233
234   // ----------------/
235   // - Constructors -/
236   // ----------------/
237
238   public JGroup()
239   {
240     super();
241     this._seqList = new java.util.Vector();
242   }
243
244   // -----------/
245   // - Methods -/
246   // -----------/
247
248   /**
249    * 
250    * 
251    * @param vSeq
252    * @throws java.lang.IndexOutOfBoundsException
253    *           if the index given is outside the bounds of the collection
254    */
255   public void addSeq(final java.lang.String vSeq)
256           throws java.lang.IndexOutOfBoundsException
257   {
258     this._seqList.addElement(vSeq);
259   }
260
261   /**
262    * 
263    * 
264    * @param index
265    * @param vSeq
266    * @throws java.lang.IndexOutOfBoundsException
267    *           if the index given is outside the bounds of the collection
268    */
269   public void addSeq(final int index, final java.lang.String vSeq)
270           throws java.lang.IndexOutOfBoundsException
271   {
272     this._seqList.add(index, vSeq);
273   }
274
275   /**
276      */
277   public void deleteColourText()
278   {
279     this._has_colourText = false;
280   }
281
282   /**
283      */
284   public void deleteConsThreshold()
285   {
286     this._has_consThreshold = false;
287   }
288
289   /**
290      */
291   public void deleteDisplayBoxes()
292   {
293     this._has_displayBoxes = false;
294   }
295
296   /**
297      */
298   public void deleteDisplayText()
299   {
300     this._has_displayText = false;
301   }
302
303   /**
304      */
305   public void deleteEnd()
306   {
307     this._has_end = false;
308   }
309
310   /**
311      */
312   public void deleteIgnoreGapsinConsensus()
313   {
314     this._has_ignoreGapsinConsensus = false;
315   }
316
317   /**
318      */
319   public void deleteNormaliseSequenceLogo()
320   {
321     this._has_normaliseSequenceLogo = false;
322   }
323
324   /**
325      */
326   public void deleteOutlineColour()
327   {
328     this._has_outlineColour = false;
329   }
330
331   /**
332      */
333   public void deletePidThreshold()
334   {
335     this._has_pidThreshold = false;
336   }
337
338   /**
339      */
340   public void deleteShowConsensusHistogram()
341   {
342     this._has_showConsensusHistogram = false;
343   }
344
345   /**
346      */
347   public void deleteShowSequenceLogo()
348   {
349     this._has_showSequenceLogo = false;
350   }
351
352   /**
353      */
354   public void deleteShowUnconserved()
355   {
356     this._has_showUnconserved = false;
357   }
358
359   /**
360      */
361   public void deleteStart()
362   {
363     this._has_start = false;
364   }
365
366   /**
367      */
368   public void deleteTextCol1()
369   {
370     this._has_textCol1 = false;
371   }
372
373   /**
374      */
375   public void deleteTextCol2()
376   {
377     this._has_textCol2 = false;
378   }
379
380   /**
381      */
382   public void deleteTextColThreshold()
383   {
384     this._has_textColThreshold = false;
385   }
386
387   /**
388    * Method enumerateSeq.
389    * 
390    * @return an Enumeration over all java.lang.String elements
391    */
392   public java.util.Enumeration enumerateSeq()
393   {
394     return this._seqList.elements();
395   }
396
397   /**
398    * Returns the value of field 'annotationColours'.
399    * 
400    * @return the value of field 'AnnotationColours'.
401    */
402   public jalview.schemabinding.version2.AnnotationColours getAnnotationColours()
403   {
404     return this._annotationColours;
405   }
406
407   /**
408    * Returns the value of field 'colour'.
409    * 
410    * @return the value of field 'Colour'.
411    */
412   public java.lang.String getColour()
413   {
414     return this._colour;
415   }
416
417   /**
418    * Returns the value of field 'colourText'.
419    * 
420    * @return the value of field 'ColourText'.
421    */
422   public boolean getColourText()
423   {
424     return this._colourText;
425   }
426
427   /**
428    * Returns the value of field 'consThreshold'.
429    * 
430    * @return the value of field 'ConsThreshold'.
431    */
432   public int getConsThreshold()
433   {
434     return this._consThreshold;
435   }
436
437   /**
438    * Returns the value of field 'displayBoxes'.
439    * 
440    * @return the value of field 'DisplayBoxes'.
441    */
442   public boolean getDisplayBoxes()
443   {
444     return this._displayBoxes;
445   }
446
447   /**
448    * Returns the value of field 'displayText'.
449    * 
450    * @return the value of field 'DisplayText'.
451    */
452   public boolean getDisplayText()
453   {
454     return this._displayText;
455   }
456
457   /**
458    * Returns the value of field 'end'.
459    * 
460    * @return the value of field 'End'.
461    */
462   public int getEnd()
463   {
464     return this._end;
465   }
466
467   /**
468    * Returns the value of field 'id'. The field 'id' has the following
469    * description: Optional sequence group ID (only needs to be unique for this
470    * alignment)
471    * 
472    * 
473    * @return the value of field 'Id'.
474    */
475   public java.lang.String getId()
476   {
477     return this._id;
478   }
479
480   /**
481    * Returns the value of field 'ignoreGapsinConsensus'.
482    * 
483    * @return the value of field 'IgnoreGapsinConsensus'.
484    */
485   public boolean getIgnoreGapsinConsensus()
486   {
487     return this._ignoreGapsinConsensus;
488   }
489
490   /**
491    * Returns the value of field 'name'.
492    * 
493    * @return the value of field 'Name'.
494    */
495   public java.lang.String getName()
496   {
497     return this._name;
498   }
499
500   /**
501    * Returns the value of field 'normaliseSequenceLogo'.
502    * 
503    * @return the value of field 'NormaliseSequenceLogo'.
504    */
505   public boolean getNormaliseSequenceLogo()
506   {
507     return this._normaliseSequenceLogo;
508   }
509
510   /**
511    * Returns the value of field 'outlineColour'.
512    * 
513    * @return the value of field 'OutlineColour'.
514    */
515   public int getOutlineColour()
516   {
517     return this._outlineColour;
518   }
519
520   /**
521    * Returns the value of field 'pidThreshold'.
522    * 
523    * @return the value of field 'PidThreshold'.
524    */
525   public int getPidThreshold()
526   {
527     return this._pidThreshold;
528   }
529
530   /**
531    * Method getSeq.
532    * 
533    * @param index
534    * @throws java.lang.IndexOutOfBoundsException
535    *           if the index given is outside the bounds of the collection
536    * @return the value of the java.lang.String at the given index
537    */
538   public java.lang.String getSeq(final int index)
539           throws java.lang.IndexOutOfBoundsException
540   {
541     // check bounds for index
542     if (index < 0 || index >= this._seqList.size())
543     {
544       throw new IndexOutOfBoundsException("getSeq: Index value '" + index
545               + "' not in range [0.." + (this._seqList.size() - 1) + "]");
546     }
547
548     return (java.lang.String) _seqList.get(index);
549   }
550
551   /**
552    * Method getSeq.Returns the contents of the collection in an Array.
553    * <p>
554    * Note: Just in case the collection contents are changing in another thread,
555    * we pass a 0-length Array of the correct type into the API call. This way we
556    * <i>know</i> that the Array returned is of exactly the correct length.
557    * 
558    * @return this collection as an Array
559    */
560   public java.lang.String[] getSeq()
561   {
562     java.lang.String[] array = new java.lang.String[0];
563     return (java.lang.String[]) this._seqList.toArray(array);
564   }
565
566   /**
567    * Method getSeqCount.
568    * 
569    * @return the size of this collection
570    */
571   public int getSeqCount()
572   {
573     return this._seqList.size();
574   }
575
576   /**
577    * Returns the value of field 'showConsensusHistogram'.
578    * 
579    * @return the value of field 'ShowConsensusHistogram'.
580    */
581   public boolean getShowConsensusHistogram()
582   {
583     return this._showConsensusHistogram;
584   }
585
586   /**
587    * Returns the value of field 'showSequenceLogo'.
588    * 
589    * @return the value of field 'ShowSequenceLogo'.
590    */
591   public boolean getShowSequenceLogo()
592   {
593     return this._showSequenceLogo;
594   }
595
596   /**
597    * Returns the value of field 'showUnconserved'.
598    * 
599    * @return the value of field 'ShowUnconserved'.
600    */
601   public boolean getShowUnconserved()
602   {
603     return this._showUnconserved;
604   }
605
606   /**
607    * Returns the value of field 'start'.
608    * 
609    * @return the value of field 'Start'.
610    */
611   public int getStart()
612   {
613     return this._start;
614   }
615
616   /**
617    * Returns the value of field 'textCol1'.
618    * 
619    * @return the value of field 'TextCol1'.
620    */
621   public int getTextCol1()
622   {
623     return this._textCol1;
624   }
625
626   /**
627    * Returns the value of field 'textCol2'.
628    * 
629    * @return the value of field 'TextCol2'.
630    */
631   public int getTextCol2()
632   {
633     return this._textCol2;
634   }
635
636   /**
637    * Returns the value of field 'textColThreshold'.
638    * 
639    * @return the value of field 'TextColThreshold'.
640    */
641   public int getTextColThreshold()
642   {
643     return this._textColThreshold;
644   }
645
646   /**
647    * Method hasColourText.
648    * 
649    * @return true if at least one ColourText has been added
650    */
651   public boolean hasColourText()
652   {
653     return this._has_colourText;
654   }
655
656   /**
657    * Method hasConsThreshold.
658    * 
659    * @return true if at least one ConsThreshold has been added
660    */
661   public boolean hasConsThreshold()
662   {
663     return this._has_consThreshold;
664   }
665
666   /**
667    * Method hasDisplayBoxes.
668    * 
669    * @return true if at least one DisplayBoxes has been added
670    */
671   public boolean hasDisplayBoxes()
672   {
673     return this._has_displayBoxes;
674   }
675
676   /**
677    * Method hasDisplayText.
678    * 
679    * @return true if at least one DisplayText has been added
680    */
681   public boolean hasDisplayText()
682   {
683     return this._has_displayText;
684   }
685
686   /**
687    * Method hasEnd.
688    * 
689    * @return true if at least one End has been added
690    */
691   public boolean hasEnd()
692   {
693     return this._has_end;
694   }
695
696   /**
697    * Method hasIgnoreGapsinConsensus.
698    * 
699    * @return true if at least one IgnoreGapsinConsensus has been added
700    */
701   public boolean hasIgnoreGapsinConsensus()
702   {
703     return this._has_ignoreGapsinConsensus;
704   }
705
706   /**
707    * Method hasNormaliseSequenceLogo.
708    * 
709    * @return true if at least one NormaliseSequenceLogo has been added
710    */
711   public boolean hasNormaliseSequenceLogo()
712   {
713     return this._has_normaliseSequenceLogo;
714   }
715
716   /**
717    * Method hasOutlineColour.
718    * 
719    * @return true if at least one OutlineColour has been added
720    */
721   public boolean hasOutlineColour()
722   {
723     return this._has_outlineColour;
724   }
725
726   /**
727    * Method hasPidThreshold.
728    * 
729    * @return true if at least one PidThreshold has been added
730    */
731   public boolean hasPidThreshold()
732   {
733     return this._has_pidThreshold;
734   }
735
736   /**
737    * Method hasShowConsensusHistogram.
738    * 
739    * @return true if at least one ShowConsensusHistogram has been added
740    */
741   public boolean hasShowConsensusHistogram()
742   {
743     return this._has_showConsensusHistogram;
744   }
745
746   /**
747    * Method hasShowSequenceLogo.
748    * 
749    * @return true if at least one ShowSequenceLogo has been added
750    */
751   public boolean hasShowSequenceLogo()
752   {
753     return this._has_showSequenceLogo;
754   }
755
756   /**
757    * Method hasShowUnconserved.
758    * 
759    * @return true if at least one ShowUnconserved has been added
760    */
761   public boolean hasShowUnconserved()
762   {
763     return this._has_showUnconserved;
764   }
765
766   /**
767    * Method hasStart.
768    * 
769    * @return true if at least one Start has been added
770    */
771   public boolean hasStart()
772   {
773     return this._has_start;
774   }
775
776   /**
777    * Method hasTextCol1.
778    * 
779    * @return true if at least one TextCol1 has been added
780    */
781   public boolean hasTextCol1()
782   {
783     return this._has_textCol1;
784   }
785
786   /**
787    * Method hasTextCol2.
788    * 
789    * @return true if at least one TextCol2 has been added
790    */
791   public boolean hasTextCol2()
792   {
793     return this._has_textCol2;
794   }
795
796   /**
797    * Method hasTextColThreshold.
798    * 
799    * @return true if at least one TextColThreshold has been added
800    */
801   public boolean hasTextColThreshold()
802   {
803     return this._has_textColThreshold;
804   }
805
806   /**
807    * Returns the value of field 'colourText'.
808    * 
809    * @return the value of field 'ColourText'.
810    */
811   public boolean isColourText()
812   {
813     return this._colourText;
814   }
815
816   /**
817    * Returns the value of field 'displayBoxes'.
818    * 
819    * @return the value of field 'DisplayBoxes'.
820    */
821   public boolean isDisplayBoxes()
822   {
823     return this._displayBoxes;
824   }
825
826   /**
827    * Returns the value of field 'displayText'.
828    * 
829    * @return the value of field 'DisplayText'.
830    */
831   public boolean isDisplayText()
832   {
833     return this._displayText;
834   }
835
836   /**
837    * Returns the value of field 'ignoreGapsinConsensus'.
838    * 
839    * @return the value of field 'IgnoreGapsinConsensus'.
840    */
841   public boolean isIgnoreGapsinConsensus()
842   {
843     return this._ignoreGapsinConsensus;
844   }
845
846   /**
847    * Returns the value of field 'normaliseSequenceLogo'.
848    * 
849    * @return the value of field 'NormaliseSequenceLogo'.
850    */
851   public boolean isNormaliseSequenceLogo()
852   {
853     return this._normaliseSequenceLogo;
854   }
855
856   /**
857    * Returns the value of field 'showConsensusHistogram'.
858    * 
859    * @return the value of field 'ShowConsensusHistogram'.
860    */
861   public boolean isShowConsensusHistogram()
862   {
863     return this._showConsensusHistogram;
864   }
865
866   /**
867    * Returns the value of field 'showSequenceLogo'.
868    * 
869    * @return the value of field 'ShowSequenceLogo'.
870    */
871   public boolean isShowSequenceLogo()
872   {
873     return this._showSequenceLogo;
874   }
875
876   /**
877    * Returns the value of field 'showUnconserved'.
878    * 
879    * @return the value of field 'ShowUnconserved'.
880    */
881   public boolean isShowUnconserved()
882   {
883     return this._showUnconserved;
884   }
885
886   /**
887    * Method isValid.
888    * 
889    * @return true if this object is valid according to the schema
890    */
891   public boolean isValid()
892   {
893     try
894     {
895       validate();
896     } catch (org.exolab.castor.xml.ValidationException vex)
897     {
898       return false;
899     }
900     return true;
901   }
902
903   /**
904    * 
905    * 
906    * @param out
907    * @throws org.exolab.castor.xml.MarshalException
908    *           if object is null or if any SAXException is thrown during
909    *           marshaling
910    * @throws org.exolab.castor.xml.ValidationException
911    *           if this object is an invalid instance according to the schema
912    */
913   public void marshal(final java.io.Writer out)
914           throws org.exolab.castor.xml.MarshalException,
915           org.exolab.castor.xml.ValidationException
916   {
917     Marshaller.marshal(this, out);
918   }
919
920   /**
921    * 
922    * 
923    * @param handler
924    * @throws java.io.IOException
925    *           if an IOException occurs during marshaling
926    * @throws org.exolab.castor.xml.ValidationException
927    *           if this object is an invalid instance according to the schema
928    * @throws org.exolab.castor.xml.MarshalException
929    *           if object is null or if any SAXException is thrown during
930    *           marshaling
931    */
932   public void marshal(final org.xml.sax.ContentHandler handler)
933           throws java.io.IOException,
934           org.exolab.castor.xml.MarshalException,
935           org.exolab.castor.xml.ValidationException
936   {
937     Marshaller.marshal(this, handler);
938   }
939
940   /**
941      */
942   public void removeAllSeq()
943   {
944     this._seqList.clear();
945   }
946
947   /**
948    * Method removeSeq.
949    * 
950    * @param vSeq
951    * @return true if the object was removed from the collection.
952    */
953   public boolean removeSeq(final java.lang.String vSeq)
954   {
955     boolean removed = _seqList.remove(vSeq);
956     return removed;
957   }
958
959   /**
960    * Method removeSeqAt.
961    * 
962    * @param index
963    * @return the element removed from the collection
964    */
965   public java.lang.String removeSeqAt(final int index)
966   {
967     java.lang.Object obj = this._seqList.remove(index);
968     return (java.lang.String) obj;
969   }
970
971   /**
972    * Sets the value of field 'annotationColours'.
973    * 
974    * @param annotationColours
975    *          the value of field 'annotationColours'.
976    */
977   public void setAnnotationColours(
978           final jalview.schemabinding.version2.AnnotationColours annotationColours)
979   {
980     this._annotationColours = annotationColours;
981   }
982
983   /**
984    * Sets the value of field 'colour'.
985    * 
986    * @param colour
987    *          the value of field 'colour'.
988    */
989   public void setColour(final java.lang.String colour)
990   {
991     this._colour = colour;
992   }
993
994   /**
995    * Sets the value of field 'colourText'.
996    * 
997    * @param colourText
998    *          the value of field 'colourText'.
999    */
1000   public void setColourText(final boolean colourText)
1001   {
1002     this._colourText = colourText;
1003     this._has_colourText = true;
1004   }
1005
1006   /**
1007    * Sets the value of field 'consThreshold'.
1008    * 
1009    * @param consThreshold
1010    *          the value of field 'consThreshold'.
1011    */
1012   public void setConsThreshold(final int consThreshold)
1013   {
1014     this._consThreshold = consThreshold;
1015     this._has_consThreshold = true;
1016   }
1017
1018   /**
1019    * Sets the value of field 'displayBoxes'.
1020    * 
1021    * @param displayBoxes
1022    *          the value of field 'displayBoxes'.
1023    */
1024   public void setDisplayBoxes(final boolean displayBoxes)
1025   {
1026     this._displayBoxes = displayBoxes;
1027     this._has_displayBoxes = true;
1028   }
1029
1030   /**
1031    * Sets the value of field 'displayText'.
1032    * 
1033    * @param displayText
1034    *          the value of field 'displayText'.
1035    */
1036   public void setDisplayText(final boolean displayText)
1037   {
1038     this._displayText = displayText;
1039     this._has_displayText = true;
1040   }
1041
1042   /**
1043    * Sets the value of field 'end'.
1044    * 
1045    * @param end
1046    *          the value of field 'end'.
1047    */
1048   public void setEnd(final int end)
1049   {
1050     this._end = end;
1051     this._has_end = true;
1052   }
1053
1054   /**
1055    * Sets the value of field 'id'. The field 'id' has the following description:
1056    * Optional sequence group ID (only needs to be unique for this alignment)
1057    * 
1058    * 
1059    * @param id
1060    *          the value of field 'id'.
1061    */
1062   public void setId(final java.lang.String id)
1063   {
1064     this._id = id;
1065   }
1066
1067   /**
1068    * Sets the value of field 'ignoreGapsinConsensus'.
1069    * 
1070    * @param ignoreGapsinConsensus
1071    *          the value of field 'ignoreGapsinConsensus'.
1072    */
1073   public void setIgnoreGapsinConsensus(final boolean ignoreGapsinConsensus)
1074   {
1075     this._ignoreGapsinConsensus = ignoreGapsinConsensus;
1076     this._has_ignoreGapsinConsensus = true;
1077   }
1078
1079   /**
1080    * Sets the value of field 'name'.
1081    * 
1082    * @param name
1083    *          the value of field 'name'.
1084    */
1085   public void setName(final java.lang.String name)
1086   {
1087     this._name = name;
1088   }
1089
1090   /**
1091    * Sets the value of field 'normaliseSequenceLogo'.
1092    * 
1093    * @param normaliseSequenceLogo
1094    *          the value of field 'normaliseSequenceLogo'.
1095    */
1096   public void setNormaliseSequenceLogo(final boolean normaliseSequenceLogo)
1097   {
1098     this._normaliseSequenceLogo = normaliseSequenceLogo;
1099     this._has_normaliseSequenceLogo = true;
1100   }
1101
1102   /**
1103    * Sets the value of field 'outlineColour'.
1104    * 
1105    * @param outlineColour
1106    *          the value of field 'outlineColour'.
1107    */
1108   public void setOutlineColour(final int outlineColour)
1109   {
1110     this._outlineColour = outlineColour;
1111     this._has_outlineColour = true;
1112   }
1113
1114   /**
1115    * Sets the value of field 'pidThreshold'.
1116    * 
1117    * @param pidThreshold
1118    *          the value of field 'pidThreshold'.
1119    */
1120   public void setPidThreshold(final int pidThreshold)
1121   {
1122     this._pidThreshold = pidThreshold;
1123     this._has_pidThreshold = true;
1124   }
1125
1126   /**
1127    * 
1128    * 
1129    * @param index
1130    * @param vSeq
1131    * @throws java.lang.IndexOutOfBoundsException
1132    *           if the index given is outside the bounds of the collection
1133    */
1134   public void setSeq(final int index, final java.lang.String vSeq)
1135           throws java.lang.IndexOutOfBoundsException
1136   {
1137     // check bounds for index
1138     if (index < 0 || index >= this._seqList.size())
1139     {
1140       throw new IndexOutOfBoundsException("setSeq: Index value '" + index
1141               + "' not in range [0.." + (this._seqList.size() - 1) + "]");
1142     }
1143
1144     this._seqList.set(index, vSeq);
1145   }
1146
1147   /**
1148    * 
1149    * 
1150    * @param vSeqArray
1151    */
1152   public void setSeq(final java.lang.String[] vSeqArray)
1153   {
1154     // -- copy array
1155     _seqList.clear();
1156
1157     for (int i = 0; i < vSeqArray.length; i++)
1158     {
1159       this._seqList.add(vSeqArray[i]);
1160     }
1161   }
1162
1163   /**
1164    * Sets the value of field 'showConsensusHistogram'.
1165    * 
1166    * @param showConsensusHistogram
1167    *          the value of field 'showConsensusHistogram'.
1168    */
1169   public void setShowConsensusHistogram(final boolean showConsensusHistogram)
1170   {
1171     this._showConsensusHistogram = showConsensusHistogram;
1172     this._has_showConsensusHistogram = true;
1173   }
1174
1175   /**
1176    * Sets the value of field 'showSequenceLogo'.
1177    * 
1178    * @param showSequenceLogo
1179    *          the value of field 'showSequenceLogo'
1180    */
1181   public void setShowSequenceLogo(final boolean showSequenceLogo)
1182   {
1183     this._showSequenceLogo = showSequenceLogo;
1184     this._has_showSequenceLogo = true;
1185   }
1186
1187   /**
1188    * Sets the value of field 'showUnconserved'.
1189    * 
1190    * @param showUnconserved
1191    *          the value of field 'showUnconserved'.
1192    */
1193   public void setShowUnconserved(final boolean showUnconserved)
1194   {
1195     this._showUnconserved = showUnconserved;
1196     this._has_showUnconserved = true;
1197   }
1198
1199   /**
1200    * Sets the value of field 'start'.
1201    * 
1202    * @param start
1203    *          the value of field 'start'.
1204    */
1205   public void setStart(final int start)
1206   {
1207     this._start = start;
1208     this._has_start = true;
1209   }
1210
1211   /**
1212    * Sets the value of field 'textCol1'.
1213    * 
1214    * @param textCol1
1215    *          the value of field 'textCol1'.
1216    */
1217   public void setTextCol1(final int textCol1)
1218   {
1219     this._textCol1 = textCol1;
1220     this._has_textCol1 = true;
1221   }
1222
1223   /**
1224    * Sets the value of field 'textCol2'.
1225    * 
1226    * @param textCol2
1227    *          the value of field 'textCol2'.
1228    */
1229   public void setTextCol2(final int textCol2)
1230   {
1231     this._textCol2 = textCol2;
1232     this._has_textCol2 = true;
1233   }
1234
1235   /**
1236    * Sets the value of field 'textColThreshold'.
1237    * 
1238    * @param textColThreshold
1239    *          the value of field 'textColThreshold'
1240    */
1241   public void setTextColThreshold(final int textColThreshold)
1242   {
1243     this._textColThreshold = textColThreshold;
1244     this._has_textColThreshold = true;
1245   }
1246
1247   /**
1248    * Method unmarshal.
1249    * 
1250    * @param reader
1251    * @throws org.exolab.castor.xml.MarshalException
1252    *           if object is null or if any SAXException is thrown during
1253    *           marshaling
1254    * @throws org.exolab.castor.xml.ValidationException
1255    *           if this object is an invalid instance according to the schema
1256    * @return the unmarshaled jalview.schemabinding.version2.JGroup
1257    */
1258   public static jalview.schemabinding.version2.JGroup unmarshal(
1259           final java.io.Reader reader)
1260           throws org.exolab.castor.xml.MarshalException,
1261           org.exolab.castor.xml.ValidationException
1262   {
1263     return (jalview.schemabinding.version2.JGroup) Unmarshaller.unmarshal(
1264             jalview.schemabinding.version2.JGroup.class, reader);
1265   }
1266
1267   /**
1268    * 
1269    * 
1270    * @throws org.exolab.castor.xml.ValidationException
1271    *           if this object is an invalid instance according to the schema
1272    */
1273   public void validate() throws org.exolab.castor.xml.ValidationException
1274   {
1275     org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
1276     validator.validate(this);
1277   }
1278
1279 }