Control.java

//
// This file was generated by the Eclipse Implementation of JAXB, v2.3.7 
// See https://eclipse-ee4j.github.io/jaxb-ri 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2024.08.29 at 06:50:16 PM CEST 
//


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.XmlType;
import javax.xml.bind.annotation.XmlValue;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.opentrafficsim.xml.bindings.DurationAdapter;
import org.opentrafficsim.xml.bindings.EncodingAdapter;
import org.opentrafficsim.xml.bindings.GraphicsTypeAdapter;
import org.opentrafficsim.xml.bindings.SpaceAdapter;
import org.opentrafficsim.xml.bindings.StringAdapter;
import org.opentrafficsim.xml.bindings.types.DurationType;
import org.opentrafficsim.xml.bindings.types.EncodingType;
import org.opentrafficsim.xml.bindings.types.GraphicsTypeType;


/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType&gt;
 *   &lt;complexContent&gt;
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *       &lt;choice maxOccurs="unbounded"&gt;
 *         &lt;element name="FixedTime" maxOccurs="unbounded" minOccurs="0"&gt;
 *           &lt;complexType&gt;
 *             &lt;complexContent&gt;
 *               &lt;extension base="{http://www.opentrafficsim.org/ots}ControlType"&gt;
 *                 &lt;sequence&gt;
 *                   &lt;element name="Cycle" maxOccurs="unbounded"&gt;
 *                     &lt;complexType&gt;
 *                       &lt;complexContent&gt;
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *                           &lt;attribute name="SignalGroupId" use="required" type="{http://www.opentrafficsim.org/ots}string" /&gt;
 *                           &lt;attribute name="Offset" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
 *                           &lt;attribute name="PreGreen" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
 *                           &lt;attribute name="Green" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
 *                           &lt;attribute name="Yellow" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
 *                         &lt;/restriction&gt;
 *                       &lt;/complexContent&gt;
 *                     &lt;/complexType&gt;
 *                   &lt;/element&gt;
 *                 &lt;/sequence&gt;
 *                 &lt;attribute name="CycleTime" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
 *                 &lt;attribute name="Offset" type="{http://www.opentrafficsim.org/ots}DurationType" default="0.0 s" /&gt;
 *               &lt;/extension&gt;
 *             &lt;/complexContent&gt;
 *           &lt;/complexType&gt;
 *         &lt;/element&gt;
 *         &lt;element name="TrafCod" maxOccurs="unbounded" minOccurs="0"&gt;
 *           &lt;complexType&gt;
 *             &lt;complexContent&gt;
 *               &lt;extension base="{http://www.opentrafficsim.org/ots}ResponsiveControlType"&gt;
 *                 &lt;sequence&gt;
 *                   &lt;choice&gt;
 *                     &lt;element name="Program"&gt;
 *                       &lt;complexType&gt;
 *                         &lt;simpleContent&gt;
 *                           &lt;extension base="&lt;http://www.opentrafficsim.org/ots&gt;MultiLineString"&gt;
 *                             &lt;attribute name="Space" type="{http://www.opentrafficsim.org/ots}space" default="preserve" /&gt;
 *                           &lt;/extension&gt;
 *                         &lt;/simpleContent&gt;
 *                       &lt;/complexType&gt;
 *                     &lt;/element&gt;
 *                     &lt;element name="ProgramFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
 *                   &lt;/choice&gt;
 *                   &lt;element name="Console"&gt;
 *                     &lt;complexType&gt;
 *                       &lt;complexContent&gt;
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *                           &lt;sequence&gt;
 *                             &lt;choice&gt;
 *                               &lt;element name="Map"&gt;
 *                                 &lt;complexType&gt;
 *                                   &lt;simpleContent&gt;
 *                                     &lt;extension base="&lt;http://www.opentrafficsim.org/ots&gt;MultiLineString"&gt;
 *                                       &lt;attribute name="Type" type="{http://www.opentrafficsim.org/ots}GraphicsType" /&gt;
 *                                       &lt;attribute name="Encoding" type="{http://www.opentrafficsim.org/ots}EncodingType" /&gt;
 *                                       &lt;attribute name="Space" type="{http://www.opentrafficsim.org/ots}space" default="preserve" /&gt;
 *                                     &lt;/extension&gt;
 *                                   &lt;/simpleContent&gt;
 *                                 &lt;/complexType&gt;
 *                               &lt;/element&gt;
 *                               &lt;element name="MapFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
 *                             &lt;/choice&gt;
 *                             &lt;choice&gt;
 *                               &lt;element name="Coordinates" type="{http://www.opentrafficsim.org/ots}TrafCodCoordinatesType"/&gt;
 *                               &lt;element name="CoordinatesFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
 *                             &lt;/choice&gt;
 *                           &lt;/sequence&gt;
 *                         &lt;/restriction&gt;
 *                       &lt;/complexContent&gt;
 *                     &lt;/complexType&gt;
 *                   &lt;/element&gt;
 *                 &lt;/sequence&gt;
 *               &lt;/extension&gt;
 *             &lt;/complexContent&gt;
 *           &lt;/complexType&gt;
 *         &lt;/element&gt;
 *       &lt;/choice&gt;
 *     &lt;/restriction&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "fixedTime",
    "trafCod"
})
@XmlRootElement(name = "Control")
@Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
public class Control
    implements Serializable
{

    @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
    private final static long serialVersionUID = 10102L;
    @XmlElement(name = "FixedTime")
    @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
    protected List<Control.FixedTime> fixedTime;
    @XmlElement(name = "TrafCod")
    @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
    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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
    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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
    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>
     * &lt;complexType&gt;
     *   &lt;complexContent&gt;
     *     &lt;extension base="{http://www.opentrafficsim.org/ots}ControlType"&gt;
     *       &lt;sequence&gt;
     *         &lt;element name="Cycle" maxOccurs="unbounded"&gt;
     *           &lt;complexType&gt;
     *             &lt;complexContent&gt;
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
     *                 &lt;attribute name="SignalGroupId" use="required" type="{http://www.opentrafficsim.org/ots}string" /&gt;
     *                 &lt;attribute name="Offset" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
     *                 &lt;attribute name="PreGreen" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
     *                 &lt;attribute name="Green" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
     *                 &lt;attribute name="Yellow" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
     *               &lt;/restriction&gt;
     *             &lt;/complexContent&gt;
     *           &lt;/complexType&gt;
     *         &lt;/element&gt;
     *       &lt;/sequence&gt;
     *       &lt;attribute name="CycleTime" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
     *       &lt;attribute name="Offset" type="{http://www.opentrafficsim.org/ots}DurationType" default="0.0 s" /&gt;
     *     &lt;/extension&gt;
     *   &lt;/complexContent&gt;
     * &lt;/complexType&gt;
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "cycle"
    })
    @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
    public static class FixedTime
        extends ControlType
        implements Serializable
    {

        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        private final static long serialVersionUID = 10102L;
        @XmlElement(name = "Cycle", required = true)
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        protected List<Control.FixedTime.Cycle> cycle;
        @XmlAttribute(name = "CycleTime", required = true)
        @XmlJavaTypeAdapter(DurationAdapter.class)
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        protected DurationType cycleTime;
        @XmlAttribute(name = "Offset")
        @XmlJavaTypeAdapter(DurationAdapter.class)
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        protected DurationType 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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        public DurationType getCycleTime() {
            return cycleTime;
        }

        /**
         * Sets the value of the cycleTime property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        public void setCycleTime(DurationType value) {
            this.cycleTime = value;
        }

        /**
         * Gets the value of the offset property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        public DurationType 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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        public void setOffset(DurationType 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>
         * &lt;complexType&gt;
         *   &lt;complexContent&gt;
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
         *       &lt;attribute name="SignalGroupId" use="required" type="{http://www.opentrafficsim.org/ots}string" /&gt;
         *       &lt;attribute name="Offset" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
         *       &lt;attribute name="PreGreen" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
         *       &lt;attribute name="Green" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
         *       &lt;attribute name="Yellow" use="required" type="{http://www.opentrafficsim.org/ots}DurationType" /&gt;
         *     &lt;/restriction&gt;
         *   &lt;/complexContent&gt;
         * &lt;/complexType&gt;
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "")
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        public static class Cycle
            implements Serializable
        {

            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            private final static long serialVersionUID = 10102L;
            @XmlAttribute(name = "SignalGroupId", required = true)
            @XmlJavaTypeAdapter(StringAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected org.opentrafficsim.xml.bindings.types.StringType signalGroupId;
            @XmlAttribute(name = "Offset", required = true)
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected DurationType offset;
            @XmlAttribute(name = "PreGreen")
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected DurationType preGreen;
            @XmlAttribute(name = "Green", required = true)
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected DurationType green;
            @XmlAttribute(name = "Yellow", required = true)
            @XmlJavaTypeAdapter(DurationAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected DurationType yellow;

            /**
             * Gets the value of the signalGroupId property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public org.opentrafficsim.xml.bindings.types.StringType getSignalGroupId() {
                return signalGroupId;
            }

            /**
             * Sets the value of the signalGroupId property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public void setSignalGroupId(org.opentrafficsim.xml.bindings.types.StringType value) {
                this.signalGroupId = value;
            }

            /**
             * Gets the value of the offset property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public DurationType getOffset() {
                return offset;
            }

            /**
             * Sets the value of the offset property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public void setOffset(DurationType value) {
                this.offset = value;
            }

            /**
             * Gets the value of the preGreen property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public DurationType getPreGreen() {
                return preGreen;
            }

            /**
             * Sets the value of the preGreen property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public void setPreGreen(DurationType value) {
                this.preGreen = value;
            }

            /**
             * Gets the value of the green property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public DurationType getGreen() {
                return green;
            }

            /**
             * Sets the value of the green property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public void setGreen(DurationType value) {
                this.green = value;
            }

            /**
             * Gets the value of the yellow property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public DurationType getYellow() {
                return yellow;
            }

            /**
             * Sets the value of the yellow property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public void setYellow(DurationType 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>
     * &lt;complexType&gt;
     *   &lt;complexContent&gt;
     *     &lt;extension base="{http://www.opentrafficsim.org/ots}ResponsiveControlType"&gt;
     *       &lt;sequence&gt;
     *         &lt;choice&gt;
     *           &lt;element name="Program"&gt;
     *             &lt;complexType&gt;
     *               &lt;simpleContent&gt;
     *                 &lt;extension base="&lt;http://www.opentrafficsim.org/ots&gt;MultiLineString"&gt;
     *                   &lt;attribute name="Space" type="{http://www.opentrafficsim.org/ots}space" default="preserve" /&gt;
     *                 &lt;/extension&gt;
     *               &lt;/simpleContent&gt;
     *             &lt;/complexType&gt;
     *           &lt;/element&gt;
     *           &lt;element name="ProgramFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
     *         &lt;/choice&gt;
     *         &lt;element name="Console"&gt;
     *           &lt;complexType&gt;
     *             &lt;complexContent&gt;
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
     *                 &lt;sequence&gt;
     *                   &lt;choice&gt;
     *                     &lt;element name="Map"&gt;
     *                       &lt;complexType&gt;
     *                         &lt;simpleContent&gt;
     *                           &lt;extension base="&lt;http://www.opentrafficsim.org/ots&gt;MultiLineString"&gt;
     *                             &lt;attribute name="Type" type="{http://www.opentrafficsim.org/ots}GraphicsType" /&gt;
     *                             &lt;attribute name="Encoding" type="{http://www.opentrafficsim.org/ots}EncodingType" /&gt;
     *                             &lt;attribute name="Space" type="{http://www.opentrafficsim.org/ots}space" default="preserve" /&gt;
     *                           &lt;/extension&gt;
     *                         &lt;/simpleContent&gt;
     *                       &lt;/complexType&gt;
     *                     &lt;/element&gt;
     *                     &lt;element name="MapFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
     *                   &lt;/choice&gt;
     *                   &lt;choice&gt;
     *                     &lt;element name="Coordinates" type="{http://www.opentrafficsim.org/ots}TrafCodCoordinatesType"/&gt;
     *                     &lt;element name="CoordinatesFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
     *                   &lt;/choice&gt;
     *                 &lt;/sequence&gt;
     *               &lt;/restriction&gt;
     *             &lt;/complexContent&gt;
     *           &lt;/complexType&gt;
     *         &lt;/element&gt;
     *       &lt;/sequence&gt;
     *     &lt;/extension&gt;
     *   &lt;/complexContent&gt;
     * &lt;/complexType&gt;
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "program",
        "programFile",
        "console"
    })
    @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
    public static class TrafCod
        extends ResponsiveControlType
        implements Serializable
    {

        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        private final static long serialVersionUID = 10102L;
        @XmlElement(name = "Program")
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        protected Control.TrafCod.Program program;
        @XmlElement(name = "ProgramFile")
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        protected String programFile;
        @XmlElement(name = "Console", required = true)
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        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>
         * &lt;complexType&gt;
         *   &lt;complexContent&gt;
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
         *       &lt;sequence&gt;
         *         &lt;choice&gt;
         *           &lt;element name="Map"&gt;
         *             &lt;complexType&gt;
         *               &lt;simpleContent&gt;
         *                 &lt;extension base="&lt;http://www.opentrafficsim.org/ots&gt;MultiLineString"&gt;
         *                   &lt;attribute name="Type" type="{http://www.opentrafficsim.org/ots}GraphicsType" /&gt;
         *                   &lt;attribute name="Encoding" type="{http://www.opentrafficsim.org/ots}EncodingType" /&gt;
         *                   &lt;attribute name="Space" type="{http://www.opentrafficsim.org/ots}space" default="preserve" /&gt;
         *                 &lt;/extension&gt;
         *               &lt;/simpleContent&gt;
         *             &lt;/complexType&gt;
         *           &lt;/element&gt;
         *           &lt;element name="MapFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
         *         &lt;/choice&gt;
         *         &lt;choice&gt;
         *           &lt;element name="Coordinates" type="{http://www.opentrafficsim.org/ots}TrafCodCoordinatesType"/&gt;
         *           &lt;element name="CoordinatesFile" type="{http://www.opentrafficsim.org/ots}anyURI"/&gt;
         *         &lt;/choice&gt;
         *       &lt;/sequence&gt;
         *     &lt;/restriction&gt;
         *   &lt;/complexContent&gt;
         * &lt;/complexType&gt;
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "map",
            "mapFile",
            "coordinates",
            "coordinatesFile"
        })
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        public static class Console
            implements Serializable
        {

            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            private final static long serialVersionUID = 10102L;
            @XmlElement(name = "Map")
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected Control.TrafCod.Console.Map map;
            @XmlElement(name = "MapFile")
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected String mapFile;
            @XmlElement(name = "Coordinates")
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected TrafCodCoordinatesType coordinates;
            @XmlElement(name = "CoordinatesFile")
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            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>
             * &lt;complexType&gt;
             *   &lt;simpleContent&gt;
             *     &lt;extension base="&lt;http://www.opentrafficsim.org/ots&gt;MultiLineString"&gt;
             *       &lt;attribute name="Type" type="{http://www.opentrafficsim.org/ots}GraphicsType" /&gt;
             *       &lt;attribute name="Encoding" type="{http://www.opentrafficsim.org/ots}EncodingType" /&gt;
             *       &lt;attribute name="Space" type="{http://www.opentrafficsim.org/ots}space" default="preserve" /&gt;
             *     &lt;/extension&gt;
             *   &lt;/simpleContent&gt;
             * &lt;/complexType&gt;
             * </pre>
             * 
             * 
             */
            @XmlAccessorType(XmlAccessType.FIELD)
            @XmlType(name = "", propOrder = {
                "value"
            })
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public static class Map
                implements Serializable
            {

                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                private final static long serialVersionUID = 10102L;
                @XmlValue
                @XmlJavaTypeAdapter(StringAdapter.class)
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                protected org.opentrafficsim.xml.bindings.types.StringType value;
                @XmlAttribute(name = "Type")
                @XmlJavaTypeAdapter(GraphicsTypeAdapter.class)
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                protected GraphicsTypeType type;
                @XmlAttribute(name = "Encoding")
                @XmlJavaTypeAdapter(EncodingAdapter.class)
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                protected EncodingType encoding;
                @XmlAttribute(name = "Space")
                @XmlJavaTypeAdapter(SpaceAdapter.class)
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                protected org.opentrafficsim.xml.bindings.types.StringType space;

                /**
                 * Gets the value of the value property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public org.opentrafficsim.xml.bindings.types.StringType getValue() {
                    return value;
                }

                /**
                 * Sets the value of the value property.
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public void setValue(org.opentrafficsim.xml.bindings.types.StringType value) {
                    this.value = value;
                }

                /**
                 * Gets the value of the type property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public GraphicsTypeType getType() {
                    return type;
                }

                /**
                 * Sets the value of the type property.
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public void setType(GraphicsTypeType value) {
                    this.type = value;
                }

                /**
                 * Gets the value of the encoding property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public EncodingType getEncoding() {
                    return encoding;
                }

                /**
                 * Sets the value of the encoding property.
                 * 
                 * @param value
                 *     allowed object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public void setEncoding(EncodingType value) {
                    this.encoding = value;
                }

                /**
                 * Gets the value of the space property.
                 * 
                 * @return
                 *     possible object is
                 *     {@link String }
                 *     
                 */
                @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public org.opentrafficsim.xml.bindings.types.StringType getSpace() {
                    if (space == null) {
                        return new SpaceAdapter().unmarshal("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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
                public void setSpace(org.opentrafficsim.xml.bindings.types.StringType 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>
         * &lt;complexType&gt;
         *   &lt;simpleContent&gt;
         *     &lt;extension base="&lt;http://www.opentrafficsim.org/ots&gt;MultiLineString"&gt;
         *       &lt;attribute name="Space" type="{http://www.opentrafficsim.org/ots}space" default="preserve" /&gt;
         *     &lt;/extension&gt;
         *   &lt;/simpleContent&gt;
         * &lt;/complexType&gt;
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "value"
        })
        @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
        public static class Program
            implements Serializable
        {

            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            private final static long serialVersionUID = 10102L;
            @XmlValue
            @XmlJavaTypeAdapter(StringAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected org.opentrafficsim.xml.bindings.types.StringType value;
            @XmlAttribute(name = "Space")
            @XmlJavaTypeAdapter(SpaceAdapter.class)
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            protected org.opentrafficsim.xml.bindings.types.StringType space;

            /**
             * Gets the value of the value property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public org.opentrafficsim.xml.bindings.types.StringType getValue() {
                return value;
            }

            /**
             * Sets the value of the value property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public void setValue(org.opentrafficsim.xml.bindings.types.StringType value) {
                this.value = value;
            }

            /**
             * Gets the value of the space property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public org.opentrafficsim.xml.bindings.types.StringType getSpace() {
                if (space == null) {
                    return new SpaceAdapter().unmarshal("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", comments = "JAXB RI v2.3.7", date = "2024-08-29T18:50:16+02:00")
            public void setSpace(org.opentrafficsim.xml.bindings.types.StringType value) {
                this.space = value;
            }

        }

    }

}