//
// 此文件是由 JavaTM Architecture for XML Binding (JAXB) 引用实现 v2.3.0 生成的
// 请访问 <a href="https://javaee.github.io/jaxb-v2/">https://javaee.github.io/jaxb-v2/</a> 
// 在重新编译源模式时, 对此文件的所有修改都将丢失。
// 生成时间: 2026.03.02 时间 03:10:34 PM CST 
//


package com.njcn.gather.icd.mapping.infrastructure.parser.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.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.NormalizedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * <p>tReportControl complex type的 Java 类。
 * 
 * <p>以下模式片段指定包含在此类中的预期内容。
 * 
 * <pre>
 * &lt;complexType name="tReportControl"&gt;
 *   &lt;complexContent&gt;
 *     &lt;extension base="{http://www.iec.ch/61850/2003/SCL}tControlWithTriggerOpt"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="OptFields"&gt;
 *           &lt;complexType&gt;
 *             &lt;complexContent&gt;
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *                 &lt;attGroup ref="{http://www.iec.ch/61850/2003/SCL}agOptFields"/&gt;
 *               &lt;/restriction&gt;
 *             &lt;/complexContent&gt;
 *           &lt;/complexType&gt;
 *         &lt;/element&gt;
 *         &lt;element name="RptEnabled" type="{http://www.iec.ch/61850/2003/SCL}tRptEnabled" minOccurs="0"/&gt;
 *       &lt;/sequence&gt;
 *       &lt;attribute name="rptID" type="{http://www.iec.ch/61850/2003/SCL}tMessageID" /&gt;
 *       &lt;attribute name="confRev" use="required" type="{http://www.w3.org/2001/XMLSchema}unsignedInt" /&gt;
 *       &lt;attribute name="buffered" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /&gt;
 *       &lt;attribute name="bufTime" type="{http://www.w3.org/2001/XMLSchema}unsignedInt" default="0" /&gt;
 *       &lt;attribute name="indexed" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" /&gt;
 *       &lt;anyAttribute processContents='lax' namespace='##other'/&gt;
 *     &lt;/extension&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "tReportControl", propOrder = {
    "optFields",
    "rptEnabled"
})
public class TReportControl
    extends TControlWithTriggerOpt
{

    @XmlElement(name = "OptFields", required = true)
    protected TReportControl.OptFields optFields;
    @XmlElement(name = "RptEnabled")
    protected TRptEnabled rptEnabled;
    @XmlAttribute(name = "rptID")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String rptID;
    @XmlAttribute(name = "confRev", required = true)
    @XmlSchemaType(name = "unsignedInt")
    protected long confRev;
    @XmlAttribute(name = "buffered")
    protected Boolean buffered;
    @XmlAttribute(name = "bufTime")
    @XmlSchemaType(name = "unsignedInt")
    protected Long bufTime;
    @XmlAttribute(name = "indexed")
    protected Boolean indexed;

    /**
     * 获取optFields属性的值。
     * 
     * @return
     *     possible object is
     *     {@link TReportControl.OptFields }
     *     
     */
    public TReportControl.OptFields getOptFields() {
        return optFields;
    }

    /**
     * 设置optFields属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link TReportControl.OptFields }
     *     
     */
    public void setOptFields(TReportControl.OptFields value) {
        this.optFields = value;
    }

    /**
     * 获取rptEnabled属性的值。
     * 
     * @return
     *     possible object is
     *     {@link TRptEnabled }
     *     
     */
    public TRptEnabled getRptEnabled() {
        return rptEnabled;
    }

    /**
     * 设置rptEnabled属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link TRptEnabled }
     *     
     */
    public void setRptEnabled(TRptEnabled value) {
        this.rptEnabled = value;
    }

    /**
     * 获取rptID属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getRptID() {
        return rptID;
    }

    /**
     * 设置rptID属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setRptID(String value) {
        this.rptID = value;
    }

    /**
     * 获取confRev属性的值。
     * 
     */
    public long getConfRev() {
        return confRev;
    }

    /**
     * 设置confRev属性的值。
     * 
     */
    public void setConfRev(long value) {
        this.confRev = value;
    }

    /**
     * 获取buffered属性的值。
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public boolean isBuffered() {
        if (buffered == null) {
            return false;
        } else {
            return buffered;
        }
    }

    /**
     * 设置buffered属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setBuffered(Boolean value) {
        this.buffered = value;
    }

    /**
     * 获取bufTime属性的值。
     * 
     * @return
     *     possible object is
     *     {@link Long }
     *     
     */
    public long getBufTime() {
        if (bufTime == null) {
            return  0L;
        } else {
            return bufTime;
        }
    }

    /**
     * 设置bufTime属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link Long }
     *     
     */
    public void setBufTime(Long value) {
        this.bufTime = value;
    }

    /**
     * 获取indexed属性的值。
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public boolean isIndexed() {
        if (indexed == null) {
            return true;
        } else {
            return indexed;
        }
    }

    /**
     * 设置indexed属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setIndexed(Boolean value) {
        this.indexed = value;
    }


    /**
     * <p>anonymous complex type的 Java 类。
     * 
     * <p>以下模式片段指定包含在此类中的预期内容。
     * 
     * <pre>
     * &lt;complexType&gt;
     *   &lt;complexContent&gt;
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
     *       &lt;attGroup ref="{http://www.iec.ch/61850/2003/SCL}agOptFields"/&gt;
     *     &lt;/restriction&gt;
     *   &lt;/complexContent&gt;
     * &lt;/complexType&gt;
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "")
    public static class OptFields {

        @XmlAttribute(name = "seqNum")
        protected Boolean seqNum;
        @XmlAttribute(name = "timeStamp")
        protected Boolean timeStamp;
        @XmlAttribute(name = "dataSet")
        protected Boolean dataSet;
        @XmlAttribute(name = "reasonCode")
        protected Boolean reasonCode;
        @XmlAttribute(name = "dataRef")
        protected Boolean dataRef;
        @XmlAttribute(name = "entryID")
        protected Boolean entryID;
        @XmlAttribute(name = "configRef")
        protected Boolean configRef;
        @XmlAttribute(name = "bufOvfl")
        protected Boolean bufOvfl;

        /**
         * 获取seqNum属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isSeqNum() {
            if (seqNum == null) {
                return false;
            } else {
                return seqNum;
            }
        }

        /**
         * 设置seqNum属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setSeqNum(Boolean value) {
            this.seqNum = value;
        }

        /**
         * 获取timeStamp属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isTimeStamp() {
            if (timeStamp == null) {
                return false;
            } else {
                return timeStamp;
            }
        }

        /**
         * 设置timeStamp属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setTimeStamp(Boolean value) {
            this.timeStamp = value;
        }

        /**
         * 获取dataSet属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isDataSet() {
            if (dataSet == null) {
                return false;
            } else {
                return dataSet;
            }
        }

        /**
         * 设置dataSet属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setDataSet(Boolean value) {
            this.dataSet = value;
        }

        /**
         * 获取reasonCode属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isReasonCode() {
            if (reasonCode == null) {
                return false;
            } else {
                return reasonCode;
            }
        }

        /**
         * 设置reasonCode属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setReasonCode(Boolean value) {
            this.reasonCode = value;
        }

        /**
         * 获取dataRef属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isDataRef() {
            if (dataRef == null) {
                return false;
            } else {
                return dataRef;
            }
        }

        /**
         * 设置dataRef属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setDataRef(Boolean value) {
            this.dataRef = value;
        }

        /**
         * 获取entryID属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isEntryID() {
            if (entryID == null) {
                return false;
            } else {
                return entryID;
            }
        }

        /**
         * 设置entryID属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setEntryID(Boolean value) {
            this.entryID = value;
        }

        /**
         * 获取configRef属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isConfigRef() {
            if (configRef == null) {
                return false;
            } else {
                return configRef;
            }
        }

        /**
         * 设置configRef属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setConfigRef(Boolean value) {
            this.configRef = value;
        }

        /**
         * 获取bufOvfl属性的值。
         * 
         * @return
         *     possible object is
         *     {@link Boolean }
         *     
         */
        public boolean isBufOvfl() {
            if (bufOvfl == null) {
                return true;
            } else {
                return bufOvfl;
            }
        }

        /**
         * 设置bufOvfl属性的值。
         * 
         * @param value
         *     allowed object is
         *     {@link Boolean }
         *     
         */
        public void setBufOvfl(Boolean value) {
            this.bufOvfl = value;
        }

    }

}
