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