CONTROL.java
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.0 
// See <a href="https://javaee.github.io/jaxb-v2/">https://javaee.github.io/jaxb-v2/</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2022.02.09 at 09:39:06 PM CET 
//
package org.opentrafficsim.xml.generated;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Generated;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.XmlValue;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.djunits.value.vdouble.scalar.Duration;
import org.opentrafficsim.xml.bindings.DurationAdapter;
/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * <complexType>
 *   <complexContent>
 *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       <choice>
 *         <element name="FIXEDTIME" maxOccurs="unbounded" minOccurs="0">
 *           <complexType>
 *             <complexContent>
 *               <extension base="{http://www.opentrafficsim.org/ots}CONTROLTYPE">
 *                 <sequence>
 *                   <element name="CYCLE" maxOccurs="unbounded">
 *                     <complexType>
 *                       <complexContent>
 *                         <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           <attribute name="SIGNALGROUPID" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
 *                           <attribute name="OFFSET" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
 *                           <attribute name="PREGREEN" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
 *                           <attribute name="GREEN" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
 *                           <attribute name="YELLOW" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
 *                         </restriction>
 *                       </complexContent>
 *                     </complexType>
 *                   </element>
 *                 </sequence>
 *                 <attribute name="CYCLETIME" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
 *                 <attribute name="OFFSET" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" default="0.0 s" />
 *               </extension>
 *             </complexContent>
 *           </complexType>
 *         </element>
 *         <element name="TRAFCOD" maxOccurs="unbounded" minOccurs="0">
 *           <complexType>
 *             <complexContent>
 *               <extension base="{http://www.opentrafficsim.org/ots}RESPONSIVECONTROLTYPE">
 *                 <sequence>
 *                   <choice>
 *                     <element name="PROGRAM">
 *                       <complexType>
 *                         <simpleContent>
 *                           <extension base="<http://www.w3.org/2001/XMLSchema>string">
 *                             <attribute ref="{http://www.w3.org/XML/1998/namespace}space default="preserve""/>
 *                           </extension>
 *                         </simpleContent>
 *                       </complexType>
 *                     </element>
 *                     <element name="PROGRAMFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
 *                   </choice>
 *                   <element name="CONSOLE">
 *                     <complexType>
 *                       <complexContent>
 *                         <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           <sequence>
 *                             <choice>
 *                               <element name="MAP">
 *                                 <complexType>
 *                                   <simpleContent>
 *                                     <extension base="<http://www.w3.org/2001/XMLSchema>string">
 *                                       <attribute name="TYPE" type="{http://www.opentrafficsim.org/ots}GRAPHICSTYPE" />
 *                                       <attribute name="ENCODING" type="{http://www.opentrafficsim.org/ots}ENCODINGTYPE" />
 *                                       <attribute ref="{http://www.w3.org/XML/1998/namespace}space default="preserve""/>
 *                                     </extension>
 *                                   </simpleContent>
 *                                 </complexType>
 *                               </element>
 *                               <element name="MAPFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
 *                             </choice>
 *                             <choice>
 *                               <element name="COORDINATES" type="{http://www.opentrafficsim.org/ots}TRAFCODCOORDINATESTYPE"/>
 *                               <element name="COORDINATESFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
 *                             </choice>
 *                           </sequence>
 *                         </restriction>
 *                       </complexContent>
 *                     </complexType>
 *                   </element>
 *                 </sequence>
 *               </extension>
 *             </complexContent>
 *           </complexType>
 *         </element>
 *       </choice>
 *     </restriction>
 *   </complexContent>
 * </complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "fixedtime",
    "trafcod"
})
@XmlRootElement(name = "CONTROL")
@Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
public class CONTROL
    implements Serializable
{
    @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
    private final static long serialVersionUID = 10102L;
    @XmlElement(name = "FIXEDTIME")
    @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
    protected List<CONTROL.FIXEDTIME> fixedtime;
    @XmlElement(name = "TRAFCOD")
    @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
    protected List<CONTROL.TRAFCOD> trafcod;
    /**
     * Gets the value of the fixedtime property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the fixedtime property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getFIXEDTIME().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link CONTROL.FIXEDTIME }
     * 
     * 
     */
    @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
    public List<CONTROL.FIXEDTIME> getFIXEDTIME() {
        if (fixedtime == null) {
            fixedtime = new ArrayList<CONTROL.FIXEDTIME>();
        }
        return this.fixedtime;
    }
    /**
     * Gets the value of the trafcod property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the trafcod property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getTRAFCOD().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link CONTROL.TRAFCOD }
     * 
     * 
     */
    @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
    public List<CONTROL.TRAFCOD> getTRAFCOD() {
        if (trafcod == null) {
            trafcod = new ArrayList<CONTROL.TRAFCOD>();
        }
        return this.trafcod;
    }
    /**
     * <p>Java class for anonymous complex type.
     * 
     * <p>The following schema fragment specifies the expected content contained within this class.
     * 
     * <pre>
     * <complexType>
     *   <complexContent>
     *     <extension base="{http://www.opentrafficsim.org/ots}CONTROLTYPE">
     *       <sequence>
     *         <element name="CYCLE" maxOccurs="unbounded">
     *           <complexType>
     *             <complexContent>
     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 <attribute name="SIGNALGROUPID" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
     *                 <attribute name="OFFSET" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
     *                 <attribute name="PREGREEN" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
     *                 <attribute name="GREEN" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
     *                 <attribute name="YELLOW" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
     *               </restriction>
     *             </complexContent>
     *           </complexType>
     *         </element>
     *       </sequence>
     *       <attribute name="CYCLETIME" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
     *       <attribute name="OFFSET" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" default="0.0 s" />
     *     </extension>
     *   </complexContent>
     * </complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "cycle"
    })
    @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
    public static class FIXEDTIME
        extends CONTROLTYPE
        implements Serializable
    {
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        private final static long serialVersionUID = 10102L;
        @XmlElement(name = "CYCLE", required = true)
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        protected List<CONTROL.FIXEDTIME.CYCLE> cycle;
        @XmlAttribute(name = "CYCLETIME", required = true)
        @XmlJavaTypeAdapter(DurationAdapter.class)
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        protected Duration cycletime;
        @XmlAttribute(name = "OFFSET")
        @XmlJavaTypeAdapter(DurationAdapter.class)
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        protected Duration offset;
        /**
         * Gets the value of the cycle property.
         * 
         * <p>
         * This accessor method returns a reference to the live list,
         * not a snapshot. Therefore any modification you make to the
         * returned list will be present inside the JAXB object.
         * This is why there is not a <CODE>set</CODE> method for the cycle property.
         * 
         * <p>
         * For example, to add a new item, do as follows:
         * <pre>
         *    getCYCLE().add(newItem);
         * </pre>
         * 
         * 
         * <p>
         * Objects of the following type(s) are allowed in the list
         * {@link CONTROL.FIXEDTIME.CYCLE }
         * 
         * 
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public List<CONTROL.FIXEDTIME.CYCLE> getCYCLE() {
            if (cycle == null) {
                cycle = new ArrayList<CONTROL.FIXEDTIME.CYCLE>();
            }
            return this.cycle;
        }
        /**
         * Gets the value of the cycletime property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public Duration getCYCLETIME() {
            return cycletime;
        }
        /**
         * Sets the value of the cycletime property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public void setCYCLETIME(Duration value) {
            this.cycletime = value;
        }
        /**
         * Gets the value of the offset property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public Duration getOFFSET() {
            if (offset == null) {
                return new DurationAdapter().unmarshal("0.0 s");
            } else {
                return offset;
            }
        }
        /**
         * Sets the value of the offset property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public void setOFFSET(Duration value) {
            this.offset = value;
        }
        /**
         * <p>Java class for anonymous complex type.
         * 
         * <p>The following schema fragment specifies the expected content contained within this class.
         * 
         * <pre>
         * <complexType>
         *   <complexContent>
         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       <attribute name="SIGNALGROUPID" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
         *       <attribute name="OFFSET" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
         *       <attribute name="PREGREEN" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
         *       <attribute name="GREEN" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
         *       <attribute name="YELLOW" use="required" type="{http://www.opentrafficsim.org/ots}DURATIONTYPE" />
         *     </restriction>
         *   </complexContent>
         * </complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "")
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public static class CYCLE
            implements Serializable
        {
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            private final static long serialVersionUID = 10102L;
            @XmlAttribute(name = "SIGNALGROUPID", required = true)
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected String signalgroupid;
            @XmlAttribute(name = "OFFSET", required = true)
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected Duration offset;
            @XmlAttribute(name = "PREGREEN")
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected Duration pregreen;
            @XmlAttribute(name = "GREEN", required = true)
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected Duration green;
            @XmlAttribute(name = "YELLOW", required = true)
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected Duration yellow;
            /**
             * Gets the value of the signalgroupid property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public String getSIGNALGROUPID() {
                return signalgroupid;
            }
            /**
             * Sets the value of the signalgroupid property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setSIGNALGROUPID(String value) {
                this.signalgroupid = value;
            }
            /**
             * Gets the value of the offset property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public Duration getOFFSET() {
                return offset;
            }
            /**
             * Sets the value of the offset property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setOFFSET(Duration value) {
                this.offset = value;
            }
            /**
             * Gets the value of the pregreen property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public Duration getPREGREEN() {
                return pregreen;
            }
            /**
             * Sets the value of the pregreen property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setPREGREEN(Duration value) {
                this.pregreen = value;
            }
            /**
             * Gets the value of the green property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public Duration getGREEN() {
                return green;
            }
            /**
             * Sets the value of the green property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setGREEN(Duration value) {
                this.green = value;
            }
            /**
             * Gets the value of the yellow property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public Duration getYELLOW() {
                return yellow;
            }
            /**
             * Sets the value of the yellow property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setYELLOW(Duration value) {
                this.yellow = value;
            }
        }
    }
    /**
     * <p>Java class for anonymous complex type.
     * 
     * <p>The following schema fragment specifies the expected content contained within this class.
     * 
     * <pre>
     * <complexType>
     *   <complexContent>
     *     <extension base="{http://www.opentrafficsim.org/ots}RESPONSIVECONTROLTYPE">
     *       <sequence>
     *         <choice>
     *           <element name="PROGRAM">
     *             <complexType>
     *               <simpleContent>
     *                 <extension base="<http://www.w3.org/2001/XMLSchema>string">
     *                   <attribute ref="{http://www.w3.org/XML/1998/namespace}space default="preserve""/>
     *                 </extension>
     *               </simpleContent>
     *             </complexType>
     *           </element>
     *           <element name="PROGRAMFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
     *         </choice>
     *         <element name="CONSOLE">
     *           <complexType>
     *             <complexContent>
     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 <sequence>
     *                   <choice>
     *                     <element name="MAP">
     *                       <complexType>
     *                         <simpleContent>
     *                           <extension base="<http://www.w3.org/2001/XMLSchema>string">
     *                             <attribute name="TYPE" type="{http://www.opentrafficsim.org/ots}GRAPHICSTYPE" />
     *                             <attribute name="ENCODING" type="{http://www.opentrafficsim.org/ots}ENCODINGTYPE" />
     *                             <attribute ref="{http://www.w3.org/XML/1998/namespace}space default="preserve""/>
     *                           </extension>
     *                         </simpleContent>
     *                       </complexType>
     *                     </element>
     *                     <element name="MAPFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
     *                   </choice>
     *                   <choice>
     *                     <element name="COORDINATES" type="{http://www.opentrafficsim.org/ots}TRAFCODCOORDINATESTYPE"/>
     *                     <element name="COORDINATESFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
     *                   </choice>
     *                 </sequence>
     *               </restriction>
     *             </complexContent>
     *           </complexType>
     *         </element>
     *       </sequence>
     *     </extension>
     *   </complexContent>
     * </complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "program",
        "programfile",
        "console"
    })
    @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
    public static class TRAFCOD
        extends RESPONSIVECONTROLTYPE
        implements Serializable
    {
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        private final static long serialVersionUID = 10102L;
        @XmlElement(name = "PROGRAM")
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        protected CONTROL.TRAFCOD.PROGRAM program;
        @XmlElement(name = "PROGRAMFILE")
        @XmlSchemaType(name = "anyURI")
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        protected String programfile;
        @XmlElement(name = "CONSOLE", required = true)
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        protected CONTROL.TRAFCOD.CONSOLE console;
        /**
         * Gets the value of the program property.
         * 
         * @return
         *     possible object is
         *     {@link CONTROL.TRAFCOD.PROGRAM }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public CONTROL.TRAFCOD.PROGRAM getPROGRAM() {
            return program;
        }
        /**
         * Sets the value of the program property.
         * 
         * @param value
         *     allowed object is
         *     {@link CONTROL.TRAFCOD.PROGRAM }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public void setPROGRAM(CONTROL.TRAFCOD.PROGRAM value) {
            this.program = value;
        }
        /**
         * Gets the value of the programfile property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public String getPROGRAMFILE() {
            return programfile;
        }
        /**
         * Sets the value of the programfile property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public void setPROGRAMFILE(String value) {
            this.programfile = value;
        }
        /**
         * Gets the value of the console property.
         * 
         * @return
         *     possible object is
         *     {@link CONTROL.TRAFCOD.CONSOLE }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public CONTROL.TRAFCOD.CONSOLE getCONSOLE() {
            return console;
        }
        /**
         * Sets the value of the console property.
         * 
         * @param value
         *     allowed object is
         *     {@link CONTROL.TRAFCOD.CONSOLE }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public void setCONSOLE(CONTROL.TRAFCOD.CONSOLE value) {
            this.console = value;
        }
        /**
         * <p>Java class for anonymous complex type.
         * 
         * <p>The following schema fragment specifies the expected content contained within this class.
         * 
         * <pre>
         * <complexType>
         *   <complexContent>
         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       <sequence>
         *         <choice>
         *           <element name="MAP">
         *             <complexType>
         *               <simpleContent>
         *                 <extension base="<http://www.w3.org/2001/XMLSchema>string">
         *                   <attribute name="TYPE" type="{http://www.opentrafficsim.org/ots}GRAPHICSTYPE" />
         *                   <attribute name="ENCODING" type="{http://www.opentrafficsim.org/ots}ENCODINGTYPE" />
         *                   <attribute ref="{http://www.w3.org/XML/1998/namespace}space default="preserve""/>
         *                 </extension>
         *               </simpleContent>
         *             </complexType>
         *           </element>
         *           <element name="MAPFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
         *         </choice>
         *         <choice>
         *           <element name="COORDINATES" type="{http://www.opentrafficsim.org/ots}TRAFCODCOORDINATESTYPE"/>
         *           <element name="COORDINATESFILE" type="{http://www.w3.org/2001/XMLSchema}anyURI"/>
         *         </choice>
         *       </sequence>
         *     </restriction>
         *   </complexContent>
         * </complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "map",
            "mapfile",
            "coordinates",
            "coordinatesfile"
        })
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public static class CONSOLE
            implements Serializable
        {
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            private final static long serialVersionUID = 10102L;
            @XmlElement(name = "MAP")
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected CONTROL.TRAFCOD.CONSOLE.MAP map;
            @XmlElement(name = "MAPFILE")
            @XmlSchemaType(name = "anyURI")
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected String mapfile;
            @XmlElement(name = "COORDINATES")
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected TRAFCODCOORDINATESTYPE coordinates;
            @XmlElement(name = "COORDINATESFILE")
            @XmlSchemaType(name = "anyURI")
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected String coordinatesfile;
            /**
             * Gets the value of the map property.
             * 
             * @return
             *     possible object is
             *     {@link CONTROL.TRAFCOD.CONSOLE.MAP }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public CONTROL.TRAFCOD.CONSOLE.MAP getMAP() {
                return map;
            }
            /**
             * Sets the value of the map property.
             * 
             * @param value
             *     allowed object is
             *     {@link CONTROL.TRAFCOD.CONSOLE.MAP }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setMAP(CONTROL.TRAFCOD.CONSOLE.MAP value) {
                this.map = value;
            }
            /**
             * Gets the value of the mapfile property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public String getMAPFILE() {
                return mapfile;
            }
            /**
             * Sets the value of the mapfile property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setMAPFILE(String value) {
                this.mapfile = value;
            }
            /**
             * Gets the value of the coordinates property.
             * 
             * @return
             *     possible object is
             *     {@link TRAFCODCOORDINATESTYPE }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public TRAFCODCOORDINATESTYPE getCOORDINATES() {
                return coordinates;
            }
            /**
             * Sets the value of the coordinates property.
             * 
             * @param value
             *     allowed object is
             *     {@link TRAFCODCOORDINATESTYPE }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setCOORDINATES(TRAFCODCOORDINATESTYPE value) {
                this.coordinates = value;
            }
            /**
             * Gets the value of the coordinatesfile property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public String getCOORDINATESFILE() {
                return coordinatesfile;
            }
            /**
             * Sets the value of the coordinatesfile property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setCOORDINATESFILE(String value) {
                this.coordinatesfile = value;
            }
            /**
             * <p>Java class for anonymous complex type.
             * 
             * <p>The following schema fragment specifies the expected content contained within this class.
             * 
             * <pre>
             * <complexType>
             *   <simpleContent>
             *     <extension base="<http://www.w3.org/2001/XMLSchema>string">
             *       <attribute name="TYPE" type="{http://www.opentrafficsim.org/ots}GRAPHICSTYPE" />
             *       <attribute name="ENCODING" type="{http://www.opentrafficsim.org/ots}ENCODINGTYPE" />
             *       <attribute ref="{http://www.w3.org/XML/1998/namespace}space default="preserve""/>
             *     </extension>
             *   </simpleContent>
             * </complexType>
             * </pre>
             * 
             * 
             */
            @XmlAccessorType(XmlAccessType.FIELD)
            @XmlType(name = "", propOrder = {
                "value"
            })
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public static class MAP
                implements Serializable
            {
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                private final static long serialVersionUID = 10102L;
                @XmlValue
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                protected String value;
                @XmlAttribute(name = "TYPE")
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                protected String type;
                @XmlAttribute(name = "ENCODING")
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                protected String encoding;
                @XmlAttribute(name = "space", namespace = "http://www.w3.org/XML/1998/namespace")
                @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                protected String space;
                /**
                 * Gets the value of the value property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public String getValue() {
                    return value;
                }
                /**
                 * Sets the value of the value property.
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public void setValue(String value) {
                    this.value = value;
                }
                /**
                 * Gets the value of the type property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public String getTYPE() {
                    return type;
                }
                /**
                 * Sets the value of the type property.
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public void setTYPE(String value) {
                    this.type = value;
                }
                /**
                 * Gets the value of the encoding property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public String getENCODING() {
                    return encoding;
                }
                /**
                 * Sets the value of the encoding property.
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public void setENCODING(String value) {
                    this.encoding = value;
                }
                /**
                 * Gets the value of the space property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public String getSpace() {
                    if (space == null) {
                        return "preserve";
                    } else {
                        return space;
                    }
                }
                /**
                 * Sets the value of the space property.
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
                public void setSpace(String value) {
                    this.space = value;
                }
            }
        }
        /**
         * <p>Java class for anonymous complex type.
         * 
         * <p>The following schema fragment specifies the expected content contained within this class.
         * 
         * <pre>
         * <complexType>
         *   <simpleContent>
         *     <extension base="<http://www.w3.org/2001/XMLSchema>string">
         *       <attribute ref="{http://www.w3.org/XML/1998/namespace}space default="preserve""/>
         *     </extension>
         *   </simpleContent>
         * </complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "value"
        })
        @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
        public static class PROGRAM
            implements Serializable
        {
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            private final static long serialVersionUID = 10102L;
            @XmlValue
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected String value;
            @XmlAttribute(name = "space", namespace = "http://www.w3.org/XML/1998/namespace")
            @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            protected String space;
            /**
             * Gets the value of the value property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public String getValue() {
                return value;
            }
            /**
             * Sets the value of the value property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setValue(String value) {
                this.value = value;
            }
            /**
             * Gets the value of the space property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public String getSpace() {
                if (space == null) {
                    return "preserve";
                } else {
                    return space;
                }
            }
            /**
             * Sets the value of the space property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", date = "2022-02-09T09:39:06+01:00", comments = "JAXB RI v2.3.0")
            public void setSpace(String value) {
                this.space = value;
            }
        }
    }
}