//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2020.04.02 at 08:24:17 PM PDT 
//


package config;

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType>
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element ref="{}InputDataSetStats" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element ref="{}KmerCountStats" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element ref="{}MarkovModelStats" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element ref="{}InformationGainStats" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element ref="{}SELEXPipeline" minOccurs="0"/>
 *         &lt;element ref="{}AdditionalDataSet" maxOccurs="unbounded" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "inputDataSetStats",
    "kmerCountStats",
    "markovModelStats",
    "informationGainStats",
    "selexPipeline",
    "additionalDataSet"
})
@XmlRootElement(name = "SELEXStats")
public class SELEXStats {

    @XmlElement(name = "InputDataSetStats")
    protected List<InputDataSetStats> inputDataSetStats;
    @XmlElement(name = "KmerCountStats")
    protected List<KmerCountStats> kmerCountStats;
    @XmlElement(name = "MarkovModelStats")
    protected List<MarkovModelStats> markovModelStats;
    @XmlElement(name = "InformationGainStats")
    protected List<InformationGainStats> informationGainStats;
    @XmlElement(name = "SELEXPipeline")
    protected SELEXPipeline selexPipeline;
    @XmlElement(name = "AdditionalDataSet")
    protected List<AdditionalDataSet> additionalDataSet;

    /**
     * Gets the value of the inputDataSetStats 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 inputDataSetStats property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getInputDataSetStats().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link InputDataSetStats }
     * 
     * 
     */
    public List<InputDataSetStats> getInputDataSetStats() {
        if (inputDataSetStats == null) {
            inputDataSetStats = new ArrayList<InputDataSetStats>();
        }
        return this.inputDataSetStats;
    }

    /**
     * Gets the value of the kmerCountStats 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 kmerCountStats property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getKmerCountStats().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link KmerCountStats }
     * 
     * 
     */
    public List<KmerCountStats> getKmerCountStats() {
        if (kmerCountStats == null) {
            kmerCountStats = new ArrayList<KmerCountStats>();
        }
        return this.kmerCountStats;
    }

    /**
     * Gets the value of the markovModelStats 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 markovModelStats property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getMarkovModelStats().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link MarkovModelStats }
     * 
     * 
     */
    public List<MarkovModelStats> getMarkovModelStats() {
        if (markovModelStats == null) {
            markovModelStats = new ArrayList<MarkovModelStats>();
        }
        return this.markovModelStats;
    }

    /**
     * Gets the value of the informationGainStats 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 informationGainStats property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getInformationGainStats().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link InformationGainStats }
     * 
     * 
     */
    public List<InformationGainStats> getInformationGainStats() {
        if (informationGainStats == null) {
            informationGainStats = new ArrayList<InformationGainStats>();
        }
        return this.informationGainStats;
    }

    /**
     * Gets the value of the selexPipeline property.
     * 
     * @return
     *     possible object is
     *     {@link SELEXPipeline }
     *     
     */
    public SELEXPipeline getSELEXPipeline() {
        return selexPipeline;
    }

    /**
     * Sets the value of the selexPipeline property.
     * 
     * @param value
     *     allowed object is
     *     {@link SELEXPipeline }
     *     
     */
    public void setSELEXPipeline(SELEXPipeline value) {
        this.selexPipeline = value;
    }

    /**
     * Gets the value of the additionalDataSet 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 additionalDataSet property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getAdditionalDataSet().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link AdditionalDataSet }
     * 
     * 
     */
    public List<AdditionalDataSet> getAdditionalDataSet() {
        if (additionalDataSet == null) {
            additionalDataSet = new ArrayList<AdditionalDataSet>();
        }
        return this.additionalDataSet;
    }

}
